如何使用gitlab自带的CICD

如何使用gitlab自带的CICD上次分享了gitlab+jenkins实现CICD,前提我们需要安装一个jenkins。其实高版本的gitlab已经具备CICD功能,笔者使用的版本是:GitLab社区版11.4.10安装RunnersSettings>CI/CD>Runners根据提示点击InstallGitlabRunner下面根据你的系统选择相应的安装包,笔者以linux为例:这里…

大家好,又见面了,我是你们的朋友全栈君。

上次分享了gitlab+jenkins实现CICD,前提我们需要安装一个jenkins。其实高版本的gitlab已经具备CICD功能,笔者使用的版本是:GitLab 社区版 11.4.10

安装Runners

Settings > CI/CD > Runners
在这里插入图片描述

  1. 根据提示点击Install Gitlab Runner
    下面根据你的系统选择相应的安装包,笔者以linux为例:
    在这里插入图片描述
    这里官方提供的安装步骤很详细:
    1. 下载安装包,使用cat /proc/cpuinfo命令查看你的cpu信息,如果flag一行有lm字样,证明你的系统是x86-64(电脑系统一般都是x86)
    sudo curl -L --output /usr/local/bin/gitlab-runner https://gitlab-runner-downloads.s3.amazonaws.com/latest/binaries/gitlab-runner-linux-amd64
    
    
    1. 给runner赋予执行权限
    sudo chmod +x /usr/local/bin/gitlab-runner
    
    1. 安装并启动服务
    sudo gitlab-runner install --user=xxx --working-directory=/home/xxx
    sudo gitlab-runner start
    sudo gitlab-runner status # 查看是否启动成功
    
    1. 注册runner
      在这里插入图片描述
    sudo gitlab-runner register
    

    接下来需要输入gitlab地址和token,取自:
    在这里插入图片描述

    1. 如果安装成功,可以在Runners页面看到
      在这里插入图片描述

配置yml脚本

下面基于spring-boot + maven项目,提供一个脚本demo:

stages:
- build
- package
- deploy

build:
  stage: build
  tags:
  - one
  script:
  - echo "---------------开始编译-----------------"
  - mvn clean compile
  
package:
  stage: package
  tags:
  - one
  script:
  - echo "---------------开始打包-----------------"
  - mvn package -DskipTests=true
  only:
  - master

deploy:
  stage: deploy
  tags:
  - one
  script:
  - echo "---------------开始发布Jar至私服-----------------"
  - mvn source:jar deploy -DskipTests
  only:
  - master

这里的tags制定了运行该stage的runner。如果找不到会让作业一直处于pending状态,显示:“作业被卡主,请检查runner”。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/137498.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)
blank

相关推荐

  • 一比一还原axios源码(五)—— 拦截器「建议收藏」

    上一篇,我们扩展了Axios,构建了一个Axios类,然后通过这个Axios工厂类,创建真正的axios实例。那么今天,我们来实现下Axios的拦截器也就是interceptors。我们来简单看下Ax

  • 疫情数据可视化_全国疫情数据可视化项目

    疫情数据可视化_全国疫情数据可视化项目###1.作业描述这个作业属于哪个课程课程结对学号221701225,221701208这个作业要求在哪里作业要求这个作业的目标完成需求分析,原型设计等开发前期任务作业正文本文其他参考文献echarts官方文档、Axure中使用echarts图表、Axure使用教程2.客户需求用户需求在主界面—全国地图中在全国地图上使用不同的…

  • CPU介绍

    CPU内核主要分为两部分:运算器和控制器。(一)运算器cpu基本想到的是计算,因此有算数计算,还有逻辑计算单元以及移位简单的运算;fp运算单独拿出;要运算就需要输入数字,因此有寄存器组,即通用寄

    2021年12月24日
  • 自监督学习和无监督学习的区别

    自监督学习和无监督学习的区别无监督学习无监督学习不依赖任何标签值,通过对数据内在特征的挖掘,找到样本间的关系,比如聚类相关的任务自监督学习和无监督学习不同,自监督学习主要是利用辅助任务(pretext)从大规模的无监督数据中挖掘自身的监督信息,通过这种构造的监督信息对网络进行训练,从而可以学习到对下游任务有价值的表征。换句话说:自监督学习的监督信息不是人工标注的,而是是通过辅助任务(pretext)在大规模无监督数据中自动构造监督信息,通过得到的标签,就可以类似有监督学习一样进行训练。区别自监督学习是从数据本身找标签来进行

  • java面试题及答案2020 大汇总

    java面试题及答案2020 大汇总java面试题及答案2020java面试题大汇总百度第一篇java面试题及答案2020先点赞后收藏,以后更新及时看文末后续更新答案,持续更新一面2018/9/11来自于牛客网1、手写ArrayList2、手写进制转换算法,求出一个数的二进制数1的个数3、JAVA基础,equals和==4、多线程方式、threadlocal,各种锁,synchronized和lock5、设计模式、spring类加载方式、实例保存在哪、aopioc、反射机制6、类加载器,双亲委派模

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号