Azure / Azure/azure-powershell

[NetCore 0.13.1] AzureRM.NetCore\[New|Get]-AzureRmResourceGroupDeployment returns parameter as Json objects/arrays

Open
#7,410 10 comments 0 reactions 1 assignee Claimed by @Tiano2017 View on GitHub
act-identity-squad ARM ARM - Templates customer-reported feature-request Service Attention
Dominant language
C#
Stars
4.8k
Forks
4.3k
Avg merge
2d 17h
Merged PRs (30d)
51

Description

### Description

The AzureRM functions New-AzureRmResourceGroupDeployment and Get-AzureRmResourceGroupDeployment return an object that contains a hashtable of parameters used at deployment time. When the parameter is of type Object or Array, the value in the hashtable doesn't match what was provided.

### Script/Steps for Reproduction

```powershell
# 1. Download the test
$complexTemplateURL = "https://github.com/Azure/azure-powershell/raw/master/src/ResourceManager/Resources/Commands.Resources.Test/complexParametersTemplate.json"
$response = Invoke-WebRequest -Uri $complexTemplateURL
if ($response.StatusCode -ne "200") {throw "Download Failed"}
$response.Content | Out-File "complexParametersTemplate.json" -Force

# 2. Create a Resource Group
$resourceGroupName = "deploymentTest-rg"
$location = "East US"
$rg = New-AzureRmResourceGroup -Name $resourceGroupName -Location $location
if ($null -eq $rg) {throw "Sort the problem with the resource group"}

# 3. Deploy a the test template
$templateParameters = @{
appSku = @{
code = "f1"
name = "Free"
}
servicePlan = "PlanBOSpace"
ranks = @("a", "b")
}
$deployment = New-AzureRmResourceGroupDeployment -ResourceGroupName $resourceGroupName -TemplateParameterObject $templateParameters -TemplateFile "complexParametersTemplate.json" -Confirm:$false -Force

# 4. Verify that the output parameters match the input.
# The deployment variable here is the same as above.
$workaround = $false
$deployment = Get-AzureRmResourceGroupDeployment -ResourceGroupName $resourceGroupName
foreach ($parameter in $deployment.Parameters.Keys) {
$deploymentParameterValue = $deployment.Parameters.$parameter.Value
# This workaround requires PowerShell Core 6.1
if (($workaround) -and ($deployment.Parameters.$parameter.Type -eq "Object")) {
Write-Verbose "Comparing an object."
$deploymentParameterValue = ($deployment.Parameters.$parameter.Value.ToString() | ConvertFrom-Json -AsHashtable)
}
# This workaround works with PowerShell 5.1
if (($workaround) -and ($deployment.Parameters.$parameter.Type -eq "Array")) {
Write-Verbose "Comparing an array."
$deploymentParameterValue = ($deployment.Parameters.$parameter.Value.ToString() | ConvertFrom-Json)
}
$objectComparisonResult = Compare-Object -ReferenceObject $templateParameters.$parameter -DifferenceObject $deploymentParameterValue
if ($null -eq $objectComparisonResult) {
Write-Host ("Matched: {0} {1} {2}" -f $parameter, $deployment.Parameters.$parameter.Type, $deployment.Parameters.$parameter.Value)
} else {
Write-Host "Failed!!"
$objectComparisonResult
}
}
```

### Module Version

