You might also look at the deploy plugin. It creates a post-build step that can remotely deploy a war to multiple containers including Tomcat.
Topher On Aug 6, 2012 12:30 PM, "Jeff" <[email protected]> wrote: > > http://tomcat.apache.org/tomcat-5.5-doc/manager-howto.html#Executing_Manager_Commands_With_Ant > > In the <$TOMCAT_HOME>/lib folder there should be a JAR called > catalina-ant.jar. Make sure it is in your ANT classpath. Import the ant > tasks in your ant script: > > <taskdef name="deploy" classname="org.apache.catalina.ant.DeployTask"/> > <taskdef name="list" classname="org.apache.catalina.ant.ListTask"/> > <taskdef name="reload" classname="org.apache.catalina.ant.ReloadTask"/> > <taskdef name="resources" > classname="org.apache.catalina.ant.ResourcesTask"/> > <taskdef name="roles" classname="org.apache.catalina.ant.RolesTask"/> > <taskdef name="start" classname="org.apache.catalina.ant.StartTask"/> > <taskdef name="stop" classname="org.apache.catalina.ant.StopTask"/> > <taskdef name="undeploy" classname="org.apache.catalina.ant.UndeployTask"/> > > > Then call it: > > <target name="deploy_dev" description="Deploy the WAR to Tomcat"> > <*deploy * > path="/${app.name}" > username="${tomcat.dev.username}" > war="file:${package.name}/${war.build.dir}/${app.name}.war" > password="${tomcat.dev.pwd}" > url="${tomcat.dev.url}" > /> > </target> > > > On Mon, Aug 6, 2012 at 11:04 AM, Pedro Perez <[email protected]> wrote: > >> Thanks for your reply ... I actually am using different Tomcat >> deployments for Jenkins and my other app...my difficulty was in disabling >> the process killer from Jenkins when Jenkins is run through Tomcat (there >> are lots of instructions on how to disable the process killer when Jenkins >> is run as a java process without Tomcat). >> >> I should look into that ANT task for deploying a webapp without >> stopping/starting Tomcat...I don't know much about how to set that up >> however. >> >> Thanks! >> P >> >> >> On Monday, August 6, 2012 9:50:04 AM UTC-7, Jeff Vincent wrote: >>> >>> I'm a relative n00b to Jenkins but if I were you, I wouldn't run your >>> application on the same tomcat instance. You are making your life harder. >>> Why not create another instance for deploying/testing the app? You can >>> run multiple versions and/or instances of tomcat on different ports, run >>> one in a VM or on another system. >>> >>> Regardless, tomcat can undeploy/redeploy an application without >>> stopping. There is an ant Task for tomcat to allow deploying applications >>> via the management API that do not require stopping or starting tomcat or >>> affecting jenkins....unless it blows up or consumes memory, in which case >>> it will mess up all applications running in that instance and kill your >>> build/test processes anyway...so again, I wouldn't do it that way. >>> >>> Also if you were using Maven to build, there is a plugin that allows you >>> to start a new tomcat instance for testing then shuts it down afterward. >>> I've not used it though. There could be something similar for ANT. >>> >>> On Mon, Aug 6, 2012 at 10:20 AM, Pedro Perez <[email protected]> wrote: >>> >>>> Hello, >>>> >>>> I'm new to Jenkins and so far I love it...but I have an issue >>>> integrating with Tomcat. I have Jenkins stopping and starting Tomcat via >>>> ant script. However I've found that Jenkins process-killer shuts down >>>> tomcat for me after it's finished. I've read https://wiki.jenkins-ci.** >>>> org/display/JENKINS/**ProcessTreeKiller<https://wiki.jenkins-ci.org/display/JENKINS/ProcessTreeKiller> >>>> and >>>> have tried to disable it, however I run Jenkins through Tomcat, and I'm not >>>> sure how to disable the process killer when Jenkins is run as a simple web >>>> app on Tomcat 7. I tried to simply override the BUILD_ID variable like >>>> this: >>>> >>>> $BUILD_ID=dontKillMe >>>> >>>> to no avail. Even if that worked though, I'm wondering if there is a >>>> "cleaner" solution to starting and stopping Tomcat with Jenkins. When using >>>> ANT to start/stop it usually works, but not 100% every time. I've read >>>> about a tomcat plugin for Jenkins, but I think it doesn't stop/start Tomcat >>>> in the order I need it...basically my build script does a code checkout, >>>> compile, stop tomcat, replace war, start tomcat, run tests against newly >>>> deployed web app. >>>> >>>> Does anybody know the "correct" way to interact with Tomcat and Jenkins? >>>> >>>> Thanks >>>> Pedro >>>> >>> >>> >>> >>> -- >>> Jeff Vincent >>> [email protected] >>> See my LinkedIn profile at: >>> http://www.linkedin.com/in/**rjeffreyvincent<http://www.linkedin.com/in/rjeffreyvincent> >>> I ♥ DropBox <http://db.tt/9O6LfBX> !! >>> >>> > > > -- > Jeff Vincent > [email protected] > See my LinkedIn profile at: > http://www.linkedin.com/in/rjeffreyvincent > I ♥ DropBox <http://db.tt/9O6LfBX> !! > >
