I have to update a database one way or another based on project success or
failure. So I'm messing around with the <exec> task with errorproperty
attribute. I'm trying to make it so that failure will test one way vs. success
testing another. The best thing I can come up with is the following:
<----------------------------------------------------------------->
Build File 1:
<project name="test" default="test">
<taskdef resource="net/sf/antcontrib/antlib.xml"/>
<target name="test">
<exec dir="." executable="cmd.exe" errorproperty="returncode">
<arg line="/c ant -f test2.xml -Dgood=${good}"/>
</exec>
<echo message="returncode is: ${returncode}"/>
<if>
<equals arg1="${returncode}" arg2="" />
<then>
<echo message="It succeeded"/>
</then>
<else>
<echo message="It failed"/>
</else>
</if>
</target>
</project>
Build File 2:
<project name="test2" default="test">
<taskdef resource="net/sf/antcontrib/antlib.xml"/>
<target name="test">
<if>
<equals arg1="${good}" arg2="true" />
<then>
<echo message="Good!"/>
</then>
<else>
<echo message="Bad"/>
<fail/>
</else>
</if>
</target>
</project>
</----------------------------------------------------------------->
So if I pass >ant -f test.xml -Dgood="true"
I end up in the success code. Or if I pass >ant -f test.xml
-Dgood="anythingElse"
I end up in the failure code.
Does anyone have a more graceful way to do this?
Thanks,
Eric