Skip to content

Commit 3f2b9c1

Browse files
committed
Add test for nested template deployment
1 parent f12c6ea commit 3f2b9c1

File tree

6 files changed

+4387
-0
lines changed

6 files changed

+4387
-0
lines changed

src/ResourceManager/Resources/Commands.Resources.Test/Commands.Resources.Test.csproj

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -324,6 +324,9 @@
324324
<None Include="SessionRecords\Microsoft.Azure.Commands.Resources.Test.ScenarioTests.ActiveDirectoryTests\TestGetADUserWithMail.json">
325325
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
326326
</None>
327+
<None Include="SessionRecords\Microsoft.Azure.Commands.Resources.Test.ScenarioTests.DeploymentTests\TestNestedDeploymentFromTemplateFile.json">
328+
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
329+
</None>
327330
<None Include="SessionRecords\Microsoft.Azure.Commands.Resources.Test.ScenarioTests.DeploymentTests\TestNewDeploymentFromTemplateFile.json">
328331
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
329332
</None>
@@ -550,6 +553,12 @@
550553
<None Include="sampleTemplateParams.json">
551554
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
552555
</None>
556+
<None Include="sampleNestedTemplate.json">
557+
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
558+
</None>
559+
<None Include="sampleNestedTemplateParams.json">
560+
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
561+
</None>
553562
</ItemGroup>
554563
<ItemGroup>
555564
<Service Include="{82A7F48D-3B50-4B1E-B82E-3ADA8210C358}" />

src/ResourceManager/Resources/Commands.Resources.Test/ScenarioTests/DeploymentTests.cs

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -30,6 +30,12 @@ public void TestNewDeploymentFromTemplateFile()
3030
ResourcesController.NewInstance.RunPsTest("Test-NewDeploymentFromTemplateFile");
3131
}
3232

33+
[Fact]
34+
public void TestNestedDeploymentFromTemplateFile()
35+
{
36+
ResourcesController.NewInstance.RunPsTest("Test-NestedDeploymentFromTemplateFile");
37+
}
38+
3339
[Fact(Skip = "Fix acquisition of TenantId in KeyVault Test.")]
3440
public void TestNewDeploymentWithKeyVaultReference()
3541
{

src/ResourceManager/Resources/Commands.Resources.Test/ScenarioTests/DeploymentTests.ps1

Lines changed: 35 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -68,6 +68,41 @@ function Test-NewDeploymentFromTemplateFile
6868
}
6969
}
7070

71+
<#
72+
.SYNOPSIS
73+
Tests nested deployment.
74+
#>
75+
function Test-NestedDeploymentFromTemplateFile
76+
{
77+
# Setup
78+
$rgname = Get-ResourceGroupName
79+
$rname = Get-ResourceName
80+
$rglocation = Get-ProviderLocation ResourceManagement
81+
$location = Get-ProviderLocation "Microsoft.Web/sites"
82+
83+
try
84+
{
85+
# Test
86+
New-AzureRmResourceGroup -Name $rgname -Location $rglocation
87+
88+
$deployment = New-AzureRmResourceGroupDeployment -Name $rname -ResourceGroupName $rgname -TemplateFile sampleNestedTemplate.json -TemplateParameterFile sampleNestedTemplateParams.json
89+
90+
# Assert
91+
Assert-AreEqual Succeeded $deployment.ProvisioningState
92+
93+
$subId = (Get-AzureRmContext).Subscription.SubscriptionId
94+
$deploymentId = "/subscriptions/$subId/resourcegroups/$rgname/providers/Microsoft.Resources/deployments/$rname"
95+
$getById = Get-AzureRmResourceGroupDeployment -Id $deploymentId
96+
Assert-AreEqual $getById.DeploymentName $deployment.DeploymentName
97+
}
98+
99+
finally
100+
{
101+
# Cleanup
102+
Clean-ResourceGroup $rgname
103+
}
104+
}
105+
71106
<#
72107
.SYNOPSIS
73108
Tests deployment via template file and parameter file with KeyVault reference.

src/ResourceManager/Resources/Commands.Resources.Test/SessionRecords/Microsoft.Azure.Commands.Resources.Test.ScenarioTests.DeploymentTests/TestNestedDeploymentFromTemplateFile.json

Lines changed: 4299 additions & 0 deletions
Large diffs are not rendered by default.
Lines changed: 29 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,29 @@
1+
{
2+
"$schema": "https://schema.management.azure.com/schemas/2015-01-01/deploymentTemplate.json#",
3+
"contentVersion": "1.0.0.0",
4+
"parameters": {
5+
"StorageAccountName": {
6+
"type": "String"
7+
}
8+
},
9+
"variables": {
10+
"templatelink": "https://raw.githubusercontent.com/vivsriaus/armtemplates/master/newStorageAccount.json"
11+
},
12+
"resources": [{
13+
"apiVersion": "2015-01-01",
14+
"name": "nestedTemplate",
15+
"type": "Microsoft.Resources/deployments",
16+
"properties": {
17+
"mode": "incremental",
18+
"templateLink": {
19+
"uri": "[variables('templatelink')]",
20+
"contentVersion": "1.0.0.0"
21+
},
22+
"parameters": {
23+
"StorageAccountName": {
24+
"value": "[parameters('StorageAccountName')]"
25+
}
26+
}
27+
}
28+
}]
29+
}
Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
{
2+
"$schema": "http://schema.management.azure.com/schemas/2015-01-01/deploymentParameters.json#",
3+
"contentVersion": "1.0.0.0",
4+
"parameters": {
5+
"StorageAccountName": {
6+
"value": "testvivek52134"
7+
}
8+
}
9+
}

0 commit comments

Comments
 (0)