You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何为单体仓库中单个应用配置GitLab定时构建/部署任务

实现单个应用的定时流水线触发

可以通过自定义变量+CI规则调整实现仅触发指定应用的定时流水线,具体步骤如下:

1. 调整目标应用的CI规则

找到需要定时运行的应用对应的.gitlab-ci.yml文件,修改其.change-only规则,添加针对定时任务的例外条件:

.change-only:
  rules:
    - if: $CI_COMMIT_BRANCH == "master" && $CI_PIPELINE_SOURCE != "schedule"
    # 新增规则:仅当定时任务携带指定应用变量时触发
    - if: $CI_PIPELINE_SOURCE == "schedule" && $RUN_TARGET_APP == "your-target-app"

将your-target-app替换为该应用的标识名称(比如应用目录名或自定义代号),RUN_TARGET_APP是自定义的变量名,可按需修改。

2. 创建定向定时流水线

在GitLab项目的「CI/CD → 定时流水线」页面新建定时任务:

  • 分支选择master
  • 在「变量」区域添加键值对:RUN_TARGET_APP=your-target-app(与步骤1中的变量名和应用标识保持一致)
  • 设置定时执行时间(例如每天早8点)

3. 验证其他应用的隔离性

其他应用的.gitlab-ci.yml保持原有的.change-only规则不变——由于原规则限定了$CI_PIPELINE_SOURCE != "schedule",当定时流水线触发时,这些应用的所有作业都会被自动跳过,只有目标应用的作业会满足规则条件并执行。

内容的提问来源于stack exchange,提问作者Marc Fearby

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.29 23:07:34