我希望在具有触发器的作业中使用如下所示的环境关键字。
deploy:
stage: deploy
environment:
name: develop
variables:
ENV: develop
trigger:
include:
- local: '<path to pipeline config>'
Run Code Online (Sandbox Code Playgroud)
但是,它给出错误“配置包含未知密钥:环境”
使用“脚本”而不是触发器可以正常工作。无论如何,它可以与触发器一起使用吗?
是的,显然这是不允许的。我也感觉到了这个错误,并期望环境配置适用于子管道,如下所示
sit-pipeline:
trigger:
include:
- local: pipeline/sit-pipeline.yaml
stage: deploy
when: manual
needs: ["sit-approval"]
environment:
name: sit
url: http://sanjay-sit.com
Run Code Online (Sandbox Code Playgroud)
但这会给出错误 This GitLab CI configuration is invalid: sat-pipeline config contains Unknown key:environment.
这将是一个很好的功能,特别是当我们想要进行一些审批流程并保护环境时。
对于子(同一项目)管道,您可能无能为力,但如果有人正在寻找多项目管道的解决方案(就像我一样),那么您可以通过script
block 中的 API 进行触发。
这种触发方式几乎与使用trigger
关键字相同,唯一的区别是没有strategy
选项,因此您必须自己实现必要的行为。
好消息是 GitLab 注意到通过 API 调用的上游和下游管道之间的关系,并在 GUI 中显示这一点。另一个优点是您可以重试此类作业,这与触发作业不同。因此,这与环境和部署功能很好地集成。
另请参阅文档:
归档时间: |
|
查看次数: |
3277 次 |
最近记录: |