配置.gitlab-ci.yml - 自定义流水线

004.Gitlab CICD流水线模型 gitlab cicd流水线是基于gitops,即所有对流水线的配置都是代码的形式,且保存在当前代码仓的根目录。文件名也是固定的,为 .gitlab-ci.yml。实际项目中,针对流水线会定义多个步骤:编译、构建、部署、测试、发布、上线等。 阅读详情

参考官网:
gitlab持续集成流水线配置

结合官网,以一种探索性的方式,展示gitlab持续集成流水线的搭建过程。

环境

软件 版本
gitlab 11.5.1
gitlab-runner 11.5.1

第一章 gitlab持续集成流水线 - 创建“流水线”


简介

如果您对“持续集成”“流水线”概念还处于模糊阶段,那么这节也许很适合您。
持续集成,对于当前的gitlab ci,个人理解,持续性表现在 gitlab push提交动作触发流水线、定时任务流水线;集成性的话想对较弱,至少是需要通过配置来加强。
流水线,基本上就是需要配置来实现,完成一整套操作:代码质量检查、单元测试、构建、接口测试等等。类似于工厂的流水线,毛件(代码等)放到传送带上,进行一系列检查(代码质量检查、测试)、处理(构建等),直到生成成品(可运行文件文件夹)或其他(出现异常、代码编译构建错误等)。

本章有两个目的,一是最简单的方式配置gitlab-ci流水线(暂时免去实际的操作),二是整体感受下gitlab-ci流水线。
还有,gitlab-ci流水线触发有三种方式,其中可通过“only”和“except”配置自定义触发方式:

  • 默认方式,gitlab服务器接收到更新后自动触发
  • Pipelines页面,“Run Pipeline”按钮,当然,单击后还需要选择分支,选择性添加变量,“Create pipeline”
    点击触发流水线
    在这里插入图片描述
  • TOKEN+ Pipeline triggers API,http请求触发,创建token,然后如下页面往下翻会有调用方式详情。
    在这里插入图片描述

简单例子

在代码库创建配置文件 .gitlab-ci.yml ,如下
配置stages和jobs,stages基本就是流水线的顺序,jobs有“sonar_analyze”和“my_build”,在此处,一个stage对应一个job,当然可以一个stage对应多个job。
job的tags,用于job与gitlab-runner关联配置(赶稿中。。。),只有打了这些标签的runner才配得上run我。

stages:
  - analyze
  - build
sonar_analyze:
  script:
    - echo sonar_analyze
    - echo job done 
  tags:
    - master
my_build:
  script:
    - echo my_build
    - echo job done 
  tags:
    - master

第二章 gitlab持续集成流水线 - 添加自定义操作


简介

