【问题标题】:For release pipeline (configured for build artifact) to get triggered, the build pipeline must have the "publish artifact" task?要触发发布管道(为构建工件配置),构建管道必须具有“发布工件”任务吗?
【发布时间】:2020-04-29 10:34:21
【问题描述】:

当构建工件可用时可以触发发布,如下面的屏幕截图所示。

那么这是否需要触发发布管道(为构建工件配置),构建管道必须具有“发布工件”任务?

【问题讨论】:

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


    【解决方案1】:

    同意Shayki Abramczyk,答案是否定的。但我想也许你需要更多的描述来帮助你理解~

    在您的情况下,您将构建管道设置为发布管道的工件。如果你检查过this document,你会发现这些陈述:

    1.在创作发布管道时,您将适当的工件源链接到您的发布管道。例如,您可以将 Azure Pipelines 构建管道或 Jenkins 项目链接到您的发布管道。

    2.来自here的注释: 您必须在构建管道中包含 Publish Artifacts 任务。对于 XAML 构建管道,会隐式发布名为 drop 的工件。

    3.Auto-trigger releases feature(工件中的 CD 触发器):在生成新版本(包括 XAML 版本)时,可以自动创建新版本。有关详细信息,请参阅持续部署。您无需在构建管道中配置任何内容。有关 TFS 版本之间的差异,请参阅上面的注释。

    总结一下,这里的artifact source代表a build pipeline,而不是the outputs of a build pipeline。因此,当您在工件中启用 CD 触发器(在您的情况下为构建管道)时,只要新构建完成,就会触发发布。并且此行为不会受到构建管道是否具有 Publish Artifact 任务来发布其输出的影响。

    对于 2.注意:可以认为我们必须在构建管道中包含一个 Publish Artifacts 任务,以便发布管道可以访问构建管道的输出。然后我们可以将输出(.dll/.exe 或什么)部署到目标机器/环境。 (其实我们认为文档中的must应该换成It's recommended to/should

    发布工件任务使构建+发布过程变得有意义。因为如果我们的发布管道无法访问构建管道的输出,我们应该使用什么来部署?但是这个任务是否存在实际上不会影响CD触发器。 (就像第三条语句:你不需要在构建管道中配置任何东西

    【讨论】:

    • 谢谢我喜欢你的回答。谢谢!
    【解决方案2】:

    答案是,即使他没有 Publish Artifacts 步骤,也会在构建完成时触发发布。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2020-12-23
      • 2020-11-26
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2022-11-10
      • 1970-01-01
      相关资源
      最近更新 更多