gitlab-runner
一、安裝
1、下載exe執行文件
我這里是 win64
https://gitlab-runner-downloads.s3.amazonaws.com/latest/binaries/gitlab-runner-windows-amd64.exe
2、創建 gitlab-runner 目錄,並進入目錄
cd gitlab-runner
3、將上面下載的 gitlab-runner-windows-amd64.exe 放到 gitlab-runner 目錄
# 當然不改也可以,這里改名是為了后面執行命令方便
改名成:gitlab-runner.exe
注意后續使用 .\gitlab-runner.exe 執行的命令都需要使用管理員身份運行
否則會被拒絕
4、安裝 gitlab-runner
使用系統賬號安裝gitlab-runner
- 這里使用默認系統用戶安裝,可能導致各種資源找不到或者權限問題
- 此時可以
- 右鍵我的電腦、或者打開文管理器-右鍵此電腦
- 選擇管理菜單
- 選擇服務和應用程序-服務
- 找到 gitlab-runner 服務-右鍵選擇屬性-選擇登陸tab-登陸身份選擇此賬戶,瀏覽選擇日常開發時候所用到的賬戶
- 設置好后,重啟gitlab-runner 服務即可
.\gitlab-runner.exe install
使用指定賬戶安裝gitlab-runner
- 重要的事情說三遍!!!重要的事情說三遍!!!重要的事情說三遍!!!大部分問題是這個沒做好導致的!!!最好指定當前日常開發時候所用的用戶,這樣可以明確指定gitlab-runner使用當前開發用戶的git、yarn、npm、node 等資源,而不會導致各種資源缺少或者權限問題
.\gitlab-runner.exe install --user your-username --password your-password
二、注冊 runner
1、注冊一個gitlab-runner
注冊的 gitlab-runner 分為共享runner和特定runner
共享runner,所有gitalb項目都可用
特定runner,只對指定項目生效
這里我們注冊特定runner
.\gitlab-runner.exe register
注冊時候需要填寫該runner關聯的url和token,以及runner的描述和標簽tags,還有runner執行時候的腳本類型
.gitlab-ci.yml 中執行任務中的tags,指定要運行的runner
url 和 token 在 gitlab 項目 ---> 設置 ---> CI/CD ---> Setup a specific Runner manually 獲取
回到 gitlab 頁面,刷新即可看到注冊的 runner
三、構建
1、注冊好后,在項目中添加 .gitlab-ci.yml
文件
在里面定義gitlab-runner所要執行的邏輯:
- runner任務觸發的時機
- runner任務觸發時候執行的腳本
- 等等
2、使用shell executor,構建項目時候,項目將會被克隆到以下目錄:
<working-directory>/builds/<short-token>/<concurrent-id>/<namespace>/<project-name>
例如
D:\gitrunner\builds\58820ada\0\web-secure\webapp
項目的caches被存儲到
<working-directory>/cache/<namespace>/<project-name>
變量解釋:
<working-directory>:runner當前執行的目錄或者使用--working-directory指定的目錄
<short-token>:runner的token前8位
<concurrent-id>:一個唯一的number,用於區別job,從0開始
<namespace>:項目擁有者的名稱
<project-name>:項目名
四、gitlab-runner 常用命令
注意使用 .\gitlab-runner.exe 執行的命令都需要使用管理員身份運行
否則會被拒絕
安裝
.\gitlab-runner.exe install
注冊
.\gitlab-runner.exe register
啟動
.\gitlab-runner.exe start
停止
.\gitlab-runner.exe stop
更新
1、.\gitlab-runner.exe stop
2、下載新版的gitlab-runner程序,替換掉當前的gitlab-runner.exe
3、.\gitlab-runner.exe start
卸載
.\gitlab-runner.exe stop
.\gitlab-runner.exe uninstall
cd ..
rmdir /s gitlab-runner
查看runner狀態
.\gitlab-runner.exe status
查看runner列表
.\gitlab-runner.exe list