zoukankan      html  css  js  c++  java
  • gitlab + gitlab-runner 集成 CICD

    gitlab + gitlab-runner 集成 CICD

    1 gitlab-runner 安装

    • 1.1 下载执行文件
    1.  
      # Linux x86-64
    2.  
      sudo wget -O /usr/local/bin/gitlab-runner https://gitlab-runner-downloads.s3.amazonaws.com/latest/binaries/gitlab-runner-linux-amd64
    3.  
       
    4.  
      # Linux x86
    5.  
      sudo wget -O /usr/local/bin/gitlab-runner https://gitlab-runner-downloads.s3.amazonaws.com/latest/binaries/gitlab-runner-linux-386
    6.  
       
    7.  
      # Linux arm
    8.  
      sudo wget -O /usr/local/bin/gitlab-runner https://gitlab-runner-downloads.s3.amazonaws.com/latest/binaries/gitlab-runner-linux-arm
    • 1.2 设置执行权限
    sudo chmod +x /usr/local/bin/gitlab-runner
    • 1.3 创建 GitLab CI 用户
    useradd --comment 'GitLab Runner' --create-home gitlab-runner --shell /bin/bash
    • 1.4 运行服务
    1.  
      gitlab-runner install --user=gitlab-runner --working-directory=/home/gitlab-runner
    2.  
      gitlab-runner start

    2 gitlab-runner 注册

    2.1 获取 Gitlab 注册令牌

    打开 gitlab 项目 -> 设置 -> CI / CD -> Runners 设置

    Token

    2.2 LINUX 注册

    • 运行注册
    sudo gitlab-runner register
    • 输入你的 GitLab URL
    1.  
      Please enter the gitlab-ci coordinator URL (e.g. https://gitlab.com )
    2.  
      https://xxx.xxx
    • 输入 注册令牌 来注册 Runner
    1.  
      Please enter the gitlab-ci token for this runner
    2.  
      xxx
    • 输入 Runner 说明
    1.  
      Please enter the gitlab-ci description for this runner
    2.  
      [hostame] my-runner
    • 输入 Runner 的 tags
    1.  
      Please enter the gitlab-ci tags for this runner (comma separated):
    2.  
      my-tag,another-tag
    • 输入 Runner 执行方式
    1.  
      Please enter the executor: ssh, docker+machine, docker-ssh+machine, kubernetes, docker, parallels, virtualbox, docker-ssh, shell:
    2.  
      shell
    • 如果是在 Docker 中运行, you'll be asked for the default image to be used for projects that do not define one in .gitlab-ci.yml:
    1.  
      Please enter the Docker image (eg. ruby:2.1):
    2.  
      alpine:latest

    3 链接成功

    3.1 runner 列表

    ducafecat_2018-08-17-15-16-23

    3.2 runner 修改

    ducafecat_2018-08-17-15-17-48

    4 编写 .gitlab-ci.yml 集成

    1.  
      image: java:8
    2.  
      stages:
    3.  
      - build
    4.  
      - build-pro
    5.  
       
    6.  
      #测试环境
    7.  
      build:
    8.  
      stage: build
    9.  
      script:
    10.  
      - pwd
    11.  
      - cd project/my_app
    12.  
      - /usr/local/maven/bin/mvn clean package -P test
    13.  
      - sh /usr/local/project_deploy_script/app/app_test.sh
    14.  
      tags:
    15.  
      - deploy-app
    16.  
      only:
    17.  
      - develop
    18.  
      #正式环境
    19.  
      stage: build-pro
    20.  
      script:
    21.  
      - pwd
    22.  
      - cd project/my_app
    23.  
      - /usr/local/maven/bin/mvn clean package -P pro
    24.  
      - sh /usr/local/project_deploy_script/app/app.sh
    25.  
      tags:
    26.  
      - deploy-app
    27.  
      only:
    28.  
      - master

    5 执行集成

    • 下次提交代码就会走集成任务了

    ducafecat_2018-08-17-15-26-05

    • 任务阶段

    ducafecat_2018-08-17-15-27-32

    • 详情

    ducafecat_2018-08-17-15-29-48

    ducafecat_2018-08-17-15-30-38

    参考

  • 相关阅读:
    SQL2005的CTE
    分列顯示
    2005数据库结构显示
    十进制/十八进制的互转换(此方法应用于所有进制与10进制的转换)
    2005自动生成数据库的清空脚本
    阻塞分析
    通过在 Web 表单中维持对象的 ViewState (视图状态)
    cs文件调用aspx页面js函数
    Repeater绑定后格式化某字段
    Fireworks中制作炫光效果
  • 原文地址:https://www.cnblogs.com/ExMan/p/13471524.html
Copyright © 2011-2022 走看看