Сценарий пользовательского расширения Azure, передающий Az Cli в Bash скрипт - PullRequest
0 голосов
/ 13 октября 2019

Я пытаюсь передать параметры из расширения пользовательского скрипта шаблона arm в скрипт bash az login -u azUsername -p azPassword

Я не уверен, как передать эти значения в скрипт sh, и его получение продолжало давать сбой

"commandToExecute": {
                    "value": "[concat('sh samplebash.sh',' ',parameters('azUsername'),' ',parameters('azPassword'))]"
                }

скрипт bash:

#!/bin/bash
echo "$azUsername"
echo "${azUsername}"
echo azUsername
echo $azUsername
echo hello

Нужна помощь в получении значений в скрипте bash Заранее спасибо

1 Ответ

0 голосов
/ 14 октября 2019

Вы можете использовать переменную для установки commandToExecute следующим образом:

"executeCommand": "[concat('sh samplebash.sh', ' ', parameters('azUsername'), ' ', parameters('azPassword'))]"

Затем вы можете установить расширение следующим образом:

"commandToExecute": "[variables('executeCommand')]"

Или вы можете установить расширениепрямо так:

"commandToExecute": "[concat('sh samplebash.sh', ' ', parameters('azUsername'), ' ', parameters('azPassword'))]"

И в скрипте вы должны внести некоторые изменения, есть два способа.

Первый:

#!/bin/bash

echo "azUsername:$1"
echo "azPassword:$2"

Второе:

#!/bin/bash

azUsername=$1
azPassword=$2
echo $azUsername
echo $azPassword

Кстати, я думаю, что когда вы используете #!/bin/bash в скрипте, то вам лучше выполнить скрипт с командой bash script.sh,В некоторых дистрибутивах Linux sh - это не та же команда, что и bash.

...