第一章 系統安裝簡介
1.1. 系統結構
GitLab-CI持續集成服務主要包括gitlab、runner 2個模塊。Gitlab主要負責代碼文件的管理;runner則負責版本編譯、存儲、推送等任務。
GitLab服務公司原有已經搭建。只需搭建runner服務,並與gitlab對接即可。
第二章 安裝環境
2.1. 系統要求:
| 服務器要求 |
|
| 操作系統 |
Ubuntu 14(強制要求,sdk代碼必須在該系統下編譯) |
| 存儲 |
涉及到每日構建版本的存儲,建議1T以上 |
| 網絡 |
需要連接外網;能夠與gitlab服務器通訊 |
| 部署服務 |
Runner、需要支持ant編譯、cmake編譯 |
| 備注 |
2.2. 系統部署服務介紹
Runner:從gitlab服務器上克隆代碼到本地進行編譯、並出庫
Ant:wab-app代碼編譯依賴
Cmake:SDK代碼編譯依賴
第三章 安裝Runner
3.1. 安裝Docker編譯器,使用docker編譯需要用到
curl -sSL https://get.docker.com/ | sh
3.2. 下載ubuntu Gitlab-Runner安裝包
curl -L https://packages.gitlab.com/install/repositories/runner/gitlab-ci-multi-runner/script.deb.sh | sudo bash
3.3. 安裝gitlab-ci-multi-runner
sudo apt-get install gitlab-ci-multi-runner
3.4. 注冊並運行runner
注冊runner並和對應的工程關聯起來,我們需要用到工程的token值,所以在這里我們先在gitLab上創建工程
3.4.1創建CI工程
1. 進入gitlab web端:http:// http://gitlab.sensenets.com
2. 在工程菜單下選擇:+new project
3. 輸入工程名如:CI-test。提交創建
4. 在工程頁面進入當前工程:CI-test –> setting。在當前頁面找到該工程的token
3.4.2注冊runner
sudo gitlab-ci-multi-runner register
3.4.3檢查runner啟動狀態
gitlab-ci-multi-runner list
第四章 調度任務腳本
Runner服務起來后,我們在構建編譯任務的時候需要告訴runner-ci需要做的事情。這些做的事情就是代碼編譯的過程。我們打包成腳本,之前注冊runner時選擇的是shell執行方法
4.1. 創建:.gitlab-ci.yml文件(必須與該文件名一模一樣)
4.1.1獲取代碼編譯方法
此處以SDK代碼為例。基本編譯過程為:
1. 從gitlab服務器克隆代碼到runner服務器
git clone http://liyakun:sensenets@gitlab.sensenets.com/yyansheng/sense-crowd.git /home/shench
2. 在克隆過來的代碼目錄下新建一個build目錄,並進入該目錄
3. 執行編譯代碼
cmake -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=./install -DBUILD_EXAMPLES=ON ..
make && make install
4.1.2將編譯過程打包成腳本寫入:.gitlab-ci.yml
第五章 GitLab-CI構建任務下發
5.1. 構建任務下發
工程發生更改都會觸發ci構建。對.gitlab-ci.yml文件編輯提交信息,即可下發構建任務
5.2. 當前CI構建列表
5.3. 構建結果查詢
附錄 部分GitLab-Runner常用命令
1. gitlab-runner幫助:gitlab-runner –help
2. gitlab-runner指定命令幫助:gitlab-runner <commond> –help
3. 注冊runner:gitlab-runner register
4. 注銷runner:gitlab-runner unregister
5. 當前運行的runner:gitlab-runner list
6. 啟動runner:gitlab-runner start
7. 停止runner:gitlab-runner stop
8. 重啟runner:gitlab-runner restart
9. 查詢runner狀態:gitlab-runner status
其他runner命令可以查詢官網介紹:
https://gitlab.com/gitlab-org/gitlab-ci-multi-runner/blob/master/docs/commands/README.md
centOS系統安裝runner:
https://gitlab.com/gitlab-org/gitlab-ci-multi-runner/blob/master/docs/install/linux-repository.md










