hudson发布到tomcat 7出错

hudson发布构建工程到tomcat 7错误,错误日志如下:

 

ERROR: Publisher hudson.plugins.deploy.DeployPublisher aborted due to exception
org.codehaus.cargo.container.ContainerException: Failed to redeploy [/usr/test/target/test.war]
	at org.codehaus.cargo.container.tomcat.internal.AbstractTomcatManagerDeployer.redeploy(AbstractTomcatManagerDeployer.java:195)at hudson.plugins.deploy.CargoContainerAdapter.deploy(CargoContainerAdapter.java:64)at hudson.plugins.deploy.CargoContainerAdapter$1.invoke(CargoContainerAdapter.java:90)at hudson.plugins.deploy.CargoContainerAdapter$1.invoke(CargoContainerAdapter.java:77)at hudson.FilePath.act(FilePath.java:904)at hudson.FilePath.act(FilePath.java:877)at hudson.plugins.deploy.CargoContainerAdapter.redeploy(CargoContainerAdapter.java:77)at hudson.plugins.deploy.DeployPublisher.perform(DeployPublisher.java:47)at hudson.tasks.BuildStepMonitor$3.perform(BuildStepMonitor.java:36)at hudson.model.AbstractBuild$AbstractBuildExecution.perform(AbstractBuild.java:804)at hudson.model.AbstractBuild$AbstractBuildExecution.performAllBuildSteps(AbstractBuild.java:776)at hudson.model.Build$BuildExecution.post2(Build.java:183)at hudson.model.AbstractBuild$AbstractBuildExecution.post(AbstractBuild.java:726)at hudson.model.Run.execute(Run.java:1600)at hudson.model.FreeStyleBuild.run(FreeStyleBuild.java:46)at hudson.model.ResourceController.execute(ResourceController.java:88)at hudson.model.Executor.run(Executor.java:237)Caused by: java.io.IOException: Server returned HTTP response code: 403 for URL: http://192.168.1.5:8080/manager/text/listat sun.net.www.protocol.http.HttpURLConnection.getInputStream(HttpURLConnection.java:1625)at org.codehaus.cargo.container.tomcat.internal.TomcatManager.invoke(TomcatManager.java:504)at org.codehaus.cargo.container.tomcat.internal.TomcatManager.list(TomcatManager.java:622)at org.codehaus.cargo.container.tomcat.internal.TomcatManager.getStatus(TomcatManager.java:635)at org.codehaus.cargo.container.tomcat.internal.AbstractTomcatManagerDeployer.redeploy(AbstractTomcatManagerDeployer.java:176)... 16 more
java.io.IOException: Server returned HTTP response code: 403 for URL: http://192.168.1.5:8080/manager/text/listat sun.net.www.protocol.http.HttpURLConnection.getInputStream(HttpURLConnection.java:1625)
	at org.codehaus.cargo.container.tomcat.internal.TomcatManager.invoke(TomcatManager.java:504)
	at org.codehaus.cargo.container.tomcat.internal.TomcatManager.list(TomcatManager.java:622)
	at org.codehaus.cargo.container.tomcat.internal.TomcatManager.getStatus(TomcatManager.java:635)
	at org.codehaus.cargo.container.tomcat.internal.AbstractTomcatManagerDeployer.redeploy(AbstractTomcatManagerDeployer.java:176)
	at hudson.plugins.deploy.CargoContainerAdapter.deploy(CargoContainerAdapter.java:64)
	at hudson.plugins.deploy.CargoContainerAdapter$1.invoke(CargoContainerAdapter.java:90)
	at hudson.plugins.deploy.CargoContainerAdapter$1.invoke(CargoContainerAdapter.java:77)
	at hudson.FilePath.act(FilePath.java:904)
	at hudson.FilePath.act(FilePath.java:877)
	at hudson.plugins.deploy.CargoContainerAdapter.redeploy(CargoContainerAdapter.java:77)
	at hudson.plugins.deploy.DeployPublisher.perform(DeployPublisher.java:47)
	at hudson.tasks.BuildStepMonitor$3.perform(BuildStepMonitor.java:36)
	at hudson.model.AbstractBuild$AbstractBuildExecution.perform(AbstractBuild.java:804)
	at hudson.model.AbstractBuild$AbstractBuildExecution.performAllBuildSteps(AbstractBuild.java:776)
	at hudson.model.Build$BuildExecution.post2(Build.java:183)
	at hudson.model.AbstractBuild$AbstractBuildExecution.post(AbstractBuild.java:726)
	at hudson.model.Run.execute(Run.java:1600)
	at hudson.model.FreeStyleBuild.run(FreeStyleBuild.java:46)
	at hudson.model.ResourceController.execute(ResourceController.java:88)
	at hudson.model.Executor.run(Executor.java:237)
Finished: FAILURE

 

 

这个问题是因为对于tomcat 7的user的权限定义引起的,可查看http://tomcat.apache.org/tomcat-7.0-doc/manager-howto.html#Configuring_Manager_Application_Access, 摘录如下

 

manager-gui — Access to the HTML interface. 

manager-status — Access to the "Server Status" page only. 

manager-script — Access to the tools-friendly plain text interface that is described in this document, and to the "Server Status" page. 

manager-jmx — Access to JMX proxy interface and to the "Server Status" page.

 

必须把部署用户的权限定义为“manager-script”,才可以成功部署。

你可能感兴趣的:(持续集成)