0

我有一个some_var在 Azure DevOps 发布管道中调用的变量。我想在发布时设置默认值。但我想根据工件放置文件夹中文件的内容以编程方式设置它。但我仍然希望用户能够在创建发布时覆盖动态设置的值。

因此最终用户的行为将是他们 (1) 导航到 Release 并 (2) 单击“Create New”。对话框出现的some_var变量已经设置为存储在文本文件中的值。但是,由于变量设置为在运行时可设置,因此他们也可以在单击按钮创建发布之前修改变量值。

有什么方法可以动态填充(在创建版本之前)该some_var值,并且仍然可以由在 crate-time 创建版本的人编辑。

4

1 回答 1

2

该对话框出现了 some_var 变量,该变量已设置为存储在文本文件中的值。

我们不支持这种开箱即用的功能。发布管道变量无法在创建发布之前动态 填充some_var值。

可能的解决方法:

你最初的目的是set it programmatically based on the contents of a file in the artifact drop folder. 因此,我假设您可能有一个此版本所依赖的构建管道,您的实际需要是:

构建管道完成后,发布管道的默认some_var应设置为构建管道的值。

您可以考虑在发布依赖的构建管道末尾添加一个powershell任务,在ps脚本中调用Definitions-Updatesome_var rest api根据构建管道的内容设置发布管道的默认值。类似的问题你可以检查这个

如果管道变量 some_var 在发布时可设置:

在此处输入图像描述

整个行为将是(假设我们想将 Build 中的 buildID 传递给some_varRelease):

1.构建管道执行良好,其最后一个 Powershell 任务更新some_varsome_var = 15.

2.当我单击Create release按钮时,对话框出现了some_var已经设置为 Build pipeline 中的值的变量15

3.现在,由于在发布时启用可设置,我们可以在单击按钮some_var之前轻松修改它。Create

希望能帮助到你 :)

于 2020-05-05T06:17:14.867 回答