<project name="test" default="warning">
    <property name="deploy-dir" value="deploy/target/${ant.project.name}" />

    <target name="warning">
        <echo message="Please run top level build." />
    </target>
    
    <target name="deploy">
        <mkdir dir="${deploy-dir}" />
        <copy todir="${deploy-dir}">
            <fileset dir="lib/felix/1.8.1">
                <include name="**" />
            </fileset>
        </copy>
        <copy todir="${deploy-dir}/bundle">
            <fileset dir="deploy/test">
                <include name="*.jar" />
            </fileset>
            <fileset dir="deploy/bundle">
                <include name="*.jar" />
            </fileset>
            <fileset dir="ext">
                <include name="*.jar" />
            </fileset>
            <fileset dir="lib">
                <include name="http.jetty.jar" />
                <include name="log_all-2.0.0.jar" />
                <include name="org.apache.felix.eventadmin.jar" />
                <include name="org.apache.felix.configadmin.jar" />
				<include name="org.apache.felix.prefs.jar" />
            	<include name="useradmin_all-2.0.0.jar" />
            	<include name="org.apache.felix.deploymentadmin-0.9.0-SNAPSHOT.jar" />
            	<!-- Temporarily added until we can use xstream in some other way -->
				<include name="org.apache.ace.xstream-1.3.jar" />
            </fileset>
        </copy>
        <copy todir="${deploy-dir}/conf">
            <fileset dir="conf/${ant.project.name}">
                <include name="**/*.cfg" />
            </fileset>
        </copy>
        <move file="${deploy-dir}/conf/test-config.properties" tofile="${deploy-dir}/conf/config.properties" />

        <!-- instrument the classes for code coverage -->
        <mkdir dir="${deploy-dir}/instrumented" />
        <echo file="${deploy-dir}/run.sh">#!/bin/sh
java -jar bin/felix.jar
        </echo>
        <echo file="${deploy-dir}/debug.sh">#!/bin/sh
java -jar -Xdebug -Xrunjdwp:transport=dt_socket,address=8000,server=y,suspend=y -Dcom.sun.management.jmxremote.port=6666 -Dcom.sun.management.jmxremote.authenticate=false -Dcom.sun.management.jmxremote.ssl=false bin/felix.jar
        </echo>
    </target>
</project>