ブログの説明
ブログの説明2
Jenkinsfile に書かれた処理を Pipeline で実行した場合、、スクリプトの中に許可されていないメソッド呼び出しがあると例外が発生します。
この場合、そのスクリプトは管理者による承認待ちの状態になるので、許可してやる必要があります。
「Jenkins の管理」 > 「In-process Script Approval」に承認待ちのメソッドが表示されるので、「Approve」をクリックして許可してあげます。
これで実行できるはずです。
と、ここまではググってみれば見つかる情報なのですが、私の場合、例外発生しても In-process Script Approval に何も表示されませんでした。
わかってしまえば当たり前なことなのですが、自分で例外を catch している場合は、In-process Script Approval の画面には表示されないようです。
この場合、一度 catch しないようにコードを変更してから実行し、スクリプトを許可した後でコードを元に戻しました。
Jenkins 2 の Pipeline 機能を使っていて、一応正常に完了しているのですが、ログを見ると以下の警告が表示されていました。
Using the ‘stage’ step without a block argument is deprecated
stage の書き方が正しくないようなので、以下のように修正したら直りました。
変更前のコード
stage "hoge"
piyo()
変更前のコード
stage("hoge"){
piyo()
}
Jenkins 2 の Pipeline 機能を試してたのですが、bat コマンドを実行するといつまで経っても処理が終了しないという状況になってしまいました。
環境は Windows 7 で、Jenkins のバージョンは 2.33 です。
何かのプラグインが悪さをしているのかと思い、いろいろ試してみましたが、一向に原因がわからず、かなりはまりました。
しかし、結局は Pipeline に付けた名前に日本語が含まれていることが原因という、しょうもないオチでしたとさ。
Jenkins 2 で追加された Pipeline の機能を使ってみようと思ったのですが、「新規ジョブ作成」を押しても Pipeline の項目がありません。
いろいろ悩みましたが、以下のようにして解決しました。
Jenkins 2 を新規インストールしたのではなく、1.6 系から 2.0 系にバージョンアップしていたのが原因ではないかと。
Jenkins はバージョンアップ後もいつでも元のバージョンに戻せるようになっているため、Jenkins 2 以降でしか使用できない Pipeline がインストールされていないのだろうと推測します。
手動で Pipeline をインストールします。
基本的にはこれで OK だと思うのですが、私の環境ではプラグインインストール時にエラーがでました。
Jenkins のバージョンが 2.26 だったのですが、2.32 がリリースされていたので、一度 Pipeline をアンインストールし、Jenkins アップグレード後に再度 Pipeline をインストールしました。
今のところこれで一応動いています。
Jenkins のジョブの設定内容を変更した際に、ビルドに失敗するようになってしまったときのために変更履歴を残しておくためのプラグインです。
これでサイドバーに「設定の変更履歴」が表示されるようになります。