在同一阶段的运行中与其他代理执行后期处理

时间:2019-05-13 18:55:23

标签: jenkins jenkins-pipeline

我有这个(节选a)Jenkinsfile

#!/usr/bin/env groovy

pipeline {
  agent any

  stages {
    ...

    stage("Terraform Setup") {
      when { not { branch "master" } }
      agent {
        docker {
          // ...an image with Terraform stuff
        }
      }
      steps {
        script { /* setup infrastructure here */ }
      }
    }

    stage("Gradle Test") {
      when { not { branch "master" } }
      agent {
        docker {
          // ...an image with Gradle stuff
        }
      }
      steps { sh "gradle test" }
      post {
        always {
          script { /* destroy infrastructure here */ }
        }
      }
    }

  post {
    always {
      cleanWs()
    }
  }
}

基本上,我想实现的是在阶段post的{​​{1}}块上执行一系列操作,但是要使用不同的Gradle Test;请注意,我在agent中使用了Gradle图像,因此我没有所需的Terraform命令。

是否有任何建议或其他方法可以达到相同的目的?

0 个答案:

没有答案