Code Stream 管理者または開発者は、Gerrit トリガを使用して Code Stream と Gerrit コード レビュー ライフサイクルを統合できます。Gerrit プロジェクトでパッチ セットの作成、ドラフトの発行、コード変更のマージを行ったり、変更を Git ブランチに直接プッシュすると、イベントがパイプラインの実行をトリガします。
この例では、最初に Gerrit リスナーを構成し、次に 3 つの異なるパイプラインの 2 つのイベントを使用して、Gerrit トリガでこのリスナーを使用します。
前提条件
- Code Stream で、プロジェクトのメンバーであることを確認します。メンバーでない場合は、プロジェクトにメンバーとして追加するように Code Stream 管理者に依頼します。Code Streamでプロジェクトを追加する方法を参照してください。
- Code Stream で Gerrit エンドポイントが設定されていることを確認します。Code Stream を Gerrit と統合する方法を参照してください。
- Gerrit リリース バージョンを把握していることを確認します。
- パイプラインをトリガするために、パイプラインの入力プロパティが [Gerrit] として設定されていることを確認します。これにより、パイプラインは、実行中に Gerrit パラメータを入力として受け取ることができます。
入力パラメータについては、タスクの手動追加を行う前の Code Stream での CICD ネイティブ ビルドの計画を参照してください。
手順
結果
次のタスク
Gerrit プロジェクトのコード変更をコミットした後、[アクティビティ] タブで Code Stream の Gerrit イベントを確認します。アクティビティのリストに、トリガ設定のすべてのパイプライン実行に対応するエントリが含まれていることを確認します。
イベントが発生した場合、特定のタイプのイベントに関連する Gerrit トリガ内のパイプラインのみが実行されます。この例では、パッチ セットが作成された場合、[Gerrit-Trigger-Pipeline] と [Gerrit-Demo-Pipeline] のみが実行されます。
[アクティビティ] タブの列には、各 Gerrit トリガ イベントについての情報が示されています。表の下に表示される列のアイコンをクリックすると、表示される列を選択できます。
- トリガが直接の Git プッシュであった場合、[サブジェクトの変更] 列と [実行] 列は空になります。
- [Gerrit のトリガ] 列には、イベントを作成したトリガが表示されます。
- [リスナー] 列はデフォルトでオフになっています。選択すると、イベントを受信した Gerrit リスナーが列に表示されます。複数のトリガに関連付けられている 1 つのリスナーを表示できます。
- [トリガー タイプ] 列はデフォルトでオフになっています。選択すると、トリガのタイプが [自動] または [手動] として列に表示されます。
- 他の列には、[コミット時間]、[変更 #]、[ステータス]、[メッセージ]、[実行された操作]、[ユーザー]、[Gerrit プロジェクト]、[ブランチ]、[イベント] が含まれます。
完了した実行や失敗したパイプライン実行のアクティビティを制御するには、[アクティビティ] 画面の任意のエントリの左側にある 3 つのドットをクリックします。
- パイプライン モデルの誤りや別の問題が原因でパイプラインを実行できない場合は、誤りを修正し、[再実行] を選択して、パイプラインを再実行します。
- ネットワーク接続の問題や別の問題が原因でパイプラインを実行できない場合は、[再開] を選択して、同じパイプラインの実行を再開し、ランタイムを保存します。
- [実行の表示] を使用して、パイプライン実行ビューを開きます。パイプラインを実行して結果を確認する方法を参照してください。
- [削除] を使用して、[アクティビティ] 画面からエントリを削除します。
Gerrit イベントがパイプラインのトリガに失敗した場合は、
[手動でトリガー] をクリックして、Gerrit のトリガを選択します。次に、変更 ID を入力して、
[実行] をクリックします。
注:
[手動でトリガー] が機能するのは、
[パッチセットの作成]、
[変更のマージ]、
[ドラフトの公開] などの有効な Gerrit イベントのみです。