gpt4 book ai didi

configuration - 以编程方式创建 gitlab-ci.yml 文件?

转载 作者:行者123 更新时间:2023-12-04 12:01:21 27 4
gpt4 key购买 nike

有没有工具可以生成.gitlab-ci.yml像 Jenkins 这样的文件有 job-dsl-plugin 来创建工作吗?

Jenkins DSL plugin允许我使用 Groovy 生成工作,输出 xml这描述了 Jenkins 的工作。

我可以使用 DSL 和 json文件以在 Jenkins 中生成作业。我正在寻找的是一个工具来帮助我生成 .gitlab-ci.yml基于规范。

最佳答案

我要问的主要问题是你的目标是什么?
只需减少重复工作片段的维护工作:
有时 .gitlab-ci.yml文件在很多项目中都非常相似,您希望集中管理它们。然后我建议看看Having Gitlab Projects calling the same gitlab-ci.yml stored in a central location - 展示了多种集中构建的方式,
生成管道配置,因为构建高度灵活
实际上,这更像是一项模板任务,几乎可以用您喜欢的每种脚本语言来实现。
使用简单的 bash、groovy、python、go 等等。最后的问题是,你追求什么样的灵活性,你需要什么样的逻辑。我不会详细介绍如何生成 .gitlab-ci.yml文件,但如何在下一步中使用它。因为在我看来这是最关键的一步。有一种简单的生成和提交的方法,但您也可以使用 GitLab CI 为您生成一个文件,该文件将在您的管道的下一个工作中使用。

setup:
script:
- echo ".." # generate your yaml file here, maybe use a custom image
artifacts:
paths:
- generated.gitlab-ci.yml

trigger:
needs:
- setup
trigger:
include:
- artifact: generated.gitlab-ci.yml
job: setup
strategy: depend
这允许您生成子管道并执行它 - 我们将其用于 monorepos 中的高度通用构建。
请参阅进一步阅读
  • GitLab JSONNET Example - 管道中生成的 yml 文件的文档示例
  • Dynamic Childpipelines - 动态创建管道的文档
  • 关于configuration - 以编程方式创建 gitlab-ci.yml 文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47042526/

    27 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com