Gitlab CICD实用技巧汇总

这篇具有很好参考价值的文章主要介绍了Gitlab CICD实用技巧汇总。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

关于.gitlab-ci.yml的实用配置

1、stage参数

stages:

  - build

  - test

  - deploy

相同stage的作业会并行执行,有一个失败,则认为这个stage失败。

不同stage的作业会按序执行,前面stage有失败,后续stage不会继续执行。

可以使用needs参数改变不同stage之间的依赖关系。

2、cache参数

cache是一种用于存储和重用构建产物的机制,以加速CI/CD管道的执行。通过缓存,可以在不必每次都重新构建或下载依赖的情况下,加快CI/CD作业的执行速度。通常,cache主要用于存储依赖包、编译文件、测试工件等。

3、artifacts参数

另存为指定的文件或目录作为产物,供后续阶段使用,也可以在Gitlab UI下载它们。默认情况下,后期阶段的作业会自动下载早期阶段作业创建的所有产物。可以使用dependencies参数来只引用特定阶段的产物。可以使用参数控制产物的过期时间、公开与否、触发条件等。

paths是相对于项目根目录而言($CI_PROJECT_DIR)

job:
  artifacts:
    paths:
      - binaries/   # 目录下所有文件作为产物
      - .config # .config文件作为产物

与cache目的不同,cache主要用于缓存依赖项,例如依赖包、编译中间文件等,以加速连续集成(CI)过程,并且不能下载和共享给其他项目。

artifacts主要用于存储产物、报告等,供后续存档查阅和下载。

4、services参数:

启动一个docker服务,供当前阶段使用。如执行代码单元测试时,需要数据库服务。

unit test:
  image: unit_test:latest
  services:
    - name: mysql:oracle
      alias: mysql # 定义host为mysql,作业可以通过mysql连接到该服务
  script:
    - pytest

5、trigger参数:

trigger参数通常用于配置外部项目或仓库的触发器,使其能够启动当前项目的CI/CD管道。这是一种通过API或Webhooks自动触发另一个项目中的CI/CD流程的方法。trigger参数通常用于配置与项目间的协作,例如,一个项目的CI/CD流程依赖于另一个项目生成的artifacts。

6、include参数

类似编程中的封装和继承,将相同作业或者模板定义在单独文件或项目中,供其他.gitlab-ci.yml使用。include参数可以是当前项目中的文件,也可以是其他项目或者外部项目中的文件。

include:
  - project: xxx/gitlab-ci-template
    ref: master
    file: template.yaml

7、extends参数

继承extends指定的配置。只会继承当前作业未定义的配置,已经定义的配置会覆盖。

.tests:
  script: rake test
  stage: test
  only:
    refs:
      - branches

rspec:
  extends: .tests
  script: rake rspec --no-input  # 覆写.tests中的script

8、allow_failure参数

允许作业失败。失败的作业不会导致管道失败。文章来源地址https://www.toymoban.com/news/detail-735702.html