```powershell
Get-Module -ListAvailable

Directory: C:\Program Files\PowerShell\Modules

ModuleType Version Name PSEdition ExportedCommands
---------- ------- ---- --------- ----------------
Script 0.13.1 Azure.AnalysisServices.Netcore Core {Add-AzureAnalysisServicesAccount, Restart-Azure...
Script 0.13.1 Azure.Storage.Netcore Core {Get-AzureStorageTable, New-AzureStorageTableSAS...
Script 0.13.1 AzureRM.Aks.Netcore Core {Get-AzureRmAks, New-AzureRmAks, Remove-AzureRmA...
Script 0.13.1 AzureRM.AnalysisServices.Netcore Core {Resume-AzureRmAnalysisServicesServer, Suspend-A...
Script 0.13.1 AzureRM.ApiManagement.Netcore Core {Add-AzureRmApiManagementRegion, Get-AzureRmApiM...
Script 0.13.1 AzureRM.ApplicationInsights.Netcore Core {Get-AzureRmApplicationInsights, New-AzureRmAppl...
Script 0.13.1 AzureRM.Automation.Netcore Core {Get-AzureRMAutomationHybridWorkerGroup, Get-Azu...
Script 0.13.1 AzureRM.Batch.Netcore Core {Remove-AzureRmBatchAccount, Get-AzureRmBatchAcc...
Script 0.13.1 AzureRM.Billing.Netcore Core {Get-AzureRmBillingInvoice, Get-AzureRmBillingPe...
Script 0.13.1 AzureRM.Cdn.Netcore Core {Get-AzureRmCdnProfile, Get-AzureRmCdnProfileSso...
Script 0.13.1 AzureRM.CognitiveServices.Netcore Core {Get-AzureRmCognitiveServicesAccount, Get-AzureR...
Script 0.13.1 AzureRM.Compute.Netcore Core {Remove-AzureRmAvailabilitySet, Get-AzureRmAvail...
Script 0.13.1 AzureRM.Consumption.Netcore Core {Get-AzureRmConsumptionBudget, Get-AzureRmConsum...
Script 0.13.1 AzureRM.ContainerInstance.Netcore Core {New-AzureRmContainerGroup, Get-AzureRmContainer...
Script 0.13.1 AzureRM.ContainerRegistry.Netcore Core {New-AzureRmContainerRegistry, Get-AzureRmContai...
Script 0.13.1 AzureRM.DataLakeAnalytics.Netcore Core {Get-AzureRmDataLakeAnalyticsDataSource, New-Azu...
Script 0.13.1 AzureRM.DataLakeStore.Netcore Core {Get-AzureRmDataLakeStoreTrustedIdProvider, Remo...
Script 0.13.1 AzureRM.DevTestLabs.Netcore Core {Get-AzureRmDtlAllowedVMSizesPolicy, Get-AzureRm...
Script 0.13.1 AzureRM.Dns.Netcore Core {Get-AzureRmDnsRecordSet, New-AzureRmDnsRecordCo...
Script 0.13.1 AzureRM.EventGrid.Netcore Core {New-AzureRmEventGridTopic, Get-AzureRmEventGrid...
Script 0.13.1 AzureRM.EventHub.Netcore Core {New-AzureRmEventHubNamespace, Get-AzureRmEventH...
Script 0.13.1 AzureRM.Insights.Netcore Core {Get-AzureRmMetricDefinition, Get-AzureRmMetric,...
Script 0.13.1 AzureRM.IotHub.Netcore Core {Add-AzureRmIotHubKey, Get-AzureRmIotHubEventHub...
Script 0.13.1 AzureRM.KeyVault.Netcore Core {Add-AzureKeyVaultCertificate, Update-AzureKeyVa...
Script 0.13.1 AzureRM.LogicApp.Netcore Core {Get-AzureRmIntegrationAccountAgreement, Get-Azu...
Script 0.13.1 AzureRM.MachineLearning.Netcore Core {Move-AzureRmMlCommitmentAssociation, Get-AzureR...
Script 0.13.1 AzureRM.MachineLearningCompute.N... Core {Get-AzureRmMlOpCluster, Get-AzureRmMlOpClusterK...
Script 0.13.1 AzureRM.MarketplaceOrdering.Netcore Core {Get-AzureRmMarketplaceTerms, Set-AzureRmMarketp...
Script 0.13.1 AzureRM.Media.Netcore Core {Sync-AzureRmMediaServiceStorageKeys, Set-AzureR...
Script 0.13.1 AzureRM.Netcore Core
Script 0.13.1 AzureRM.Network.Netcore Core {Add-AzureRmApplicationGatewayAuthenticationCert...
Script 0.13.1 AzureRM.NotificationHubs.Netcore Core {Get-AzureRmNotificationHub, Get-AzureRmNotifica...
Script 0.13.1 AzureRM.OperationalInsights.Netcore Core {New-AzureRmOperationalInsightsAzureActivityLogD...
Script 0.13.1 AzureRM.PolicyInsights.Netcore Core {Get-AzureRmPolicyEvent, Get-AzureRmPolicyState,...
Script 0.13.1 AzureRM.PowerBIEmbedded.Netcore Core {Remove-AzureRmPowerBIWorkspaceCollection, Get-A...
Script 0.13.1 AzureRM.Profile.Netcore Core {Disable-AzureRmDataCollection, Disable-AzureRmC...
Script 0.13.1 AzureRM.Relay.Netcore Core {New-AzureRmRelayNamespace, Get-AzureRmRelayName...
Script 0.13.1 AzureRM.Resources.Netcore Core {Get-AzureRmProviderOperation, Remove-AzureRmRol...
Script 0.13.1 AzureRM.ServiceBus.Netcore Core {New-AzureRmServiceBusNamespace, Get-AzureRmServ...
Script 0.13.1 AzureRM.ServiceFabric.Netcore Core {Add-AzureRmServiceFabricApplicationCertificate,...
Script 0.13.1 AzureRM.Sql.Netcore Core {Get-AzureRmSqlDatabaseTransparentDataEncryption...
Script 0.13.1 AzureRM.Storage.Netcore Core {Get-AzureRmStorageAccount, Get-AzureRmStorageAc...
Script 0.13.1 AzureRM.StreamAnalytics.Netcore Core {Get-AzureRmStreamAnalyticsFunction, Get-AzureRm...
Script 0.13.1 AzureRM.Tags.Netcore Core {Remove-AzureRmTag, Get-AzureRmTag, New-AzureRmTag}
Script 0.13.1 AzureRM.TrafficManager.Netcore Core {Disable-AzureRmTrafficManagerEndpoint, Enable-A...
Script 0.13.1 AzureRM.UsageAggregates.Netcore Core Get-UsageAggregates
Script 0.13.1 AzureRM.Websites.Netcore Core {Get-AzureRmAppServicePlan, Set-AzureRmAppServic...
Script 5.4.1 InvokeBuild Desk {Invoke-Build, Build-Checkpoint, Build-Parallel}
Script 4.4.0 Pester Desk {Describe, Context, It, Should...}
Script 4.7.1 psake Desk {Invoke-psake, Invoke-Task, Get-PSakeScriptTasks...
Script 0.2.26 PSCodeHealth Desk {Invoke-PSCodeHealth, Get-PSCodeHealthCompliance...
Script 1.17.1 PSScriptAnalyzer Desk {Get-ScriptAnalyzerRule, Invoke-ScriptAnalyzer, ...

Directory: C:\program files\powershell\6\Modules

ModuleType Version Name PSEdition ExportedCommands
---------- ------- ---- --------- ----------------
Manifest 6.1.0.0 CimCmdlets Core {Get-CimAssociatedInstance, Get-CimClass, Get-Ci...
Manifest 1.1.0.0 Microsoft.PowerShell.Archive Desk {Compress-Archive, Expand-Archive}
Manifest 6.1.0.0 Microsoft.PowerShell.Diagnostics Core {Get-WinEvent, New-WinEvent}
Manifest 6.1.0.0 Microsoft.PowerShell.Host Core {Start-Transcript, Stop-Transcript}
Manifest 6.1.0.0 Microsoft.PowerShell.Management Core {Add-Content, Clear-Content, Clear-ItemProperty,...
Manifest 6.1.0.0 Microsoft.PowerShell.Security Core {Get-Acl, Set-Acl, Get-PfxCertificate, Get-Crede...
Manifest 6.1.0.0 Microsoft.PowerShell.Utility Core {Format-List, Format-Custom, Format-Table, Forma...
Manifest 6.1.0.0 Microsoft.WSMan.Management Core {Disable-WSManCredSSP, Enable-WSManCredSSP, Get-...
Script 1.1.7.2 PackageManagement Desk {Find-Package, Get-Package, Get-PackageProvider,...
Script 1.6.7 PowerShellGet Desk {Find-Command, Find-DSCResource, Find-Module, Fi...
Script 0.0 PSDesiredStateConfiguration Desk {GetImplementingModulePath, GetPatterns, Set-Nod...
Script 6.1.0.0 PSDiagnostics Core {Disable-PSTrace, Disable-PSWSManCombinedTrace, ...
Script 2.0.0 PSReadLine Desk {Get-PSReadLineKeyHandler, Set-PSReadLineKeyHand...
Binary 1.1.2 ThreadJob Desk Start-ThreadJob
```

### Environment Data

```powershell
$PSVersionTable

Name Value
---- -----
PSVersion 6.1.0
PSEdition Core
GitCommitId 6.1.0
OS Microsoft Windows 10.0.17134
Platform Win32NT
PSCompatibleVersions {1.0, 2.0, 3.0, 4.0...}
PSRemotingProtocolVersion 2.3
SerializationVersion 1.1.0.1
WSManStackVersion 3.0
```

