概要
Azure Pipelines にて同時実行数(concurrency)を1とするには、排他ロック(Exclusive Lock)機能の利用により可能となります
引用:パイプラインデプロイの承認 - Azure Pipelines | Microsoft Docs
本手順では Enviroment
(環境)を用いる手順となっていますが、変数グループ等でも実施できるようです。
環境、サービス接続、リポジトリ、変数グループ、セキュリティで保護されたファイル、エージェント プールに対してチェックを構成できます。
引用:パイプラインデプロイの承認 - Azure Pipelines | Microsoft Docs
検証手順と結果
1. Enviroment
を作成後、Exclusive Lock
を設定
2. 1 で作成したEnviroment
(concurrency
) を参照したパイプラインを構築
lockBehavior: sequential
jobs:
- job: delay
pool: Server
steps:
- task: Delay@1
displayName: 'Delay'
inputs:
delayForMinutes: 1
- deployment: echo_test
displayName: 'echo test'
dependsOn: delay
pool:
vmImage: 'ubuntu-20.04'
environment: concurrency
strategy:
runOnce:
deploy:
steps:
- script: echo Hello world