前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >GitLab CI/CD 配置指南 .gitlab-ci.yml文件的配置

GitLab CI/CD 配置指南 .gitlab-ci.yml文件的配置

作者头像
拿我格子衫来
发布2022-01-24 19:39:32
1K0
发布2022-01-24 19:39:32
举报
文章被收录于专栏:TopFE

GitLab的CI/CD 完全是由.gitlab-ci.yml 文件内容决定的

GitLab的CI/CD的具体内容是由.gitlab-ci.yml文件定义的, 一个在GitLab的项目,项目根目录只有有.gitlab-ci.yml文件,并且配置了Runner,那么每次提交代码 都会触发CI的pipline .gitlab-ci.yml文件是告诉GitLab的runner去做什么在每次触发后,runner默认有三个阶段, build,test,deploy,你不必每次编写都使用三个阶段,如果一个阶段没有任务,可以直接忽略它 因为.gitlab-ci.yml是存在于项目中的,所有可以进行版本,分支控制,不同的分支,不同的版本可以有不同.gitlab-ci.yml内容 不用的任务

.gitlab-ci.yml 文件是使用YAML的文件格式来编写的,只允许空格,不允许Tabs

在项目根目录创建一个文件,下面是一个Ruby的项目

代码语言:javascript
复制
before_script:
  - apt-get update -qq && apt-get install -y -qq sqlite3 libsqlite3-dev nodejs
  - ruby -v
  - which ruby
  - gem install bundler --no-document
  - bundle install --jobs $(nproc)  "${FLAGS[@]}"

rspec:
  script:
    - bundle exec rspec

rubocop:
  script:
    - bundle exec rubocop

这是对大多数Ruby应用都适用的简单配置

定义了两个任务 rspec和rubocop 分别会执行不同的脚本

在每次任务执行之前,定义的before_script脚本都会先被执行 .gitlab-ci.yml可以设置一些任务,限定他们以什么顺序,怎么去执行命令,脚本.

那些带有名字的高等级任务,必须包含一个script关键字 这下脚本 都会在Runnner中执行

GitLab 提供了一个验证.gitlab-ci.yml文件的工具, 在项目名的路径后面加上 -/ci/lint 即可访问

如果项目中有嵌套的微仓库 需要配置一下才能自动运行 Settings > Repository > Pull from a remote repository > Trigger pipelines for mirror updates. 在GitLab中Runnner是运行那些你再.gitlab-ci.yml中定义的任务,一个Runner可能是一个虚拟机, 一个VPS,一个Docker容器,或者一个集群,GitLab与Runner通信通过API

安装Runner 配置Runner

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
对象存储
对象存储(Cloud Object Storage,COS)是由腾讯云推出的无目录层次结构、无数据格式限制,可容纳海量数据且支持 HTTP/HTTPS 协议访问的分布式存储服务。腾讯云 COS 的存储桶空间无容量上限,无需分区管理,适用于 CDN 数据分发、数据万象处理或大数据计算与分析的数据湖等多种场景。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档