### Debug Output

```powershell
PS C:\src\github> $DebugPreference='Continue'
PS C:\src\github>
PS C:\src\github> # 1. Download the test
PS C:\src\github> $complexTemplateURL = "https://github.com/Azure/azure-powershell/raw/master/src/ResourceManager/Resources/Commands.Resources.Test/complexParametersTemplate.json"
PS C:\src\github> $response = Invoke-WebRequest -Uri $complexTemplateURL
PS C:\src\github> if ($response.StatusCode -ne "200") {throw "Download Failed"}
PS C:\src\github> $response.Content | Out-File "complexParametersTemplate.json" -Force
PS C:\src\github>
PS C:\src\github> # 2. Create a Resource Group
PS C:\src\github> $resourceGroupName = "deploymentTest-rg"
PS C:\src\github> $location = "East US"
PS C:\src\github> $rg = New-AzureRmResourceGroup -Name $resourceGroupName -Location $location
DEBUG: 1:14:32 PM - NewAzureResourceGroupCmdlet begin processing with ParameterSet '__AllParameterSets'.
DEBUG: 1:14:32 PM - using account id 'user@domain.com'...
DEBUG: [Common.Authentication]: Authenticating using Account: 'user@domain.com', environment: 'AzureCloud', tenant: 'd6f493b6-8cac-4ce3-ad45-59648959894e'
DEBUG: ============================ HTTP REQUEST ============================

HTTP Method:
HEAD

Absolute Uri:
https://management.azure.com/subscriptions/27188119-aa7b-45f4-ae3e-80d26b077cb9/resourcegroups/deploymentTest-rg?api-version=2017-05-10

Headers:
x-ms-client-request-id : ecfcc5d2-abda-4fe3-bf14-2274eb77d556
Accept-Language : en-US

Body:

DEBUG: ============================ HTTP RESPONSE ============================

Status Code:
NotFound

Headers:
Cache-Control : no-cache
Pragma : no-cache
x-ms-failure-cause : gateway
x-ms-ratelimit-remaining-subscription-reads: 11999
x-ms-request-id : 6637953a-31af-47fd-b74d-bf089127958c
x-ms-correlation-request-id : 6637953a-31af-47fd-b74d-bf089127958c
x-ms-routing-request-id : NORTHCENTRALUS:20180927T181433Z:6637953a-31af-47fd-b74d-bf089127958c
Strict-Transport-Security : max-age=31536000; includeSubDomains
X-Content-Type-Options : nosniff
Date : Thu, 27 Sep 2018 18:14:32 GMT

Body:

DEBUG: ============================ HTTP REQUEST ============================

HTTP Method:
PUT

Absolute Uri:
https://management.azure.com/subscriptions/27188119-aa7b-45f4-ae3e-80d26b077cb9/resourcegroups/deploymentTest-rg?api-version=2017-05-10

Headers:
x-ms-client-request-id : 84e2f644-a4d1-4e79-86cc-61a40e817071
Accept-Language : en-US

Body:
{
"location": "East US"
}

DEBUG: ============================ HTTP RESPONSE ============================

Status Code:
Created

Headers:
Cache-Control : no-cache
Pragma : no-cache
x-ms-ratelimit-remaining-subscription-writes: 1199
x-ms-request-id : 58fb2124-418c-437d-986d-0505f40bf717
x-ms-correlation-request-id : 58fb2124-418c-437d-986d-0505f40bf717
x-ms-routing-request-id : NORTHCENTRALUS:20180927T181434Z:58fb2124-418c-437d-986d-0505f40bf717
Strict-Transport-Security : max-age=31536000; includeSubDomains
X-Content-Type-Options : nosniff
Date : Thu, 27 Sep 2018 18:14:34 GMT

Body:
{
"id": "/subscriptions/27188119-aa7b-45f4-ae3e-80d26b077cb9/resourceGroups/deploymentTest-rg",
"name": "deploymentTest-rg",
"location": "eastus",
"properties": {
"provisioningState": "Succeeded"
}
}

DEBUG: AzureQoSEvent: CommandName - New-AzureRmResourceGroup; IsSuccess - True; Duration - 00:00:01.1194746; Exception - ;
DEBUG: Finish sending metric.
DEBUG: 1:14:34 PM - NewAzureResourceGroupCmdlet end processing.
DEBUG: 1:14:34 PM - NewAzureResourceGroupCmdlet end processing.
PS C:\src\github> if ($null -eq $rg) {throw "Sort the problem with the resource group"}
PS C:\src\github>
PS C:\src\github> # 3. Deploy a the test template
PS C:\src\github> $templateParameters = @{
>> appSku = @{
>> code = "f1"
>> name = "Free"
>> }
>> servicePlan = "PlanBOSpace"
>> ranks = @("a", "b")
>> }
PS C:\src\github> $deployment = New-AzureRmResourceGroupDeployment -ResourceGroupName $resourceGroupName -TemplateParameterObject $templateParameters -TemplateFile "complexParametersTemplate.json" -Confirm:$false -Force
DEBUG: 1:14:34 PM - NewAzureResourceGroupDeploymentCmdlet begin processing with ParameterSet 'ByTemplateFileAndParameterObject'.
DEBUG: 1:14:34 PM - using account id 'user@domain.com'...
DEBUG: [Common.Authentication]: Authenticating using Account: 'user@domain.com', environment: 'AzureCloud', tenant: 'd6f493b6-8cac-4ce3-ad45-59648959894e'
DEBUG: ============================ HTTP REQUEST ============================

HTTP Method:
POST

Absolute Uri:
https://management.azure.com/subscriptions/27188119-aa7b-45f4-ae3e-80d26b077cb9/resourcegroups/deploymentTest-rg/providers/Microsoft.Resources/deployments/complexParametersTemplate/validate?api-version=2017-05-10

Headers:
x-ms-client-request-id : f11866e0-47b1-4843-b9dc-837b14c9adbc
Accept-Language : en-US

Body:
{
"properties": {
"template": {
"$schema": "http://schema.management.azure.com/schemas/2015-01-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"parameters": {
"appSku": {
"type": "object",
"allowedValues": [
{
"code": "f1",
"name": "Free"
},
{
"code": "f2",
"name": "Shared"
},
{
"code": "f3",
"name": {
"major": "Official",
"minor": "1.0"
}
}
],
"defaultValue": {
"code": "f1",
"name": "Free"
}
},
"servicePlan": {
"type": "string"
},
"ranks": {
"type": "array",
"allowedValues": [
[
"a",
"b"
],
[
"c",
"d"
],
[
"d",
"e",
"f"
]
],
"defaultValue": [
"a",
"b"
]
}
},
"variables": {},
"resources": [
{
"type": "Microsoft.Storage/storageAccounts",
"name": "[concat('tianotest010', parameters('appSku').code, parameters('ranks')[0])]",
"apiVersion": "2015-06-15",
"location": "[resourceGroup().location]",
"properties": {
"accountType": "Standard_LRS"
}
}
],
"outputs": {}
},
"parameters": {
"appSku": {
"value": {
"code": "f1",
"name": "Free"
}
},
"servicePlan": {
"value": "PlanBOSpace"
},
"ranks": {
"value": [
"a",
"b"
]
}
},
"mode": "Incremental"
}
}

DEBUG: ============================ HTTP RESPONSE ============================

Status Code:
OK

Headers:
Cache-Control : no-cache
Pragma : no-cache
x-ms-ratelimit-remaining-subscription-writes: 1199
x-ms-request-id : 77b3ec30-64cc-4f79-add2-a7e2c74613c1
x-ms-correlation-request-id : 77b3ec30-64cc-4f79-add2-a7e2c74613c1
x-ms-routing-request-id : NORTHCENTRALUS:20180927T181436Z:77b3ec30-64cc-4f79-add2-a7e2c74613c1
Strict-Transport-Security : max-age=31536000; includeSubDomains
X-Content-Type-Options : nosniff
Date : Thu, 27 Sep 2018 18:14:36 GMT

Body:
{
"id": "/subscriptions/27188119-aa7b-45f4-ae3e-80d26b077cb9/resourceGroups/deploymentTest-rg/providers/Microsoft.Resources/deployments/complexParametersTemplate",
"name": "complexParametersTemplate",
"properties": {
"templateHash": "6287512875150736918",
"parameters": {
"appSku": {
"type": "Object",
"value": {
"code": "f1",
"name": "Free"
}
},
"servicePlan": {
"type": "String",
"value": "PlanBOSpace"
},
"ranks": {
"type": "Array",
"value": [
"a",
"b"
]
}
},
"mode": "Incremental",
"provisioningState": "Succeeded",
"timestamp": "2018-09-27T18:14:36.4520202Z",
"duration": "PT0S",
"correlationId": "77b3ec30-64cc-4f79-add2-a7e2c74613c1",
"providers": [
{
"namespace": "Microsoft.Storage",
"resourceTypes": [
{
"resourceType": "storageAccounts",
"locations": [
"eastus"
]
}
]
}
],
"dependencies": [],
"validatedResources": [
{
"apiVersion": "2015-06-15",
"id": "/subscriptions/27188119-aa7b-45f4-ae3e-80d26b077cb9/resourceGroups/deploymentTest-rg/providers/Microsoft.Storage/storageAccounts/tianotest010f1a",
"name": "tianotest010f1a",
"type": "Microsoft.Storage/storageAccounts",
"location": "eastus",
"properties": {
"accountType": "Standard_LRS"
}
}
]
}
}

DEBUG: ============================ HTTP REQUEST ============================

HTTP Method:
PUT

Absolute Uri:
https://management.azure.com/subscriptions/27188119-aa7b-45f4-ae3e-80d26b077cb9/resourcegroups/deploymentTest-rg/providers/Microsoft.Resources/deployments/complexParametersTemplate?api-version=2017-05-10

Headers:
x-ms-client-request-id : ee9f50e7-cea3-48fd-98d8-e78379fc3039
Accept-Language : en-US

Body:
{
"properties": {
"template": {
"$schema": "http://schema.management.azure.com/schemas/2015-01-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"parameters": {
"appSku": {
"type": "object",
"allowedValues": [
{
"code": "f1",
"name": "Free"
},
{
"code": "f2",
"name": "Shared"
},
{
"code": "f3",
"name": {
"major": "Official",
"minor": "1.0"
}
}
],
"defaultValue": {
"code": "f1",
"name": "Free"
}
},
"servicePlan": {
"type": "string"
},
"ranks": {
"type": "array",
"allowedValues": [
[
"a",
"b"
],
[
"c",
"d"
],
[
"d",
"e",
"f"
]
],
"defaultValue": [
"a",
"b"
]
}
},
"variables": {},
"resources": [
{
"type": "Microsoft.Storage/storageAccounts",
"name": "[concat('tianotest010', parameters('appSku').code, parameters('ranks')[0])]",
"apiVersion": "2015-06-15",
"location": "[resourceGroup().location]",
"properties": {
"accountType": "Standard_LRS"
}
}
],
"outputs": {}
},
"parameters": {
"appSku": {
"value": {
"code": "f1",
"name": "Free"
}
},
"servicePlan": {
"value": "PlanBOSpace"
},
"ranks": {
"value": [
"a",
"b"
]
}
},
"mode": "Incremental"
}
}

DEBUG: ============================ HTTP RESPONSE ============================

Status Code:
Created

Headers:
Cache-Control : no-cache
Pragma : no-cache
Azure-AsyncOperation : https://management.azure.com/subscriptions/27188119-aa7b-45f4-ae3e-80d26b077cb9/resourcegroups/deploymentTest-rg/providers/Microsoft.Resources/deployments/complexParametersTemplate/operationStatuses/08586635348074992115?api-version=2017-05-10
x-ms-ratelimit-remaining-subscription-writes: 1198
x-ms-request-id : afa0e7ac-02b7-48cc-8a29-5bafefa83baa
x-ms-correlation-request-id : afa0e7ac-02b7-48cc-8a29-5bafefa83baa
x-ms-routing-request-id : NORTHCENTRALUS:20180927T181438Z:afa0e7ac-02b7-48cc-8a29-5bafefa83baa
Strict-Transport-Security : max-age=31536000; includeSubDomains
X-Content-Type-Options : nosniff
Date : Thu, 27 Sep 2018 18:14:37 GMT

Body:
{
"id": "/subscriptions/27188119-aa7b-45f4-ae3e-80d26b077cb9/resourceGroups/deploymentTest-rg/providers/Microsoft.Resources/deployments/complexParametersTemplate",
"name": "complexParametersTemplate",
"properties": {
"templateHash": "6287512875150736918",
"parameters": {
"appSku": {
"type": "Object",
"value": {
"code": "f1",
"name": "Free"
}
},
"servicePlan": {
"type": "String",
"value": "PlanBOSpace"
},
"ranks": {
"type": "Array",
"value": [
"a",
"b"
]
}
},
"mode": "Incremental",
"provisioningState": "Accepted",
"timestamp": "2018-09-27T18:14:38.393472Z",
"duration": "PT0.4150674S",
"correlationId": "afa0e7ac-02b7-48cc-8a29-5bafefa83baa",
"providers": [
{
"namespace": "Microsoft.Storage",
"resourceTypes": [
{
"resourceType": "storageAccounts",
"locations": [
"eastus"
]
}
]
}
],
"dependencies": []
}
}

DEBUG: ============================ HTTP REQUEST ============================

HTTP Method:
GET

Absolute Uri:
https://management.azure.com/subscriptions/27188119-aa7b-45f4-ae3e-80d26b077cb9/resourcegroups/deploymentTest-rg/deployments/complexParametersTemplate/operations?api-version=2017-05-10

Headers:
x-ms-client-request-id : 6a6dd2d2-e8b6-45bf-a073-ee17b7315292
Accept-Language : en-US

Body:

DEBUG: ============================ HTTP RESPONSE ============================

Status Code:
OK

Headers:
Cache-Control : no-cache
Pragma : no-cache
x-ms-ratelimit-remaining-subscription-reads: 11999
x-ms-request-id : 8a52558e-afa6-4a91-b0f6-bde4b115bf0a
x-ms-correlation-request-id : 8a52558e-afa6-4a91-b0f6-bde4b115bf0a
x-ms-routing-request-id : NORTHCENTRALUS:20180927T181443Z:8a52558e-afa6-4a91-b0f6-bde4b115bf0a
Strict-Transport-Security : max-age=31536000; includeSubDomains
X-Content-Type-Options : nosniff
Date : Thu, 27 Sep 2018 18:14:42 GMT

Body:
{
"value": [
{
"id": "/subscriptions/27188119-aa7b-45f4-ae3e-80d26b077cb9/resourceGroups/deploymentTest-rg/providers/Microsoft.Resources/deployments/complexParametersTemplate/operations/10340A3D37B1A72D",
"operationId": "10340A3D37B1A72D",
"properties": {
"provisioningOperation": "Create",
"provisioningState": "Running",
"timestamp": "2018-09-27T18:14:43.5570664Z",
"duration": "PT4.808616S",
"trackingId": "e7462be3-1dae-4b9c-a96b-06bbd63fc898",
"serviceRequestId": "515c4e8c-c938-4e84-8da9-d6f604631014",
"statusCode": "Accepted",
"targetResource": {
"id": "/subscriptions/27188119-aa7b-45f4-ae3e-80d26b077cb9/resourceGroups/deploymentTest-rg/providers/Microsoft.Storage/storageAccounts/tianotest010f1a",
"resourceType": "Microsoft.Storage/storageAccounts",
"resourceName": "tianotest010f1a"
}
}
}
]
}

DEBUG: ============================ HTTP REQUEST ============================

HTTP Method:
GET

Absolute Uri:
https://management.azure.com/subscriptions/27188119-aa7b-45f4-ae3e-80d26b077cb9/resourcegroups/deploymentTest-rg/providers/Microsoft.Resources/deployments/complexParametersTemplate?api-version=2017-05-10

Headers:
x-ms-client-request-id : 0c95bbc1-576a-41a7-85d8-96f50989075e
Accept-Language : en-US

Body:

DEBUG: ============================ HTTP RESPONSE ============================

Status Code:
OK

Headers:
Cache-Control : no-cache
Pragma : no-cache
Retry-After : 18
x-ms-ratelimit-remaining-subscription-reads: 11998
x-ms-request-id : 1564e30d-9b3f-4dba-9e6f-ccbc82eeba06
x-ms-correlation-request-id : 1564e30d-9b3f-4dba-9e6f-ccbc82eeba06
x-ms-routing-request-id : NORTHCENTRALUS:20180927T181443Z:1564e30d-9b3f-4dba-9e6f-ccbc82eeba06
Strict-Transport-Security : max-age=31536000; includeSubDomains
X-Content-Type-Options : nosniff
Date : Thu, 27 Sep 2018 18:14:43 GMT

Body:
{
"id": "/subscriptions/27188119-aa7b-45f4-ae3e-80d26b077cb9/resourceGroups/deploymentTest-rg/providers/Microsoft.Resources/deployments/complexParametersTemplate",
"name": "complexParametersTemplate",
"properties": {
"templateHash": "6287512875150736918",
"parameters": {
"appSku": {
"type": "Object",
"value": {
"code": "f1",
"name": "Free"
}
},
"servicePlan": {
"type": "String",
"value": "PlanBOSpace"
},
"ranks": {
"type": "Array",
"value": [
"a",
"b"
]
}
},
"mode": "Incremental",
"provisioningState": "Running",
"timestamp": "2018-09-27T18:14:43.4377325Z",
"duration": "PT5.4593279S",
"correlationId": "afa0e7ac-02b7-48cc-8a29-5bafefa83baa",
"providers": [
{
"namespace": "Microsoft.Storage",
"resourceTypes": [
{
"resourceType": "storageAccounts",
"locations": [
"eastus"
]
}
]
}
],
"dependencies": []
}
}

DEBUG: ============================ HTTP REQUEST ============================

HTTP Method:
GET

Absolute Uri:
https://management.azure.com/subscriptions/27188119-aa7b-45f4-ae3e-80d26b077cb9/resourcegroups/deploymentTest-rg/deployments/complexParametersTemplate/operations?api-version=2017-05-10

Headers:
x-ms-client-request-id : eb667d32-371b-4ec3-90da-6ce71667b20d
Accept-Language : en-US

Body:

DEBUG: ============================ HTTP RESPONSE ============================

Status Code:
OK

Headers:
Cache-Control : no-cache
Pragma : no-cache
x-ms-ratelimit-remaining-subscription-reads: 11997
x-ms-request-id : 041c64af-3c58-45e1-8b31-964f10e25448
x-ms-correlation-request-id : 041c64af-3c58-45e1-8b31-964f10e25448
x-ms-routing-request-id : NORTHCENTRALUS:20180927T181502Z:041c64af-3c58-45e1-8b31-964f10e25448
Strict-Transport-Security : max-age=31536000; includeSubDomains
X-Content-Type-Options : nosniff
Date : Thu, 27 Sep 2018 18:15:01 GMT

Body:
{
"value": [
{
"id": "/subscriptions/27188119-aa7b-45f4-ae3e-80d26b077cb9/resourceGroups/deploymentTest-rg/providers/Microsoft.Resources/deployments/complexParametersTemplate/operations/10340A3D37B1A72D",
"operationId": "10340A3D37B1A72D",
"properties": {
"provisioningOperation": "Create",
"provisioningState": "Running",
"timestamp": "2018-09-27T18:15:01.0131505Z",
"duration": "PT22.2647001S",
"trackingId": "67d862f3-f2d5-4f14-90c4-26b8df13149f",
"serviceRequestId": "515c4e8c-c938-4e84-8da9-d6f604631014",
"statusCode": "OK",
"targetResource": {
"id": "/subscriptions/27188119-aa7b-45f4-ae3e-80d26b077cb9/resourceGroups/deploymentTest-rg/providers/Microsoft.Storage/storageAccounts/tianotest010f1a",
"resourceType": "Microsoft.Storage/storageAccounts",
"resourceName": "tianotest010f1a"
}
}
}
]
}

DEBUG: ============================ HTTP REQUEST ============================

HTTP Method:
GET

Absolute Uri:
https://management.azure.com/subscriptions/27188119-aa7b-45f4-ae3e-80d26b077cb9/resourcegroups/deploymentTest-rg/providers/Microsoft.Resources/deployments/complexParametersTemplate?api-version=2017-05-10

Headers:
x-ms-client-request-id : cfcfecbf-9ec0-4a19-916f-a290877e86c9
Accept-Language : en-US

Body:

DEBUG: ============================ HTTP RESPONSE ============================

Status Code:
OK

Headers:
Cache-Control : no-cache
Pragma : no-cache
Retry-After : 5
x-ms-ratelimit-remaining-subscription-reads: 11996
x-ms-request-id : 20bd2cbf-4878-479c-9a9b-3eca233ad6b9
x-ms-correlation-request-id : 20bd2cbf-4878-479c-9a9b-3eca233ad6b9
x-ms-routing-request-id : NORTHCENTRALUS:20180927T181502Z:20bd2cbf-4878-479c-9a9b-3eca233ad6b9
Strict-Transport-Security : max-age=31536000; includeSubDomains
X-Content-Type-Options : nosniff
Date : Thu, 27 Sep 2018 18:15:01 GMT

Body:
{
"id": "/subscriptions/27188119-aa7b-45f4-ae3e-80d26b077cb9/resourceGroups/deploymentTest-rg/providers/Microsoft.Resources/deployments/complexParametersTemplate",
"name": "complexParametersTemplate",
"properties": {
"templateHash": "6287512875150736918",
"parameters": {
"appSku": {
"type": "Object",
"value": {
"code": "f1",
"name": "Free"
}
},
"servicePlan": {
"type": "String",
"value": "PlanBOSpace"
},
"ranks": {
"type": "Array",
"value": [
"a",
"b"
]
}
},
"mode": "Incremental",
"provisioningState": "Running",
"timestamp": "2018-09-27T18:14:43.4377325Z",
"duration": "PT5.4593279S",
"correlationId": "afa0e7ac-02b7-48cc-8a29-5bafefa83baa",
"providers": [
{
"namespace": "Microsoft.Storage",
"resourceTypes": [
{
"resourceType": "storageAccounts",
"locations": [
"eastus"
]
}
]
}
],
"dependencies": []
}
}

DEBUG: ============================ HTTP REQUEST ============================

HTTP Method:
GET

Absolute Uri:
https://management.azure.com/subscriptions/27188119-aa7b-45f4-ae3e-80d26b077cb9/resourcegroups/deploymentTest-rg/deployments/complexParametersTemplate/operations?api-version=2017-05-10

Headers:
x-ms-client-request-id : 199efca3-217a-4199-a2fd-23d50765f53e
Accept-Language : en-US

Body:

DEBUG: ============================ HTTP RESPONSE ============================

Status Code:
OK

Headers:
Cache-Control : no-cache
Pragma : no-cache
x-ms-ratelimit-remaining-subscription-reads: 11995
x-ms-request-id : 92c4acbb-90b6-4d68-8560-dc2ea7907710
x-ms-correlation-request-id : 92c4acbb-90b6-4d68-8560-dc2ea7907710
x-ms-routing-request-id : NORTHCENTRALUS:20180927T181507Z:92c4acbb-90b6-4d68-8560-dc2ea7907710
Strict-Transport-Security : max-age=31536000; includeSubDomains
X-Content-Type-Options : nosniff
Date : Thu, 27 Sep 2018 18:15:07 GMT

Body:
{
"value": [
{
"id": "/subscriptions/27188119-aa7b-45f4-ae3e-80d26b077cb9/resourceGroups/deploymentTest-rg/providers/Microsoft.Resources/deployments/complexParametersTemplate/operations/10340A3D37B1A72D",
"operationId": "10340A3D37B1A72D",
"properties": {
"provisioningOperation": "Create",
"provisioningState": "Succeeded",
"timestamp": "2018-09-27T18:15:06.5575573Z",
"duration": "PT27.8091069S",
"trackingId": "d16a06ba-03f5-43d9-be97-fc192cb17e2f",
"serviceRequestId": "515c4e8c-c938-4e84-8da9-d6f604631014",
"statusCode": "OK",
"targetResource": {
"id": "/subscriptions/27188119-aa7b-45f4-ae3e-80d26b077cb9/resourceGroups/deploymentTest-rg/providers/Microsoft.Storage/storageAccounts/tianotest010f1a",
"resourceType": "Microsoft.Storage/storageAccounts",
"resourceName": "tianotest010f1a"
}
}
}
]
}

DEBUG: ============================ HTTP REQUEST ============================

HTTP Method:
GET

Absolute Uri:
https://management.azure.com/subscriptions/27188119-aa7b-45f4-ae3e-80d26b077cb9/resourcegroups/deploymentTest-rg/providers/Microsoft.Resources/deployments/complexParametersTemplate?api-version=2017-05-10

Headers:
x-ms-client-request-id : 68dadb07-eb8e-4699-a2b1-3c937948a59e
Accept-Language : en-US

Body:

DEBUG: ============================ HTTP RESPONSE ============================

Status Code:
OK

Headers:
Cache-Control : no-cache
Pragma : no-cache
Retry-After : 5
x-ms-ratelimit-remaining-subscription-reads: 11994
x-ms-request-id : f11ae0e7-9169-4cf6-8eb0-8086a1722da1
x-ms-correlation-request-id : f11ae0e7-9169-4cf6-8eb0-8086a1722da1
x-ms-routing-request-id : NORTHCENTRALUS:20180927T181507Z:f11ae0e7-9169-4cf6-8eb0-8086a1722da1
Strict-Transport-Security : max-age=31536000; includeSubDomains
X-Content-Type-Options : nosniff
Date : Thu, 27 Sep 2018 18:15:07 GMT

Body:
{
"id": "/subscriptions/27188119-aa7b-45f4-ae3e-80d26b077cb9/resourceGroups/deploymentTest-rg/providers/Microsoft.Resources/deployments/complexParametersTemplate",
"name": "complexParametersTemplate",
"properties": {
"templateHash": "6287512875150736918",
"parameters": {
"appSku": {
"type": "Object",
"value": {
"code": "f1",
"name": "Free"
}
},
"servicePlan": {
"type": "String",
"value": "PlanBOSpace"
},
"ranks": {
"type": "Array",
"value": [
"a",
"b"
]
}
},
"mode": "Incremental",
"provisioningState": "Running",
"timestamp": "2018-09-27T18:14:43.4377325Z",
"duration": "PT5.4593279S",
"correlationId": "afa0e7ac-02b7-48cc-8a29-5bafefa83baa",
"providers": [
{
"namespace": "Microsoft.Storage",
"resourceTypes": [
{
"resourceType": "storageAccounts",
"locations": [
"eastus"
]
}
]
}
],
"dependencies": []
}
}

DEBUG: ============================ HTTP REQUEST ============================

HTTP Method:
GET

Absolute Uri:
https://management.azure.com/subscriptions/27188119-aa7b-45f4-ae3e-80d26b077cb9/resourcegroups/deploymentTest-rg/deployments/complexParametersTemplate/operations?api-version=2017-05-10

Headers:
x-ms-client-request-id : 38da998b-9fe3-4674-88f7-dc42430b85dd
Accept-Language : en-US

Body:

DEBUG: ============================ HTTP RESPONSE ============================

Status Code:
OK

Headers:
Cache-Control : no-cache
Pragma : no-cache
x-ms-ratelimit-remaining-subscription-reads: 11993
x-ms-request-id : 4179f2cc-e5fa-478a-b6a0-b9a43d68085f
x-ms-correlation-request-id : 4179f2cc-e5fa-478a-b6a0-b9a43d68085f
x-ms-routing-request-id : NORTHCENTRALUS:20180927T181512Z:4179f2cc-e5fa-478a-b6a0-b9a43d68085f
Strict-Transport-Security : max-age=31536000; includeSubDomains
X-Content-Type-Options : nosniff
Date : Thu, 27 Sep 2018 18:15:12 GMT

Body:
{
"value": [
{
"id": "/subscriptions/27188119-aa7b-45f4-ae3e-80d26b077cb9/resourceGroups/deploymentTest-rg/providers/Microsoft.Resources/deployments/complexParametersTemplate/operations/10340A3D37B1A72D",
"operationId": "10340A3D37B1A72D",
"properties": {
"provisioningOperation": "Create",
"provisioningState": "Succeeded",
"timestamp": "2018-09-27T18:15:06.5575573Z",
"duration": "PT27.8091069S",
"trackingId": "d16a06ba-03f5-43d9-be97-fc192cb17e2f",
"serviceRequestId": "515c4e8c-c938-4e84-8da9-d6f604631014",
"statusCode": "OK",
"targetResource": {
"id": "/subscriptions/27188119-aa7b-45f4-ae3e-80d26b077cb9/resourceGroups/deploymentTest-rg/providers/Microsoft.Storage/storageAccounts/tianotest010f1a",
"resourceType": "Microsoft.Storage/storageAccounts",
"resourceName": "tianotest010f1a"
}
}
},
{
"id": "/subscriptions/27188119-aa7b-45f4-ae3e-80d26b077cb9/resourceGroups/deploymentTest-rg/providers/Microsoft.Resources/deployments/complexParametersTemplate/operations/08586635348074992115",
"operationId": "08586635348074992115",
"properties": {
"provisioningOperation": "EvaluateDeploymentOutput",
"provisioningState": "Succeeded",
"timestamp": "2018-09-27T18:15:09.3254342Z",
"duration": "PT2.5212061S",
"trackingId": "76b7b63b-951a-48ed-b50c-28bcd52d1b96",
"statusCode": "OK",
"statusMessage": null
}
}
]
}

DEBUG: ============================ HTTP REQUEST ============================

HTTP Method:
GET

Absolute Uri:
https://management.azure.com/subscriptions/27188119-aa7b-45f4-ae3e-80d26b077cb9/resourcegroups/deploymentTest-rg/providers/Microsoft.Resources/deployments/complexParametersTemplate?api-version=2017-05-10

Headers:
x-ms-client-request-id : ef4713c7-072e-4a78-a5ba-1275406bc680
Accept-Language : en-US

Body:

DEBUG: ============================ HTTP RESPONSE ============================

Status Code:
OK

Headers:
Cache-Control : no-cache
Pragma : no-cache
x-ms-ratelimit-remaining-subscription-reads: 11992
x-ms-request-id : 445d9768-20c2-44c9-8900-38b9ec1005fb
x-ms-correlation-request-id : 445d9768-20c2-44c9-8900-38b9ec1005fb
x-ms-routing-request-id : NORTHCENTRALUS:20180927T181512Z:445d9768-20c2-44c9-8900-38b9ec1005fb
Strict-Transport-Security : max-age=31536000; includeSubDomains
X-Content-Type-Options : nosniff
Date : Thu, 27 Sep 2018 18:15:12 GMT

Body:
{
"id": "/subscriptions/27188119-aa7b-45f4-ae3e-80d26b077cb9/resourceGroups/deploymentTest-rg/providers/Microsoft.Resources/deployments/complexParametersTemplate",
"name": "complexParametersTemplate",
"properties": {
"templateHash": "6287512875150736918",
"parameters": {
"appSku": {
"type": "Object",
"value": {
"code": "f1",
"name": "Free"
}
},
"servicePlan": {
"type": "String",
"value": "PlanBOSpace"
},
"ranks": {
"type": "Array",
"value": [
"a",
"b"
]
}
},
"mode": "Incremental",
"provisioningState": "Succeeded",
"timestamp": "2018-09-27T18:15:09.3984169Z",
"duration": "PT31.4200123S",
"correlationId": "afa0e7ac-02b7-48cc-8a29-5bafefa83baa",
"providers": [
{
"namespace": "Microsoft.Storage",
"resourceTypes": [
{
"resourceType": "storageAccounts",
"locations": [
"eastus"
]
}
]
}
],
"dependencies": [],
"outputs": {},
"outputResources": [
{
"id": "/subscriptions/27188119-aa7b-45f4-ae3e-80d26b077cb9/resourceGroups/deploymentTest-rg/providers/Microsoft.Storage/storageAccounts/tianotest010f1a"
}
]
}
}

DEBUG: AzureQoSEvent: CommandName - New-AzureRmResourceGroupDeployment; IsSuccess - True; Duration - 00:00:37.6451060; Exception - ;
DEBUG: Finish sending metric.
DEBUG: 1:15:12 PM - NewAzureResourceGroupDeploymentCmdlet end processing.
DEBUG: 1:15:12 PM - NewAzureResourceGroupDeploymentCmdlet end processing.
PS C:\src\github>
PS C:\src\github> # 4. Verify that the output parameters match the input.
PS C:\src\github> # The deployment variable here is the same as above.
PS C:\src\github> $workaround = $false
PS C:\src\github> $deployment = Get-AzureRmResourceGroupDeployment -ResourceGroupName $resourceGroupName
DEBUG: 1:15:12 PM - GetAzureResourceGroupDeploymentCmdlet begin processing with ParameterSet 'GetByResourceGroupDeploymentName'.
DEBUG: 1:15:12 PM - using account id 'user@domain.com'...
DEBUG: [Common.Authentication]: Authenticating using Account: 'user@domain.com', environment: 'AzureCloud', tenant: 'd6f493b6-8cac-4ce3-ad45-59648959894e'
DEBUG: ============================ HTTP REQUEST ============================

HTTP Method:
GET

Absolute Uri:
https://management.azure.com/subscriptions/27188119-aa7b-45f4-ae3e-80d26b077cb9/resourcegroups/deploymentTest-rg/providers/Microsoft.Resources/deployments/?api-version=2017-05-10

Headers:
x-ms-client-request-id : 0d747b75-950d-411f-b6d4-9700d04aa0ee
Accept-Language : en-US

Body:

DEBUG: ============================ HTTP RESPONSE ============================

Status Code:
OK

Headers:
Cache-Control : no-cache
Pragma : no-cache
x-ms-ratelimit-remaining-subscription-reads: 11999
x-ms-request-id : f4ba7c85-9367-4755-b9f4-0146e1081ec5
x-ms-correlation-request-id : f4ba7c85-9367-4755-b9f4-0146e1081ec5
x-ms-routing-request-id : NORTHCENTRALUS:20180927T181513Z:f4ba7c85-9367-4755-b9f4-0146e1081ec5
Strict-Transport-Security : max-age=31536000; includeSubDomains
X-Content-Type-Options : nosniff
Date : Thu, 27 Sep 2018 18:15:13 GMT

Body:
{
"value": [
{
"id": "/subscriptions/27188119-aa7b-45f4-ae3e-80d26b077cb9/resourceGroups/deploymentTest-rg/providers/Microsoft.Resources/deployments/complexParametersTemplate",
"name": "complexParametersTemplate",
"properties": {
"templateHash": "6287512875150736918",
"parameters": {
"appSku": {
"type": "Object",
"value": {
"code": "f1",
"name": "Free"
}
},
"servicePlan": {
"type": "String",
"value": "PlanBOSpace"
},
"ranks": {
"type": "Array",
"value": [
"a",
"b"
]
}
},
"mode": "Incremental",
"provisioningState": "Succeeded",
"timestamp": "2018-09-27T18:15:09.3984169Z",
"duration": "PT31.4200123S",
"correlationId": "afa0e7ac-02b7-48cc-8a29-5bafefa83baa",
"providers": [
{
"namespace": "Microsoft.Storage",
"resourceTypes": [
{
"resourceType": "storageAccounts",
"locations": [
"eastus"
]
}
]
}
],
"dependencies": [],
"outputs": {},
"outputResources": [
{
"id": "/subscriptions/27188119-aa7b-45f4-ae3e-80d26b077cb9/resourceGroups/deploymentTest-rg/providers/Microsoft.Storage/storageAccounts/tianotest010f1a"
}
]
}
}
]
}

DEBUG: AzureQoSEvent: CommandName - Get-AzureRmResourceGroupDeployment; IsSuccess - True; Duration - 00:00:00.3684489; Exception - ;
DEBUG: Finish sending metric.
DEBUG: 1:15:14 PM - GetAzureResourceGroupDeploymentCmdlet end processing.
DEBUG: 1:15:14 PM - GetAzureResourceGroupDeploymentCmdlet end processing.
PS C:\src\github> foreach ($parameter in $deployment.Parameters.Keys) {
>> $deploymentParameterValue = $deployment.Parameters.$parameter.Value
>> # This workaround requires PowerShell Core 6.1
>> if (($workaround) -and ($deployment.Parameters.$parameter.Type -eq "Object")) {
>> Write-Verbose "Comparing an object."
>> $deploymentParameterValue = ($deployment.Parameters.$parameter.Value.ToString() | ConvertFrom-Json -AsHashtable)
>> }
>> # This workaround works with PowerShell 5.1
>> if (($workaround) -and ($deployment.Parameters.$parameter.Type -eq "Array")) {
>> Write-Verbose "Comparing an array."
>> $deploymentParameterValue = ($deployment.Parameters.$parameter.Value.ToString() | ConvertFrom-Json)
>> }
>> $objectComparisonResult = Compare-Object -ReferenceObject $templateParameters.$parameter -DifferenceObject $deploymentParameterValue
>> if ($null -eq $objectComparisonResult) {
>> Write-Host ("Matched: {0} {1} {2}" -f $parameter, $deployment.Parameters.$parameter.Type, $deployment.Parameters.$parameter.Value)
>> } else {
>> Write-Host "Failed!!"
>> $objectComparisonResult
>> }
>> }
Failed!!

Matched: servicePlan String PlanBOSpace
Failed!!
InputObject SideIndicator
----------- -------------
{} =>
{} =>
{code, name} <=
{} =>
{} =>
a <=
b <=

PS C:\src\github>

```

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.