版本回滾
stages:
-? build
-? deploy
build_job:
? stage: build
? tags:?
? – test1
? script:
? – echo this is a test !
dev_job:
? stage: deploy
? tags:?
? – test1
? environment:?
? ? name: v2
? url:? http://www.test.com
? script:
? – echo this is a deploy !
environment: 是配置在deploy這個stage里面的,用于后面Environments可以做版本回滾。
紅色部分是URL,回滾的時候點擊即可直接跳轉到指定位置。
手動執行部署
stages:
-? build
-? deploy
build_job:
? stage: build
? tags:?
? – test1
? script:
? – echo this is a test !
dev_job:
? stage: deploy
? tags:?
? – test1
? environment:?
? ? name: v2
? url:www.baidu.com
? script:
? – echo this is a deploy !
? when: always #不管前面幾步成功與否,永遠會執行這一步。它有幾個值:on_success (默認值)\\\\on_failure\\\\always\\\\manual(手動執行)
每次提交代碼就會自動觸發構建并自動發布,production的構建發布需要手動點擊按鈕,這個是when: manual實現的。
when?用于實現在出現故障或運行失敗時運行的作業。
when?可以設置為以下值之一:
on_success?- 只有當前一個階段的所有工作成功時才執行工作。這是默認值。
on_failure?- 僅當前一個階段的至少一個作業發生故障時才執行作業。
always?- 無論前一階段的工作狀況如何,繼續執行工作。
manual?- 手動執行作業(在GitLab 8.10中添加)
Docker Executor
所有jobs的執行環境為指定的docker image所生成的container,每個job都會生成一個container并且在job結束后立即銷毀。
Pull policies
當你使用docker 或 docker machine executors時,你可以通過設置pull_policy來決定Runner如何pull docker image。pull_policy有三種值:
always —— Runner始終從遠程pull docker image。
if-not-present —— Runner會首先檢查本地是否有該image,如果有則用本地的,如果沒有則從遠程拉取。
never —— Runner始終使用本地的image。
更多關于云服務器,域名注冊,虛擬主機的問題,請訪問三五互聯官網:m.shinetop.cn