我在Azure DevOps发布管道中有一个名为some_var
的变量。我想在发布时设置默认值。但是我想基于工件放置文件夹中文件的内容以编程方式设置它。但是我仍然希望用户能够在创建发行版时覆盖动态设置的值。
因此,最终用户的行为将是他们(1)导航到“发行版”,然后(2)单击“新建”。该对话框附带some_var
变量,该变量已经设置为存储在文本文件中的值。但是,由于将变量设置为在运行时可设置,因此他们也可以在单击按钮以创建发行版之前修改变量值。
有什么方法可以动态填充(在创建发行版之前)some_var
值,并且仍然可以让创建该发行版的人在创建时对其进行编辑。
答案 0 :(得分:1)
对话框出现时,some_var变量已经设置为一个值 存储在文本文件中。
我们不支持此开箱即用功能。发布管道变量不能动态
在创建发行版之前填充some_var
值。
可能的解决方法:
您的初衷是set it programmatically based on the contents of a file in the artifact drop folder
。因此,我假设您可能具有此版本所依赖的构建管道,而您的实际需求是:
构建管道完成后,发布管道中some_var
的默认值应设置为构建管道中的值。
您可以考虑在发布所依赖的构建管道的末尾添加一个Powershell任务,根据内容在ps脚本中调用Definitions-Update rest api来设置some_var
的默认值构建管道。类似的问题,您可以检查this one。
如果在发布时可以设置管道变量some_var:
整个行为是(假设我们想将Build中的buildID传递给Release中的some_var
):
1。构建管道执行良好,其上一个Powershell任务将some_var
更新为some_var = 15
。
2。当我单击Create release
按钮时,对话框出现some_var
变量,该变量已经设置为Build管道15
中的值。
3。现在,由于some_var
在发布时启用了可设置,因此我们可以在单击Create
按钮之前轻松地对其进行修改。
希望它会有所帮助:)