我使用 GitLab 进行 Git 版本控制,使用 GitLab CI / CD 进行自动化构建。通常,构建由 Git 存储库活动触发,但我也每周构建一次,以确保未处于积极开发中的项目继续工作。当项目中只有一个“主”分支时,很容易确保每周构建在最新代码上运行。当一个项目中有多个分支时,我想依次为每个分支重复管道工作。
我想做的是安排在 Git 中可见的所有当前分支上运行的构建(每周、每两周或每月)。这在 GitLab 的持续交付系统中是否可行?
这样做的动机是确保外部活动(例如工具和库更新)不会在没有及时可见的情况下引入问题。假设目标平台有合理的自动化测试、覆盖率和综合构建,使用最新工具的每月构建应该会及时突出问题。这比在项目搁置几年(或几个月)时积累的问题要好。有时所需要的只是偶尔的维护。
目前项目中只有少数功能分支和发布线。我不认为这个数字会显着增长。目前有足够的时间在一个周末运行所需的管道数十次,甚至数百次。
理想情况下,我想要一些简单的设置。我目前在管理 GUI 中看不到任何允许这样做的内容。我确实查看了 API,我可以看到那里有一些范围可以编写添加和删除脚本。也许每月运行一次以基于 git 分支创建新的计划管道的脚本是唯一的方法。这些线上的预制解决方案将是完全可以接受的。如果什么都不存在,我可能会及时开始做类似的事情。
我目前正在运行 GitLab 社区版 11.2.3 06cbee3 (GitLab CE 11.2.3)。如果只有企业版的答案,那很好,并且会增加购买 EE 版本的理由。不过,我会在 EE 之上选择 CE 之一。