当前位置: 首页 > news >正文

在gitlab中指定自定义 CI/CD 配置文件

文章目录

    • 1. 介绍
    • 2. 配置操作
    • 3. 配置场景
      • 3.1 CI/CD 配置文件在当前项目
        • step1:在当前项目中创建目录,编写流水线文件存放在该目录中
        • step2:在当前项目中配置
        • step3:运行流水线测试
      • 3.2 CI/CD 配置文件位于外部站点上
        • step1:将你的文件可以发布在网站上
        • step2:配置外部链接地址
        • step3:运行流水线测试
      • 3.3 CI/CD 配置文件在不同的项目中
        • step1:创建群组ci-file,在该群组下创建项目ci-file-test,将ci文件存放在该项目的跟路径下。
        • step2:在所需的项目上配置
        • step3:运行流水线测试
      • 扩展
        • ci文件在某个目录下
          • 在dev目录下
          • 所需项目配置
          • 运行流水线测试
        • ci文件在某个分支中
          • 在ops分支的ops目录下
          • 所需项目配置
          • 运行流水线测试
      • 3.4 将CI/CD配置文件存放在单独的项目中

1. 介绍

指定自定义 CI/CD 配置文件,顾名思义就是在项目中指定文件来代替默认的.gitlab-ci.yml文件的方式来运行流水线。以往我们在使用流水线的时候,都是默认将.gitlab-ci.yml文件存在在项目的跟路径下,但是我们也可以指定备用文件名路径,或者不想在每个项目中来维护这个yml文件,那么通过自定义 CI/CD 配置文件便可以实现。

2. 配置操作

  1. 在顶部栏上,选择 主菜单 > 项目 并找到您的项目。

  2. 在左侧边栏上,选择 设置 > CI/CD

  3. 展开 流水线通用设置

  4. CI/CD 配置文件

    字段中,按需输入文件名。

  5. 选择 保存修改

3. 配置场景

3.1 CI/CD 配置文件在当前项目

说明:

  • ci目录中的文件,只要是yaml/yml结尾即可,文件名可以自定义,多个yml/yaml文件以指定的具体文件为准,不支持*匹配。
  • ci文件是相对于当前项目的根路径。
  • 如果指定了CI/CD配置文件,那么流水线的运行就以该配置文件为准,默认跟下的.gitlab-ci.yml可以保留也可以删除。
step1:在当前项目中创建目录,编写流水线文件存放在该目录中

在这里插入图片描述

step2:在当前项目中配置

在这里插入图片描述

step3:运行流水线测试

在这里插入图片描述

3.2 CI/CD 配置文件位于外部站点上

说明:

  • URL 以 .yml 或者.yaml结尾均可以。
step1:将你的文件可以发布在网站上

在这里插入图片描述

step2:配置外部链接地址

在这里插入图片描述

step3:运行流水线测试

在这里插入图片描述

3.3 CI/CD 配置文件在不同的项目中

说明:

  • 文件必须存在于其默认分支上,或者将分支指定为 refname。
  • 路径必须相对于其他项目中的根目录。
  • 路径后面必须跟一个 @ 符号以及完整的群组和项目路径。

eg:

  • .gitlab-ci.yml@namespace/another-project
  • my/path/.my-custom-file.yml@namespace/sub-group/another-project
  • my/path/.my-custom-file.yml@namespace/sub-group1/sub-group2/another-project:refname
step1:创建群组ci-file,在该群组下创建项目ci-file-test,将ci文件存放在该项目的跟路径下。

在这里插入图片描述

step2:在所需的项目上配置

在这里插入图片描述

step3:运行流水线测试

在这里插入图片描述

扩展

ci文件在某个目录下
在dev目录下

在这里插入图片描述

所需项目配置

在这里插入图片描述

运行流水线测试

在这里插入图片描述

ci文件在某个分支中
在ops分支的ops目录下

在这里插入图片描述

所需项目配置

