如何自定义 CI/CD 配置文件中的输入参数?

打印 上一主题 下一主题

主题 960|帖子 960|积分 2880

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?立即注册

x
极狐GitLab 是一个一体化的 DevOps 平台,内置 CI/CD 功能。在极狐GitLab 15.11 中,我们引入了一项令人兴奋的新功能,允许用户为可包罗的配置文件定义输入参数。 通过在 CI 模板中利用输入参数的功能,您可以将模板中的任何关键字更换为参数,包括阶段、脚本或作业名称。 例如,您可以向所有作业添加前缀,以更好地将它们与您要包罗配置的流水线隔离。
极狐GitLab 为 GitLab 的中文发行版,中文版本对国内用户更友爱,可以一键私有化摆设,也可以选择利用 SaaS,私有化摆设详情可以查看官网指南
这些输入参数可以针对每个配置文件声明为强制参数或可选参数,从而减少对全局变量的需求,并使 CI/CD 模板更加结实和隔离。 输入参数的范围仅限于包罗的配置,这意味着它们对流水线的其余部分没有影响。 这允许您声明和强制执行约束,例如通过强制模板输入。
这一功能开发是 CI/CD 组件目录长期路线图的第一个里程碑,这是一项新功能,允许用户搜刮和重用具有适合其用例的特定参数的单一用途 CI/CD 配置单位。
在这篇技能博客文章中,我们将提供有关如何利用输入参数定义 CI/CD 模板以及如何在包罗模板时利用它们的分步阐明。
步调1:创建一个模版YAML文档

第一步是创建一个模板 YAML 文档,该文档描述了模板可以利用哪些输入参数。 模板的第二部分是作业的定义,其中大概包括对利用插值格式 $[[ input-name ]] 的值的引用。 您应该在两个部分之间利用三条虚线。
下面是一个摆设模板.yml 的示例:
  1. spec:
  2.   inputs:
  3.     website:
  4.     environment:
  5.       default: test
  6. ---
  7. deploy:
  8.   stage: deploy
  9.   script: echo "deploy $[[ inputs.website ]] to $[[ inputs.environment ]]"
复制代码
在此模板中,我们定义了两个输入参数:网站和环境。 环境参数有默认值。 在内容部分,我们定义了一个插入输入参数的作业。
步调 2:将模板包罗在 CI 配置中

在主 CI 配置文件 .gitlab-ci.yml 中,引用模板并利用 input 关键字添加输入参数。
以下是包罗带有输入参数的deploy-template.yml的示例:
  1. include:
  2.   - local: deploy-template.yml
  3.     inputs:
  4.       website: my-website.example.com
复制代码
在此示例中,我们在项目中包罗了本地模板。 留意:您可以将输入与其他包罗类型一起利用,例如 include:project、include:template、include:remote。
在下面的示例中,我们利用输入为作业名称添加前缀,并使阶段也变得动态。
  1. spec:
  2.   inputs:
  3.     website:
  4.     environment:
  5.       default: staging
  6.     stage:
  7.       default: test
  8.     job_prefix:
  9.       default: ""
  10. ---
  11. "$[[ inputs.job_prefix ]]deploy":
  12.   stage: $[[ inputs.stage ]]
  13.   script: echo "deploy $[[ inputs.website ]] to $[[ inputs.environment ]]"
  14. 然后我们可以将其从 .gitlab-ci.yml 中包含到输入参数中:
  15. include:
  16.   - local: deploy-template.yml
  17.     inputs:
  18.       stage: deploy
  19.       website: http://example.com
  20.       environment: production
  21.       job_prefix: "my-app-"
复制代码
就是这样! 您已乐成创建接受输入的 CI 模板并在流水线配置中利用它们。 通过利用带有输入的模板,您可以简化流水线配置并使模板更加模块化和可重用。

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

光之使者

金牌会员
这个人很懒什么都没写!
快速回复 返回顶部 返回列表