首页 > 解决方案 > 为我的 GitLab-Server 上的每个存储库激活 CI/CD 管道

问题描述

我希望我的 GitLab-Server 上的每个存储库都有一个特定的 CI/CD 管道。git/GitLab 支持这样的东西吗?

根据我的研究,实现类似功能的唯一方法是实现一个post-receive server hook,但据我所知,我必须为用户手动实现某种通知系统,我会失去好的为 CI/CD 管道构建的用户界面,这将是丑陋和可悲的。

(另外,我不想使用诸如预接收服务器钩子或任何其他阻止用户提交或推送的钩子之类的东西,因为我的管道可能需要几分钟,而且我不希望用户在命令行上等待十分钟,只是为了观看一个简单的 repo 被推送。)

那么,有没有办法将 CI/CD 管道实现为要求并为服务器上的每个存储库自动激活?

再澄清一点:我不想要跨多个存储库的管道网络。我有一个独立的管道,应该在每个(现有和未来的)存储库上作为自己的管道运行。

标签: gitgitlabgitlab-ci

解决方案


是的,我们可以将下游管道用作 Gitlab 服务器中每个项目的通用管道。

GitLab EE 支持它,我希望下面的文档可以帮助你。

https://docs.gitlab.com/ee/ci/multi_project_pipelines.html


推荐阅读