Mac环境搭建基于gitlab持续集成Devops方案

1.gitlab持续集成

概要

本文基于MacOs Mojave 10.14.2环境讲解,需要提前安装Mac包管理器brewhome, 推荐使用brew安装软件。
安装地址:https://brew.sh/

gitlab提供了一套优秀的持续集成方案
持续集成是一种软件开发实践,即团队开发成员经常集成他们的工作,通常每个成员每天至少集成一次,也就意味着每天可能会发生多次集成。每次集成都通过自动化的构建(包括编译,发布,自动化测试)来验证,从而尽快地发现集成错误。许多团队发现这个过程可以大大减少集成的问题,让团队能够更快的开发内聚的软件。

2. gitlab-ci

GitLab-CI就是一套配合GitLab使用的持续集成系统, 而且GitLab8.0以后的版本是默认集成了GitLab-CI并且默认启用的, 通常每个项目中需要一个.gitlab-ci.yml文件,此文件需要放入到项目根目录,内容是属于这个工程的软件集成脚本,示例:

stages:
    - test
    - build
    - cleanup_last

test_job:
    # 执行测试用例
    stage: test
    tags: # build gitRunner的tag标签
        - build
    script:
        - echo '开始执行测试用例'
    
build_job:
    stage: build
    tags: # build gitRunner的tag标签
        - build
    script:
        - chmod +x ./build/ci.sh
        - ./build/ci.sh

cleanup_last_job:
    # 场景为清理
    stage: cleanup_last
    # 指定哪个ci runner跑该工作
    tags:
        - build
    # 所需执行的脚本
    script:
        - pwd
        - ls
        - docker -v
     # 在哪个分支上可用
    only:
        - master
    #触发条件为手工执行
    when: manual   

tags: GigLab-Runner注册时候需要关联到tag的标识,下面讲解gitlab-runner注册时会再提到

3. GitLab-Runner

GitLab-Runner是配合GitLab-CI进行使用的

Runner类型

GitLab-Runner可以分类两种类型:Shared Runner(共享型)和Specific Runner(特定型)。

名称类型描述
Shared Runner共享型一个runner为多个项目服务
Specific Runner特定型一个runner为特定的项目服务

安装GitLab-Runner

# 安装命令
brew install gitlab-runner
# 安装查看是否安装成功
brew list

在这里插入图片描述

注册GitLab-Runner

安装完gitlab-runner后,此时可以使用gitlab-runner register命令注册Runner,向GitLab-CI注册一个Runner需要两样东西:GitLab-CI的url和注册token
token: 是为了确定你这个Runner是所有工程都能够使用的Shared Runner还是具体某一个工程才能使用的Specific Runner。

  • 如果要注册Shared Runner,你需要到管理界面的Runners页面里面去找注册token。
  • 如果要注册Specific Runner,你需要到项目的设置的Runner页面里面去找注册token。

本次讲解的是到gitlab项目netcore分组中找到Runners页面里面找到token,
在这里插入图片描述
在这里插入图片描述

# 注册
gitlab-runner register
# 1. 输入Please enter the gitlab-ci coordinator URL
https://gitlab.com/
# 2. Please enter the gitlab-ci token for this runner
-2xzy1snseByxzxxxx
# 3. Please enter the gitlab-ci description for this runner
first-runner
# 4. lease enter the gitlab-ci tags for this runner
# 此处输入的tags和.gitlab-ci.yml配置中的tags需要关联的
build 
# 5. Please enter the executor
shell
# 6. 到此runner注册成功

在这里插入图片描述
此时.gitlab-ci.ymlgitlab-runner准备就绪,终于到了激动人心的时刻了,此时将变更推送到gitlab项目仓库中,gitlab服务器会自动识别.gitlab-ci.yml构建步骤和gitlab-runner构建工人。

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述如上图所示,将项目打包部署为镜像并推送到阿里云镜像仓库,全过程只需要几分钟就可以完成打包部署,大家是不是觉得很赞。

gitlab-runner会按照.gitlab-ci.yml事先定义好的步骤执行自动化构建编译部署,这样只要有成员提交代码,都会自动集成到开发环境,完成一次发布部署。这样是不是很香。

说明:

  1. gitlab服务器和gitlab-runner可以分别部署再不同服务器上
  2. gitlab-runner可以部署在任意服务器,可以在局域网内

示例源码:
https://github.com/m344739968/test-webapi.git

可以参考这篇博客了解更多的GitLab CI/CD 的执行流程
https://blog.csdn.net/ml344739968/article/details/87860220

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值