Rol*_*and 5 git permissions continuous-integration chmod gitlab
我有8.7.0版本的GitLab平台,我目前正在设置CI部分.我创建了一个新的gitlab-runner,它使用shell作为执行器.问题是,在调用转轮来完成自己的工作之前,系统无法获取git更改.构建过程的控制台输出:
gitlab-ci-multi-runner 1.1.3 (a470667)
Using Shell executor...
Running on <my-page>...
Fetching changes...
warning: failed to remove <some-path>/localClassSetAnalysis.bin
warning: failed to remove <some-path>/localClassSetAnalysis.lock
...
gitlab-ci-multi-runner 1.1.3 (a470667)
Using Shell executor...
Running on <my-page>...
Cloning repository...
rm: cannot remove ‘path-to-some-directory>’: Permission denied
rm: cannot remove ‘path-to-some-directory>’: Permission denied
...
Run Code Online (Sandbox Code Playgroud)
存储文件的文件夹是/ home/gitlab-runner/builds所以我想,有两个用户:git和gitlab-runner,git用户无法删除或重写此目录中的文件.更改后,目录权限构建过程启动并成功完成,但之后文件再次具有旧权限(读取+写入用户(gitlab-runner)并读取其余的权限).所以现在我必须(最简单的方法)在构建之前始终从/ home/gitlab-runner/builds中删除所有内容,但当然这不是解决方案......我该怎么办?
我也遇到了同样的问题,我想我已经解决了。您需要验证您的新文件是在哪个组下创建的(我的是tape
),然后添加gitlab-runner
到该组。就我而言,命令看起来像这样......
sudo usermod -a -G tape gitlab-runner