gpt4 book ai didi

linux - 更改 Jenkins 构建工件文件所有权

转载 作者:塔克拉玛干 更新时间:2023-11-02 23:35:28 24 4
gpt4 key购买 nike

我有一个构建 Maven 项目的 Jenkins 服务器。当 Jenkins 构建此项目时,$WORKSPACE 下的所有构建工件都具有文件权限 jenkins:jenkins

后步骤中,这些构建工件应被复制到/srv/myproject/,Tomcat 实例从那里为构建的工件提供服务。 /srv/myproject/tomcat7/tomcat7 所有。

此后步骤失败,Jenkins 报告 由于 java.io.FileNotFoundException/srv/myproject/somefile(权限被拒绝),无法将 $WORKSPACE/somefile 复制到/srv/myproject/somefile — Linux用户 jenkins 不允许修改 Linux 用户 tomcat7 拥有的文件。

如何更改 Jenkins 构建工件的所有权?我正在寻找考虑到安全性的解决方案,例如给予 jenkins sudoer 权限似乎并不明智。此外,将 srv/myproject/** 的所有权更改为 jenkins:jenkins 感觉更像是一种解决方法。

最佳答案

您可以考虑为这两个用户创建一个组,我们称之为ftp

您可以将 /srv/myproject/ 文件夹的所有权更改为 ftp 组:

sudo chown -R :ftp /srv/myproject

将用户 jenkinstomcat7 添加到 ftp 组:

sudo usermod -a -G ftp jenkins
sudo usermod -a -G ftp tomcat7

现在 jenkinstomcat7 用户都应该能够访问 /srv/myproject

关于linux - 更改 Jenkins 构建工件文件所有权,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34001424/

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