hs.hsadmin/hsarback/build.xml
2012-11-28 14:24:26 +01:00

163 lines
5.6 KiB
XML

<?xml version="1.0" encoding="UTF-8"?>
<project name="hsarweb" default="war">
<property name="build.home" value="${basedir}/build" />
<property name="lib.home" value="${basedir}/lib" />
<property name="conf.home" value="${basedir}/conf" />
<property name="src.home" value="${basedir}/src" />
<property name="test.home" value="${basedir}/test" />
<property name="dist.home" value="${basedir}/dist" />
<property file="${user.home}/.hsar.ant.properties" />
<!-- Optionen für Java-Compiler-->
<property name="compile.debug" value="true" />
<property name="compile.deprecation" value="true" />
<property name="compile.optimize" value="true" />
<path id="compile.classpath">
<fileset dir="lib">
<include name="*.jar" />
</fileset>
</path>
<path id="enhance.classpath">
<fileset dir="lib">
<include name="*.jar" />
</fileset>
<dirset dir="conf"/>
<dirset dir="${build.home}"/>
</path>
<target name="clean" description="aufräumen">
<delete dir="${build.home}" />
<delete dir="${dist.home}" />
<delete file="webapp/WEB-INF/web.xml" />
<delete file="webapp/META-INF/context.xml" />
</target>
<target name="deploy" depends="war">
<delete dir="${hsar.deploy.dir}/hsar" />
<copy file="build/hsar.war" todir="${hsar.deploy.dir}" />
<!-- <sleep minutes="2"/> -->
</target>
<target name="jar" depends="enhance">
<jar destfile="build/hsar.jar">
<fileset dir="build/cls"/>
<fileset dir="src">
<include name="**/*.properties"/>
<include name="**/*.jtpl"/>
</fileset>
<fileset dir="conf">
<include name="**/*.xml"/>
</fileset>
</jar>
</target>
<target name="war" depends="enhance">
<copy file="conf/WEB-INF/${target}-web.xml" tofile="webapp/WEB-INF/web.xml">
<filterset>
<filter token="LOGIN_HOST" value="${cas.domain.name}"/>
<filter token="LOGIN_PORT" value="${cas.https.port}"/>
<filter token="CONFIG_HOST" value="${hsar.domain.name}"/>
<filter token="CONFIG_PORT" value="${hsar.https.port}"/>
</filterset>
</copy>
<copy file="conf/META-INF/${target}-context.xml" tofile="webapp/META-INF/context.xml">
</copy>
<war destfile="build/hsar.war" basedir="webapp" needxmlfile="false">
<lib dir="lib">
<include name="**/*.jar"/>
<exclude name="**/servlet*.jar"/>
<exclude name="**/geronimo-jms*.jar"/>
<exclude name="**/geronimo-j2ee-management*.jar"/>
<exclude name="**/activemq*.jar"/>
</lib>
<classes dir="build/cls" />
<classes dir="src">
<include name="**/*.properties"/>
<include name="**/*.jtpl"/>
</classes>
<classes dir="conf">
<include name="**/*.xml"/>
</classes>
</war>
</target>
<target name="compile" description="compilieren">
<mkdir dir="${build.home}" />
<mkdir dir="${build.home}/cls" />
<javac srcdir="${src.home}" destdir="${build.home}/cls" debug="${compile.debug}" deprecation="${compile.deprecation}" optimize="${compile.optimize}" encoding="UTF8" includeantruntime="false">
<classpath refid="compile.classpath" />
</javac>
</target>
<target name="compile-test" description="tests compilieren" depends="compile">
<mkdir dir="${build.home}" />
<mkdir dir="${build.home}/test" />
<javac srcdir="${test.home}" destdir="${build.home}/test" debug="${compile.debug}" deprecation="${compile.deprecation}" optimize="${compile.optimize}" encoding="UTF8" includeantruntime="false">
<classpath refid="compile.classpath" />
<classpath>
<pathelement path="${compile.classpath}"/>
<pathelement location="${build.home}/cls"/>
<pathelement path="/usr/share/java/junit4.jar"/>
</classpath>
</javac>
</target>
<target name="enhance" description="openjpa enhancer" depends="compile">
<taskdef name="openjpac" classname="org.apache.openjpa.ant.PCEnhancerTask">
<classpath refid="enhance.classpath"/>
</taskdef>
<taskdef name="mappingtool" classname="org.apache.openjpa.jdbc.ant.MappingToolTask">
<classpath refid="enhance.classpath"/>
</taskdef>
<openjpac>
<classpath refid="enhance.classpath"/>
</openjpac>
<echo message="Enhancing complete."/>
</target>
<target name="init-db" description="init empty database">
<sql
classpath="/usr/share/java/postgresql-jdbc3.jar"
driver="org.postgresql.Driver"
url="jdbc:postgresql://${database.host}:5432/${database.name}"
userid="${database.user}" password="${database.password}"
src="database/schema.sql" />
<sql
classpath="/usr/share/java/postgresql-jdbc3.jar"
driver="org.postgresql.Driver"
url="jdbc:postgresql://${database.host}:5432/${database.name}"
userid="${database.user}" password="${database.password}"
src="database/data.sql" />
</target>
<target name="drop-db" description="make empty database">
<sql
classpath="/usr/share/java/postgresql-jdbc3.jar"
driver="org.postgresql.Driver"
url="jdbc:postgresql://${database.host}:5432/${database.name}"
userid="${database.user}" password="${database.password}"
src="database/dropschema.sql" />
</target>
<target name="remote-test" description="inspection of xmlrpc-api" depends="compile-test">
<mkdir dir="${build.home}/junit" />
<junit printsummary="yes" fork="yes">
<classpath>
<fileset dir="lib">
<include name="*.jar" />
</fileset>
<pathelement location="${build.home}/cls"/>
<pathelement location="${build.home}/test"/>
<pathelement path="/usr/share/java/junit4.jar"/>
</classpath>
<formatter type="xml"/>
<test name="de.hsadmin.remote.ContinuousIntegrationTest" todir="${build.home}/junit" />
</junit>
</target>
</project>