gpt4 book ai didi

maven - 以非 root 用户身份运行 gitlab-ci 管道作业

转载 作者:行者123 更新时间:2023-12-04 15:30:19 27 4
gpt4 key购买 nike

我有一个 mvn必须以非 root 用户身份构建的项目
但默认情况下 gitlab-ci 允许运行者以 root 用户身份运行。
我正在使用 gitlab.com运行者通过设置gitlab-ci.yml文件。
我尝试创建一个用户并像这样切换到它:

$ useradd ***
$ su -***
$ whoami
root

它仍然说我是root。
我该如何解决这个问题?

最佳答案

您可以使用 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

其中 {GITLAB_USER} 是您的实际 gitlab 用户。
记得在你的脚本中转义 $

关于maven - 以非 root 用户身份运行 gitlab-ci 管道作业,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48576412/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com