持續(xù)集成(提交代碼+編譯+測試+發(fā)布)
CI,continuous integration,持續(xù)集成躺率,是軟件開發(fā)過程中一個非常重要的環(huán)節(jié)恋捆,在敏捷開發(fā)過程中,持續(xù)集成通常用來進行日常編譯和自動化測試急鳄,來保證及時發(fā)現(xiàn)提交的問題谤民。
持續(xù)集成的工具
CI的工具很多,最常用的是Jenkins疾宏。通常包括一個master和很多個slave张足。master用于配制和組織節(jié)點,人物坎藐,slave則用來真正執(zhí)行配置好的任務(wù)为牍。
gitlab-ci是git官方的持續(xù)集成管理工具,岩馍。
目前很多代碼都是通過GIt進行管理的碉咆,gitlab-ci也成為了常見的CI平臺,和jenkins相似蛀恩。gitlab-ci的runner支持多種環(huán)境疫铜,對docker需要做專屬的配置支持,和Jenkins比較起來更容易上手双谆。
gitlab-ci runner的安裝與配置(以Mac為例)
runner可以理解為一個環(huán)境块攒,相當于jenkins的slave,機器(或者是docker)佃乘,通過 runner程序與git服務(wù)器進行通信囱井,當有新的任務(wù)發(fā)布到runner時,runner會執(zhí)行.gitlab-ci.yml所定義的ci指令趣避。
runner有三種模式庞呕, sharedRunner,specific runners和 group runners。gitlab上可以使用官方的shared runners住练,創(chuàng)建runner需要git管理員的權(quán)限地啰。
1、安裝gitlab-runner
方式一:用homebrew進行安裝讲逛,在命令行中直接執(zhí)行
brew install gitlab-runner
方式二(官方):Gitlab runner 10以上安裝方式亏吝,若安裝舊版本前往官網(wǎng)查看
(1)下載
sudo curl --output /usr/local/bin/gitlab-runner https://gitlab-runner-downloads.s3.amazonaws.com/latest/binaries/gitlab-runner-darwin-amd64
(2)設(shè)置權(quán)限
sudo chmod +x /usr/local/bin/gitlab-runner
2、注冊runner
注冊runner盏混,你需要有一個項目蔚鸥,并且需要至少master權(quán)限。
打開settings->CI/CD頁面许赃,選擇第二項Runners settings止喷,左側(cè)會顯示與當前項目相關(guān)的參數(shù)矮烹。
(1)執(zhí)行
gitlab-runner register
(2)指定git的URL
Please enter the gitlab-ci coordinator URL (e.g. https://gitlab.com )
https://gitlab.com
(3)指定gitlab-runner的token
Please enter the gitlab-ci token for this runner
xxx
(4)關(guān)聯(lián)git和runner的tag
Please enter the gitlab-ci tags for this runner (comma separated):
my-tag,another-tag
(5)給tag的描述
Please enter the gitlab-ci description for this runner
[hostame] my-runner
(6)選擇runner的執(zhí)行環(huán)境
Please enter the executor: ssh, docker+machine, docker-ssh+machine, kubernetes, docker, parallels, virtualbox, docker-ssh, shell:
shell (Mac可以在本機器上運行)
若選擇docker谣光,則需要下一步
(7)指定docker的image
Please enter the Docker image (eg. ruby:2.1):
alpine:latest
- url:私有g(shù)it的路徑
- token:項目的token,用于關(guān)聯(lián)runner和項目
- name:runner的名字买鸽,用于區(qū)分runner
- tags:用于匹配任務(wù)(jobs)和執(zhí)行任務(wù)的設(shè)備(runners)
- executor:執(zhí)行環(huán)境
當我們完成設(shè)置后句喜,可通過vi ~/.gitlab-runner/config.toml打開runner 的配置文件看到之前配置的內(nèi)容预愤。
3、啟動
cd ~
gitlab-runner install
gitlab-runner start
當所有不是執(zhí)行后咳胃,在Runners settings會顯示runner的狀態(tài)鳖粟,顯示為綠色,則runner配置成功拙绊。
參考文檔
[1]http://www.reibang.com/p/30e3f2940078
[2]gitlab-runner官方文檔