gra*_*dev 6 maven gitlab gitlab-ci gitlab-ci-runner
我有一个mvn必须以非root用户身份构建的项目,但默认情况下gitlab-ci允许运行者以root用户身份运行.我gitlab.com通过设置gitlab-ci.yml文件来使用跑步者.我尝试创建一个用户并切换到这样:
$ useradd ***
$ su -***
$ whoami
root
Run Code Online (Sandbox Code Playgroud)
它仍然说我是根.我怎么解决这个问题?
您可以使用以下方法轻松实现此目的sudo,例如我的 .gitlab-ci.yml 的摘录:
script:
- useradd -d /builds/{GITLAB_USER} -g users -M -N builder
- chown -R builder:users ..
- |
sudo -H -i -u builder sh -e -x << EOS
umask 0077
export CONTINUOUS_INTEGRATION_SYSTEM="gitlab" TIMESTAMP=`date +%Y%m%d%H%M%S` DEFAULT_TARGET="debug"
export PREFIX="\${HOME}/usr" SYSCONFDIR="\${HOME}/etc/conf" LOCALSTATEDIR="\${HOME}/var"
cd my-project
make install
make -C _deploy/debian clean package bundle BUILD_ID="-0{other}\${TIMESTAMP}"
EOS
Run Code Online (Sandbox Code Playgroud)
其中 {GITLAB_USER} 是您实际的 gitlab 用户。记住在脚本中转义 $
| 归档时间: |
|
| 查看次数: |
2112 次 |
| 最近记录: |