是否可以允许jenkins访问只有root或某些特定程序可以访问的文件?

时间:2013-06-13 20:47:09

标签: linux permissions jenkins continuous-integration hudson

我基本上要做的是允许jenkins访问我的android-sdk-linux文件夹和所有子目录。我的老板不想自己更改文件夹的权限。我应该在构建过程中这样做。我已经看到一些在构建过程中在执行shell中运行一些命令的示例。是否有一些命令可以在执行shell中运行,以便jenkins可以在我的android-sdk-linux文件夹上具有读写和执行权限?

2 个答案:

答案 0 :(得分:18)

正如bcolfer所说,你应该能够在它前面运行带有“sudo”的shell命令。您需要确保启动Jenkins slave的用户是sudoer。

以root身份运行“visudo”,这将打开/ etc / sudoers文件。如果它不是当前的sudoer,在底部添加一条类似于此的行:

jenkins        ALL=(ALL)       NOPASSWD: ALL

“Jenkins”是启动奴隶的用户。

OR

您可以尝试将用户添加到拥有该目录的组中。如果运行“ls -l”,您应该能够看到权限,然后是用户以及拥有该目录的组。一旦你知道了这个组,就像root run:

usermod -a -G group Jenkins

“Jenkins”是启动奴隶的用户,“group”是实际的组名。

答案 1 :(得分:0)

一种可能性是使用sudo来运行专门针对这些文件的命令。有许多方法可以管理sudo权限限制并记录对这些文件执行的操作。