azure-devops - 如果尚未将手动发布部署到上游环境,如何使手动发布失败
问题描述
如果发布尚未部署到上游环境,我们如何配置手动发布升级失败?所有环境都在一个版本定义/管道下。
用例:如果版本尚未部署到 UAT,则手动部署到 Prod 会失败。
谢谢!
解决方案
您可以在 Prod ennvironmetn 开头添加一个 PowerShell 任务,需要在 PowerShell 脚本中实现如下:
1. 获取当前版本的 UAT 状态
使用 REST API Get release获取当前版本的详细信息:
GET https://vsrm.dev.azure.com/{organization}/{project}/_apis/release/releases/{releaseId}?api-version=4.1-preview.6
然后从响应中获取 UAT 环境的状态。
2. 如果状态不成功,则使 PowerShell 任务失败
如果 UAT 状态不相等succeeded
(例如状态为rejected
),则 PowerShell 任务失败exit 1
。所以 Prod 环境会失败。
推荐阅读
- mysql - InnoDB:忽略空间 ID 为 26146 的数据文件“./catalog_category_product_index_store1.ibd”,因为重做日志引用
- python - 使用 Pycharm 执行不以关键字“test”开头的文件的 Pytest
- typescript - 使用 SuppressImplicitAnyIndexErrors = true 抑制 TypeScript 中的括号语法
- ruby-on-rails - Ruby on Rails - 参数化
- javascript - 如何使用来自另一个对等方的 WebRTC 连接添加视频流?
- python - python:具有可变函数名称的装饰器
- multithreading - 并行执行比顺序执行慢,即使代码“很重”
- python - 使用适当的 NaN 处理将熊猫数据框列从数字转换为字符串
- iphone - 如何在 iOS 模拟器上使用 appium 对 Google 移动应用程序进行自动化测试?
- excel - 在列和行中具有两个不同标准的 SUM