Jenkins Pipeline Titleを取得するために利用できる環境変数はありますか?
$JOB_NAME
を使用してフリースタイルジョブのタイトルを取得できることは知っていますが、パイプライン名を取得するために使用できるものはありますか?
Groovyから同じ名前を使用して同じ環境変数にアクセスできます(例:JOB_NAME
またはenv.JOB_NAME
)。
ドキュメントから:
環境変数は、Groovyコードからenv.VARNAMEまたは単にVARNAMEとしてアクセスできます。このようなプロパティにも書き込むことができます(env。プレフィックスのみを使用):
env.MYTOOL_VERSION = '1.33' node { sh '/usr/local/mytool-$MYTOOL_VERSION/bin/start' }
これらの定義は、ビルド中または完了後にREST APIを介して、またビルドステップを使用してアップストリームパイプラインビルドからも利用できます。
特に複数のノードを使用して、env
を変更した後の副作用の問題を回避するには、一時的なコンテキストを設定することをお勧めします。
環境を変更する1つの安全な方法は次のとおりです。
withEnv(['MYTOOL_HOME=/usr/local/mytool']) {
sh '$MYTOOL_HOME/bin/start'
}
このアプローチは、コマンド実行後にenvを汚染しません。