我有一个 Azure DevOps 管道,其中有 2 个用户输入的变量
ProductCode
(类似“PROD001”的短字符串)和 ProductId
(与该 ProductCode 关联的 GUID)。
目前,当有人运行管道时,他们需要输入 ProductCode,然后查看单独的文档以手动查找该代码的 ProductId,并将其复制并粘贴回管道字段。
是否可以将该表存储在某处,以便用户只需要输入 ProductCode,管道操作就可以查找 Id?它需要易于访问,以便 DevOps 用户可以根据需要添加新产品(例如,不必编辑 Powershell 脚本或存储在代码分支中的文本文件)
您可以使用变量组来存储
ProductCode-ProductId
对的列表,如下所示:
创建变量组(例如,
ProductCode_ProductId
)。该组中,变量名是ProductCode
的值,变量值是对应的ProductId
的值。当您有新的ProductCode-ProductId
对时,您可以随时将它们添加到此组中。
在 YAML 管道中,
ProductCode
)让用户输入ProductCode
的值。${{ parameters.ProductCode }}
'获取ProductCode
的值,使用表达式'$(${{ parameters.ProductCode }})
'获取对应的ProductId
的值。parameters:
- name: ProductCode
type: string
default: ''
variables:
- group: ProductCode_ProductId
steps:
- checkout: none
- bash: |
echo "ProductCode = ${{ parameters.ProductCode }}"
echo "ProductId = $(${{ parameters.ProductCode }})"
displayName: 'Print ProductCode and ProductId'
结果。