blob: 25375a03b1c37b90cc565eed611a045be0da1441 [file] [log] [blame]
<?xml version="1.0" encoding="ISO-8859-1"?>
<!--
Copyright (c) 1997, 2018 Oracle and/or its affiliates. All rights reserved.
This program and the accompanying materials are made available under the
terms of the Eclipse Public License v. 2.0, which is available at
http://www.eclipse.org/legal/epl-2.0.
This Source Code may also be made available under the following Secondary
Licenses when the conditions for such availability set forth in the
Eclipse Public License v. 2.0 are satisfied: GNU General Public License,
version 2 with the GNU Classpath Exception, which is available at
https://www.gnu.org/software/classpath/license.html.
SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0
-->
<!DOCTYPE project [
<!ENTITY commonSetup SYSTEM "./../../../../config/properties.xml">
<!ENTITY commonBuild SYSTEM "./../../../../config/common.xml">
<!ENTITY commonRun SYSTEM "./../../../../config/run.xml">
<!ENTITY reporting SYSTEM "./../../../../config/report.xml">
<!ENTITY eeCommon SYSTEM "file:./../ee.xml">
<!ENTITY testproperties SYSTEM "file:./build.properties">
]>
<project name="tx-ee-autorecovery" default="usage" basedir=".">
&commonSetup;
&commonBuild;
&commonRun;
&eeCommon;
&testproperties;
&reporting;
<target name="all" depends="build,setup,run,unsetup,dev-report"/>
<target name="test" depends="build,setup-test,run,unsetup-test"/>
<target name="setup" depends="init-common">
<antcall target="clean-results"/>
<antcall target="start-derby"/>
<ant target="start-domain"/>
<antcall target="setup-test"/>
</target>
<target name="setup-test" depends="init-common">
<antcall target="setup-database"/>
<antcall target="setup-cluster"/>
</target>
<target name="setup-database" depends="init-common">
<antcall target="setup-xa-database-common">
<param name="pool.name" value="jdbc-xa-pool"/>
<param name="resource.name" value="jdbc/xa"/>
</antcall>
<antcall target="execute-ejb-sql-common">
<param name="sql.file" value="sql/create.sql"/>
</antcall>
<echo message="db.name=${db.name}"/>
<antcall target="execute-sql-common">
<param name="sql.file" value="sql/create.sql"/>
<param name="db.url" value="jdbc:derby://localhost:${db.port}/${db.name};create=true;"/>
</antcall>
</target>
<target name="setup-cluster" depends="init-common">
<echo message="Starting cluster"/>
<java fork="on"
failonerror="true"
classpath="${env.S1AS_HOME}/lib/javaee.jar:${env.S1AS_HOME}/lib/gf-client.jar:${env.APS_HOME}/lib/reportbuilder.jar:${build.classes.dir}:${env.APS_HOME}/lib/reporter.jar"
classname="${se.client}">
<arg line="prepare"/>
<arg line="${assemble.dir}/${appname}-web.war"/>
<arg line="${assemble.dir}"/>
<sysproperty key="enableShoalLogger" value="${enableShoalLogger}"/>
</java>
</target>
<target name="unsetup-test" depends="init-common">
<antcall target="save-logs"/>
<antcall target="unsetup-cluster"/>
<antcall target="unsetup-database"/>
</target>
<target name="unsetup" depends="init-common">
<antcall target="unsetup-test"/>
<antcall target="stop-derby"/>
<ant target="stop-domain"/>
</target>
<target name="unsetup-database" depends="init-common">
<antcall target="execute-ejb-sql-common">
<param name="sql.file" value="sql/drop.sql"/>
</antcall>
<antcall target="execute-sql-common">
<param name="sql.file" value="sql/drop.sql"/>
<param name="db.url" value="jdbc:derby://localhost:${db.port}/${db.name};create=true;"/>
</antcall>
<antcall target="delete-jdbc-resource-common">
<param name="jdbc.resource.name" value="jdbc/xa"/>
</antcall>
<antcall target="delete-jdbc-connpool-common">
<param name="jdbc.conpool.name" value="jdbc-xa-pool"/>
</antcall>
</target>
<target name="run" depends="init-common">
<antcall target="run-recover"/>
</target>
<target name="run-recover" depends="init-common">
<parallel>
<antcall target="insert-data"/>
<antcall target="kill-instance"/>
</parallel>
<!-- Let GMS do the work -->
<sleep seconds="135"/>
<echo message="Verifying results"/>
<java fork="on"
failonerror="true"
classpath="${env.S1AS_HOME}/lib/javaee.jar:${env.S1AS_HOME}/lib/gf-client.jar:${env.APS_HOME}/lib/reportbuilder.jar:${build.classes.dir}"
classname="${se.client}">
<arg line="verify_xa"/>
<arg line="${appname}-web"/>
<arg line="in2"/>
<arg line="recover"/>
</java>
<exec executable="${ASADMIN}" failonerror="false">
<arg line="start-local-instance"/>
<arg line="in1"/>
</exec>
</target>
<target name="kill-instance">
<sleep seconds="20"/>
<exec executable="./kill_instance.sh" failonerror="true">
<arg line="in1"/>
</exec>
</target>
<target name="insert-data">
<echo message="Executing test on in1"/>
<java fork="on"
failonerror="true"
classpath="${env.S1AS_HOME}/lib/javaee.jar:${env.S1AS_HOME}/lib/gf-client.jar:${env.APS_HOME}/lib/reportbuilder.jar:${build.classes.dir}"
classname="${se.client}">
<arg line="insert_xa_data"/>
<arg line="${appname}-web"/>
<arg line="in1"/>
</java>
</target>
</project>