1. 下载并配置 Runner
1.1 下载 Runner
GitLab-CI 的 Runner 是一个 Go 写的程序包,可以去官网下载到本地。
|
|
增加执行权限
|
|
1.2 新增 runner 用户
运行 Runner 时,以 runner:runner 账户运行。
|
|
1.3 修改 pip 源
|
|
1.4 创建工作目录
|
|
2 注册 Runner
在项目的settings/ci_cd
页面,或者管理员的 /admin/runners
页面都可以找到 token。
token 是 Runner 注册的凭证。如果是从项目获取的 token,那么这个 Runner 属于此项目,可以通过配置允许其他项目也可以使用。如果是从管理员页面获取的 token ,那么这个 Runner,所有项目可见,都可以使用。
下面以项目的 Runner 为例:
2.1 获取 token
在项目的 settings/ci_cd
页面
需要获取图中模糊处理的两个参数:
- URL: http://gitlab.yourdomain.com/
- token: XXXXXXXXXXXXXXXXXXX
2.2 注册 Runner
运行下面的命令,并按照提示输入相关信息。
|
|
Please enter the gitlab-ci coordinator URL (e.g. https://gitlab.com/):
输入 gitlab 的 url 地址
|
|
Please enter the gitlab-ci token for this runner:
输入 token
|
|
Please enter the gitlab-ci description for this runner:
输入 Runner 描述
|
|
Please enter the gitlab-ci tags for this runner (comma separated):
输入 Runner 的标签:
|
|
Whether to run untagged builds [true/false]:
是否运行在没有 tag 的 build 上面。在配置 gitlab-ci 时,会有很多 job,每个 job 可以通过 tags 属性来选择 Runner。这里为 true 表示如果 job 没有配置 tags,也执行。
|
|
Whether to lock the Runner to current project [true/false]:
是否锁定 Runner 到当前项目
|
|
Please enter the executor: parallels, ssh, virtualbox, docker-ssh+machine, kubernetes, docker, docker-ssh, shell, docker+machine:
选择 executor,这里列出了很多 executor
|
|
Runner registered successfully. Feel free to start it, but if it's running already the config should be automatically reloaded!
3 运行 Runner
|
|
这里为了不修改 yml 配置,从之前的 Runner 迁移到 新 Runner。直接禁用共享的 Runner,使用 Specific Runner。如果愿意修改 yml,可以通过 tags 参数来控制执行的 Runner。
剩下的就是在新的 Runner 上,配置合适的 CI 环境,比如 node、npm 即可。
查看默认启动配置
|
|
还可以通过 systemctl 管理 Runner
|
|
4. 一些问题
4.1 注销 Runner
需要先找到 config.toml 文件中的 token,需要注意的是,这里的 token 和注册时不一样。
|
|
|
|
4.2 SVN Can’t convert string from ‘UTF-8’
解决svn: Can’t convert string from ‘UTF-8’ to native encoding问题
|
|