詹金斯不接受变量声明

Mar*_*arc 4 jenkins docker

我正试图从詹金斯开始一个码头图像.(没有得到Docker从Jenkins内部运行)我认为我真的很接近,但这部分还有一些问题.可以请任何人帮忙吗?

    stage('build Dockerimage 1') {
      steps{
        apitestimage = docker.build('apitestimage', '--no-cache=true dockerbuild')
      }
    }

    stage('start Dockerimage and Tests 2') {
      steps{
        apitestimage.inside {
          sh 'cd testing && ctest'           
        }
      }
    }
Run Code Online (Sandbox Code Playgroud)

Jenkins报告:WorkflowScript:21:预期第21行,第15行.apitestimage = docker.build('apitestimage',' - no-cache = true dockerbuild')

并且

WorkflowScript:27:方法调用"脚本"块之外不允许的对象.@第27行,第13栏.apitestimage.inside {

Olu*_*ule 8

从您的错误中,它表明您script在步骤中错过了一个块.在使用DSL时,您将需要一个脚本块steps.

stage('build Dockerimage 1') {
  steps{
    script {
      def apitestimage = docker.build('apitestimage', '--no-cache=true dockerbuild')
    }
  }
}

stage('start Dockerimage and Tests 2') {
  steps{
    script {
      apitestimage.inside {
        sh 'cd testing && ctest'
      }           
    }
  }
}
Run Code Online (Sandbox Code Playgroud)

参考文献: