Jenkins PluginのVersion NumberでoverrideBuildsAllTimeを指定するとインクリメントされない

Jenkins Pluginの Version Numberで[BUILDS_ALL_TIME]を利用する場合、
overrideBuildsAllTimeを指定すると番号がインクリメントされない。

通常、[BUILDS_ALL_TIME]は1から始まる。
これを1ではない数値から始めたい場合、
例えばパイプラインを作り直した際に続きから再開したいといった場合、
overrideBuildsAllTime: 10などと指定することで実現できる。

が、これを指定すると次のビルドでも再び10と採番されてしまう。

解決策としては一度overrideBuildsAllTimeを指定して実行したら、
次回以降はoverrideBuildsAllTimeを削除してしまえば良い。

参考 - Version Number Plugin

  • https://plugins.jenkins.io/versionnumber/
  • https://www.jenkins.io/doc/pipeline/steps/versionnumber/

Version Number Pluginバージョン

  • 234.v315d3b_3cb_fb_5

パイプラインの検証

Pipelineの定義

pipeline {
    agent any

    stages {
        stage('Verion Number') {
            environment {
                // VERION_NUMBER = VersionNumber(versionNumberString: '1.0.0+${BUILDS_ALL_TIME}')
                VERION_NUMBER = VersionNumber(overrideBuildsAllTime: '10', versionNumberString: '1.0.0+${BUILDS_ALL_TIME}')
            }
            steps {
                echo "version number: ${env.VERION_NUMBER}"
            }
        }
    }
}

overrideBuildsAllTime: 10を指定して実行。
意図通り10と採番される。

もう一度ビルド実行する。

すると、インクリメントされず前回と同じ番号となる。

回避策としてoverrideBuildsAllTimeを削除し、ビルド実行する。

VERION_NUMBER = VersionNumber(versionNumberString: '1.0.0+${BUILDS_ALL_TIME}')

続きの11にインクリメントされることが確認できた。

0 コメント

コメントを投稿

Post a Comment (0)