Opsgenie を Jenkins と統合する

Opsgenie が Jenkins ユーザーに提供するもの
Opsgenie Jenkins インテグレーションを使用して、Jenkins ビルド アラートを Opsgenie に転送します。Opsgenie は、オンコール スケジュールに基づいて通知する適切な担当者を決定します。メール、テキスト メッセージ (SMS)、電話、iOS、Android のプッシュ通知によって通知して、アラートが確認されるかクローズされるまでアラートをエスカレートします。
統合の機能性
Jenkins でビルド関連の問題が発生すると、統合によって Opsgenie でアラートが自動で作成されます。
Opsgenie で Jenkins インテグレーションを追加する
Opsgenie の Free プランまたは Essentials プランを使用している、または Jira Service Management の Standard プランで Opsgenie を使用している場合は、チーム ダッシュボードからのみこの統合を追加できます。 このプランでは、[設定] の [統合] ページが利用できません。
[チーム] に移動して自分のチームを選択します。
左側のナビゲーションで [統合] を選択し、[統合を追加] を選択します。
統合をチーム ダッシュボードから追加すると、そのチーム統合の所有者になります。Opsgenie では、この統合を通じて受信したアラートはそのチームのみに割り当てられます。このセクションの残りの手順に従って、統合を設定してください。
Go to Settings > Integrations. Search for Jenkins and select Add.
[応答者] フィールドによって Jenkins アラートの通知先を指定します。入力し始めると、オートコンプリートの候補が表示されます。
URL と API キーをコピーして、プラグインの [Opsgenie API URL] と [API キー] の各フィールドにそれぞれ貼り付けます。
[Save Integration (統合の保存)] を選択します。
Opsgenie Jenkins プラグインのインストールと設定
Jenkins マシンで [Jenkins の管理] > [プラグイン マネージャーに移動] > [使用可能] に移動して Opsgenie プラグインを検索し、それを選択してインストールします。
グローバル プラグイン設定を設定するには、Jenkins のメインページに戻って [Manage Jenkins (Jenkins の管理)] -> [Configure System (システムの設定)] → [Opsgenie Notifier Settings (Opsgenie 通知者設定)] の順に移動します。
グローバル設定:
Opsgenie Jenkins インテグレーションから与えられた API URL と API キーを入力します。API URL はデフォルト値に設定されますが、別の値を設定することもできます。
通知するチームとアラート タグを入力します。
これらのフィールドはデフォルト設定として使用され、特定のジョブに対して上書きされます。
4. ビルド後のアクションは、次の手順に従います。
[設定] に移動して、Jenkins ジョブ用の Opsgenie プラグインを有効化します。
プロジェクト設定の [ビルド後のアクション] セクションまでスクロールします。
[ビルド後のアクションの追加] をクリックします。
表示されたリストから [Opsgenie にアラートを送信] を選択します。[Opsgenie にアラートを送信] セクションがウィンドウに表示されます。
これらの変更を保持するには、[保存] をクリックします。
5. ジョブの設定では、次の手順に従います。
[設定] > [Opsgenie にアラートを送信] の順に移動して、Opsgenie プラグインの Jenkins ジョブ設定を設定します。
Opsgenie にアラートを送信するには、[アラートの送信を有効にする] をオンにします。
[ビルド開始を通知する] をオンにすると、ビルド開始を通知するアラートが Opsgenie に送信されます。
Opsgenie Jenkins インテグレーションから付与された API URL と API キーを入力します。これらのフィールドに入力すると、グローバル設定が上書きされます。
通知するチームとアラート タグを入力します。グローバル設定を上書きするには、これらのフィールドに入力します。
[優先度] フィールドから、ビルド ステータス アラートの優先度を選択します。
[Build Start Alert's Priority (ビルド開始ステータス アラートの優先度)] フィールドから、ビルド開始ステータス アラートの優先度を選択します。
6. For more information about plugin you can check Opsgenie Plugin and our open source project Opsgenie Jenkins Plugin
Opsgenie ステップ関数の設定
パイプライン ステージまたはポスト アクションから Opsgenie トリガーステップ関数を呼び出すことができます。Opsgenie ステップ関数は、次のパラメーター (またはパラメーターなし) で呼び出すことができます: タグ (コンマ区切り)、チーム (コンマ区切り)、優先度、apiKey および apiUrl
リクエストの例を以下に示します。
step
opsgenie(tags: "tag1,tag2" , teams: "team1", priority: "P1")
API キーと API URL
[Jenkins の管理] > [システムの設定] > [Opsgenie 通知設定] から API キーと API URL を設定できます。
また、opsgenie(apiKey: "myApiKey", apiUrl: "myApiUrl") のようなステップ関数呼び出しから API キーと API URL をオーバーライドできます。
パイプライン スクリプトの例
パイプライン
pipeline {
agent any
stages {
stage('pre') {
steps {
sh 'echo "pre success!"; exit 0'
}
}
stage('post') {
steps {
sh 'echo "post success!"; exit 0'
}
}
stage('Test') {
steps {
sh 'echo "Failed!"; exit 1'
}
}
}
post {
always {
echo 'This will always run'
}
success {
echo 'This will run only if successful'
opsgenie(tags: "informational")
}
failure {
echo 'This will run only if failed'
opsgenie(tags: "failure, critical",
teams: "engineering", priority:"P1")
}
unstable {
echo 'This will run only if the run was marked as unstable'
opsgenie()
}
changed {
echo 'This will run only if the state of the Pipeline has changed'
echo 'For example, if the Pipeline was previously failing but is now successful'
}
}
}
この内容はお役に立ちましたか?