У меня есть случай, когда пометка переменных как секретов теряет свое значение в задаче Release, пожалуйста, позвольте мне остановиться подробнее.
Ниже приведен скриншот принципала Terraform Service
Вышеуказанное работает как переменные, доступные в конвейере.
Взять сценарий, где они секретны и заперты.
Теперь запустите конвейер, и он сообщит, что требуемая переменная не установлена.
Я добавил шаг для отображения этих переменных, просто чтобы посмотреть, смогу ли я их увидеть, вот задача Release:
Я «предполагаю» *** означает фактическое эхо, поэтому они произносят слово «эхо».
Не в состоянии понять, почему поведение отличается:
- В виде простого текста они доступны в конвейере.
- Когда они помечены как секретные, они недоступны.
Как сделать их доступными в конвейере?
Обновление
делает что-то вроде этого:
Terraform plan -out main.plan -var "ARM_SUBSCRIPTION_ID=$(TF_VAR_ARM_SUBSCRIPTION_ID)" "ARM_CLIENT_ID=$(TF_VAR_ARM_CLIENT_ID)" "ARM_CLIENT_SECRET=$(TF_VAR_ARM_CLIENT_SECRET)" "ARM_TENANT_ID=$(TF_VAR_ARM_TENANT_ID)" It reports: 2019-03-07T00:21:19.7692360Z ##[command]"terraform" plan -out main.plan -var "ARM_SUBSCRIPTION_ID=***" "ARM_CLIENT_ID=***" "ARM_CLIENT_SECRET=***" "ARM_TENANT_ID=***" -input=false -no-color
получить ошибку
2019-03-07T00:21:19.8504985Z Too many command line arguments. Configuration path expected.