首页 > 解决方案 > Jenkins 流水线持续集成

问题描述

我有 20-30 个项目,我正在使用他们自己的 git 存储库,每个存储库都有几个不依赖于其他项目的分支。我正在寻找是否有办法提出 Jenkins Pipeline 来适应所有具有 CI/CD 生态系统的项目。或者我是否需要为每个回购创建单独的管道。

  1. 有没有办法可以在所有这些项目中使用一个 Jenkins 文件。
  2. 如果模块 3 依赖于来自模块 1 和 2 的数据,您如何在管道之间共享数据。
  3. 如果我有 30 个项目,是否需要创建 30 个挂钩/令牌?

我能够在前三个之间创建依赖构建触发器,这样如果 A 和 B 构建,那么 C 将使用 SCM 轮询选项构建并构建触发器。

在此处输入图像描述 提前致谢。感谢任何帮助、反馈或建议。

标签: jenkinsjenkins-pipelinejenkins-job-dsl

解决方案


您可以在 Jenkins 管道中使用共享库。这是一个相当复杂的过程,需要在 groovy 中编写库

随着管道被组织中越来越多的项目采用,可能会出现通用模式。通常,在不同项目之间共享部分管道以减少冗余并保持代码“干燥”是很有用的。

Pipeline 支持创建“共享库”,可以在外部源代码控制存储库中定义并加载到现有的 Pipelines 中。


推荐阅读