Skip to content

Commit ef249e0

Browse files
committed
Fix Extension Deployment Issue
1 parent 885d888 commit ef249e0

File tree

5 files changed

+5119
-2
lines changed

5 files changed

+5119
-2
lines changed

src/Common/Commands.ScenarioTest/Commands.ScenarioTest.csproj

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -241,6 +241,9 @@
241241
<None Include="SessionRecords\Microsoft.WindowsAzure.Commands.ScenarioTest.ServiceManagementTests\RunNewAzureComputeParameterObjectTests.json">
242242
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
243243
</None>
244+
<None Include="SessionRecords\Microsoft.WindowsAzure.Commands.ScenarioTest.ServiceManagementTests\RunServiceDeploymentExtensionCmdletTests.json">
245+
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
246+
</None>
244247
<None Include="SessionRecords\Microsoft.WindowsAzure.Commands.ScenarioTest.ServiceManagementTests\RunServiceExtensionSetCmdletTests.json">
245248
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
246249
</None>
@@ -579,4 +582,4 @@
579582
<Target Name="AfterBuild">
580583
</Target>
581584
-->
582-
</Project>
585+
</Project>

src/Common/Commands.ScenarioTest/Resources/ServiceManagement/ServiceManagementTests.ps1

Lines changed: 57 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -510,4 +510,61 @@ function Run-ServiceExtensionSetCmdletTests
510510
# Cleanup
511511
Cleanup-CloudService $svcName;
512512
}
513+
}
514+
515+
516+
# Run Service Deployment Extension Cmdlet Tests
517+
function Run-ServiceDeploymentExtensionCmdletTests
518+
{
519+
# Setup
520+
$location = Get-DefaultLocation;
521+
$imgName = Get-DefaultImage $location;
522+
523+
$storageName = 'pstest' + (getAssetName);
524+
New-AzureStorageAccount -StorageAccountName $storageName -Location $location;
525+
526+
# Associate the new storage account with the current subscription
527+
Set-CurrentStorageAccountName $storageName;
528+
529+
$svcName = 'pstest' + (Get-CloudServiceName);
530+
$userName = "pstestuser";
531+
$password = "p@ssw0rd";
532+
$sPassword = ConvertTo-SecureString $password -AsPlainText -Force;
533+
$credential = New-Object System.Management.Automation.PSCredential ($userName, $sPassword);
534+
535+
# Test
536+
New-AzureService -ServiceName $svcName -Location $location;
537+
538+
try
539+
{
540+
# New-AzureDeployment (in Azure.psd1)
541+
$cspkg = '.\Resources\ServiceManagement\Files\OneWebOneWorker.cspkg';
542+
$cscfg = '.\Resources\ServiceManagement\Files\OneWebOneWorker.cscfg';
543+
544+
$rdpCfg1 = New-AzureServiceRemoteDesktopExtensionConfig -Credential $credential -Role WebRole1
545+
$rdpCfg2 = New-AzureServiceRemoteDesktopExtensionConfig -Credential $credential -Role WorkerRole1;
546+
$adCfg1 = New-AzureServiceADDomainExtensionConfig -Role WebRole1 -WorkgroupName 'test1';
547+
$adCfg2 = New-AzureServiceADDomainExtensionConfig -Role WorkerRole1 -WorkgroupName 'test2';
548+
549+
$st = New-AzureDeployment -ServiceName $svcName -Package $cspkg -Configuration $cscfg -Label $svcName -Slot Production -ExtensionConfiguration $rdpCfg1,$adCfg1;
550+
$exts = Get-AzureServiceExtension -ServiceName $svcName -Slot Production;
551+
Assert-True { $exts.Count -eq 2 };
552+
553+
$st = New-AzureDeployment -ServiceName $svcName -Package $cspkg -Configuration $cscfg -Label $svcName -Slot Staging -ExtensionConfiguration $rdpCfg2,$adCfg2;
554+
$exts = Get-AzureServiceExtension -ServiceName $svcName -Slot Staging;
555+
Assert-True { $exts.Count -eq 2 };
556+
557+
$st = Set-AzureDeployment -Config -ServiceName $svcName -Configuration $cscfg -Slot Production -ExtensionConfiguration $rdpCfg2;
558+
$exts = Get-AzureServiceExtension -ServiceName $svcName -Slot Production;
559+
Assert-True { $exts.Count -eq 1 };
560+
561+
$st = Set-AzureDeployment -Config -ServiceName $svcName -Configuration $cscfg -Slot Staging -ExtensionConfiguration $rdpCfg1,$adCfg1;
562+
$exts = Get-AzureServiceExtension -ServiceName $svcName -Slot Staging;
563+
Assert-True { $exts.Count -eq 2 };
564+
}
565+
finally
566+
{
567+
# Cleanup
568+
Cleanup-CloudService $svcName;
569+
}
513570
}

src/Common/Commands.ScenarioTest/ServiceManagement/ScenarioTests.cs

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -116,5 +116,14 @@ public void RunServiceExtensionSetCmdletTests()
116116
{
117117
this.RunPowerShellTest("Run-ServiceExtensionSetCmdletTests");
118118
}
119+
120+
[Fact]
121+
[Trait(Category.Service, Category.ServiceManagement)]
122+
[Trait(Category.AcceptanceType, Category.CheckIn)]
123+
[Trait(Category.AcceptanceType, Category.BVT)]
124+
public void RunServiceDeploymentExtensionCmdletTests()
125+
{
126+
this.RunPowerShellTest("Run-ServiceDeploymentExtensionCmdletTests");
127+
}
119128
}
120129
}

src/Common/Commands.ScenarioTest/SessionRecords/Microsoft.WindowsAzure.Commands.ScenarioTest.ServiceManagementTests/RunServiceDeploymentExtensionCmdletTests.json

Lines changed: 5049 additions & 0 deletions
Large diffs are not rendered by default.

src/ServiceManagement/Compute/Commands.ServiceManagement/Extensions/Common/ExtensionManager.cs

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -306,7 +306,6 @@ public ExtensionConfiguration Add(DeploymentGetResponse deployment, DeploymentGe
306306
}
307307

308308
var oldExtConfig = deployment.ExtensionConfiguration;
309-
var oldPeerExtConfig = peerDeployment.ExtensionConfiguration;
310309

311310
ExtensionConfigurationBuilder configBuilder = this.GetBuilder();
312311
foreach (ExtensionConfigurationInput context in inputs)

0 commit comments

Comments
 (0)