Home > Archive > EAserver > June 2005 > Turn services on/off using JagAnt/JagTool









You are viewing an archived Text-only version of the thread. To view this thread in it's original format and/or if you want to reply to this thread please [click here]

 

Author Turn services on/off using JagAnt/JagTool
Joe Magid

2005-06-01, 11:24 am

I'm in the process of putting together scripts to automate the deployment of
updated PB components to first a build server and then QA and finally a
production cluster using JagAnt and OrcaScript. One of the things that needs
to happen is to set Jaguar so that on restart it does not run services that
normally run on start up.

So, I'm wondering if anyone has done something along the following lines in
batch mode using JagAnt:

1. Obtain the value of the com.sybase.jaguar.server.services property and
save it off someplace
2. Set the property to "", Restart Jaguar in Admin Mode and exit the script
3. Do some other stuff (like deploy components via OrcaScript)
4. Retrieve the original value of com.sybase.jaguar.server.services
property, reset the property back to this value, restart Jaguar and set it
to Ready Mode.

Thanks - Joe


EdHolderman

2005-06-07, 1:24 pm

Joe, I've done this as part of a R&D effort but haven't
used it much, so forgive me if it isn't perfect. In your
ant script declare these tasks:
<taskdef name="jag_connect"
classname="com.sybase.jaguar.management.jagtool.ant.ConnectTask"/>
<taskdef name="jag_restart"
classname="com.sybase.jaguar.management.jagtool.ant.RestartTask"/>
<taskdef name="jag_set_admin"
classname="com.sybase.jaguar.management.jagtool.ant.SetAdminTask"/>
<taskdef name="jag_set_props"
classname="com.sybase.jaguar.management.jagtool.ant.SetPropsTask"/>
<taskdef name="jag_set_ready"
classname="com.sybase.jaguar.management.jagtool.ant.SetReadyTask"/>
<taskdef name="jag_shutdown"
classname="com.sybase.jaguar.management.jagtool.ant.ShutdownTask"/>
<taskdef name="jag_sync"
classname="com.sybase.jaguar.management.jagtool.ant.SyncTask"/>

Then you'll want some tasks like this:
<target name="connect" description="Connects to EAServer">
<jag_connect host="${jaguar.host}" port="${jaguar.port}"
user="${jaguar.user}" password="${jaguar.password}"/>
</target>
<target name="set-server-admin-mode" description="Put server
in admin mode for deployment" depends="connect">
<jag_set_admin reason="Deployment in progress"/>
</target>
<target name="turn-off-service" description="Sets service to
not run when server restarts - used for deployments"
depends="connect">
<jag_set_props entity="Server:Jaguar">
<property name="com.sybase.jaguar.server.services"
value=""/>
</jag_set_props>
</target>
<target name="turn-on-service" description="Sets service to
run when server restarts" depends="connect">
<jag_set_props entity="Server:Jaguar">
<property name="com.sybase.jaguar.server.services"
value="${service.package.name}/${service.component.name}"/>
</jag_set_props>
</target>
<target name="restart-server" description="Restarts the
server and waits for reconnect" depends="connect">
<jag_restart/>
<waitfor maxwait="300" maxwaitunit="second"
timeoutproperty="server.missing">
<and>
<socket port="${jaguar.port}" server="${jaguar.host}"/>
</and>
</waitfor>
<fail if="server.missing">Unable to regain connection to
server after restarting.</fail>
</target>
<target name="restart-server-in-admin-mode"
description="Restart the server in admin mode for
deployment"
depends="turn-off-service,set-server-admin-mode,restart-server">
<echo message="Restarted server in admin mode for
deployment"/>
</target>
<target name="set-server-ready-mode" description="Put server
in ready mode after deployment"
depends="connect,turn-on-service">
<jag_set_ready/>
<echo message="Server set to ready mode after deployment"/>
</target>
<target name="your-stuff-here" description="Deploy code"
depends="turn-off-service,restart-server-in-admin-mode,do-your-deployment
,turn-on-service,set-server-ready-mode,restart-server">
<jag_set_ready/>
<echo message="Server set to ready mode after deployment"/>
</target>


