gitlab-runner配置

昨天不知道什么原因,我的gitlab-runner不能正常工作了,所以导致我开始认真研究了一下如何配置gitlab-runner,但是其过于复杂,由于当前还要学习,所以记录解决问题后的设置,同时参考文档Registering runners (deprecated)以后逐步完善理解,因为我还计划未来的编程工作在gitlab上自动化完成,所以这个配置工作必须要学好。

2022年11月12日 由于我为了方便自动化配置,所以在配置脚本中以命令行的方式实现注册gitlab-runner的过程。设置方法参考了上述文档,具体代码为

1
2
3
4
5
6
7
8
9
10
11
12
13
14
sudo gitlab-runner register \
--non-interactive \
--url "https://gitlab.com/" \
--registration-token "GR1348941HKwAt771GhzqQ1F893KY" \
--executor "shell" \
--description "thinkpad-diary-runner" \
--maintenance-note "Only for hexo diary writing" \
--run-untagged="true" \
--locked="false" \
--access-level="not_protected"

sudo systemctl enable gitlab-runner
sudo gitlab-runner start
echo "gitlab-runner配置完毕!"

在注册gitlab-runner前需要先确认原来的gitlab-runner已经删除,因为同一台机器配置两个gitlab-runner后,如果不配置标签则gitlab不能分辨使用哪一个gitlab-runner,这将导致问题,这是之前在核科院电脑上遇到过的问题。删除方法为

1
sudo gitlab-runner unregister --all-runners

注意:有时候使用上述命令不能确保一定能够删除本机所有的gitlab-runner , 这时需要修改配置文件~/.gitlab-runner/config.toml,手动删除多余的gitlab-runner 。 2023年02月13日 核科院办公室

2023年06月08日星期四晴北京市北京师范大学, 最近我的工作目录中总是莫名的出现两个文件夹buildscache,且其不固定,研究后发现它是gitlab-runner运行后的产物,于是研究后决定修复这个问题,将这两个文件夹建立在.gitlab-runner目录下,于是修改文件~/.gitlab-runner/config.toml

~/.gitlab-runner/config.toml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
concurrent = 1
check_interval = 0
shutdown_timeout = 0

[session_server]
session_timeout = 1800

[[runners]]
name = "dell-diary-runner"
url = "https://gitlab.com/"
id = 21102829
token = "xYxVxsxLsfExPBSzCiyJ"
token_obtained_at = 2023-02-13T13:08:57Z
token_expires_at = 0001-01-01T00:00:00Z
executor = "shell"
builds_dir = "/home/feng/.gitlab-runner/builds"
cache_dir = "/home/feng/.gitlab-runner/cache"
[runners.custom_build_dir]
[runners.cache]
MaxUploadedArchiveSize = 0
[runners.cache.s3]
[runners.cache.gcs]
[runners.cache.azure]