CICD:搭建gitlab-runner服务实现自动化编译打包上传

1. 背景

为什么安装到物理机

gitlab-runner依赖项很少,环境简单,可以直接通过deb包的方式部署到物理机上

runner和gitlab的交互

2. 上网找资料

2.1 gitlab官方指导 Get started with GitLab CI/CD
2.2 csdn上详细介绍安装过程的文档 GitLab CI/CD

3. 实操

3.1 下载gitlab-runner(和gitlab版本匹配)

网站下载deb安装包 Download one of the packages for Debian or Ubuntu

或者命令行下载deb安装包

# 建议下载和gitlab对应版本的gitlab runner, 这里因为找不到对应版本,所以参考之前公司成功案例下载
https://s3.dualstack.us-east-1.amazonaws.com/gitlab-runner-downloads/v15.10.1/deb/gitlab-runner_amd64.deb
3.2 安装
sudo dpkg -i gitlab-runner_amd64.deb

安装好之后如下

3.3 准备gitlab token

在代码仓库的cicd中的runner标签下找到token

3.4 注册runner并查看runner状态

3.5 gitlab查看runner注册结果

点击runner旁边的铅笔图标可以修改runner配置,例如tag

3.6 在项目中使用runner(MR或者tag触发编译)
3.6.1 工作流程图

3.6.2 在代码仓库下新增.gitlab-ci.yml
stages:
  - build
  - release
  - test
Build::GPU_ubuntu20.04:
  stage: build
  image: msrd0/cmake-qt5
  tags:
    - x86_gpu_runner
  only:
    - merge_requests
  script:
    - bash cicd/upload.sh "[this is a merge request]"

Release::GPU_ubuntu20.04:
  stage: release
  image: msrd0/cmake-qt5
  tags:
    - x86_gpu_runner
  rules:
    - if: $CI_COMMIT_TAG
  script:
    - bash cicd/upload.sh "[this is a release triggered]"

sast:
  stage: test
  image: msrd0/cmake-qt5
  tags:
    - x86_gpu_runner
include:
  - template: Security/SAST.gitlab-ci.yml
3.6.3 在gitlab仓库中创建MR后查看CI的pipeline运行状态

公众号文章链接:CICD:为gitlab搭建gitlab-runner服务支持docker流水线pipeline

公众号:非科班CPP程序员

  • 5
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值