Jenkins WAR部署

时间:2015-04-23 16:58:46

标签: shell maven tomcat deployment jenkins

我正在尝试使用shell命令将Jenkins部署到tomcat6.0.39服务器,但它无法部署并抛出授权错误:

  

401未经授权

     

您无权查看此页面。如果您尚未更改任何配置文件,请检查该文件   安装中的conf / tomcat-users.xml。该文件必须包含   允许您使用此Web应用程序的凭据。

以下是我的shell命令:

curl -T $WORKSPACE/target/myapp-1.0-RC1.war 'http://serverIP:8080/manager/deploy?update=true&path=/myapp'-u username:password

但是上面的命令可以正常使用我的tomcat 6.0.24。我确实将tomcat用户角色定义为manager-gui和manager-script以及manager-jmx,根据Tomcat 6.0.30以后的tomcat文档,使用管理器应用程序所需的角色从单个管理器角色更改为 以下四个角色。

  • 管理器的图形用户界面
  • 管理器脚本
  • manager-jmx
  • 管理器状态

以下是我的tomcat-users.xml内容:

<tomcat-users>
 <user username="managergui" password="tomcatManager" roles="manager-gui"/>
  <user username="manager" password="tomcatManager" roles="manager-script"/>

我在tomcat-users.xml或我的shell命令中做错了,这导致授权异常。     

1 个答案:

答案 0 :(得分:2)

不要使用curl命令“复制”战争。使用Jenkins Deploy plugin部署应用程序,它将简化您的流程。