👋

現場で実際に使用しているJenkinsのパイプラインのoptions

2023/10/14に公開

はじめに

今回は、現場で実際に使用しているJenkinsのパイプラインのoptionsについて書きたいと思います。

Jenkinsのパイプラインのoptions

パイプラインのoptionsの設定は、以下になります。

  options {
    skipDefaultCheckout()
    disableConcurrentBuilds()
    timestamps()
  }

それぞれの設定の意味

skipDefaultCheckout()

Jenkinsパイプライン内でのデフォルトのソースコード管理(SCM)のチェックアウト(取得)をスキップするためのオプションになります。
ソースコード管理は、GitLabやGitHub等のツールになります。

こちらを設定することによって、ソースコード管理(SCM)からカスタムでリポジトリを取得するための設定が可能です。

disableConcurrentBuilds()

Jenkinsパイプラインの同時実行を禁止するためのオプションになります。
共有リソースなどへの同時アクセスを防ぐのに役立ちます。

timestamps()

パイプライン実行によって生成されたすべてのコンソール出力の先頭に、行が出力された時刻を付与するためのオプションになります。

以下のような形でコンソール出力の行の先頭に時刻を付与します。

ユーザーjenkinsが実行
Resume disabled by user, switching to high-performance, low-durability mode.
[Pipeline] Start of Pipeline
[Pipeline] node
Running on Jenkins in /var/lib/jenkins/workspace/test
[Pipeline] {
[Pipeline] timestamps
[Pipeline] {
[Pipeline] stage
[Pipeline] { (AWS接続確認)
[Pipeline] echo
17:54:17  # AWS接続確認 開始 #
[Pipeline] script
[Pipeline] {
[Pipeline] sh
17:54:17  + aws s3 ls
17:54:22  2020-05-18 07:23:54 infra-backet01
17:54:22  2022-11-03 18:31:36 terraform-backend1103
17:54:22  2022-12-17 16:14:31 testoffice.work
17:54:22  2022-12-17 16:17:38 testoffice.work-log

参考

https://www.jenkins.io/doc/book/pipeline/syntax/

Discussion