在上章我们已经建立起自己的流水线,接下来,该添加实际应用中的操作步骤了。
需要重点说下的是,docker镜像的使用,这里是直接在(docker hub官网)[https://hub.docker.com/]找的,所以会出现有些工具没有的情况,在工程使用中是应该避免的,自动化成功率和这种流程精简密切相关的。

实用例子

# stages基本就是流水线的阶段顺序
stages:
  - analyze
  - build_build
  -
在GitLab CI/CD 流水线中获取远程私有仓库的代码 本篇文章我将向大家演示如何在极狐GitLab 流水线中获取另一个私有仓库的代码。 在流水线中获取另一个私有仓库的代码,进行构建,编译,这在跨项目和微服务架构的项目中经常使用到。特别是项目之间存在依赖关系时,该方法让你的流水线变得更加优雅。 阅读详情

相关推荐

ArcGIS利用模型构建器批量导出nc文件中的不同波段数据

ArcGIS利用模型构建器批量导出nc文件中的不同波段数据

Yuanbaokk的博客 7253

微动探测原理及仪器介绍

微动探测原理及仪器介绍 1、微动探测原理 1.1 基本理论 微动是由体波和面波组成,其中微动能量的百分之七十以上都来自于面波,并且它与体波的主要区别是在不均匀的介质中传播时面波会发生频散,而体波不存在频散现象,因此面波是微动探测的主要对象。 对于介质的弹性参数(如横波速度、层薄厚、压缩波速度、密度等),面波传播速度相对比较敏感,特别是对横波的敏感性很高,因此可以利用面波来反演横波速度。 在时间和空间上,微动信号具有以下特性:高度变化、无规律性、无重复性等,有研究发现全世界各处记录的微动信号都有相似

zw461450141的博客 1万+

中科蓝讯(第一次使用指南)

中科蓝讯 新手指南

qq_48579018的博客 1万+

KALI虚拟机挂代理教程

需要你本地挂了代理,然后通过虚拟机连接本机代理端口,不说废话了,直接说怎么做了。 1.查看选项设置中自己的小飞机的本地端口是多少:(默认是1080) 2.本机win+r打开cmd,输入ipconfig查看本地ip,我的本地ip是192.168.0.107: 2.打开kali虚拟机,编辑ProxyChains配置文件: vi /etc/proxychains.conf 3.在文件末尾的ProxyList中添加物理机本地ip和1080端口作为代理地址: 4.保存并退出即可: esc :wq 回车 5.

qq_34853514的博客 3万+

【测试】echo发送和接收TCP/UDP数据包|shell 发送TCP/UDP数据包

目录 通过/dev/tcp、/dev/udp shell给tcp或udp服务发送16进制报文指令 通过/dev/tcp、/dev/udp (https://blog.csdn.net/u010039418/article/details/86251470) 通过/dev/tcp、/dev/udp可以直接在shell脚本中发起tcp、udp连接,方便又高效,平时用于测试啥的还是挺方便的。 直接发送 格式 /dev/udp/ip/port 比如要向本地10001端口发送数据,可以使用 ec.

我的笔记本 1万+

电磁场仿真软件:Sonnet_(3).Sonnet用户界面与操作

Sonnet支持用户通过二次开发自定义工具,例如:编写Python脚本,实现自定义功能。将脚本保存为工具插件。在Sonnet中加载并使用自定义工具。# 示例:自定义工具 import sonnet def custom_tool(design , object , parameter , value) : """自定义工具示例,设置对象的指定参数。

kkchenjj的博客 1523

【Python爬虫(90)】以Python爬虫为眼,洞察金融科技监管风云

本文聚焦爬虫技术在金融科技监管中的应用。开篇阐述金融科技发展带来监管挑战,引出爬虫技术的重要性。接着介绍金融科技监管政策与合规要求,包括政策法规体系、合规细则及政策变化应对。随后探讨爬虫技术选型、数据监测策略、风险指标抓取及案例实操。还阐述基于爬虫数据构建风险预警与防控机制,含模型构建、阈值设定等。最后总结爬虫技术应用成果,展望其与人工智能融合、适应新监管需求及重视数据安全的未来发展趋势。

邓邓子的博客 1063

【WorkBuddy专栏68】HY3绕路部署vsDS4直击根因——一次真实踩坑揭露两个AI模型的推理差距

【WorkBuddy专栏68】HY3绕路部署vsDS4直击根因——一次真实踩坑揭露两个AI模型的推理差距

AI人人懂 558

蓝牙模块HM-10手册

蓝牙模块HM-10手册,该手册对蓝牙模块HM-10进行了详细的介绍和使用方法以及一些AT指令。

汉书HE8,好用的汇编代码编写工具

汉书HE8,好用的汇编代码编写工具早期编写汇编代码所用功能强大

温度PID控制PLC程序

温度PID稳定控制程序,适用于欧姆龙PLC,对其他PLC也具有很大参考价值

Camera2Demo

在Camera2 的基础上进行封装,使得Camera2一堆初始化逻辑与Activity分离,降低耦合度,完成预览拍照并保存的操作

上一篇: Git仓库迁移 - 使用git clone方式
下一篇: gitlab-runner安装、升级
Tri_C
博客等级 码龄15年 6粉丝 9原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值