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

	<path id="bundles"/>

	<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, package, smoke-test"
		description="Performs a CI server-like build, should be run prior to performing a Git push"/>

	<target name="fetch-kernel">
		<mkdir dir="${target.dir}"/>
		
		<condition property="dependancy.folder" value="milestone" else="${adjusted.release.type}">
			<or>
				<contains string="${org.eclipse.virgo.kernel}" substring=".M"/>
				<contains string="${org.eclipse.virgo.kernel}" substring=".RC"/>
			</or>
		</condition>
		
		<condition property="dependancy.folder" value="release" else="${adjusted.release.type}">
			<contains string="${org.eclipse.virgo.kernel}" substring=".RELEASE"/>
		</condition>
		
		<get src="http://build.eclipse.org/rt/virgo/zips/${dependancy.folder}/VK/${org.eclipse.virgo.kernel}/virgo-kernel-${org.eclipse.virgo.kernel}.zip"
				dest="${target.dir}/virgo-kernel-${org.eclipse.virgo.kernel}.zip" 
				usetimestamp="true" />

		<echo message="Fetched the Kernel zip to ${target.dir}/virgo-kernel-${org.eclipse.virgo.kernel}.zip"/>
	</target>

	<target name="package" depends="fetch-kernel">
		<delete dir="${package.output.dir}" quiet="true"/>
		<mkdir dir="${package.output.dir}"/>

		<property name="kernel.stage.file" value=""/>
		<property name="repository.dir" value="${package.output.dir}/repository"/>
		<property name="repository.ext" value="${repository.dir}/ext"/>
		<property name="repository.usr" value="${repository.dir}/usr"/>

		<unzip src="${target.dir}/virgo-kernel-${org.eclipse.virgo.kernel}.zip" dest="${package.output.dir}">
			<globmapper from="virgo-kernel-${org.eclipse.virgo.kernel}/*" to="*"/>
		</unzip>
		
		<antcall target="package.bin"/>
		<antcall target="package.config"/>
		<antcall target="package.docs"/>
		<antcall target="package.lib"/>
		<antcall target="package.pickup"/>
		<antcall target="package.repository"/>
		<antcall target="package.resources"/>

		<mkdir dir="${package.output.dir}/work"/>
		<mkdir dir="${repository.usr}"/>

		<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="package.bin">
		<chmod perm="755">
			<fileset dir="${package.output.dir}/bin">
				<include name="*.sh"/>
			</fileset>
		</chmod>
	</target>

	<target name="package.config">
		<copy todir="${package.output.dir}/config" failonerror="false" overwrite="true">
			<fileset dir="${basedir}/config"/>
		</copy>

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

		<replaceregexp match="initialArtifacts =.*\.springdm"
				replace="initialArtifacts=repository:plan/org.eclipse.virgo.kernel.userregion.springdm, repository:plan/org.eclipse.virgo.web.tomcat" flags="s"
				file="${package.output.dir}/config/org.eclipse.virgo.kernel.userregion.properties"/>

		<replaceregexp match="virgo-kernel" replace="virgo-server" flags="g"
				file="${package.output.dir}/config/serviceability.xml"/>
	</target>

	<target name="package.docs" depends="ivy.init">
		<ivy:resolve resolveId="copy.path" file="${basedir}/docs-ivy.xml" transitive="false" conf="docs"/>
		<ivy:retrieve resolveId="copy.path" pattern="${basedir}/target/docs/[artifact]-[revision].[ext]" conf="docs" type="zip, pdf"/>

		<copy todir="${package.output.dir}/docs/virgo-user-guide/pdf" flatten="true">
			<fileset dir="${basedir}/target/docs">
				<include name="**/virgo-user-guide*.pdf"/>
			</fileset>
		</copy>

		<copy todir="${package.output.dir}/docs/virgo-programmer-guide/pdf" flatten="true">
			<fileset dir="${basedir}/target/docs">
				<include name="**/virgo-programmer-guide*.pdf"/>
			</fileset>
		</copy>

		<unzip dest="${package.output.dir}/docs/virgo-user-guide">
			<fileset dir="${basedir}/target/docs">
		        <include name="**/virgo-user-guide*.zip"/>
		    </fileset>
		</unzip>

		<unzip dest="${package.output.dir}/docs/virgo-programmer-guide">
			<fileset dir="${basedir}/target/docs">
		        <include name="**/virgo-programmer-guide*.zip"/>
		    </fileset>
		</unzip>

	</target>

	<target name="package.lib">
		<echo file="${package.output.dir}/lib/.version" append="true"
				message="virgo.server.version=${bundle.version}&#xa;"/>

		<replaceregexp match="virgo-kernel" replace="virgo-server" flags="g"
				file="${package.output.dir}/lib/java6-server.profile"/>
	</target>

	<target name="package.pickup" depends="ivy.init">
		<ivy:resolve resolveId="copy.path" file="${basedir}/pickup-ivy.xml" transitive="true"/>
		<ivy:retrieve resolveId="copy.path" pattern="${package.output.dir}/pickup/[artifact]-[revision].[ext]" type="jar, war, wab" conf="pickup"/>
		<ivy:retrieve resolveId="copy.path" pattern="${package.output.dir}/pickup/[artifact]-[revision].[ext]" type="plan" conf="pickup-plan"/>
		<ivy:retrieve resolveId="copy.path" pattern="${repository.ext}/[artifact]-[revision].[ext]" type="jar, war, wab" conf="pickup-plan"/>
	</target>

	<target name="package.repository" depends="ivy.init">
		<ivy:resolve resolveId="copy.path" file="${basedir}/repository-ivy.xml" transitive="false"/>
		<ivy:retrieve resolveId="copy.path" pattern="${repository.ext}/[artifact]-[revision].[ext]" conf="ext" type="library,jar,plan"/>
		<ivy:retrieve resolveId="copy.path" pattern="${repository.ext}/[artifact].[ext]" conf="ext" type="configuration"/>

		<ivy:resolve resolveId="copy.path" file="${basedir}/repository-ivy.xml" transitive="true"/>
		<ivy:retrieve resolveId="copy.path" pattern="${repository.ext}/[artifact]-[revision].[ext]" conf="transitive" type="library,jar,plan" />
		<ivy:retrieve resolveId="copy.path" pattern="${repository.ext}/[artifact].[ext]" conf="transitive" type="configuration" />
	</target>

	<target name="package.resources">
		<move file="${package.output.dir}/About.html" tofile="${package.output.dir}/AboutKernel.html"/>

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

	<target name="smoke-test" description="Runs a smoke test on the packaged build">
		<path id="smoke.test.bundles">
			<pathelement location="${basedir}/../org.eclipse.virgo.server.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}"/>
			<property name="test-results.output.dir" value="${test-results.output.dir}"/>
		</all-bundles>
		<antcall target="test.post"/>
	</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,${package.output.dir}/repository/ext"/>
            <arg line="-publishArtifacts"/>
            <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>
        
        <!-- <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>
             <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 ${lib.product.file}"/>
                 <arg line="-append"/>
                 <arg line="-publishArtifacts"/>
                 <arg line="-flavor tooling"/>
                 <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 ${lib.kernel.product.file}"/>
                 <arg line="-append"/>
                 <arg line="-publishArtifacts"/>
                 <arg line="-flavor tooling"/>
                 <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 ${repository.ext.product.file}"/>
                 <arg line="-append"/>
                 <arg line="-publishArtifacts"/>
                 <arg line="-flavor tooling"/>
                 <arg line="-configs all"/>
             </java> -->
             <delete dir="${p2.publishing.dir}" excludes="p2agent.zip" includeemptydirs="true" quiet="true"/>
    </target>


</project>
