1. 程式人生 > 實用技巧 >使用gitlab-runner本地驗證.gitlab-ci.yml

使用gitlab-runner本地驗證.gitlab-ci.yml

背景

gitlab上配置新專案的CI的時候,需要編寫專案的 .gitlab-ci.yml 檔案。

每次修改 .gitlab-ci.yml 檔案之後都要執行git push讓GitLab去構建來驗證當前的CI指令碼是否能正確構建,甚是麻煩,同時增加了很多無營養的Git提交。

若我們能夠在修改完.gitlab-ci.yml 檔案之後本地先試跑一下驗證其正確性,改到滿意再Push修改,豈不樂哉?

安裝 gitlab-runner

下面我將以在一個Centos7機器為例簡述如何部署gitlab-runner,其他平臺請參考GitLab官方文件 :

  1. 新增yum源:
curl -L https://packages.gitlab.com/install/repositories/runner/gitlab-ci-multi-runner/script.rpm.sh | sudo bash
  1. 安裝gitlab-ci-multi-runner:
sudo yum install gitlab-ci-multi-runner

註冊專案

  1. GitLab網頁端進入你要驗證的程式碼專案,左側依次選擇 Settings -> CI/CD -> Runners ,點選expand 可以看到URLtoken的資訊
  2. 執行 gitlab-runner register,會有互動式介面提示你依次輸入URLtokentagsrunner等,主要是URLtoken要填寫正確,runnershell即可,其他的預設直接敲回車
  3. 註冊完成重新整理網頁你會看到你的runner已經成功註冊上去了

本地驗證

  1. 拉取對應專案的倉庫程式碼,切換到所需分支
  2. 進入專案根目錄(也就是有 .git 的目錄)
  3. 執行命令進行驗證:gitlab-runner exec docker build-xxx
  4. gitlab-runner exec 相關引數如下:
[$]> gitlab-runner exec --help
NAME:
gitlab-runner exec - execute a build locally

USAGE:
gitlab-runner exec command [command options] [arguments...]

COMMANDS:
ssh use ssh executor
virtualbox use virtualbox executor
docker use docker executor
docker-ssh use docker-ssh executor
parallels use parallels executor
shell use shell executor
help, h Shows a list of commands or help for one command

OPTIONS:
--help, -h show help