Azure Pipelines 环境批准
Azure Pipelines environments approvals
我搭建了2个环境,只保护了一个环境
但是管道 运行 希望我在开始之前就批准。
我假设 Build 和 DevEnv 部署应该无人值守,应该单独为 QAEnv 停止。我错过了什么吗?
您需要将 dependsOn: <environment>
添加到您的工作中。目前,它正在尝试 运行 一次完成所有阶段。
你还在一个阶段中完成了所有这些工作,这让我很不满意。
您需要将它们分成多个阶段:
stages:
- stage: Build
jobs: ...
- stage: DEV
jobs: ...
- stage: QA
jobs: ...
同意 Daniel Mann 的观点。
您可以将作业分为两个阶段(开发阶段和 QA 阶段)。
这是一个例子:
stages:
- stage: Dev_Stage
jobs:
- deployment: DeployWeb
displayName: deploy Web App
pool:
vmImage: 'Ubuntu-latest'
environment: 'env1'
strategy:
runOnce:
deploy:
steps:
- script: echo Hello world
- stage: QA_Stage
jobs:
- deployment: DeployWeb
displayName: deploy Web App
pool:
vmImage: 'Ubuntu-latest'
environment: 'env2'
strategy:
runOnce:
deploy:
steps:
- script: echo Hello world
结果:
此时stage1没有检查步骤,stage2需要检查
如果分别为两个阶段设置环境,则两个阶段相互独立,不会干扰其他阶段。
希望对您有所帮助。
我搭建了2个环境,只保护了一个环境
但是管道 运行 希望我在开始之前就批准。
我假设 Build 和 DevEnv 部署应该无人值守,应该单独为 QAEnv 停止。我错过了什么吗?
您需要将 dependsOn: <environment>
添加到您的工作中。目前,它正在尝试 运行 一次完成所有阶段。
你还在一个阶段中完成了所有这些工作,这让我很不满意。
您需要将它们分成多个阶段:
stages:
- stage: Build
jobs: ...
- stage: DEV
jobs: ...
- stage: QA
jobs: ...
同意 Daniel Mann 的观点。
您可以将作业分为两个阶段(开发阶段和 QA 阶段)。
这是一个例子:
stages:
- stage: Dev_Stage
jobs:
- deployment: DeployWeb
displayName: deploy Web App
pool:
vmImage: 'Ubuntu-latest'
environment: 'env1'
strategy:
runOnce:
deploy:
steps:
- script: echo Hello world
- stage: QA_Stage
jobs:
- deployment: DeployWeb
displayName: deploy Web App
pool:
vmImage: 'Ubuntu-latest'
environment: 'env2'
strategy:
runOnce:
deploy:
steps:
- script: echo Hello world
结果:
此时stage1没有检查步骤,stage2需要检查
如果分别为两个阶段设置环境,则两个阶段相互独立,不会干扰其他阶段。
希望对您有所帮助。