【问题标题】:Azure DevOps Release Pipeline - Dropdown list of custom variableAzure DevOps 发布管道 - 自定义变量的下拉列表
【发布时间】:2020-06-16 20:00:24
【问题描述】:

对于 Azure DevOps Release 管道,是否可以为自定义变量创建下拉列表?

所以对于下面,如果我希望有下拉值而不是单个文本值

【问题讨论】:

    标签: azure-devops azure-pipelines azure-pipelines-release-pipeline


    【解决方案1】:

    如果您要手动触发管道,则可以在 Azure DevOps 管道中使用 Runtime parameters

    例如:
    为了使操作系统映像名称可以从选项列表中选择,您可以使用以下 sn-p。

    parameters:
    - name: image
      displayName: Pool Image
      type: string
      default: ubuntu-latest
      values:
      - windows-latest
      - vs2017-win2016
      - ubuntu-latest
      - ubuntu-16.04
      - macOS-latest
      - macOS-10.14
    
    trigger: none # trigger is explicitly set to none
    
    jobs:
    - job: build
      displayName: build
      pool: 
        vmImage: ${{ parameters.image }}
      steps:
      - script: echo building $(Build.BuildNumber) with ${{ parameters.image }}
    

    这会导致以下结果。

    更多关于运行时参数的信息可以是found here.希望这有帮助。

    唯一的缺点是,由于我们将触发器指定为无,我们可能无法集成到自动管道中。我还没有尝试过。让我知道它是否适用于自动管道。

    注意:此处显示的示例和图片来自 azure DevOps 文档。

    【讨论】:

    • OP 询问不支持 YAML 的“Azure DevOps 发布管道”。此解决方案适用于 CI 管道
    【解决方案2】:

    据我所知,尚不支持下拉值。

    发布管道中的自定义变量是一个键值对,值应该是一个特定的值而不是下拉列表。该值可以是single text value,可以是true/false 或其他使用变量组中$(VarName) 格式的变量。但是我们不能将下拉列表作为值传递给变量。

    【讨论】:

    • 在您只想向客户展示一个简单的界面以填补空白的情况下,这是有意义的。例如,Azure 中有数百种 VM 大小可供用户选择,如果我们可以有一个变量的值从集合中提取,那将使发布在发布时更加可定制。是否有功能请求的投票地点?还是我们可以创建的 github 问题?
    • 您可以发布功能请求here,这是我们的用户语音论坛。
    • @JeffPatton 另外,根据您的评论,我们的新功能runtime parameters 是否可以满足您的需求?有关如何使用它的一些详细信息,请参阅我的another issue
    • 再次,OP 是关于发布管道的,那里没有来自 MS 的爱,因为它们还不是 YAML。
    • 大多数开发人员希望将下拉列表的选定值作为变量传递给管道。这应该是整洁且易于添加的功能。我还想添加更多功能,类似于 Octopus Deploy - 例如将变量范围限定为环境。
    猜你喜欢
    • 2019-04-29
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-11-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-08-03
    相关资源
    最近更新 更多