如何从bash shell脚本中读取VSTS标记化的秘密构建变量?

时间:2017-07-05 17:12:53

标签: bash xamarin.android azure-pipelines

创建构建定义以构建Xamarin.Android项目并查找使用bash shell脚本使用app secrets更新配置文件的选项。 Microsoft docs中给出的示例表明无法从bash shell脚本中读取秘密构建变量。

以前有人试过这个吗? 我们使用的构建代理是Mac,因此我们需要一个bash shell脚本而不是PowerShell。

1 个答案:

答案 0 :(得分:0)

您需要通过Arguments传递secret变量。该文章的样本形式:

批量(但我可以阅读%secretSauceArgument%):

  

参数:

"$(sauce)" "$(secretSauce)"
     

脚本:

 @echo off
 set sauceArgument=%~1
    set secretSauceArgument=%~2
    @echo No problem reading %sauceArgument% or %SAUCE%
    @echo But I cannot read %SECRETSAUCE%
    @echo But I can read %secretSauceArgument% (but the log is redacted so I do not spoil the secret)

Shell(但我可以阅读$ 2):

  

参数:

"$(sauce)" "$(secretSauce)"
     

脚本:

 #!/bin/bash
    echo "No problem reading $1 or $SAUCE"
    echo "But I cannot read $SECRETSAUCE"
    echo "But I can read $2 (but the log is redacted so I do not spoil the secret)"