3.7 pipeline syntax 7

image/services/environment/inherit

準備工作註冊docker類型的runner

gitlab-runner register \
  --non-interactive \
  --executor "docker" \
  --docker-image alpine:latest \
  --url "http://192.168.1.200:30088/" \
  --registration-token "JRzzw2j1Ji6aBjwvkxAv" \
  --description "docker-runner" \
  --tag-list "newdocker" \
  --run-untagged="true" \
  --locked="false" \
  --docker-privileged \ 
  --access-level="not_protected"
[[runners]]
  name = "docker-runner"
  url = "http://192.168.1.200:30088/"
  token = "xuaLZD7xUVviTsyeJAWh"
  executor = "docker"
  [runners.custom_build_dir]
  [runners.cache]
    [runners.cache.s3]
    [runners.cache.gcs]
  [runners.docker]
    pull_policy = "if-not-present"
    tls_verify = false
    image = "alpine:latest"
    privileged = true
    disable_entrypoint_overwrite = false
    oom_kill_disable = false
    disable_cache = false
    volumes = ["/cache"]
    shm_size = 0

image

默認在註冊runner的時候需要填寫一個基礎的鏡像,請記住一點只要使用執行器爲docker類型的runner所有的操作運行都會在容器中運行。 如果全局指定了images則所有作業使用此image創建容器並在其中運行。 全局未指定image,再次查看job中是否有指定,如果有此job按照指定鏡像創建容器並運行,沒有則使用註冊runner時指定的默認鏡像。

#image: maven:3.6.3-jdk-8

before_script:
  - ls
  
  
build:
  image: maven:3.6.3-jdk-8
  stage: build
  tags:
    - newdocker
  script:
    - ls
    - sleep 2
    - echo "mvn clean "
    - sleep 10

deploy:
  stage: deploy
  tags:
    - newdocker
  script:
    - echo "deploy"


services

工作期間運行的另一個Docker映像,並link到image關鍵字定義的Docker映像。這樣,您就可以在構建期間訪問服務映像.

服務映像可以運行任何應用程序,但是最常見的用例是運行數據庫容器,例如mysql 。與每次安裝項目時都安裝mysql相比,使用現有映像並將其作爲附加容器運行更容易,更快捷。


services:
  - name: mysql:latest
    alias: mysql-1


environment

deploy to production:
  stage: deploy
  script: git push production HEAD:master
  environment:
    name: production
    url: https://prod.example.com

inherit

使用或禁用全局定義的環境變量(variables)或默認值(default)。

使用true、false決定是否使用,默認爲true

inherit:
  default: false
  variables: false

繼承其中的一部分變量或默認值使用list

inherit:
  default:
    - parameter1
    - parameter2
  variables:
    - VARIABLE1
    - VARIABLE2

一起學習呀:

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章