Hope that helps, Ed
Joe Magid

2005-06-15, 9:25 am

looks like a plan - thanks much.

<EdHolderman> wrote in message news:42a5d45b.109d.1681692777@sybase.com...
> Joe, I've done this as part of a R&D effort but haven't
> used it much, so forgive me if it isn't perfect. In your
> ant script declare these tasks:
> <taskdef name="jag_connect"
> classname="com.sybase.jaguar.management.jagtool.ant.ConnectTask"/>
> <taskdef name="jag_restart"
> classname="com.sybase.jaguar.management.jagtool.ant.RestartTask"/>
> <taskdef name="jag_set_admin"
> classname="com.sybase.jaguar.management.jagtool.ant.SetAdminTask"/>
> <taskdef name="jag_set_props"
> classname="com.sybase.jaguar.management.jagtool.ant.SetPropsTask"/>
> <taskdef name="jag_set_ready"
> classname="com.sybase.jaguar.management.jagtool.ant.SetReadyTask"/>
> <taskdef name="jag_shutdown"
> classname="com.sybase.jaguar.management.jagtool.ant.ShutdownTask"/>
> <taskdef name="jag_sync"
> classname="com.sybase.jaguar.management.jagtool.ant.SyncTask"/>
>
> Then you'll want some tasks like this:
> <target name="connect" description="Connects to EAServer">
> <jag_connect host="${jaguar.host}" port="${jaguar.port}"
> user="${jaguar.user}" password="${jaguar.password}"/>
> </target>
> <target name="set-server-admin-mode" description="Put server
> in admin mode for deployment" depends="connect">
> <jag_set_admin reason="Deployment in progress"/>
> </target>
> <target name="turn-off-service" description="Sets service to
> not run when server restarts - used for deployments"
> depends="connect">
> <jag_set_props entity="Server:Jaguar">
> <property name="com.sybase.jaguar.server.services"
> value=""/>
> </jag_set_props>
> </target>
> <target name="turn-on-service" description="Sets service to
> run when server restarts" depends="connect">
> <jag_set_props entity="Server:Jaguar">
> <property name="com.sybase.jaguar.server.services"
> value="${service.package.name}/${service.component.name}"/>
> </jag_set_props>
> </target>
> <target name="restart-server" description="Restarts the
> server and waits for reconnect" depends="connect">
> <jag_restart/>
> <waitfor maxwait="300" maxwaitunit="second"
> timeoutproperty="server.missing">
> <and>
> <socket port="${jaguar.port}" server="${jaguar.host}"/>
> </and>
> </waitfor>
> <fail if="server.missing">Unable to regain connection to
> server after restarting.</fail>
> </target>
> <target name="restart-server-in-admin-mode"
> description="Restart the server in admin mode for
> deployment"
> depends="turn-off-service,set-server-admin-mode,restart-server">
> <echo message="Restarted server in admin mode for
> deployment"/>
> </target>
> <target name="set-server-ready-mode" description="Put server
> in ready mode after deployment"
> depends="connect,turn-on-service">
> <jag_set_ready/>
> <echo message="Server set to ready mode after deployment"/>
> </target>
> <target name="your-stuff-here" description="Deploy code"
> depends="turn-off-service,restart-server-in-admin-mode,do-your-deployment
> ,turn-on-service,set-server-ready-mode,restart-server">
> <jag_set_ready/>
> <echo message="Server set to ready mode after deployment"/>
> </target>
>
>
> Hope that helps, Ed



Sponsored Links





Also available: Server administration forum archive | Web Design forum archive | Software forum archive | Hardware reviews archive | Programming forum archive

Copyright 2008 droptable.com