gpt4 book ai didi

github - 在提交/拉取请求时跟踪多个 github 存储库以构建 jenkins 作业

转载 作者:行者123 更新时间:2023-12-04 05:48:22 25 4
gpt4 key购买 nike

我有一个标准的 Jenkins 作业,对于我添加到配置中的多个 SCM 插件的任何 x 存储库的任何拉取请求/提交,都需要触发该作业。

有什么方法可以在所有存储库上挂上钩子(Hook),以便在对任何存储库的拉取请求时,作业会构建发出拉取请求的特定存储库?

这会很有帮助,因为当我可以为所有 repo 做一份工作时,我不需要每个 repo 一份工作。

最佳答案

如果您 set your Jenkins url in the webhooks and services of your various GitHub repos , Jenkins 将被该 webhook 调用。

但是 Jenkins GitHub plugin只会触发“Github project ”具有权限的作业 git@github.com:Person/Project.git repo 。

一种可能的解决方法是:

  • 在 GitHub 上发布一个父存储库,将所有其他存储库声明为 submodules ;
  • 在其他 repos 上设置另一个 webhook 以触发 git submodule update --remote在父 repo 中(为了刷新所有子模块 gitlinks SHA1special entries in the index )并将父 repo 推回 GitHub;
  • 有一个 Jenkins 工作来监控(通过 GitHub 插件及其 webhook)唯一的 GitHub 父 repo;
  • 有一个构建步骤 compares GIT_COMMIT and GIT_PREVIOUS_COMMIT 为了确定哪个子文件夹(子模块)刚刚更改,并仅在那个或那些子文件夹上启动构建。
  • 关于github - 在提交/拉取请求时跟踪多个 github 存储库以构建 jenkins 作业,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38416790/

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