Azure Pipelines - 重新部署相同版本

Azure Pipelines - redeploy same version

我们正在将我们在 azure devops 中的构建和发布转移到新的 yaml 发布管道,但是有一些我们习惯于在旧的管道中使用的东西,UI builds/releases 我无法在新的 yaml 管道世界中弄清楚。

在旧世界中,您需要将一个构建 link 编辑到一个版本。你可以为一个特定的构建创建多个发布实例,所以如果你有一个你知道很好的构建但想改进发布过程,你可以在发布上工作,每次创建一个新的发布实例来测试你的更改,但不必每次都重新构建。您刚刚选择了每次发布到 link 的内部版本号。

但是现在使用 yaml 将构建和发布集成在一起,您每次都创建整个管道的一个实例。那么我如何才能 运行 管道的 'release' 部分与之前的构建相比较呢?或者我不能?同样,如果我只想 运行 它针对特定环境? (我们有不同的部署到 ci 和测试的步骤,但是为了测试对测试部分的更改,我每次都必须 运行 ci 部分,这对于调试来说非常耗时)

how can I just run the 'release' part of the pipeline against a previous build?

对于这个问题,您可以将 DownloadPipelineArtifact 任务添加到您的阶段作业中,以便您可以将以前的构建版本指定为要部署的源。

例如:

steps:
- task: DownloadPipelineArtifact@2
  displayName: 'Download Pipeline Artifact'
  inputs:
    buildType: specific
    project: 'proName'
    definition: 30
    buildVersionToDownload: specific
    pipelineId: 2118
    artifactName: drop

Likewise if I want to just run it against a particular environment?

针对此问题,Azure devops 在 sprint-162 中发布了一项新功能:Skipping stages in a YAML pipeline

当您开始手动 运行 时,您有时可能希望跳过管道中的几个阶段。更新后的 运行 管道面板显示了 YAML 文件中的阶段列表,您可以选择跳过其中一个或多个阶段。

如果 Stages to run 未显示在网络 UI,请不要担心,新功能将逐步推出,这些功能将在接下来的两到三周内推出。

这里是对类似问题的支持ticket,您可以在那里发表评论并投票以获取更多详细信息。希望以上内容对您有所帮助。