Правильный синтаксис для развертывания группы Azure с параметрами из этапа сборки VSTS?

Как можно выполнить команду «развертывание группы azure create» на шаге сборки VSTS azure powershell, когда кажется, что невозможно выразить параметры или файл параметров успешно проанализирован?

У меня нет проблем с выполнением вышеуказанного в локальном powershell, но я получаю только ошибку, когда дело доходит до части определения --parameter команды, при выполнении этого на шаге VSTS в агенте сборки по умолчанию, где доступен azure cli .

В качестве простого примера, как можно успешно запустить это стандартное учебное развертывание из шага сборки в агенте сборки по умолчанию?

azure group deployment create name ExampleDeployment resource-group ExampleGroup template-uri "https://raw.githubusercontent.com/Azure/azure-quickstart-templates/master/101-storage-account-create/azuredeploy.json" --parameters "{\"storageAccountType\":{\"value\":\"Standard_GRS\"}}"

Важно отметить, что эта часть терпит неудачу:

--parameters "{\"storageAccountType\":{\"value\":\"Standard_GRS\"}}

который в моем локальном powershell отлично работает, когда выражается как:

--parameters "{'storageAccountType':{'value':'Standard_GRS'}}"

Процесс также завершается сбоем при попытке получить параметры из файла .json (хотя мне нужно, чтобы работал встроенный, а не внешний файл параметров)

Я пробовал все варианты двойных и одинарных кавычек и управляющих символов при выражении --parameters. Ничего не принимается.

Типичная ошибка для встроенного параметра --parameter:

Parse error on line 1:
##[error]{'storageAccountType'
-^
Expecting 'STRING', '}', got 'undefined'

И при попытке с внешним файлом параметров:

Parse error on line 1:
##[error]@d:\a\1\s\params.jso
^
Expecting 'STRING', 'NUMBER', 'NULL', 'TRUE', 'FALSE', '{', '[', got 'undefined'

Я пробовал все вышеперечисленное без отдельного npm install -g azure-cli в агенте сборки.

Большое спасибо


person David    schedule 14.06.2017    source источник
comment
какое это имеет отношение к powershell? почему бы вам не использовать powershell в агенте сборки? глядя на примеры, вот как это должно работать: "{\"storageAccountType\":{\"value\":\"Standard_GRS\"}}"   -  person 4c74356b41    schedule 14.06.2017
comment
Привет - в агенте сборки используется powershell. Сценарий определяется как часть этапа сборки VSTS, копируется в агент и выполняется там. Где это не удается разобрать.   -  person David    schedule 14.06.2017
comment
это не powershell, это azure cli, почему бы вам не использовать powershell?   -  person 4c74356b41    schedule 14.06.2017
comment
хм. Итак, теперь я попробовал это на шаге Powershell VSTS, а не на шаге VSTS «Azure Powershell». Тот же результат. Пробовал с помощью: развертывание группы azure create --name ExampleDeployment --resource-group example --template-uri raw.githubusercontent.com/Azure/azure-quickstart-templates/ --parameters {'storageAccountType':{'value':'Standard_GRS' }} Ошибка синтаксического анализа в строке 1: {'storageAccountType' -^ Ожидается "STRING", "}", получено "undefined"   -  person David    schedule 14.06.2017
comment
также пробовал: развертывание группы azure create --name ExampleDeployment --resource-group example --template-uri raw.githubusercontent.com/Azure/azure-quickstart-templates/ --parameters {\storageAccountType\:{\value\:\Standard_GRS \}} Аналогичная ошибка синтаксического анализа   -  person David    schedule 14.06.2017
comment
для шага powershell используйте командлеты powershell. не команды azure cli?   -  person 4c74356b41    schedule 14.06.2017
comment
Большое спасибо - это предложение работает! Шаг Azure Powershell: New-AzureRmResourceGroupDeployment -Name ExampleDeployment -ResourceGroupName myGroup -TemplateUri raw.githubusercontent.com/Azure/azure-quickstart-templates/ -storageAccountType Standard_GRS Позор, исходный метод для azure cli не анализировался, но мог анализировать другие команды, такие как azure создать группу ресурсов. Как я могу отметить ваш комментарий как ответ?   -  person David    schedule 14.06.2017
comment
добавил ответ ;) спасибо!   -  person 4c74356b41    schedule 14.06.2017


Ответы (1)


Вы можете использовать azure powershell для достижения той же цели:

New-AzureRmResourceGroupDeployment -Name ExampleDeployment -ResourceGroupName "myGroup" -TemplateUri "raw.githubusercontent.com/Azure/azure-quickstart-templates/‌​…; -storageAccountType "Standard_GRS"
person 4c74356b41    schedule 14.06.2017