zoukankan      html  css  js  c++  java
  • GitLab CI/CD持续集成设置

    GitLab CI/CD持续设置

    官方文档地址(https://docs.gitlab.com/ee/ci/README.html)

    GitLab CI、CD功能非常完善,只需要简单几步,就可以完成项目的持续集成和部署。

    你需要准备的是:

    1、 准备一个可以执行测试的服务器

    2、 注册gitlab-ci-runner到项目

    3、 配置CI执行策略,tag触发,还是每个commit都执行

    4、 编写.gitlab-ci.yml文件,编写需要自动执行不命令即可

    然后提交一个commit尝试下,如果没有问题,会看到pipeline中有任务在执行

    Jobs中有每个阶段的任务执行,点击可以看到执行的详细信息,有对应的信息打印。

    1.  编写.gitlab-ci.yml文件

    对于项目的持续集成,要做哪些动作,该如何定义这动作,yml文件的编写语法,参见官方文档(https://docs.gitlab.com/ee/ci/yaml/README.html)。

     .gitlab-ci.yml文件放在项目的根目录下,代码提交后,CI会自动根据文件定义的动作来执行。

    并在在gitlab的项目的页面,开发.gitlab-ci.yml文件,会出现This GitLab CI configuration is valid. Learn more这样的提示,说明yml文件没有语法错误,如果有错误,则根据提示修改。

    2.  准备执行服务器

    Gitlab runner支持多种类型的服务器,这里我们使用Centos平台。

    下载最新的gitlab-runner的软件,x86-64的版本下载地址为(https://gitlab-runner-downloads.s3.amazonaws.com/latest/binaries/gitlab-runner-linux-amd64)。

    为了操作方便,把文件名修改为gitlab-runner。

    赋予文件的可执行权限:chmod a+x gitlab-runner

    下载后,复制文件到runner运行服务器。

    3.  注册执行服务器

    打开gitlab的项目setting->CI/CD-Runners settings页面,会看到

     gitlab runner配置需要的信息,包括url地址,以及token信息。

    这里有两个关键信息:一个gitlab的服务器http地址,另外是注册runner的token。

    注册runner服务器,

    1、 执行./gitlab-runner regsiter,根据提示输入http地址,token注册runner,没有异常则会提示注册成功。

    2、 使用./gitlab-runner status查看状态,如果没有running,则使用./gitlab-runner start来启动runner

    3、 在web页面查看runner,正常可以看到刚才注册的runner。

    这里的runner类型选择:Docker

    4.  简单的demo

    上面的设置完成后,提交一个commit触发CI。

    这里我们的Demo的脚本如下:

    image: your-project:latest
    
    test:
    
      script:
    
        - echo “test”
    
        - cd tests
    
        - python test.py

    这个脚本非常简单,拉取项目的最新镜像,打印test,然后到tests文件下执行test.py文件

    从这里可以看出,yaml的语法和shell非常类似。

    5.  执行结果展示

    在CI/CD->pipeline可以看到每次提交CI的执行情况,点击status可以看到pipeline的执行详细信息。

    Pipeline执行成功,则会显示为绿色的pass。

  • 相关阅读:
    《那些年,我们拿下FPGA》做笔记
    三种初始化
    hdu4417 Super Mario 树阵离线/划分树
    【设计模式】文章摘要 查找联系人控件
    STL set
    阐述 QUEST CENTRAL FOR DB2 八罪
    使用线程执行堆栈StackTraceElement设计Android日志模块
    苹果iOS苹果公司的手机用户都有权索赔
    Android 4.4 沉浸式透明状态栏与导航栏
    常见的几种RuntimeException
  • 原文地址:https://www.cnblogs.com/StitchSun/p/11654952.html
Copyright © 2011-2022 走看看