在GitLab中是否可以配置定期在所有分支上运行的计划管道?

时间:2018-09-17 11:49:48

标签: gitlab scheduled-tasks gitlab-ci continuous-delivery gitlab-api

我使用GitLab进行Git版本控制,并使用Gi​​tLab CI / CD进行自动构建。通常,这些构建是由Git存储库活动触发的,但是我也每周进行构建,以确保不在活跃开发中的项目继续工作。当项目上只有“ master”分支时,很容易确保每周在最新代码上运行构建。当项目中有多个分支时,我想依次为每个分支重复进行管道工作。

我想做的是安排一个构建(每周,每两周或每月)在Git中所有当前分支上运行的构建。在GitLab的持续交付系统中有可能吗?


这样做的动机是确保外部活动(例如工具和库更新)不会在未及时发现的情况下引入问题。假设针对目标平台进行了合理的自动化测试,覆盖以及全面的构建,那么使用最新工具进行的每月构建应会迅速指出问题所在。在一个项目搁置了几年(或几个月)的同时,这比一个看不见的山脉要解决的问题要好得多。有时只需要偶尔维护即可。

当前项目中只有少数功能分支和发布行。我不希望这个数字显着增加。整个周末有足够的时间来运行所需的管道,即使现在不是数十次。


理想情况下,我希望设置一些简单的方法。我目前在管理GUI中看不到任何允许这样做的内容。我确实看过API,可以看到那里有一些脚本来添加和删除脚本。也许每月运行一次以基于git分支创建新的Scheduled管道的脚本是唯一的方法。在这些生产线上的预制解决方案将是完全可以接受的。如果不存在,我可能会及时开始类似的工作。

我当前正在运行GitLab社区版11.2.3 06cbee3(GitLab CE 11.2.3)。如果只有企业版答案,那很好,并且会增加购买EE版本的理由。我会选择CE比EE高一。

1 个答案:

答案 0 :(得分:1)

您不能一次为所有分支机构设置时间表,而是必须自己为每个分支配置一个时间表。

  

也许某个脚本每月运行一次以创建新的Scheduled   基于git分支的管道是唯一的方法。

我会那样走。