我的Keyvault秘密出现在控制台的明文中,我试图将变量设置为一个秘密:
echo "##vso[task.setvariable variable=nsg-list;issecret=true;isOutput=true]$(nsg-list)"
echo "##vso[task.setvariable variable=nsg-rules;issecret=true;isOutput=true]$(nsg-rules)"
现在构建失败,如果我删除issecret=true
构建工作再次。
我需要在任务和作业之间传递变量,有更好的方法吗?
pool:
vmImage: 'Ubuntu-16.04'
steps:
- task: AzureKeyVault@1
displayName: Read variables from keyvault
inputs:
azureSubscription: Sandbox
keyVaultName: "sandbox"
secretsFilter: '*'
- script: |
echo "##vso[task.setvariable variable=backend_storage_account_name;issecret=true;isOutput=true]$(backend-storage-account-name)"
echo "##vso[task.setvariable variable=backend_storage_container_name;issecret=true;isOutput=true]$(backend-storage-container-name)"
echo "##vso[task.setvariable variable=backend_access_key;issecret=true;isOutput=true]$(backend-access-key)"
echo "##vso[task.setvariable variable=tenant-id;issecret=true;isOutput=true]$(tenant-id)"
echo "##vso[task.setvariable variable=app-id;issecret=true;isOutput=true]$(app-id)"
您需要使用以下内容将它们显式设置为环境变量:
env:
var1: $(your_var_name)
在每个步骤中,您打算使用它们。然后你。可以将它们用作环境变量