如何知道哪个git分支触发了jenkins的工作

时间:2018-04-17 16:31:57

标签: git jenkins github groovy jenkins-pipeline

我有一个管道Jenkins作业正在按预期工作,配置了选项"用于GITScm轮询的GitHub钩子触发器" 用于任何推送到git repo的自动构建。

我已经为多个git repo提供了这个Jenkins网址,例如repo-Arepo-Brepo-B。 Jenkins的工作会自动触发任何代码推送到这些回购邮件。

但我想知道哪个repo触发了Jenkins的工作,因为它配置为Jenkins级别的多个git repo。对此有任何帮助表示高度赞赏。

2 个答案:

答案 0 :(得分:1)

按照我在一张票(示例阶段)中在 Jenkins 的错误跟踪器上找到的示例,这在我的管道中起作用:

stage("checkout") {
  script {
    def git_params = checkout(...)
    println(git_params)
    env.REPO = git_params["GIT_URL"]
  }
}

git_params 还包括:GIT_AUTHOR_EMAILGIT_AUTHOR_NAMEGIT_BRANCHGIT_COMMITGIT_COMMITTER_EMAILGIT_COMMITTER_NAME、{{1 }},GIT_PREVIOUS_COMMIT

答案 1 :(得分:0)

您可以将GIT Plugin个变量作为步骤结帐的返回值

即:

commit = checkout scm
println commit.GIT_URL

PS:你的头衔应该是"如何知道哪个git 存储库并触发jenkins工作"。确实,为了获得分支机构的名称,我只能得到env.BRANCH_NAME

的值