Ошибка проверки шаблона - Ошибка: Code = InvalidTemplate; Сообщение = Ошибка проверки шаблона развертывания:

У меня возникли проблемы с развертыванием шаблона ниже:

файл azuredeploy.json

Одно из выданных сообщений об ошибке:

'Ресурс шаблона' [concat ('nsg-create', copyIndex ())] 'в строке' 344 'и столбце' 9 'недопустим. Версия api «2016-07-01», используемая для развертывания шаблона, не поддерживает свойство ResourceGroup. Используйте api-версию '2017-05-10' или более позднюю для развертывания шаблона. Подробнее об использовании см. https://aka.ms/arm-template/#resources. . '.

Код, который использовался для развертывания.

 Context "Template Validation" {

    It "Template $here\azuredeploy.json and parameter file  passes validation" -TestCases $ParameterFileTestCases {
        Param( $ParameterFile )
        Update-Module -Name AzureRM -Force
        $output = New-AzureRmResourceGroupDeployment -ResourceGroupName $TempValidationRG -Force -Mode Complete -TemplateFile "$here\azuredeploy.json" -TemplateParameterFile "$here\$ParameterFile"  -ErrorAction Stop 5>&1
        $output.ProvisioningState | Should -Be "Succeeded"
    }
}

Однако я попытался изменить версию API, но это по-прежнему вызывало ту же ошибку. Я не понимаю, как решить эту проблему. Пытаюсь тестировать шаблон через приставал.

Вывод Get-Module AzureRM * -ListAvailable: список AzureRM


person Donald Duck    schedule 11.07.2018    source источник
comment
Не могли бы вы включить соответствующий JSON в вопрос (не на скриншоте)?   -  person juunas    schedule 11.07.2018
comment
также работает ли шаблон при развертывании вручную \ powershell (не надоедает)   -  person 4c74356b41    schedule 11.07.2018
comment
@ 4c74356b41 Да, шаблон работает.   -  person Donald Duck    schedule 12.07.2018


Ответы (1)


Вам нужно использовать другую api-версию. Попробуйте 2017-05-10 это.

Также попробуйте обновить Azure Powershell до последней версии.

person 4c74356b41    schedule 11.07.2018
comment
Ваш шаблон в порядке - это будет apiVersion, используемый инструментом, выполняющим развертывание - как упоминает Глеб, обновите свои командлеты PowerShell - person bmoore-msft; 11.07.2018
comment
Я сменил версию API, все равно не работает. @ bmoore-msft - person Donald Duck; 12.07.2018
comment
Я также попытался обновить Azure Powershell с помощью этого Update-Module -Name AzureRM -Force. Пожалуйста, поправьте меня, если есть другой способ сделать это. @ 4c74356b41 - person Donald Duck; 12.07.2018
comment
добавить результат Get-Module AzureRM* -ListAvailable к вопросу - person 4c74356b41; 12.07.2018
comment
Готово @ 4c74356b41 - person Donald Duck; 18.07.2018
comment
Я предлагаю вам обновить модули azure powershell, ваши устарели, если -force вам не подходит, просто удалите их в / program files / windowspowershell / modules, перезагрузите и выполните install-module azurerm - person 4c74356b41; 18.07.2018