gpt4 book ai didi

git - 如何使用 Jenkins Pipeline 检查 Pull-Request?

转载 作者:太空狗 更新时间:2023-10-29 13:44:41 25 4
gpt4 key购买 nike

我想构建一个集成多个存储库的 Pipeline。

总体思路:

  1. 提供分支名称作为输入。
  2. 使用 GitHub-API 在多个项目中查找 Pull-Requests,这些项目是从具有该名称的分支创建的。
  3. 从多个存储库制作(浅)克隆,检查指定的 Pull-Requests。

请注意,我不是试图从 Pull-Request 触发构建本身。触发作业只是一个普通的流水线脚本。所以 checkout scm 不适用于我的情况。我很乐意从 Pull-Requests 中触发它。但是,Jenkins 的许多多分支插件对我没有帮助,因为它们假定只有一个存储库是构建的一部分。

到目前为止,我基本上避免从 sh 步骤调用 git,因为那会让我接近于丢弃所有 Jenkins-Git 集成。

如何(如果有的话)使用管道 checkout 方法直接 checkout Pull-Request?

这是否在 checkout 方法的范围内?可能,我正在寻找的是直接与 Jenkins 的 JGit 客户端交互,此时我不妨使用 sh 命令...

最佳答案

事实证明,这可以通过在 checkout 配置对象上设置 refspec 属性来实现:

checkoutConfig.with {
branches = [[ name: 'pr/4711' ]]
userRemoteConfigs[0].refspec = '+refs/pull/*/head:refs/remotes/origin/pr/*'
}

另见: https://gist.github.com/piscisaureus/3342247

关于git - 如何使用 Jenkins Pipeline 检查 Pull-Request?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49114011/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com