sja*_*oil 9 continuous-integration gitlab gitlab-ci cicd
gitlab-ci.yaml目前,我在管道中配置了几个 CI/CD 作业。例如,我在一个分支中配置了构建和部署。其中一项工作是创建备份。
我只想每天晚上安排备份工作。但是,在 GitLab CI/CD 的计划部分中,我只能选择一个分支或一个标签。这将导致所有阶段/作业被触发,而我只想触发备份。
我已经看到了配置rules和excepts仅在特定上下文中触发作业的选项。然而,这感觉有点像补丁解决方案。是否有另一种方法可以在 Gitlab CI/CD 调度程序中仅触发单个作业?
syt*_*ech 11
我已经看到了配置规则和例外的选项,以仅在特定上下文中触发作业。然而,这感觉有点像补丁解决方案。是否有另一种方法可以在 Gitlab CI/CD 调度程序中仅触发单个作业?
rules:不,除了使用或only:/except:来控制当管道被计划触发时运行哪些作业之外,没有其他方法。
您可以通过将管道配置拆分为多个文件,然后rules:在include:
include:
- local: /do-backup.yml
rules:
- if: '$CI_PIPELINE_SOURCE == "schedule"'
- local: /do-pipeline.yml
rules:
- if: '$CI_PIPELINE_SOURCE != "schedule"'
Run Code Online (Sandbox Code Playgroud)
这样,您不必rules:对每项工作都应用相同的内容,并且可以为rules:每项工作定义额外的内容,从而减少冲突。
| 归档时间: |
|
| 查看次数: |
2568 次 |
| 最近记录: |