You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@ant.apache.org by "Anderson, Rob (Global Trade)" <Ro...@nike.com> on 2004/03/04 18:32:18 UTC

RE: Sshexec fail on starting a service (websphere)

Perhaps the problem is not with the script, but with the sshd running on the remote machine. Are you able to get an exit status 0 from the following command?

ssh user@host "/etc/init.d/websphere start"

Does this command exit properly once the server is started?

I am reluctant to approve of edits to the sshexec task that are specific to a single command that users might run on the remote machine. I think the commiters will agree. 

-Rob Anderson

> -----Original Message-----
> From: Nick Neuberger [mailto:Nick.Neuberger@sncc.com]
> Sent: Thursday, March 04, 2004 7:26 AM
> To: 'Ant Users List'
> Subject: RE: Sshexec fail on starting a service (websphere)
> 
> 
> "The remote script should background the process and exit"
> 
> I'm not too good with editing bash (websphered) scripts, but 
> it sure seems
> like the script is sending a success message.  This is a cookie cutter
> script from ibm/websphere.  Here is a snippet of the script.
> 
>     start)
>     echo -n "Starting websphered: "
>     # /opt/WebSphere/AppServer/bin/startServer.sh $args > /dev/null
>     $START_SCRIPT $args >/dev/null
>     RETVAL=$?
>     if [ $RETVAL = 0 ]; then
>          touch /var/lock/subsys/websphered
>          echo_success
>          else
>          echo_failure
>          fi
>     echo
>     ;;
> 
> These scripts work perfectly fine outside of ant / sshexec?  
> Shouldn't there
> be a change inside sshexec/jsch.  The script properly exits 
> when called
> directly just not from ant/sshexec.  The proper response is 
> "echo_success".
> 
> Do you see my delimma?   Thats why I'm considering a change 
> to SshExec.java.
> Wait for the timeout but allow the "ant" developer to easily 
> determine if
> its a fail / success as well.
> 
> Thanks for the response!!!
> 
> Nick Neuberger
> 
> 
> -----Original Message-----
> From: Anderson, Rob (Global Trade) [mailto:Rob.Anderson@nike.com]
> Sent: Wednesday, March 03, 2004 5:04 PM
> To: Ant Users List
> Subject: RE: Sshexec fail on starting a service (websphere)
> 
> 
> serverStart.sh starts the Admin server, correct? I would 
> suggest leaving the
> admin server running unless it is absolutely necessary to 
> shut it down. You
> could probably just stop/start your Application Server instance(s), or
> perhaps even just your Enterprise Appliations, with a wscp.sh 
> one-liner.
> 
> If the script you are running never exits becuase it calls a 
> foreground
> process that continues to run, the expected behavior of ssh, 
> sshexec, and
> jsch is a timeout. The remote script should background the 
> process and exit,
> returning an exit status to sshexec. This exit status is used 
> to determine
> success or failure. Ssh, sshexec, and jsch are not supposed 
> to "notice" that
> something has been started successfully, that should be up to 
> your script to
> return the proper exit status.
> 
> -Rob Anderson
> 
> > -----Original Message-----
> > From: Nick Neuberger [mailto:Nick.Neuberger@sncc.com]
> > Sent: Wednesday, March 03, 2004 2:40 PM
> > To: 'Ant Users List'
> > Subject: RE: Sshexec fail on starting a service (websphere)
> > 
> > 
> > I maybe figured out why its still hanging.  When the 
> > websphered script is
> > called it invokes serverStart.sh then it invokes actual java 
> > process.  This
> > process never dies, because the server is now running.
> > 
> > but for some reason sshexec /or jsch is not noticing that the 
> > service is
> > started...aka  [ OK ] from the websphered script.
> > 
> > Maybe its an issue with sshexec or probably jsch.
> > http://cvs.apache.org/viewcvs.cgi/ant/src/main/org/apache/tool
> > s/ant/taskdefs
> > /optional/ssh/SSHExec.java?rev=1.14&view=auto
> > The code SSHExec waits until it gets an EOF from the channel.
> >  while (!channel.isEOF()) {
> > 
> > It sure would be nice to based on the output what is 
> recieved from the
> > channel, to determine from their if it failed or not.
> > 
> > Ie....  >   [sshexec] Shutting down websphered: 
> > >   [sshexec] [  OK  ]
> > 
> > This <websphered> script is called on boot of the server.  It 
> > works fine
> > outside of ant / wsad
> > 
> > Would this be a good suggestion for the SSHExec task?  I can 
> > write the code,
> > if necessary.  It doesn't look to complicated.
> > 
> > Thoughts....from ANT developers.
> > 
> > Thanks again.
> > 
> > Nick Neuberger
> > 
> > 
> > -----Original Message-----
> > From: Anderson, Rob (Global Trade) [mailto:Rob.Anderson@nike.com]
> > Sent: Wednesday, March 03, 2004 3:22 PM
> > To: Ant Users List
> > Subject: RE: Sshexec fail on starting a service (websphere)
> > 
> > 
> > Depending on what is running in your WebSphere environment, 
> > it may take a
> > really long time to start. Try timing how long it takes to 
> > start up and then
> > adjust your timeout attribute accordingly. Time it from remote...
> > 
> > time ssh user@host "/etc/init.d/websphere start"
> > 
> > Another option is to background the start command, but then 
> > ant will exit
> > successfully whether or not websphere starts successfully.
> > 
> > -Rob Anderson
> > 
> > > -----Original Message-----
> > > From: Nick Neuberger [mailto:Nick.Neuberger@sncc.com]
> > > Sent: Wednesday, March 03, 2004 10:01 AM
> > > To: user@ant.apache.org
> > > Subject: Sshexec fail on starting a service (websphere)
> > > 
> > > 
> > > I'm trying to call start a service and the service actually 
> > > starts but ant
> > > always fails on timeout from the task.  Other services are 
> > > working fine such
> > > as ibmhttpd service.
> > > 
> > > I'm running ANT Build script on win2k and server is redhat linux.
> > > 
> > > Any thoughts?  I think it might have something to do with the 
> > > websphered
> > > script in /etc/rc.d/init.d/
> > > 
> > > Snippet of output.
> > > 
> > > stopServiceWebSphered:
> > >      [echo] ****** Stopping WebSphereD Service... ******
> > >   [sshexec] Connecting to machine1:22
> > >   [sshexec] Shutting down websphered: 
> > >   [sshexec] [  OK  ]
> > > 
> > > startServiceWebSphered:
> > >      [echo] ****** Starting WebSphereD Service... ******
> > >   [sshexec] Connecting to machine1:22
> > >   [sshexec] Starting websphered: 
> > >   [sshexec] [  OK  ]
> > > 
> > > BUILD FAILED
> > > C:\workspace\v5.1\imsii\sncc-ims-build\deploy.xml:50: 
> > Following error
> > > occured while executing this line
> > > C:\workspace\v5.1\imsii\sncc-ims-build\deploy.xml:79: 
> Timeout period
> > > exceeded, connection dropped.
> > > 
> > > Total time: 6 minutes 35 seconds
> > > 
> > > Snipped of ANT script.
> > > 
> > > 	<target name="stopServiceHttpServer">
> > > 		<echo message="****** Stopping Service Http Server...
> > > ******"/>		
> > > 		<sshexec trust="true" timeout="15000"
> > > host="${targetMachine}" username="${user.id}" 
> password="${password}"
> > > command="sudo /sbin/service ibmhttpd stop"/>
> > > 	</target>
> > > 
> > > 	<target name="startServiceHttpServer">
> > > 		<echo message="****** Starting Service Http Server...
> > > ******"/>
> > > 		<sshexec trust="true" timeout="15000"
> > > host="${targetMachine}" username="${user.id}" 
> password="${password}"
> > > command="sudo /sbin/service ibmhttpd start"/>
> > > 	</target>
> > > 
> > > 	<target name="stopServiceWebSphered">
> > > 		<echo message="****** Stopping WebSphereD Service...
> > > ******"/>
> > > 		<sshexec trust="true" timeout="240000"
> > > host="${targetMachine}" username="${user.id}" 
> password="${password}"
> > > command="service websphered stop"/>
> > > 	</target>
> > > 
> > > 	<target name="startServiceWebSphered">
> > > 		<echo message="****** Starting WebSphereD Service...
> > > ******"/>
> > > 		<sshexec trust="true" timeout="320000"
> > > host="${targetMachine}" username="${user.id}" 
> password="${password}"
> > > command="service websphered start"/>
> > > 	</target>
> > > 
> > > 
> > > Thanks ahead..
> > > 
> > > Nick
> > > 
> > > 
> > > - - - - - - 
> > > This e-mail message is intended only for the use of the 
> > > individual or entity
> > > identified in the alias address of this message and may 
> > > contain confidential
> > > and privileged information. Any unauthorized review, use, 
> > > disclosure or
> > > distribution of this e-mail message is strictly prohibited. 
> > > If you have
> > > received this e-mail message in error, please notify the 
> > > sender immediately
> > > by reply e-mail and delete this message from your system. 
> Thank you.
> > > 
> > > 
> > 
> ---------------------------------------------------------------------
> > > To unsubscribe, e-mail: user-unsubscribe@ant.apache.org
> > > For additional commands, e-mail: user-help@ant.apache.org
> > > 
> > > 
> > > 
> > 
> > 
> > 
> ---------------------------------------------------------------------
> > To unsubscribe, e-mail: user-unsubscribe@ant.apache.org
> > For additional commands, e-mail: user-help@ant.apache.org
> > 
> > 
> > - - - - - - 
> > This e-mail message is intended only for the use of the 
> > individual or entity
> > identified in the alias address of this message and may 
> > contain confidential
> > and privileged information. Any unauthorized review, use, 
> > disclosure or
> > distribution of this e-mail message is strictly prohibited. 
> > If you have
> > received this e-mail message in error, please notify the 
> > sender immediately
> > by reply e-mail and delete this message from your system. Thank you.
> > 
> > 
> ---------------------------------------------------------------------
> > To unsubscribe, e-mail: user-unsubscribe@ant.apache.org
> > For additional commands, e-mail: user-help@ant.apache.org
> > 
> > 
> > 
> 
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: user-unsubscribe@ant.apache.org
> For additional commands, e-mail: user-help@ant.apache.org
> 
> 
> - - - - - - 
> This e-mail message is intended only for the use of the 
> individual or entity
> identified in the alias address of this message and may 
> contain confidential
> and privileged information. Any unauthorized review, use, 
> disclosure or
> distribution of this e-mail message is strictly prohibited. 
> If you have
> received this e-mail message in error, please notify the 
> sender immediately
> by reply e-mail and delete this message from your system. Thank you.
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: user-unsubscribe@ant.apache.org
> For additional commands, e-mail: user-help@ant.apache.org
> 
> 
> 


---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@ant.apache.org
For additional commands, e-mail: dev-help@ant.apache.org