Jenkinsのパイプライン(Pilepine)をさわっていて、ジョブの再実行のあたりがモヤモヤしていたので動きを調べてみた。結論としては、retryブロックはtryブロックに似たような処理をするので、try-catchで囲ったら予期せぬ動きになってしまう。 Retry the body up to N times Jenkins パイプラインのリトライ(retry)は、失敗した場合、指定した回数だけリトライを実行してくれる(参考:Jenkins Pipleline Basic Steps)。 retry(3) { // call job } 上のように書くと、ジョブが失敗した場合に最大あと2回(合計で3回)実行を続けてくれる。不安定になりがちなジョブで設定すれば便利そう。 ただ、それでもジョブの失敗が続き、3回目に失敗すると、そこで例外が投げられてしまう。ということはその例外を捕まえない