我在VSTS中有一个构建步骤,它从VSTS获取变量并将它们上传到同样秘密的地方 . 目前我有大约50个构建,每个构建有5-20个变量 .
有些是秘密,有些则不是 . 因此,对于非秘密的,我列举所有设置的,然后离开;但对于秘密的,我需要手动将它们添加到构建步骤;此外,因为我用相同的键写它们我需要:
-
在组中声明变量,例如
MyPrefix.MyVar
-
编辑构建步骤,说
/specialtool --vars=MyPrefix.MyVar=$(MyPrefix.MyVar)
,这是相当平凡的 .
我发现我可以使用VSTS api获取变量列表,所以我想我可以在构建运行时修改下一个构建步骤 .
但是,如果我更新当前正在运行的相同构建定义(以动态编写命令),则不会将其发送给代理(相反,感觉就像在触发整个构建时捕获任务的所有参数一样) . 有关如何动态枚举秘密变量以提供给我的工具的任何想法?
1 回答
您可以使用VSTS Logging Commands在构建期间更新变量值 . 这将使更新的变量在下一个构建任务中可用 .