如何在Azure DevOps的Environments标签页展示已部署应用版本
Azure DevOps 环境部署记录展示跨流水线构件版本解决方案
出现该问题是因为Azure DevOps环境默认仅同步当前部署流水线的运行信息,跨资源引用的流水线版本不会自动填充到部署记录中,可通过以下三种方式实现自定义信息展示:
方法1:将版本信息嵌入部署作业显示名称
直接在deployment作业的displayName字段拼接依赖的流水线版本变量,配置完成后版本信息会直接展示在环境部署记录的列表页,无需进入详情即可查看,示例配置如下:
jobs: - deployment: some-name displayName: 开发环境部署 | 流水线1版本:$(resources.pipeline.pipeline-1.runName) | 流水线2版本:$(resources.pipeline.pipeline-2.runName) environment: develop strategy: runOnce: deploy: steps: - download: pipeline-1 - download: pipeline-2 # 实际部署步骤
方法2:添加自定义部署元数据到详情页
如果需要在部署详情页展示更多维度的信息,可以在部署步骤中调用Azure DevOps内置日志命令,给当前部署记录添加自定义属性,所有添加的属性都会在环境部署详情页单独展示,示例步骤如下:
steps: - download: pipeline-1 - download: pipeline-2 - bash: | echo "##vso[deployment.setmetadata name=流水线1版本;]$PIPELINE1_VER" echo "##vso[deployment.setmetadata name=流水线1运行ID;]$PIPELINE1_ID" echo "##vso[deployment.setmetadata name=流水线2版本;]$PIPELINE2_VER" echo "##vso[deployment.setmetadata name=流水线2运行ID;]$PIPELINE2_ID" env: PIPELINE1_VER: $(resources.pipeline.pipeline-1.runName) PIPELINE1_ID: $(resources.pipeline.pipeline-1.runId) PIPELINE2_VER: $(resources.pipeline.pipeline-2.runName) PIPELINE2_ID: $(resources.pipeline.pipeline-2.runId) displayName: 写入部署元数据 # 实际部署步骤
方法3:打标签同步版本信息
你也可以给当前部署流水线的运行记录打标签,标签会自动同步到环境的部署记录中,适合做版本筛选和快速识别,示例步骤如下:
steps: - download: pipeline-1 - download: pipeline-2 - bash: | echo "##vso[build.addbuildtag]pipeline1-ver-$(resources.pipeline.pipeline-1.runName)" echo "##vso[build.addbuildtag]pipeline2-ver-$(resources.pipeline.pipeline-2.runName)" displayName: 添加版本标签 # 实际部署步骤
内容的提问来源于stack exchange,提问作者Mikel
相关产品推荐
相关产品推荐

