0
新しいjenkins宣言的パイプライン構文を使用して、shスクリプトの実行の戻り状況をテストしたいと思います。スクリプトステップを使用せずに可能ですか?jenkins宣言的パイプラインの新しい構文でshスクリプトの戻り状態をテストする方法
スクリプトのパイプライン(作業):
...
stage ('Check url') {
node {
timeout(15) {
waitUntil {
sleep 20
def r = sh script: "wget -q ${CHECK_URL} -O /dev/null", returnStatus: true
return (r == 0);
}
}
}
}
宣言パイプライン(試す):
...
stage('Check url'){
steps {
timeout(15) {
waitUntil {
sleep 20
sh script: "wget -q ${CHECK_URL} -O /dev/null", returnStatus: true == 0
}
}
}
}
ログ:java.lang.ClassCastExceptionが:身体の戻り値はnullがあるので
最初の例のように 'script {}'にラップして比較を行うことなくこれを行う方法はないと思います。シェルが整数だけを返すようにする方法はなく、その整数をスクリプトに入れずにブール値に強制する方法はありません。 –
私は同意します。もう少し論理があるものはすべて 'script'ブロックが必要です。それが存在する理由です。 – StephenKing