ubuntu - Jenkins 错误 : 'Unable to Delete File' When Invoking Ant

标签 ubuntu ant permissions jenkins

我在 Ubuntu 11.04 上运行 Jenkins 1.433 以执行包含 Ant 任务的构建。我的 Ant 任务的 clean 部分从之前的构建中删除了 build 目录,在从终端运行 sudo Ant 时将起作用,但失败了来自 Jenkins,具有以下内容:

BUILD FAILED
/var/lib/jenkins/workspace/AomaTests/build.xml:47: Unable to delete directory /var/lib/jenkins/workspace/AomaTests/build

Jenkins 引用的 Ant 安装是从命令行 (usr/bin/ant) 运行的,Jenkins 项目专门指向这个实例(而不是 Default )。确定这是一个权限问题,我尝试了以下操作:

  • chown -R 适当的 build 目录,将其所有者设置为 jenkins
  • 对目录执行 chmod 777
  • 暂时允许 jenkins 用户名无需密码即可运行(通过编辑 sudoers 文件 jenkins ALL = NOPASSWD:ALL).

这些方法都不起作用。我应该通过不同的用户运行 ant,还是通过 Jenkins 向它传递一些属性?

更新:ps -ef | 的输出grep "jenkins" 是:

jenkins   1647     1  0 12:28 ?        00:00:00 /usr/bin/daemon --name=jenkins --inherit --env=JENKINS_HOME=/var/lib/jenkins --output=/var/log/jenkins/jenkins.log --pidfile=/var/run/jenkins/jenkins.pid -- /usr/bin/java -jar /usr/share/jenkins/jenkins.war --webroot=/var/run/jenkins/war --httpPort=8080 --ajp13Port=-1
jenkins   1660  1647  7 12:28 ?        00:00:13 /usr/bin/java -jar /usr/share/jenkins/jenkins.war --webroot=/var/run/jenkins/war --httpPort=8080 --ajp13Port=-1
mattcarp  2393  2229  0 12:31 pts/0    00:00:00 grep --color=auto jenkins

在删除失败的目录上运行ls -l(从Jenkins运行时)显示:

drwxr-xr-x 2 jenkins root 4096 2011-10-03 14:49 build

非常感谢任何建议!

最佳答案

事实证明,所需要的只是将parent 目录的所有者设置为jenkins

哇 - 这么简单的答案要走很长的路!

关于ubuntu - Jenkins 错误 : 'Unable to Delete File' When Invoking Ant,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7625677/

相关文章:

ant - 如何仅在 Ant 中列出一级子目录?

java - 当我到达某个代码点时,有没有办法通知 Ant ?

android - Emma 不生成 coverage.ec

facebook - 对于处于开发模式的测试用户,我是否需要 Facebook 批准 'publish_stream '?

eclipse - 在 Ubuntu 12.04 中卸载和重新安装 Eclipse

ubuntu - 在存储在主机上的 LXC 容器内运行程序

php - 用户权限树 : How to get there?

iphone - PhoneGap 地理定位在 iPhone 上请求两次许可

mysql - 无法更新表格,但选择作品

json - 无法保存文件 : Permission denied Ubuntu