From: SourceForge.net <no...@so...> - 2006-12-05 15:27:45
|
Read and respond to this message at: https://sourceforge.net/forum/message.php?msg_id=4044625 By: didier69 Hello, I try to use a <if> task with the output of a <sshexec> command. Here is my task: <target name="verify" description="test if the war file exists on the serveur"> <sshexec host="${host}" username="${username}" password="${password}" trust="yes" outputproperty="onNausicaa" command="${script}/exist_war.sh ${remote}/webapps/${tomcat.manager.war}" /> <echo message="onNausicaa=${onNausicaa}" /> <if> <equals arg1="${onNausicaa}" arg2="${ok}" /> <then> <echo message="${tomcat.manager.war} on server" /> </then> <else> <echo message="${tomcat.manager.war} not on server" > </else> </if> </target> My <sshexec> task return "yes" or "no", I tested it. in ${ok} I have "yes". And apparently the <if> task is always launching the <else> command. Did I forget something ? Regards. ______________________________________________________________________ You are receiving this email because you elected to monitor this forum. To stop monitoring this forum, login to SourceForge.net and visit: https://sourceforge.net/forum/unmonitor.php?forum_id=113701 |
From: SourceForge.net <no...@so...> - 2006-12-05 16:14:26
|
Read and respond to this message at: https://sourceforge.net/forum/message.php?msg_id=4044723 By: carnold I'd be concerned that maybe there is whitespace around the response that may cause the string comparison to not give the result that you expect. To test how about adding a: <condition property="on-server" value="true"> <equals arg1="${onNausicaa}" arg2="${ok}" /> </condition> <fail unless="on-server">"${tomcat.manager.war} not on server</fail> If you get past the fail task and still go into the else clause, then something is wrong. Otherwise, you need to check how you are formulating the check. Alternatively, you could change the equals to <equals arg1="${ok}" arg2="${ok}" /> and if that still goes into the else clause then we have a problem. ______________________________________________________________________ You are receiving this email because you elected to monitor this forum. To stop monitoring this forum, login to SourceForge.net and visit: https://sourceforge.net/forum/unmonitor.php?forum_id=113701 |
From: SourceForge.net <no...@so...> - 2006-12-06 09:59:21
|
Read and respond to this message at: https://sourceforge.net/forum/message.php?msg_id=4046005 By: didier69 The solution of sherpaguy is working for me, but I would like to test your solution too. When I add your lines to my ant script I got an error: C:\Documents and Settings\dbretin\Mes documents\Projets Eclipse\myproject\build.xml:183: Class net.sf.antcontrib.logic.IfTask doesn't support the nested "condition" element. I use ant-1.6.5 and ant-contrib-1.0b3 on an XP box with java 1.5.0_06. Do you see why I have this error ? Regards. ______________________________________________________________________ You are receiving this email because you elected to monitor this forum. To stop monitoring this forum, login to SourceForge.net and visit: https://sourceforge.net/forum/unmonitor.php?forum_id=113701 |
From: SourceForge.net <no...@so...> - 2006-12-06 17:23:59
|
Read and respond to this message at: https://sourceforge.net/forum/message.php?msg_id=4047116 By: carnold I was suggesting putting the condition and fail tasks before the if tasks, not inside of it. Looks like you have confirmed that it was a whitespace issue, so the if task was doing what it should be. ______________________________________________________________________ You are receiving this email because you elected to monitor this forum. To stop monitoring this forum, login to SourceForge.net and visit: https://sourceforge.net/forum/unmonitor.php?forum_id=113701 |
From: SourceForge.net <no...@so...> - 2006-12-05 16:16:54
|
Read and respond to this message at: https://sourceforge.net/forum/message.php?msg_id=4044729 By: sherpaguy You didn't say what the value in ${onNausicaa} is, but I'm assuming that it's a "yes" or "no" value. If so, then you'll need to check for other characters (spaces, tabs, etc) or mixed case. The <equals> condition has several optional parameters that might be useful: http://ant.apache.org/manual/CoreTasks/conditions.html If ${onNausicaa} contains more than just a simple yes/no, then perhaps you can use the <contains> instead. I use the <if> with sshexec output properties in my scripts, so it should work. -Michael ______________________________________________________________________ You are receiving this email because you elected to monitor this forum. To stop monitoring this forum, login to SourceForge.net and visit: https://sourceforge.net/forum/unmonitor.php?forum_id=113701 |
From: SourceForge.net <no...@so...> - 2006-12-06 09:54:33
|
Read and respond to this message at: https://sourceforge.net/forum/message.php?msg_id=4046000 By: didier69 Thanks, I use a trim="yes" in the <if> task and it works ! ______________________________________________________________________ You are receiving this email because you elected to monitor this forum. To stop monitoring this forum, login to SourceForge.net and visit: https://sourceforge.net/forum/unmonitor.php?forum_id=113701 |