1. 程式人生 > 其它 >GitLab CI/CD Pipeline 與 jobs的概念

GitLab CI/CD Pipeline 與 jobs的概念

GitLab CI/CD Pipeline與jobs的概念

在GitLab中 Pipeline 的流水管道包含多個stage(階段), 每個stage 包含多個jobs。

每一次提交都會觸發一次Pipeline, 而每一個Pipeline的內容定義的都是一個個jobs。

所有的jobs都是定義在.gitlab.ci.yml中的, 是.gitlab.ci.yml的最高等級的元素,

每一個job都屬於某一個stage. 預設是test ,stage預設有三種選擇, build => test => deploy

定義的多個job也是這樣執行的, 不是按照你再.gitlab.ci.yml中寫的順序執行.

image: alpine:latest
 
pages:
  stage: deploy
  script:
  - echo 'Nothing to do...'
  artifacts:
    paths:
    - public
  only:
  - master
  
deploytest:
  stage: deploy
  script:
  - echo 'deploy test'
  artifacts:
    paths:
    - public
  only:
  - master
 
  
deployuat:
  stage: deploy
  script:
  - echo 'deploy uat'
  artifacts:
    paths:
    - public
  only:
  - master
 
 
myjobs:
 stage: build
 script:
 - echo 'execute myjobs build'
 
testjob2:
 stage: test
 script:
 - echo 'execute mytest jon test2'
 
testjob:
 stage: test
 script:
 - echo 'execute mytest jon test'
 
firstBuild:
 stage: build
 script:
 - echo 'firstBuild'
 
firstTest:
 stage: test
 script:
 - echo 'first test'