Gitlab CI:在作业中使用带有触发器的“环境”键
2022-01-19
3776
我希望在具有触发器的作业中使用如下所示的环境关键字。
deploy:
stage: deploy
environment:
name: develop
variables:
ENV: develop
trigger:
include:
- local: '<path to pipeline config>'
但是,它给出错误 “config 包含未知键:环境”
使用“脚本”而不是触发器可以正常工作。无论如何,它可以与触发器一起使用吗?
3个回答
是的,显然这是不允许的。我也遇到了这个错误,并期望环境配置适用于下面的子管道
sit-pipeline:
trigger:
include:
- local: pipeline/sit-pipeline.yaml
stage: deploy
when: manual
needs: ["sit-approval"]
environment:
name: sit
url: http://sanjay-sit.com
但这给出了一个错误,这个 GitLab CI 配置无效:sit-pipeline 配置包含未知键:环境。
这本来是一个很好的功能,特别是当我们想要设置一些审批流程并保护环境时。
Sanjay Bharwani
2022-05-03
对于子(同一项目)管道,您可能无能为力,但如果有人正在寻找多项目管道的解决方案(就像我一样),那么您可以通过
script
块中的 API 执行触发器。
这种触发方式与使用
trigger
关键字几乎相同,据我所知,唯一的区别是没有
strategy
选项,因此您必须自己实现必要的行为。
好消息是,GitLab 注意到通过 API 调用的上游和下游管道之间的关系,并在 GUI 中显示这一点。另一个优点是,与触发器作业不同,您可以重试此类作业。因此,这可以与 环境和部署功能 完美集成。
另请参阅文档:
tporeba
2022-12-09
您无法在桥接作业上设置环境。您必须在包含的配置中对触发的作业设置
environment.name
。例如,在
pipeline/sit-pipeline.yaml
中
sytech
2022-01-20