使用多阶段的 Azure DevOps YAML 管道批准
Azure DevOps YAML Pipeline Approval using Multi-Stage
我最近尝试将我们的 UI 或基于经典的发布管道转换为基于 YAML 的发布管道。
我们有三个环境,最初一个 CD 构建将愉快地部署到我们的开发环境。
从那里我们手动触发发布(重新:升级)到测试,然后在某个时候,如果我们都满意,手动升级到生产。
我们知道我们无法模仿发布阶段之间的手动升级,因为它目前不受支持,但根据我的阅读,我们应该能够通过为每个环境定义安全检查来做同样的事情已请求手动推广。
定义安全检查的详细信息在这里:https://docs.microsoft.com/en-us/azure/devops/pipelines/process/approvals?view=azure-devops&tabs=check-pass
我已将相同的安全检查添加到测试和生产中,但发布仍会自动发生。
是否有这种批准流程映射到新的 YAML 多阶段发布的示例?
到目前为止,我已经通过“环境”选项卡上的 Approval and checks
功能向测试和生产环境添加了一个安全组。
请检查以下 YAML 示例:
trigger:
- master
pool:
vmImage: 'ubuntu-latest'
stages:
- stage: build
jobs:
- job: buildjob
steps:
- checkout: none
- deployment: DeployWeb
pool:
vmImage: 'Ubuntu-16.04'
environment: 'Verify'
- stage: deploy
jobs:
- deployment: DeployWeb
displayName: deploy Web App
pool:
vmImage: 'Ubuntu-16.04'
environment: 'Verify'
strategy:
# default deployment strategy, more coming...
runOnce:
deploy:
steps:
- script: echo my first deployment
在我的场景中,我有一个环境名称 Verify
,我为其添加了 Approvals and Checks
。
要将此 Approvals and Checks
应用到您的多阶段管道中,您需要确保相应的环境已在 YAML 中定位。
另一件需要注意的事情是,到目前为止,Environment
只能在 YAML 的 deployment job
中作为目标。
换句话说,只有在其中配置了-deployment: job
的阶段,才能与Environment
一起工作。此外,将使用添加了 Approvals and Checks
.
的 environment
我最近尝试将我们的 UI 或基于经典的发布管道转换为基于 YAML 的发布管道。
我们有三个环境,最初一个 CD 构建将愉快地部署到我们的开发环境。
从那里我们手动触发发布(重新:升级)到测试,然后在某个时候,如果我们都满意,手动升级到生产。
我们知道我们无法模仿发布阶段之间的手动升级,因为它目前不受支持,但根据我的阅读,我们应该能够通过为每个环境定义安全检查来做同样的事情已请求手动推广。
定义安全检查的详细信息在这里:https://docs.microsoft.com/en-us/azure/devops/pipelines/process/approvals?view=azure-devops&tabs=check-pass
我已将相同的安全检查添加到测试和生产中,但发布仍会自动发生。
是否有这种批准流程映射到新的 YAML 多阶段发布的示例?
到目前为止,我已经通过“环境”选项卡上的 Approval and checks
功能向测试和生产环境添加了一个安全组。
请检查以下 YAML 示例:
trigger:
- master
pool:
vmImage: 'ubuntu-latest'
stages:
- stage: build
jobs:
- job: buildjob
steps:
- checkout: none
- deployment: DeployWeb
pool:
vmImage: 'Ubuntu-16.04'
environment: 'Verify'
- stage: deploy
jobs:
- deployment: DeployWeb
displayName: deploy Web App
pool:
vmImage: 'Ubuntu-16.04'
environment: 'Verify'
strategy:
# default deployment strategy, more coming...
runOnce:
deploy:
steps:
- script: echo my first deployment
在我的场景中,我有一个环境名称 Verify
,我为其添加了 Approvals and Checks
。
要将此 Approvals and Checks
应用到您的多阶段管道中,您需要确保相应的环境已在 YAML 中定位。
另一件需要注意的事情是,到目前为止,Environment
只能在 YAML 的 deployment job
中作为目标。
换句话说,只有在其中配置了-deployment: job
的阶段,才能与Environment
一起工作。此外,将使用添加了 Approvals and Checks
.
environment