声明式Jenkins Pielines在SCM检出之前运行命令

时间:2018-07-04 10:05:32

标签: jenkins jenkins-pipeline jenkins-declarative-pipeline

需要在git checkout通过管道代码开始之前运行命令。这类似于在SCM运行之前使用运行构建步骤。预先感谢

2 个答案:

答案 0 :(得分:2)

您需要在开始时使用选项,以防止它首先执行默认结帐,然后在您希望执行的初始步骤之后触发结帐。

因此,在管道脚本中声明您的代理/工具安装/环境变量,然后使用

options {
    skipDefaultCheckout true
}

然后在一个阶段中进行准备工作,例如

stage('Preparation') {
     steps {
          //Insert steps here
     }
}

然后,您的下一个阶段应该执行您先前停止的结帐。这真的很简单

stage('Checkout') {
    steps {
         checkout scm
    }
}

然后,您可以继续执行常规步骤。花了我一段时间才能找到此解决方案。我用它首先签出另一个仓库,并读取它的标签以生成组合的版本号。

答案 1 :(得分:0)

直接在jenkins中放置管道代码,而不是从git中获取代码,在第一阶段执行所需的操作,然后在第二阶段开始git checkout