小编Rob*_*ert的帖子

如何让git功能分支与jenkins-workflow一起使用?

我正在尝试设置jenkins-workflow来进行集成测试.我们的集成测试工作方式如下:

有人LibraryA在git的功能分支中进行了更改.我们希望詹金斯在其上运行的特性分支的代码单元测试,那么我们想从这个特性分支安装代码转换成client1client2(这是用户LibraryA),并运行他们的测试.

我能够设置一个工作流来完成所有工作,除了得到正确的提交到功能分支LibraryA.相反,我的设置只是从一些(看似随机的)分支提取LibraryA.

我们有许多功能分支,因此在工作流程设置中对特定分支进行硬编码是不合适的.似乎应该有一些方法来获取触发工作流作业的提交的哈希值(即使使用SCM轮询).

我的设置如下:

currentBuild.setDisplayName("#" + env.BUILD_NUMBER)

node {
  git credentialsId: '033df7f1-7752-46bd-903d-8a70e613eed0', url: 'git@github.com:mycompany/myrepo.git'
  sh '''
echo `git rev-parse HEAD` > libraryA_version.txt
sudo docker run --rm=true -e LANG=en_US.UTF-8 -a stdout -i -t mycompany/libraryA run_tests
'''
  archive 'libraryA_version.txt'
}

def integration_jobs = [:]

integration_jobs[0]={
  node{
    ws {
      unarchive mapping: ['libraryA_version.txt':'.']
      sh 'sudo docker run -t --rm mycompany/client1:v1 bash run_tests.sh "`cat libraryA_version.txt`"'
    }
  }
}

integration_jobs[1] = {
  node{ …
Run Code Online (Sandbox Code Playgroud)

git jenkins jenkins-workflow

5
推荐指数
1
解决办法
8183
查看次数

标签 统计

git ×1

jenkins ×1

jenkins-workflow ×1