在这里插入图片描述

运行流水线测试

在这里插入图片描述

3.4 将CI/CD配置文件存放在单独的项目中

将CI/CD文件存放在单独的项目中,通过设置此项目的权限可以更加精细化的维护ci文件。这样遍和includes的使用有了异曲同工的效果。

相关文章:

  • 北京网站建设多少钱?
  • 辽宁网页制作哪家好_网站建设
  • 高端品牌网站建设_汉中网站制作
  • C# OpenCvSharp DNN HybridNets 同时处理车辆检测、可驾驶区域分割、车道线分割
  • GEE案例——使用Sentinel-1 影像进行分析RVI指数进行计算
  • n-gram语言模型——句子概率分布计算与平滑
  • RPC 框架 openfeign 介绍和学习使用总结
  • C/C++输出硬币翻转 2021年6月电子学会青少年软件编程(C/C++)等级考试一级真题答案解析
  • 用java把服务器某个目录日志实时打印出来
  • 如何接入电商数据(淘宝/京东)API接口的对接获取(商品详情|价格|SKU)
  • Revit 平面的圆弧,空间的椭圆弧
  • Linux内核有什么之内存管理子系统有什么第六回 —— 小内存分配(4)
  • Mathematica清除全局变量以及避免与内置命令冲突
  • 【Python爬虫】网页抓取实例之淘宝商品信息抓取
  • 探索未来,开启无限可能:打造智慧应用,亚马逊云科技大语言模型助您一臂之力
  • Golang Gorm 连接数据库
  • LogBack的日志报错解决办法 org.xml.sax.SAXNotRecognizedException
  • 黑客(网络安全)技术——高效自学1.0
  • 【node学习】协程
  • css的样式优先级
  • CSS盒模型深入
  • Facebook AccountKit 接入的坑点
  • interface和setter,getter
  • JDK9: 集成 Jshell 和 Maven 项目.
  • Quartz实现数据同步 | 从0开始构建SpringCloud微服务(3)
  • react-core-image-upload 一款轻量级图片上传裁剪插件
  • Redux系列x:源码分析
  • SegmentFault 2015 Top Rank
  • session共享问题解决方案
  • Vue学习第二天
  • 和 || 运算
  • 力扣(LeetCode)56
  • 浅谈Golang中select的用法
  • 深度学习入门:10门免费线上课程推荐
  • 深入体验bash on windows,在windows上搭建原生的linux开发环境,酷!
  • ​软考-高级-系统架构设计师教程(清华第2版)【第15章 面向服务架构设计理论与实践(P527~554)-思维导图】​
  • ###51单片机学习(1)-----单片机烧录软件的使用,以及如何建立一个工程项目
  • #git 撤消对文件的更改
  • (10)ATF MMU转换表
  • (STM32笔记)九、RCC时钟树与时钟 第二部分
  • (附源码)计算机毕业设计ssm高校《大学语文》课程作业在线管理系统
  • (五)网络优化与超参数选择--九五小庞
  • (学习日记)2024.02.29:UCOSIII第二节
  • (转)Unity3DUnity3D在android下调试
  • .NET Core引入性能分析引导优化
  • .Net 应用中使用dot trace进行性能诊断
  • .NET/C# 的字符串暂存池
  • .NET导入Excel数据
  • .NET和.COM和.CN域名区别
  • .net专家(高海东的专栏)
  • :not(:first-child)和:not(:last-child)的用法
  • [@Controller]4 详解@ModelAttribute
  • [C#]使用PaddleInference图片旋转四种角度检测
  • [C++ 从入门到精通] 12.重载运算符、赋值运算符重载、析构函数
  • [C++] 从零实现一个ping服务
  • [C++]Leetcode17电话号码的字母组合
  • [C++]命名空间等——喵喵要吃C嘎嘎
  • [Docker]十二.Docker consul集群搭建、微服务部署,Consul集群+Swarm集群部署微服务实战