パイプライン情報をフェッチするための Jenkins から ServiceNow DevOps への呼び出しを削減する
Jenkins構成フォームの [トラッキングチェックを強制] フィールドを有効にして、Jenkins でパイプライントラッキングファイルを作成します。パイプラインの [追跡] フィールドが変更されると、ServiceNow DevOps は JenkinsREST 呼び出しを行ってトラッキングファイルを更新します。
トラッキングチェックを強制
Jenkins の ServiceNow DevOps 構成セクションには、追跡されているパイプラインなどのパイプライン情報をフェッチするために Jenkins から DevOps への呼び出しの数を減らすための [強制追跡チェック (Force Tracking Check)] チェック ボックスが含まれています。ベースシステムフロー:
- DevOps Jenkins ファイル更新 - フローの追跡
- DevOps Jenkins ファイル更新 - テスト情報フロー
仕組み
以前のバージョンでは、REST 呼び出しは、トリガーされたすべての Jenkins ビルドのパイプライン情報をフェッチしていました。Jenkins環境に複数のパイプラインがあり、そのうちの数つだけを追跡していた場合、いくつかのパイプラインを追跡していた場合でも、各パイプラインの追跡情報をフェッチするための呼び出しが行われたことを意味します。
Jenkins ビルドまたはパイプラインの実行を初めてトリガーすると、Jenkins はパイプライン情報 API 呼び出しを行い、snPipelineInfo.jsonファイルを /{JENKINS_HOME}/jobs/{jobName} ディレクトリに作成します。後続のパイプライン実行ごとに、 Jenkins はパイプライン情報 API 呼び出しを行う前に 、snPipelineInfo.json ファイルで使用可能な情報を確認します。
[ Force Track Check ] チェックボックスを無効にすると、次のようになります。
- パイプラインフォームの [追跡] フィールドを更新すると、[DevOps Jenkins ファイルの更新 - 追跡] フローがトリガーされます。snPipelineInfo.jsonファイルの追跡フィールド情報が更新されます。
- DevOps Jenkins [ファイルの更新 - テスト情報] フローは、 Jenkins ツール統合のテストタイプマッピングを更新し、 snPipelineInfo.json ファイルでテスト情報が更新されていることを確認するときにトリガーされます。
[Force Track Check] チェック ボックスをオンにすると、snPipelineInfo.json ファイルにトラック/テスト情報が存在する場合でも、Jenkins はパイプライン情報 API 呼び出しを行ってDevOpsします。