PuppetLabs在PuppetForge上有一个用于部署Tomcat及其配置的模块。 https://forge.puppet.com/puppetlabs/tomcat
Tomcat具有记录功能,可防止您在META-INF / context.xml文件中设置上下文路径
Tomcat使用.war文件的文件名来确定路径,而不是从context.xml中的path属性设置上下文路径。 Stackoverflow中描述了其他Tomcat选项: How can I specify "Context path" on Tomcat 8 inside META-INF/context.xml in java war file?
在我看来,将版本号放入warfile的名称是件好事,这个Tomcat功能是件坏事。
我希望PuppetLabs的Tomcat模块有一个属性,允许你设置上下文路径并解决Tomcat的肮脏问题。
有人知道怎么做吗?
答案 0 :(得分:0)
答案可以在以下位置找到: https://tickets.puppetlabs.com/browse/MODULES-1545
有一个示例显示了提供实际war文件名的位置,包括版本号,在哪里提供它而没有版本号。后一个参数确定用于war文件副本的名称,它是设置上下文根的副本。
重要 Puppetlabs Tomcat模块(版本1.6.1)有一个错误,阻止它识别更新的war文件。一个名叫Daniel Haag的人在2015年11月为这个bug提供了一个修复程序。它只适用于Daniels补丁。
为什么Daniel的补丁没有进入我不理解的当前版本。没有丹尼尔的解决方案,我无法使用它。
答案 1 :(得分:0)
如果限制使用puppetlabs-tomcat模块的版本而不应用错误修复来部署war文件。
继续使用它来配置Tomcat但避免其战争功能。做你自己的事情,以确保你在webapps目录中有正确版本的.war文件并命名以确保所需的上下文根。