Как передать значения переменных сценария powershell в последующую задачу в конвейере выпуска - PullRequest
0 голосов
/ 05 ноября 2018

Создание компакт-диска с несколькими шагами, начиная с «Задача Azure PowerShell».

В задачах Azure PowerShell выполните файл сценария PowerShell и задайте значение в переменной. В конце скрипта я установил переменную со значением -

echo "##vso[task.setvariable variable=myvariable;isSecret=false;isOutput=true;]myvalue"

myvariable это переменная

myvalue - это значение.

На основании значения «myvariable»; последующее задание будет выполнено или пропущено. Упомянутое «Пользовательское условие» в последующей задаче (Задача - Создание или обновление ресурса Azure) -

and(succeeded(), eq(variables[‘myvariable’], ‘myvalue’))

Но он всегда пропускает шаг; несмотря на правильное значение проходит. Вот мой фрагмент задач по выпуску - enter image description here

Как мне побороть?

Ответы [ 2 ]

0 голосов
/ 06 ноября 2018

Спасибо всем за ваш ценный вклад. Разрешение - PowerShell Script -

$myvalue="hello"
Write-Host "##vso[task.setvariable variable=myvariable]$myvalue"

Назначьте значение ("привет") в переменной ($ myvalue), затем установите его в "Write-Host". Прямое значение не работает для меня. Теперь мы можем использовать / проверять значение «myvariable» в последующих задачах в Пользовательском условии, как упомянуто @Alex KeySmith.

and(succeeded(), eq(variables['myvariable'], 'hello'))

задание -

enter image description here

Работает в конвейере сборки и выпуска.

0 голосов
/ 05 ноября 2018

попробуй

Write-Host "##vso[task.setvariable variable=myvariable;isSecret=false;isOutput=true;]myvalue"

А потом

and(succeeded(), eq(variables['myvariable'], 'myvalue'))

Во второй части код, который вы вставили, имеет неправильные типы кавычек, у вас были фигурные кавычки than ’, а не обычные прямые кавычки ''

При копировании / вставке из Word или Outlook вы часто получаете неправильные кавычки. Я уверен, что для них есть правильный типографский термин.

...