Jenkins 2 パイプライン プラグインには、ログ出力を含む、パイプライン ステージとステップのステータスの概要をすばやく確認できる便利な機能があります。
ただし、「シェル スクリプト」(sh) ステップを使用する場合、そのスクリプトに有用な名前を付ける方法がないように思われるため、ディスプレイには「シェル スクリプト」の長いリストが表示されるだけです (下の画像)。
便利な名前を割り当てるにはどうすればよいですか、または他の手順を使用して同じ効果を達成するにはどうすればよいですか?
Jenkins 2 パイプライン プラグインには、ログ出力を含む、パイプライン ステージとステップのステータスの概要をすばやく確認できる便利な機能があります。
ただし、「シェル スクリプト」(sh) ステップを使用する場合、そのスクリプトに有用な名前を付ける方法がないように思われるため、ディスプレイには「シェル スクリプト」の長いリストが表示されるだけです (下の画像)。
便利な名前を割り当てるにはどうすればよいですか、または他の手順を使用して同じ効果を達成するにはどうすればよいですか?
2019年2月更新:
以下の gertvdijk の回答によると、 v2.28 からsh ステップにオプションのラベルを割り当てることができるようになりました。まだアップグレードできない人のために、回避策もあります。詳細とコメントについては、彼の回答を確認してください。
以前のバージョン (ホバーして表示):
私の知る限り、それは現在不可能です。Jenkins トラッカーには、状況に似 た名前またはエイリアスのシェル スクリプト ステップ (sh)の問題があります。
このただし、最近修正され、pipeline-stage-step-plugin の v2.2 に含まれているように見える、ラベル付きブロックとして動作する古い Allow ステージの複製として閉じられました (changelog を参照) 。 ステージをネストできるようになり、ビュー テーブルに表示されるようになりましたが、探しているものではないと思います。sh
ステップは、パイプラインに「シェル スクリプト」ステップを追加します。ただし、さまざまなプラグイン (Docker など) からのステップを含む複数のステップが存在する可能性があり、ステップを区別するのが難しくなります。オプションのパラメーターを sh に追加して、パイプライン ステップに表示される名前またはエイリアスを指定する必要があります。たとえば、パイプライン ビューで「シェル スクリプト: npm」として表示される npm のステップは次のようになります。
sh cmd:"npm install", name: "npm"
「Pipeline Nodes and Processes Plugin」のバージョン 2.28+ では、 JENKINS-55410でステップのlabel
オプションが追加されました。sh
ラベル (オプション)
パイプライン ステップ ビューに表示されるラベルと、ステップ タイプの代わりにステップのブルー オーシャンの詳細。したがって、ビューはより意味があり、技術的なものではなくドメイン固有のものです。
- タイプ: 文字列
例えば:
sh script: "echo foo", label: "my step"
まだアップグレードできない場合は、ラベル付きパイプライン ステップ プラグインを使用することもできます。
まあ、絶望的な時代には絶望的な対策が必要です。Blue Ocean を利用できる場合は、実行行が 1 つの並列ステップを使用できます。
parallel(
"This is my step name" : {
sh 'env'
}
)
これを試してください、良い回避策です
import org.jenkinsci.plugins.workflow.cps.CpsThread
import org.jenkinsci.plugins.workflow.actions.LabelAction
def test() {
def xyz = "Prints PWD"
try {
sh script: 'pwd'
}
finally {
CpsThread.current().head.get().addAction(new LabelAction("Shell script ${xyz} "))
}
}