ゲートと承認を使用してデプロイを制御する
Azure DevOps Services | Azure DevOps Server 2022 - Azure DevOps Server 2019
リリース パイプラインで手動デプロイ承認、ゲート、手動介入を組み合わせて使用すると、ワークフローの特定のデプロイ前要件をすべて満たすようにデプロイをすばやく簡単に構成できます。
このチュートリアルでは、次の事項について説明します。
- デプロイ前ゲート
- 手動介入
- 手動検証
- デプロイ ログ
前提条件
「複数ステージのリリース パイプラインを定義する」チュートリアルを完了します。
作業項目クエリ。 まだ作業項目がない場合は、Azure Boards で作業項目クエリを作成します。
ゲートを設定する
ゲートを使用すると、ユーザーの介入を必要とせずに、デプロイ前にリリース パイプラインが特定の条件を満たしていることを確認できます。
[パイプライン]>[リリース] を選択します。 [編集] を選択して、パイプライン エディターを開きます。
ステージのデプロイ前アイコンを選択し、トグル ボタンを選択して ゲートを有効にします。
追加されたゲートが評価されるまでの遅延時間を指定します。 今回は、ゲート関数を初期化し、結果を返す前に安定できるようにすることです。
[追加] を選択し、[作業項目のクエリ] を選択します。
ドロップダウン メニューから既存の作業項目クエリを選択します。 クエリが返す作業項目の数に応じて、最大しきい値と最小しきい値を設定します。
[評価オプション] セクションを選択し、タイムアウトとサンプリング間隔を指定します。 指定できる最小値は、6 分のタイムアウトと 5 分のサンプリング間隔です。
完了したら、 [保存] を選択します。
手動介入を設定する
シナリオによっては、リリース パイプラインに手動介入を追加することが必要になる場合があります。 これを行うには、手動介入タスクをパイプラインに追加します。
[パイプライン]>[リリース] を選択します。 リリース パイプラインを選択し、[タスク] を選択して、ステージを選択します。
省略記号 (...) を選択し、[エージェントレス ジョブを追加する] を選択します。
エージェントレス ジョブをデプロイ プロセスの先頭にドラッグ アンド ドロップします。 (+) 記号を選択し、[手動介入タスクの追加] を選択します。
[表示名] と、タスクがトリガーされたときに表示される指示を入力します。 また、通知するユーザーの一覧と、タイムアウト期間内に介入が発生しなかった場合のタイムアウト アクション (拒否または再開) を指定することもできます。
完了したら、 [保存] を選択します。
注意
手動介入タスクは、エージェントレス ジョブでのみ使用できます。
手動検証を設定する
YAML パイプラインで手動検証タスクを使用して一時停止し、手動承認を待機できます。 手動検証は、計算を集中的に行うジョブを開始する前に構成設定を検証したり、パッケージをビルドしたりするシナリオで特に便利です。
waitForValidation
ジョブでは、実行を一時停止し、タスクを確認および検証するための UI プロンプトをトリガーします。 notifyUsers
に記載されているメール アドレスは、パイプラインの実行を承認または拒否するための通知を受け取ります。
pool:
vmImage: ubuntu-latest
jobs:
- job: waitForValidation
displayName: Wait for external validation
pool: server
timeoutInMinutes: 4320 # job times out in 3 days
steps:
- task: ManualValidation@0
timeoutInMinutes: 1440 # task times out in 1 day
inputs:
notifyUsers: |
someone@example.com
instructions: 'Please validate the build configuration and resume'
onTimeout: 'resume'
デプロイ ログを表示する
デプロイ ログはデプロイの問題をデバッグするのに役立ちますが、それらを使用してパイプラインの実行を監査し、承認と、それらが付与された方法と誰によって付与されたかを確認することもできます。
[パイプライン]>[リリース] を選択します。
このビューには、パイプライン内の各ステージのライブ状態が表示されます。 この例の QA ステージは、介入を保留中です。 [再開] を選択します。
コメントを入力し、[再開] を選択します。
QA ステージのデプロイが成功し、運用ステージに対してデプロイ前の承認がトリガーされます。
[承認] を選択して、コメントを入力し、[承認] を選択してデプロイを続行します。
ライブ状態は、リリースが続行される前に、運用ステージのゲートが処理されていることを示します。
リリース パイプラインに戻り、ステージをポイントしてから、[ログ] を選択して、デプロイ ログを表示します。