[解決済み] シェルスクリプトを実行する際にJenkinsでビルドを不安定にする方法
2023-02-04 22:58:07
質問
私が取り組んでいるプロジェクトでは、さまざまなタスクを実行するためにシェルスクリプトを使用しています。あるものは rsync を実行する sh/bash スクリプトであり、あるものは PHP スクリプトです。PHP スクリプトの 1 つは、JUnit XML、コードカバレッジレポート、および同様のものに出力するいくつかの統合テストを実行しています。
Jenkins は に基づいてジョブを成功/失敗としてマークします。 終了ステータス . で PHP では、スクリプトは 1 で終了します。 で終了します。他のシェルスクリプトはコマンドを実行し、ビルドを失敗とマークするためにそれらの終了コードを使用します。
// :: End of PHP script:
// If any tests have failed, fail the build
if ($build_error) exit(1);
で Jenkinsの用語 では、不安定なビルドは次のように定義されています。
ビルドが正常に行われ、一つ以上のパブリッシャーが不安定であると報告した場合、そのビルドは不安定となります。例えば、JUnit パブリッシャーが設定され、テストが失敗した場合、そのビルドは不安定とマークされます。
シェルスクリプトを実行する際に、成功/失敗だけでなく、Jenkinsにビルドを不安定とマークさせるにはどうしたらよいですか?
どのように解決するのですか?
この場合 テキストファインダー プラグインを使用します。
ステータス1で終了する(ビルドに失敗する)代わりに、次のようにします。
if ($build_error) print("TESTS FAILED!");
ビルド後のアクションでテキストファインダーを有効にするよりも、印刷したメッセージと一致するように正規表現を設定します (
TESTS FAILED!
) に一致する正規表現を設定し、その項目の下にある "Unstable if found" チェックボックスをチェックします。
関連
-
[解決済み] JenkinsでExecute Shellがビルドを失敗とマークする方法/タイミングは?
-
[解決済み] Bashシェルスクリプトでディレクトリが存在するかどうかを確認するにはどうすればよいですか?
-
[解決済み] LinuxのシェルスクリプトでYes/No/Cancelの入力を促すにはどうしたらいいですか?
-
[解決済み] Git上でシェルコマンドを実行する際に使用するSSH-keyの秘密鍵を指定する方法は?
-
[解決済み] Rubyからシェルコマンドを呼び出す方法
-
[解決済み] シェルコマンドの実行と出力のキャプチャ
-
[解決済み] シェルの実行に失敗してもJenkinsのビルドを失敗させないようにする
-
[解決済み] 魚貝類でPATHを変更する【終了しました
-
[解決済み] dockerコンテナ内でプロセスが実行されているかどうかを確認するには?
-
[解決済み] 行全体がマッチする場合のみ grep がマッチするようにするには?
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み] .bashrc、.bash_profile、.environmentの違いは何ですか?
-
[解決済み] シェルからErlangのリリースバージョン番号を取得する方法は?
-
[解決済み] ある処理の戻り値を否定するには?
-
[解決済み] dockerのエントリーポイントスクリプトに対して、set -eとexec "$@"は何をするのですか?
-
[解決済み] 行全体がマッチする場合のみ grep がマッチするようにするには?
-
[解決済み] Cygwinからファイルを開く
-
[解決済み] バッチファイル - コマンドライン引数の数
-
[解決済み] リポジトリ 'http://security.debian.org/debian-security buster/updates InRelease' の 'Suite' の値が 'stable' から 'oldstable' に変更されました [閉鎖] 。
-
[解決済み] bashを起動し、新しいシェル内でコマンドを実行し、その後ユーザーに制御を戻すにはどうすればよいですか?
-
[解決済み] 魚の設定ファイルをbashのように動的に再読み込みするには?