学习gitlab-runner

在项目根目录构造一个.gitlab-ci.yml文件。当开发和运维分开时,此文件必须被版本控制管理

现在本项目注册两个runner,tags名为:myproject,mycode

.gitlab-ci.yml的基本结构

## 定义流水线的阶段,可以自己定义名称,用来管理作业流程,默认stages为:build,test,deploy
## 作业顺序就是按照stages定义的顺序,自上而下的执行
## 不管job的编写顺序如何,只按照job内定义的stage顺序执行。
## 不同的job,使用同一个stage,会并行执行
stages:
    - build
    - test
    - deploy
## 第一条作业
job1:
    stage: build ## 指定作业阶段
    tags:   ## 指定作业的runner
        - mycode
    script:  ## 作业执行的脚本
        - "ssh root@目标主机 'sh /opt/data/git pull;exit'"
    only:    ## 针对哪个分支执行
        - dev
job2:
    stage: deploy
    tags: ## 一条流水线可以定义不同的tags
        - myproject
    script: ## 作业执行的脚本
        - "ssh root@目标主机 '/usr/bin/docker-compose -f /opt/data/docker-compose.yml'"
    only:
        - dev

补充:

runner的定义,其实是跟着项目走的,一个项目一个runner比较好

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注