【问题标题】:How to use jenkins version number plugin in Jenkinsfile?如何在 Jenkinsfile 中使用 jenkins 版本号插件?
【发布时间】:2018-01-27 01:02:40
【问题描述】:

在安装了“版本号插件”的 Jenkinsfile 中尝试这一步:

    stage("Build") {
        echo "Building..."
        TAG = ${BUILD_DATE_FORMATTED, "yyyyMMdd"}-develop-${BUILDS_TODAY}
        sh "docker build -t $IMAGE:$TAG ."
    }

得到这个错误:

org.codehaus.groovy.control.MultipleCompilationErrorsException: startup failed:
WorkflowScript: 15: unexpected token: BUILD_DATE_FORMATTED @ line 15, column 15.
           TAG=${BUILD_DATE_FORMATTED, "yyyy-MM-dd"}-develop-${BUILDS_TODAY}
                 ^
1 error

在 Jenkinsfile 中使用这个插件的正确方法是什么?

【问题讨论】:

    标签: jenkins plugins version jenkins-pipeline


    【解决方案1】:

    您需要将其用作一个步骤。

    tag = VersionNumber (versionNumberString: '${BUILD_DATE_FORMATTED, "yyyyMMdd"}-develop-${BUILDS_TODAY}')
    

    查看https://your_jenkins_url.com/pipeline-syntax/ 并检查截图生成器中 VersionNumber 步骤的所有选项。

    【讨论】:

      【解决方案2】:

      在 Jenkinsfile.. 中试试这个

      env.BN = VersionNumber([
              versionNumberString :'${BUILD_MONTH}.${BUILDS_TODAY}.${BUILD_NUMBER}', 
              projectStartDate : '2017-02-09', 
              versionPrefix : 'v1.'
          ])
      

      【讨论】:

        【解决方案3】:

        在阶段使用脚本块运行版本编号

        stage("Build") {
            script {
                TAG = VersionNumber(versionNumberString: '${BUILD_DATE_FORMATTED, "yyyyMMdd"}-develop-${BUILDS_TODAY}')
                echo "Building..."
                sh "docker build -t $IMAGE:$TAG ."
             }
          }
        

        【讨论】:

          猜你喜欢
          • 2017-12-28
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2022-01-12
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多