Gitlab CI/CD----基本类型的流水线

【原文链接】Gitlab CI/CD----基本类型的流水线

(1)流水线定义多个阶段,每个阶段有一个Job,.gitlab-ci,yml 配置如下

stages:
  - compile
  - build
  - deploy
  - test
  - release


compile:
  stage: compile
  script:
    - echo "begin to compile"
  tags:
   - shell_gitlab
   
build:
  stage: build
  script:
    - echo "begin to build"
  tags:
   - shell_gitlab
   
deploy:
  stage: deploy
  script:
    - echo "begin to deploy"
  tags:
   - shell_gitlab

test:
  stage: test
  script:
    - echo "begin to test"
  tags:
   - shell_gitlab

release:
  stage: release
  script:
    - echo "begin to release"
  tags:
   - shell_gitlab

流水线如下图所示,按照阶段顺序执行

(2)流水线中有多个阶段,每个阶段中可能有多个任务,.gitlab-ci.yml配置如下所示。

stages:
  - compile
  - build
  - deploy
  - test
  - release


compile_java:
  stage: compile
  script:
    - echo "begin to compile java"
  tags:
   - shell_gitlab
   
compile_c:
  stage: compile
  script:
    - echo "begin to compile c"
    - sleep 10
  tags:
   - shell_gitlab


compile_node:
  stage: compile
  script:
    - echo "begin to compile node"
  tags:
   - shell_gitlab

build_java:
  stage: build
  needs:
    - compile_java
  script:
    - echo "begin to build java"
  tags:
   - shell_gitlab

build_c:
  stage: build
  needs:
    - compile_c
  script:
    - echo "begin to c"
  tags:
   - shell_gitlab

build_node:
  stage: build
  needs:
    - compile_node
  script:
    - echo "begin to node"
  tags:
   - shell_gitlab


deploy:
  stage: deploy
  script:
    - echo "begin to deploy"
  tags:
   - shell_gitlab

test:
  stage: test
  script:
    - echo "begin to test"
  tags:
   - shell_gitlab

release_java:
  stage: release
  script:
    - echo "begin to releas javae"
  tags:
   - shell_gitlab

release_c:
  stage: release
  script:
    - echo "begin to releas c"
  tags:
   - shell_gitlab

release_node:
  stage: release
  script:
    - echo "begin to releas node"
  tags:
   - shell_gitlab

流水线如下图所示,此时按照阶段执行,即上一个阶段的Job全部执行完成后,才会执行下一个阶段的Job

猜你喜欢

转载自blog.csdn.net/redrose2100/article/details/130989353
今日推荐