我在linux机器上安装了jenkins并对其进行了配置。 作为构建过程自动化的一部分,我想将我的战争形式从一个目录复制到另一个目录。我尝试使用PRE BUILD ACTION并执行shell命令。 cp / from directory / to directory
构建失败,拒绝权限。通过向用户登录jenkins提供root级别权限,我尝试了几种方法。 什么都行不通。
如果我是否允许合适的用户,我不是。
任何帮助都将受到高度赞赏。 请注意我是LINUX / UNIX的新手。
答案 0 :(得分:0)
要找出正在启动Jenkins的用户,请在预构建操作中使用whoami
,然后查看构建日志以查看正在执行构建脚本的用户。它可能与拥有你试图让jenkins复制战争的文件夹的用户不同。
您可以将该用户添加到拥有该文件夹的用户所在的同一组中,而不是让jenkins运行root用户的用户(由于现在您的jenkins脚本可以执行特权操作而存在安全风险),您可以将该用户添加到拥有该文件夹的用户所在的同一组中。 / p>
假设我在jenkins脚本中运行whoami
,用户原来是user1
,并且拥有您要将战争复制到的文件夹的用户user2
。您可能希望将user1
添加到user2
所在的同一组中,并修改文件夹权限以允许修改同一组中的人员。
将user1
添加到与user2
相同的群组:
usermod -a -G user2 user1
然后修改要复制到的文件夹的权限:
chmod g+w /path/to/directory