到了这里,关于Gitlab CICD实用技巧汇总的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 20.云原生之GitLab CICD实战

    云原生专栏大纲 GitLab Runner 是一个开源的持续集成/持续交付(CI/CD)工具,用于在 GitLab CI/CD 环境中执行自动化构建、测试和部署任务。它是 GitLab CI/CD 的一部分,负责管理和执行 CI/CD 作业。 以下是 GitLab Runner 的一些关键特点和功能: 多平台支持:GitLab Runner 可以在多种操作

    2024年01月23日
    浏览(39)
  • Trino源码Gitlab CICD单测环境搭建

    在中大型公司,由于对Trino源码的定制魔改量越来越大,会随着时间推移而增大出现冷门bug的概率,所以需要建立一套自动测试机制,在魔改源码合入主分支时可以自动触发test case,通过特定单测的执行失败,来更清晰的判断是否过去的魔改涉及到了不符合社区源码原本假设

    2024年02月07日
    浏览(35)
  • 【git】2、gitlab CICD 模型部署自动化

    GitLab 是一个用于仓库管理系统的开源项目,使用 Git 作为代码管理工具,并在此基础上搭建起来的 Web 服务。 安装方法是参考 GitLab 在 GitHub 上的 Wiki 页面。Gitlab 是被广泛使用的基于 git 的开源代码管理平台, 基于 Ruby on Rails 构建, 主要针对软件开发过程中产生的代码和文档进

    2024年02月04日
    浏览(44)
  • 手机技巧:分享10个vivo手机实用小技巧技巧,值得收藏

    目录 1. 快速切换应用 2、智能助手Jovi 3. 轻按唤醒屏幕 4. 快速启动相机 5. 分屏功能 6. 手势操作 7. 一键清理 8.忘记密码 9.玩游戏耗电快 10.手机丢失后该怎么办 向右或向左滑动底部的虚拟按键即可。 vivo手机自带智能助手Jovi,可以根据用户的使用习惯,提供个性化的建议和推

    2024年02月02日
    浏览(50)
  • chrome-实用技巧

    重发请求,这有一种简单到发指的方式 选中 Network 点击 Fetch/XHR 选择要重新发送的请求 右键选择 Replay XHR  但是经过实际使用调研,发现它只适用于axios或类似方式使用xhr api,则XHR仍在重放,但是,如果使用新的api fetch,则需要使用其他方法,如下:  此方式还可以直接修改

    2024年02月05日
    浏览(38)
  • Greenplum实用技巧

    gp_segment_id是表中的隐藏列,用来标记该行属于哪个segment节点。因此可以基于该隐藏列进行分组查询,获取每个segment的记录数,从而判断表数据的分布是否均匀或有倾斜。 gp_segment_configuration是一张系统表,它维护包括master、standby在内的所有节点信息。是DBA了解集群最直观的

    2024年02月11日
    浏览(41)
  • Pandas实用技巧

    首先我们需要先提前下载好 示例数据集 : drinksbycountry.csv : http://bit.ly/drinksbycountry imdbratings.csv : http://bit.ly/imdbratings chiporders.csv : http://bit.ly/chiporders smallstockers.csv : http://bit.ly/smallstocks kaggletrain.csv : http://bit.ly/kaggletrain uforeports.csv : http://bit.ly/uforeports 有时你需要知道正在使用的

    2024年02月10日
    浏览(47)
  • AI绘画高效实用技巧

    如何调整整体占画面比例的问题 首先看看主要镜头类型: 广角镜头 (10mm至35mm) 拍全身 标准镜头 (35mm至85mm) 半身照 特写镜头 (85mm至300mm) 抓细节 以全画幅135为例: 20mm以下的称之为超广角镜头 21mm~40mm焦距称之为广角镜头 41mm~60mm焦距称之为标准镜头 61mm~100mm焦距称之为中焦镜头

    2024年02月11日
    浏览(46)
  • VS实用调试技巧

    Bug一词的原意是虫子,而在电脑系统或程序中隐藏着的一些未被发现的 缺陷或问题 ,人们也叫它\\\"bug\\\"。这是为什么呢?这就要追溯到一个程序员与飞蛾的故事了。 Bug的创始人格蕾丝·赫柏(Grace Murray Hopper),是一位为美国海军工作的电脑专家,也是最早将人类语言融入到电

    2024年02月01日
    浏览(39)
  • 实用调试技巧【上篇】

    🔴 本文章是在 Visual Studio 2022(VS2022)编译环境下进行操作讲解 Bug一词的原意是臭虫或虫子。第一代计算机是由许多庞大的真空管组成,并利用大量的电力来使真空管发光。引得一只小虫子Bug钻进了一支真空管内,导致整个计算机无法工作。研究人员费了半天时间,总算发现

    2023年04月09日
    浏览(67)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包