如何正确修复Hudson和ant的部署权限问题?

时间:2009-11-17 07:22:21

标签: java ant permissions hudson deployment

由于权限问题(重新格式化),我无法将Web启动部署到Web服务器:

/home/hudson/.../build/build-web-start.xml:20: Failed to copy
/home/hudson/.../dist/app.jnlp to 
/var/development/.../webstart/app.jnlp due to java.io.FileNotFoundException
/var/development/.../webstart/app.jnlp (Permission denied) 
and I couldn't delete the corrupt /var/development/.../webstart/app.jnlp

...所以问题显而易见。我需要做以下其中一项:

  • 找到构建用户,以便我可以为其授予权限
  • 配置hudson以在特定用户下构建应用程序(可能将部署与构建的其余部分分开)
  • 配置ant构建脚本以在特定用户下执行部署。

现状:

  • 我在码头下运行Hudson
  • 我已授予jetty用户组权限以便能够写入部署文件夹
  • HUDSON_HOME设置为/ home / hudson

1 个答案:

答案 0 :(得分:2)

etc/init.d/jetty启动脚本包含该行(默认情况下)

JETTY_USER=jetty

所以......

chown jetty /var/development/.../webstart -R

诀窍。

注意:特别是,这突出了设置jetty的组权限以便能够写入目录是不够的:jetty在jetty下运行它的上下文: nogroup ;例如它没有小组。