Updated ant file for CI
This commit is contained in:
parent
853f1d0fe8
commit
bf799fa74d
2 changed files with 68 additions and 36 deletions
102
build.xml
102
build.xml
|
|
@ -1,5 +1,5 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<project name="Hal" default="" >
|
||||
<project name="Hal" >
|
||||
|
||||
<!-- ________________________ PROPERTIES AND SETTINGS ________________________ -->
|
||||
|
||||
|
|
@ -8,7 +8,11 @@
|
|||
<property name="srcDir" value="${gitRoot}/src" />
|
||||
<property name="testDir" value="${gitRoot}/test" />
|
||||
<property name="libDir" value="${gitRoot}/lib" />
|
||||
<property name="buildDir" value="${gitRoot}/build" />
|
||||
<property name="buildRoot" value="${gitRoot}/build" />
|
||||
<property name="buildDir" value="${buildRoot}/production" />
|
||||
<property name="buildTestDir" value="${buildRoot}/test" />
|
||||
<property name="releaseDir" value="${buildRoot}/release" />
|
||||
<property name="reportsDir" value="${buildRoot}/reports" />
|
||||
|
||||
<!--define standard arduments for javac-->
|
||||
<presetdef name="javac">
|
||||
|
|
@ -20,20 +24,19 @@
|
|||
<!--classpath included when building-->
|
||||
<path id="classpath.build">
|
||||
<pathelement location="${libDir}/*" />
|
||||
<pathelement location="${buildDir}" />
|
||||
</path>
|
||||
|
||||
<path id="classpath.test">
|
||||
<pathelement location="${libDir}/junit-4.12.jar" />
|
||||
<pathelement location="${buildTestDir}" />
|
||||
<!--include libraries used for building-->
|
||||
<path refid="classpath.build"/>
|
||||
</path>
|
||||
|
||||
<!-- ________________________ PUBLIC TARGETS ________________________ -->
|
||||
|
||||
<target name="run-remote-sensor" depends="">
|
||||
<java fork="true" failonerror="true" classname="se.hal.plugin.tellstick.TelstickSerialCommTest">
|
||||
<classpath>
|
||||
<pathelement path="${buildDir}/hal.jar"/> <!--wildcard may not be platform independent, ok?-->
|
||||
<pathelement path="${libDir}/*"/> <!--wildcard may not be platform independent, ok?-->
|
||||
</classpath>
|
||||
</java>
|
||||
</target>
|
||||
|
||||
<target name="run-main-server" depends="">
|
||||
<!-- ________________________ EXECUTION TARGETS ________________________ -->
|
||||
|
||||
<target name="run" depends="">
|
||||
<java fork="true" failonerror="true" classname="se.hal.HalServer">
|
||||
<classpath>
|
||||
<pathelement path="${buildDir}/hal.jar"/> <!--wildcard may not be platform independent, ok?-->
|
||||
|
|
@ -42,44 +45,73 @@
|
|||
</java>
|
||||
</target>
|
||||
|
||||
<target name="clear-aggr-data-from-db" depends="">
|
||||
<exec executable="sqlite3">
|
||||
<arg line="hal.db 'DELETE FROM sensor_data_aggr'" />
|
||||
</exec>
|
||||
|
||||
<!-- update all internal sensors aggregation version to indicate for peers that they need to re-sync all data -->
|
||||
<exec executable="sqlite3">
|
||||
<arg line="hal.db 'UPDATE sensor SET aggr_version = (aggr_version+1) WHERE id = (SELECT sensor.id FROM user, sensor WHERE user.external == 0 AND sensor.user_id = user.id)'" />
|
||||
</exec>
|
||||
|
||||
</target>
|
||||
|
||||
<target name="test" depends="build-test">
|
||||
<mkdir dir="${reportsDir}" />
|
||||
<junit printsummary="yes" haltonfailure="false">
|
||||
<classpath refid="classpath.test" />
|
||||
<formatter type="xml" /> <!-- to file -->
|
||||
|
||||
<batchtest todir="${reportsDir}">
|
||||
<fileset dir="${buildTestDir}" includes="**/*Test*.class" />
|
||||
</batchtest>
|
||||
</junit>
|
||||
</target>
|
||||
|
||||
<!-- ________________________ BUILD TARGETS ________________________ -->
|
||||
|
||||
<!--clean all build paths-->
|
||||
<target name="clean">
|
||||
<delete includeemptydirs="true" failonerror="false">
|
||||
<fileset dir="${buildDir}" includes="**/*"/>
|
||||
<fileset dir="${buildRoot}" includes="**/*"/>
|
||||
</delete>
|
||||
</target>
|
||||
|
||||
|
||||
<!--build product code-->
|
||||
<target name="release" depends="build">
|
||||
<copy file="${gitRoot}/hal.conf.example" todir="${releaseDir}" />
|
||||
<copy file="${gitRoot}/hal-default.db" todir="${releaseDir}" />
|
||||
<copy file="${gitRoot}/logging.properties" todir="${releaseDir}" />
|
||||
<copy file="${gitRoot}/run.sh" todir="${releaseDir}" />
|
||||
<copydir src="${libDir}" dest="${releaseDir}/lib" excludes="junit-*.jar" />
|
||||
<copydir src="${gitRoot}/web-resource" dest="${releaseDir}/web-resource" />
|
||||
<jar destfile="${releaseDir}/hal.jar" basedir="${buildDir}" />
|
||||
</target>
|
||||
|
||||
<target name="build" depends="build-dependencies">
|
||||
<mkdir dir="${buildDir}" />
|
||||
<javac srcdir="${srcDir}" destdir="${buildDir}" debug="yes" debugLevel="lines,vars,source" fork="yes">
|
||||
<classpath refid="classpath.build" />
|
||||
<include name="**/*.java" />
|
||||
<exclude name="se/hal/tts/GoogleTTSClient.java" />
|
||||
<classpath refid="classpath.build" />
|
||||
</javac>
|
||||
<javac srcdir="${testDir}" destdir="${buildDir}" debug="yes" debugLevel="lines,vars,source" fork="yes">
|
||||
<include name="**/*.java" />
|
||||
<exclude name="se/hal/test/JarvisSyntersizerTest.java" />
|
||||
<classpath refid="classpath.build" />
|
||||
</javac>
|
||||
<jar destfile="${buildDir}/hal.jar" basedir="${buildDir}" excludes="hal.jar" />
|
||||
</target>
|
||||
|
||||
<target name="build-dependencies">
|
||||
<mkdir dir="${buildDir}" />
|
||||
<get src="http://repo.koc.se/zutil-java.git/blob/master/Zutil.jar" dest="${libDir}" verbose="true" usetimestamp="true"/>
|
||||
</target>
|
||||
|
||||
<target name="build-test" depends="build">
|
||||
<mkdir dir="${buildTestDir}" />
|
||||
<javac srcdir="${testDir}" destdir="${buildTestDir}" debug="yes" debugLevel="lines,vars,source" fork="yes">
|
||||
<classpath refid="classpath.test" />
|
||||
<include name="**/*.java" />
|
||||
<exclude name="se/hal/test/JarvisSyntersizerTest.java" />
|
||||
</javac>
|
||||
</target>
|
||||
|
||||
|
||||
<!-- ________________________ UTILITY TARGETS ________________________ -->
|
||||
|
||||
<target name="clear-aggr-data-from-db" depends="">
|
||||
<exec executable="sqlite3">
|
||||
<arg line="hal.db 'DELETE FROM sensor_data_aggr'" />
|
||||
</exec>
|
||||
|
||||
<!-- update all internal sensors aggregation version to indicate for peers that they need to re-sync all data -->
|
||||
<exec executable="sqlite3">
|
||||
<arg line="hal.db 'UPDATE sensor SET aggr_version = (aggr_version+1) WHERE id = (SELECT sensor.id FROM user, sensor WHERE user.external == 0 AND sensor.user_id = user.id)'" />
|
||||
</exec>
|
||||
</target>
|
||||
|
||||
</project>
|
||||
|
|
|
|||
2
run.sh
2
run.sh
|
|
@ -4,7 +4,7 @@
|
|||
|
||||
#ant clean
|
||||
ant build
|
||||
screen -S hal -L -d -m ant run-main-server
|
||||
screen -S hal -L -d -m ant run
|
||||
|
||||
echo "-----------------"
|
||||
screen -list
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue