Как использовать секретные переменные задачи с задачами npm

Я определил Variable Group какие загрузки secrets из Key Vault,
Похоже, что в отличие от других переменных, секреты не устанавливаются автоматически как переменные окружения.
Я попытался использовать сценарий bash, чтобы взять эти "переменные задачи" и установить их в качестве переменных среды, но они исчезли из-за следующей задачи:

export ENV1=$(someSecretTaskVariable)

я использую npm Задача, которая не может быть обеспечена переменными среды через пользовательский интерфейс и yaml, доступна только для чтения.

Как это должно быть сделано?

2 ответа

Решение

Если вы хотите создать переменную среды, которая передается последующим задачам Azure DevOps, попробуйте следующее:

echo '##vso[task.setvariable variable=ENV1]$(someSecretTaskVariable)'

вместо export ENV1=$(someSecretTaskVariable)

Установить переменные в скриптах

Я не думаю, что вы можете сделать это через пользовательский интерфейс, но через yaml вы бы сделали это:

- task: xxx
  env:
    ENV1=$(someSecretTaskVariable)

по-видимому, вы можете сделать это:

В отличие от обычной переменной, они не расшифровываются автоматически в переменные среды для сценариев. Вы можете явно отобразить их, хотя.

Чтобы передать секрет сценарию, используйте раздел "Окружение" входных переменных задачи сценария.

Похоже, с пользовательским интерфейсом вы можете сделать это только с задачами сценариев

https://docs.microsoft.com/en-us/azure/devops/pipelines/process/variables?view=azure-devops&tabs=classic%2Cbatch

Другие вопросы по тегам