<?xml version="1.0" encoding="UTF-8"?>
<project name="build-kernel" xmlns:ivy="antlib:org.apache.ivy.ant">

	<path id="unit.test.bundles">
		<pathelement location="../org.eclipse.virgo.kernel.shutdown"/>
		<pathelement location="../org.eclipse.virgo.kernel.authentication"/>
		<pathelement location="../org.eclipse.virgo.kernel.core"/>
		<pathelement location="../org.eclipse.virgo.kernel.artifact"/>
		<pathelement location="../org.eclipse.virgo.kernel.services"/>
		<pathelement location="../org.eclipse.virgo.kernel.osgi"/>
		<pathelement location="../org.eclipse.virgo.kernel.deployer"/>
        <pathelement location="../org.eclipse.virgo.kernel.userregionfactory"/>
		<pathelement location="../org.eclipse.virgo.kernel.userregion"/>
		<pathelement location="../org.eclipse.virgo.kernel.agent.dm"/>
		<pathelement location="../org.eclipse.virgo.kernel.kerneldmfragment"/>
		<pathelement location="../org.eclipse.virgo.kernel.dmfragment"/>
		<pathelement location="../org.eclipse.virgo.kernel.deployer.dm"/>
		<pathelement location="../org.eclipse.virgo.kernel.model"/>
		<pathelement location="../org.eclipse.virgo.kernel.shell"/>
		<pathelement location="../org.eclipse.virgo.kernel.osgicommand"/>
		<pathelement location="../org.eclipse.virgo.kernel.stubs"/>
	</path>

	<path id="bundles">
		<path refid="unit.test.bundles" />
		<pathelement location="../org.eclipse.virgo.kernel"/>
		<pathelement location="../org.eclipse.virgo.kernel.test"/>
		<pathelement location="../org.eclipse.virgo.kernel.deployer.testbundle"/>
		<pathelement location="../org.eclipse.virgo.kernel.deployer.test"/>
	</path>

	<property file="${basedir}/../build.properties"/>
	<property file="${basedir}/../build.versions"/>
	<import file="${basedir}/../virgo-build/multi-bundle/default.xml"/>

    <!--P2 publishing properties-->
    <property name="publishing.dir" value="${basedir}/target/repository"/>
    <property name="distro.res" value="${basedir}/distro_resources"/>
    <property name="p2.repo.url" value="file:///${publishing.dir}"/>
    <property name="product.file" value="${basedir}/org.eclipse.virgo.kernel.product"/>
    <property name="lib.product.file" value="${basedir}/org.eclipse.virgo.kernel.lib.product"/>
    <property name="lib.kernel.product.file" value="${basedir}/org.eclipse.virgo.kernel.lib.kernel.product"/>
    <property name="repository.ext.product.file" value="${basedir}/org.eclipse.virgo.kernel.repository.ext.product"/>

	<target name="precommit" depends="clean, clean-integration, test, findbugs, package, smoke-test"
		description="Performs a CI server-like build, should be run prior to performing a Git push"/>

	<target name="package" depends="ivy.init">
		<delete dir="${package.output.dir}" quiet="true"/>
		<mkdir dir="${package.output.dir}"/>

		<ivy:resolve resolveId="copy.path" file="${basedir}/lib-ivy.xml" transitive="true"/>
		<ivy:retrieve resolveId="copy.path" pattern="${package.output.dir}/lib/[artifact]-[revision].[ext]" conf="lib" type="jar"/>

		<ivy:resolve resolveId="copy.path" file="${basedir}/kernel-ivy.xml" transitive="true"/>
		<ivy:retrieve resolveId="copy.path" pattern="${package.output.dir}/${user.region.dir}/[artifact]-[revision].[ext]" conf="lib-kernel" type="jar"/>
		
		<ivy:resolve resolveId="copy.path" file="${basedir}/kernel-ivy.xml" transitive="true"/>
		<ivy:retrieve resolveId="copy.path" pattern="${package.output.dir}/${repository.ext.dir}/[artifact]-[revision].[ext]" conf="repository-ext" type="jar"/>

		<mkdir dir="${package.output.dir}/config"/>
		<mkdir dir="${package.output.dir}/work"/>
		<mkdir dir="${package.output.dir}/pickup"/>

		<echo file="${package.output.dir}/lib/.version"
				message="virgo.kernel.version=${bundle.version}&#xa;"/>
		
		<copy todir="${package.output.dir}" failonerror="false">
			<fileset dir="${basedir}/resources"/>
		</copy>

		<copy todir="${package.output.dir}/bin" failonerror="false">
			<fileset dir="${basedir}/bin"/>
		</copy>

		<copy todir="${package.output.dir}/lib" failonerror="false">
			<fileset dir="${basedir}/lib"/>
			<filterset>
				<filter token="ASPECTJ.VERSION" value="${org.aspectj}"/>
				<filter token="OSGI.SERVICES.VERSION" value="${org.eclipse.osgi.services}"/>
				<filter token="EQUINOX.EVENT.VERSION" value="${org.eclipse.equinox.event}"/>
				<filter token="EQUINOX.CONFIGADMIN.VERSION" value="${org.eclipse.equinox.cm}"/>
				<filter token="EQUINOX.DS.VERSION" value="${org.eclipse.equinox.ds}"/>
				<filter token="EQUINOX.UTIL.VERSION" value="${org.eclipse.equinox.util}"/>
				<filter token="KERNEL.VERSION" value="${bundle.version}"/>
				<filter token="MEDIC.VERSION" value="${org.eclipse.virgo.medic}"/>
				<filter token="REPOSITORY.VERSION" value="${org.eclipse.virgo.repository}"/>
				<filter token="SLF4J.VERSION" value="${org.slf4j}"/>
				<filter token="SPRING.DM.VERSION" value="${org.springframework.osgi}"/>	
				<filter token="SPRING.VERSION" value="${org.springframework}"/>
				<filter token="UTIL.VERSION" value="${org.eclipse.virgo.util}"/>
				<filter token="OSGI.EXTENSIONS.VERSION" value="${org.eclipse.virgo.osgi}"/>
			</filterset>
		</copy>

		<copy todir="${package.output.dir}/config" failonerror="false">
			<fileset dir="${basedir}/config" excludes="keystore"/>
			<filterset>
				<!--VERSIONS-->
				<filter token="ASPECTJ.VERSION" value="${org.aspectj}"/>
				<filter token="OSGI.FRAMEWORK.VERSION" value="${org.eclipse.osgi}"/>
				<filter token="OSGI.SERVICES.VERSION" value="${org.eclipse.osgi.services}"/>
				<filter token="EQUINOX.EVENT.VERSION" value="${org.eclipse.equinox.event}"/>
				<filter token="EQUINOX.CONFIGADMIN.VERSION" value="${org.eclipse.equinox.cm}"/>
				<filter token="EQUINOX.DS.VERSION" value="${org.eclipse.equinox.ds}"/>
				<filter token="EQUINOX.UTIL.VERSION" value="${org.eclipse.equinox.util}"/>
				<filter token="KERNEL.VERSION" value="${bundle.version}"/>
				<filter token="MEDIC.VERSION" value="${org.eclipse.virgo.medic}"/>
				<filter token="REPOSITORY.VERSION" value="${org.eclipse.virgo.repository}"/>
				<filter token="OSGI.EXTENSIONS.VERSION" value="${org.eclipse.virgo.osgi}"/>
				<filter token="SLF4J.VERSION" value="${org.slf4j}"/>
				<filter token="SPRING.DM.VERSION" value="${org.springframework.osgi}"/>
				<filter token="SPRING.VERSION" value="${org.springframework}"/>
				<filter token="UTIL.VERSION" value="${org.eclipse.virgo.util}"/>
				<!--LOCATIONS-->
				<filter token="REPOSITORY.EXT.DIR" value="${repository.ext.dir}"/>
			</filterset>
		</copy>

		<copy todir="${package.output.dir}/${repository.ext.dir}" failonerror="false">
			<fileset dir="${basedir}/repository/ext"/>
		</copy>

		<copy todir="${package.output.dir}/${repository.ext.dir}" failonerror="false">
			<fileset dir="${package.output.dir}/${user.region.dir}">
				<include name="org.eclipse.virgo.kernel.agent.dm-*.jar"/>
			</fileset>
		</copy>

		<move todir="${package.output.dir}/${repository.ext.dir}" failonerror="false">
			<fileset dir="${package.output.dir}/${user.region.dir}">
				<include name="org.eclipse.virgo.kernel.dmfragment-*.jar"/>
				<include name="org.eclipse.virgo.kernel.deployer.dm-*.jar"/>
			</fileset>
		</move>
		
		<mkdir dir="${package.output.dir}/repository/usr"/>
		
		<copy file="${basedir}/config/keystore" todir="${package.output.dir}/config" failonerror="false"/>

		<chmod perm="600">
			<fileset dir="${package.output.dir}/config">
				<include name="org.eclipse.virgo.kernel.jmxremote.access.properties"/>
			</fileset>
		</chmod>

		<chmod perm="755">
			<fileset dir="${package.output.dir}/bin">
				<include name="*.sh"/>
			</fileset>
		</chmod>

		<mkdir dir="${artifacts.dir}"/>
		<zip destfile="${package.output.file}">
			<zipfileset dir="${package.dir}" includes="${package.basename}/bin/*.sh" filemode="755"/>
			<zipfileset dir="${package.dir}" includes="${package.basename}/config/org.eclipse.virgo.kernel.jmxremote.access.properties" filemode="600"/>
			<zipfileset dir="${package.dir}">
				<exclude name="${package.basename}/bin/*.sh"/>
				<exclude name="${package.basename}/config/org.eclipse.virgo.kernel.jmxremote.access.properties"/>
			</zipfileset>
		</zip>
	</target>

	<target name="smoke-test" description="Runs a smoke test on the kernel packaged build">
		<path id="smoke.test.bundles">
			<pathelement location="${basedir}/../org.eclipse.virgo.kernel.smoketest" />
		</path>
		<antcall target="test.pre"/>
		<all-bundles target="test-package" buildpathRef="smoke.test.bundles">
			<property name="package.output.file" value="${package.output.file}"/>
			<property name="package.basename" value="${package.basename}"/>
		</all-bundles>
		<antcall target="test.post"/>
	</target>

    <target name="package.resources" depends="package" description="Creates a special bundle containing Virgo entities that are not bundles">
        <property name="meta.inf" value="${distro.res}/META-INF"/>
        <property name="resources.jar" value="${package.output.dir}/lib/org.eclipse.virgo.kernel.resources.jar"/>
        <zip destfile="${resources.jar}">
            <zipfileset dir="${distro.res}"/>

            <!--Scripts in BIN-->
            <zipfileset dir="${package.dir}/${package.basename}/bin" includes="*.sh" prefix="bin" filemode="755"/>
            <zipfileset dir="${package.dir}/${package.basename}/bin" prefix="bin">
                <include name="*.bat"/>
                <include name="*.vbs"/>
            </zipfileset>

            <!--Configuration files-->
            <zipfileset dir="${package.dir}/${package.basename}/config"
                        includes="org.eclipse.virgo.kernel.jmxremote.access.properties" prefix="config" filemode="600"/>
            <zipfileset dir="${package.dir}/${package.basename}/config" prefix="config">
                <include name="*"/>
                <exclude name="config/org.eclipse.virgo.kernel.jmxremote.access.properties"/>
            </zipfileset>

            <!--LIB files-->
            <zipfileset dir="${package.dir}/${package.basename}/lib" prefix="lib">
                <include name=".version"/>
                <include name="java6-server.profile"/>
                <include name="org.eclipse.virgo.kernel.userregion.springdm.plan"/>
            </zipfileset>

            <!--Additional files-->
            <zipfileset dir="${package.dir}/${package.basename}">
                <include name="about_files/*"/>
                <include name="*.html"/>
            </zipfileset>
        </zip>
    </target>

    <target name="p2.publish" depends="package.resources, p2.extract-publisher" description="Publishes bundles, features and product">
        <java jar="${p2.launcher.jar}" fork="true" taskname="p2bundles" failonerror="true" maxmemory="256m">
            <arg line="-application org.eclipse.equinox.p2.publisher.FeaturesAndBundlesPublisher"/>
            <arg line="-metadataRepository ${p2.repo.url}"/>
            <arg line="-artifactRepository ${p2.repo.url}"/>
            <arg line="-bundles ${package.output.dir}/lib"/>
            <arg line="-publishArtifacts"/>
            <arg line="-configs all"/>
        </java>
        <java jar="${p2.launcher.jar}" fork="true" taskname="p2product" failonerror="true" maxmemory="256m">
            <arg line="-application org.eclipse.equinox.p2.publisher.ProductPublisher"/>
            <arg line="-metadataRepository ${p2.repo.url}"/>
            <arg line="-artifactRepository ${p2.repo.url}"/>
            <arg line="-productFile ${product.file}"/>
            <arg line="-append"/>
            <arg line="-publishArtifacts"/>
            <arg line="-flavor tooling"/>
            <arg line="-configs all"/>
        </java>

        <sshexec host="build.eclipse.org"
                username="${eclipse.buildId}"
                keyfile="${key.file}"
                passphrase="${passphrase}"
                command="mkdir -pv /opt/public/rt/virgo/update-site/${release.type}/${build.stamp}"/>

        <scp todir="${eclipse.buildId}@build.eclipse.org:/opt/public/rt/virgo/update-site/${release.type}/${build.stamp}/"
                keyfile="${key.file}"
                passphrase="${passphrase}">
            <fileset dir="${publishing.dir}"/>
        </scp>

        <!--TODO-->
        <delete dir="${p2.publishing.dir}" excludes="p2agent.zip" includeemptydirs="true" quiet="true"/>
    </target>

</project>
