GitLab CI


官方文檔:https://docs.gitlab.com/ee/ci/README.html
官方各語言項(xiàng)目CI示例:https://gitlab.com/help/ci/examples/README.md
學(xué)習(xí)GitLab CI文件如何編寫:https://docs.gitlab.com/ee/ci/yaml/README.html
GitLab Runner安裝:https://docs.gitlab.com/runner/install/index.html

GitLab CI

共兩步:1.安裝配置GitLab Runner 2.編寫提交.gitlab-ci.yml文件航罗。配置完成后每次提交或推送都會觸發(fā)CI

GitLab Runner安裝與配置

其他系統(tǒng)下安裝見非常詳細(xì)的官方文檔碘箍,以下僅演示Linux環(huán)境下

  1. 下載二進(jìn)制文件(若下載速度過慢建議本地復(fù)制鏈接https://gitlab-runner-downloads.s3.amazonaws.com/latest/binaries/gitlab-runner-linux-amd64使用下載工具如迅雷下載后上傳或找其他國內(nèi)鏡像):
# Linux x86-64
sudo wget -O /usr/local/bin/gitlab-runner https://gitlab-runner-downloads.s3.amazonaws.com/latest/binaries/gitlab-runner-linux-amd64
  1. 賦予它執(zhí)行權(quán)限:
sudo chmod +x /usr/local/bin/gitlab-runner
  1. 創(chuàng)建GitLab CI用戶:
sudo useradd --comment 'GitLab Runner' --create-home gitlab-runner --shell /bin/bash
  1. 安裝并作為服務(wù)運(yùn)行:
sudo gitlab-runner install --user=gitlab-runner --working-directory=/home/gitlab-runner
sudo gitlab-runner start

停止服務(wù):sudo gitlab-runner stop

  1. 開始GitLab Runner注冊,運(yùn)行以下命令:
sudo gitlab-runner register
  1. 輸入您的GitLab實(shí)例URL:

本示例演示的基于官網(wǎng)GitLab的使用被冒,若你已搭建GitLab私庫填寫你得地址即可

Please enter the gitlab-ci coordinator URL (e.g. https://gitlab.com )
https://gitlab.com
  1. 輸入您獲得的令牌以注冊Runner:
Please enter the gitlab-ci token for this runner
xxx
image

<img src="https://i.loli.net/2019/05/14/5cdadb9e2c9f940547.png" alt="WX20190514-230945@2x.png" title="WX20190514-230945@2x.png" width="600px" />

  1. 輸入Runner的描述榨汤,您可以稍后在GitLab的UI中更改:
Please enter the gitlab-ci description for this runner
xboot
  1. 輸入 與Runner關(guān)聯(lián)標(biāo)簽 蠕搜,您可以稍后在GitLab的UI中更改,逗號分隔:

標(biāo)簽的作用可用于指定使用具體哪一個(gè)GitLab Runner收壕,如服務(wù)器1和服務(wù)器2

Please enter the gitlab-ci tags for this runner (comma separated):
xboot
  1. 輸入 Runner執(zhí)行程序 (如果您選擇Docker作為執(zhí)行程序妓灌,則會要求您配置默認(rèn)鏡像:
Please enter the executor: ssh, docker+machine, docker-ssh+machine, kubernetes, docker, parallels, virtualbox, docker-ssh, shell:
shell
  • 安裝配置完畢


    image

編寫.gitlab-ci.yml文件

  • DEMO示例
stages:
- build
- test
- deploy

# 構(gòu)建階段
build:
  stage: build
  # 構(gòu)建腳本命令
  script:
    - echo "開始構(gòu)建"
    - echo "mvn clean..."
    - echo "構(gòu)建結(jié)束"

# 測試階段
test:
  stage: test
  script:
    - echo "運(yùn)行單元測試"
    - echo "java -test..."
    - echo "測試結(jié)束"

# 部署階段
deploy:
  stage: deploy
  script:
    - echo "開始部署"
    - echo "mvn install..."
    - echo "部署完成"
  • 提交該文件后即可在CI-流水線菜單中查看到執(zhí)行的階段進(jìn)度與結(jié)果


    WX20190515-010603@2x.png
  • 可點(diǎn)擊進(jìn)入在控制臺查看具體詳情日志


    WX20190515-010817@2x.png

部分常用Gitlab YAML說明

更多詳見官方文檔 https://docs.gitlab.com/ee/ci/yaml/README.html

  • 手動觸發(fā),關(guān)鍵字when定義何時(shí)開始蜜宪,on_success虫埂,on_failure,always或者manual
build:
  # 該階段設(shè)置為手動觸發(fā)  
  when: manual
  stage: build
QQ20190515-154011@2x.png
  • 指定Runner圃验,使用關(guān)鍵字tags指定Runner(同時(shí)Runner也要設(shè)置tags)
build:
  # 指定tags標(biāo)簽為xboot的Runner執(zhí)行
  tags: 
    - xboot
  stage: build
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末掉伏,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子澳窑,更是在濱河造成了極大的恐慌斧散,老刑警劉巖,帶你破解...
    沈念sama閱讀 206,839評論 6 482
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件摊聋,死亡現(xiàn)場離奇詭異鸡捐,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī)麻裁,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,543評論 2 382
  • 文/潘曉璐 我一進(jìn)店門箍镜,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人煎源,你說我怎么就攤上這事鹿寨。” “怎么了薪夕?”我有些...
    開封第一講書人閱讀 153,116評論 0 344
  • 文/不壞的土叔 我叫張陵,是天一觀的道長赫悄。 經(jīng)常有香客問我原献,道長,這世上最難降的妖魔是什么埂淮? 我笑而不...
    開封第一講書人閱讀 55,371評論 1 279
  • 正文 為了忘掉前任姑隅,我火速辦了婚禮,結(jié)果婚禮上倔撞,老公的妹妹穿的比我還像新娘讲仰。我一直安慰自己,他們只是感情好痪蝇,可當(dāng)我...
    茶點(diǎn)故事閱讀 64,384評論 5 374
  • 文/花漫 我一把揭開白布鄙陡。 她就那樣靜靜地躺著冕房,像睡著了一般。 火紅的嫁衣襯著肌膚如雪趁矾。 梳的紋絲不亂的頭發(fā)上耙册,一...
    開封第一講書人閱讀 49,111評論 1 285
  • 那天,我揣著相機(jī)與錄音毫捣,去河邊找鬼详拙。 笑死,一個(gè)胖子當(dāng)著我的面吹牛蔓同,可吹牛的內(nèi)容都是我干的饶辙。 我是一名探鬼主播,決...
    沈念sama閱讀 38,416評論 3 400
  • 文/蒼蘭香墨 我猛地睜開眼斑粱,長吁一口氣:“原來是場噩夢啊……” “哼弃揽!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起珊佣,我...
    開封第一講書人閱讀 37,053評論 0 259
  • 序言:老撾萬榮一對情侶失蹤蹋宦,失蹤者是張志新(化名)和其女友劉穎,沒想到半個(gè)月后咒锻,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體冷冗,經(jīng)...
    沈念sama閱讀 43,558評論 1 300
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,007評論 2 325
  • 正文 我和宋清朗相戀三年惑艇,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了蒿辙。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 38,117評論 1 334
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡滨巴,死狀恐怖思灌,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情恭取,我是刑警寧澤泰偿,帶...
    沈念sama閱讀 33,756評論 4 324
  • 正文 年R本政府宣布,位于F島的核電站蜈垮,受9級特大地震影響耗跛,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜攒发,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,324評論 3 307
  • 文/蒙蒙 一调塌、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧惠猿,春花似錦羔砾、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,315評論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽政溃。三九已至,卻和暖如春檀葛,著一層夾襖步出監(jiān)牢的瞬間玩祟,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 31,539評論 1 262
  • 我被黑心中介騙來泰國打工屿聋, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留空扎,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 45,578評論 2 355
  • 正文 我出身青樓润讥,卻偏偏與公主長得像转锈,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個(gè)殘疾皇子楚殿,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 42,877評論 2 345