Azure DevOps Services |Azure DevOps Server |Azure DevOps Server 2022 |Azure DevOps Server 2020
手動デプロイの承認、ゲート、手動による介入をリリース パイプラインで組み合わせることで、ワークフローの特定のデプロイ前要件をすべて満たすようにデプロイを迅速かつ簡単に構成できます。
このチュートリアルでは、以下について学習します。
- デプロイ前ゲート
- 手動による介入
- 手動検証
- デプロイ ログ
[前提条件]
マルチステージ リリース パイプラインの定義に関するチュートリアルを完了します。
作業項目クエリ。 作業項目クエリがまだない場合は、Azure Boards で作成します。
ゲートを設定する
ゲートを使用すると、ユーザーの介入を必要とせずに、デプロイ前にリリース パイプラインが特定の条件を満たしていることを確認できます。
[ Pipelines>Releases] を選択し、リリース パイプラインを選択します。 [ 編集] を 選択してパイプライン エディターを開きます。
ステージのデプロイ前アイコンを選択し、トグル ボタンを選択して ゲートを有効にします。
追加されたゲートが評価されるまでの遅延時間を指定します。 今回は、ゲート関数を初期化し、結果を返す前に安定できるようにすることです。
[ 追加] を選択し、[ 作業項目のクエリ] を選択します。
ドロップダウン メニューから既存の作業項目クエリを選択します。 クエリから返される作業項目の数に応じて、最大しきい値と最小しきい値を設定します。
[ 評価オプション ] セクションを選択し、タイムアウトとサンプリング間隔を指定します。 指定できる最小値は、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'
デプロイ ログを表示する
デプロイ ログはデプロイの問題をデバッグするのに役立ちますが、それらを使用してパイプラインの実行を監査し、承認と、それらが付与された方法と誰によって付与されたかを確認することもできます。
[ Pipelines>Releases] を選択し、リリース パイプラインを選択します。
このビューには、パイプライン内の各ステージのライブ状態が表示されます。 この例の QA ステージは、介入が保留中です。 [ 再開] を選択します。
コメントを入力し、[再開] を選択 します。
QA ステージのデプロイが成功し、運用ステージに対してデプロイ前の承認がトリガーされます。
[ 承認] を選択し、コメントを入力し、[ 承認 ] を選択してデプロイを続行します。
ライブ 状態は、リリースが続行される前に、 運用 ステージのゲートが処理されていることを示します。
リリース パイプラインに戻り、ステージにカーソルを合わせ、[ ログ ] を選択してデプロイ ログを表示します。