<project default="main">

	<!--
		Steps
	 	Ant properties available at runtime: 
	
	 - eclipse.pdebuild.scripts: the org.eclipse.eclipse.pdebuild.scripts folder
	 - eclipse.pdebuild.home: the root folder of pde build
	 - eclipse.pdebuild.templates: the  templates folder
	
	-->

	<!--build monitoring information:  e-mail, smtp server, build label-->
	<property file="monitor.properties"/>
	
	<!--location of PDE Build configuration files for builder and packager-->
	<property name="eclipse.build.configs" value="${basedir}/eclipse/buildConfigs" />
	
	<property name="sdkHelper" location="${eclipse.build.configs}/eclipse/helper.xml"/>
	<property name="base.builder" value="${basedir}/../BaseBuilder" />
	
	<!--location of properties file containing last tag used for integration build-->
	<property name="mapTag.properties" value="/home/users/releng/buildTools/eclipse33/mapTag.properties"/>
	
	<!--location of properties file containing last performance reference test information-->
	<property name="ref.properties" value="/home/users/releng/buildTools/eclipse.perf/ref33.properties"/>
	
	<!--location of test update site-->
	<property file="${ref.properties}"/>
	
	<!--default buildDirectory-->
	<property name="buildDirectory" value="${basedir}/../src" />
	
	<!--default location for build output, parent to ${buildId}-->
	<property name="postingDirectory" value="${buildDirectory}" />

    <!--remote sign machine login infomation-->
    <property name="username.sign" value="" />
    <property name="password.sign" value="" />
    <property name="hostname.sign" value="" />
    <property name="home.dir" value="" />
    <property name="sign.dir" value="" />

    <target name="main" depends="init">
		<antcall target="prepareMapFile"/>
		<antcall target="buildDtpSdkAllFeature"/>
		<antcall target="compareMapFiles" />
		<antcall target="buildDtpEnablementAllFeature"/>
    	<antcall target="buildDtpDocISV"/>
    	<!--  <antcall target="buildDtpIncubationAllFeature"/>  -->
		<ant antfile="${eclipse.build.configs}/../helper.xml" target="verifyCompile" />
		<antcall target="integrateDtpFeatures"/>
        <antcall target="Package"/>
        <antcall target="GenerateUpdateSite"/>

	</target>

	<target name="init">
		<ant antfile="build.xml" target="init" />
		<property file="${buildDirectory}/label.properties" />
		
		<condition property="fetchTag" value="CVS=HEAD,GIT=master">
			<equals arg1="${buildType}" arg2="N" />
		</condition>
		<condition property="forceContextQualifier" value="${buildId}">
			<equals arg1="${buildType}" arg2="N" />
		</condition>
		<condition property="generateFeatureVersionSuffix" value="false">
			<equals arg1="${buildType}" arg2="N" />
		</condition>
		<!--compiler args-->
		<property name="compilerArg" value="-enableJavadoc -encoding utf-8 -warn:-discouraged,forbidden" />
		<!--property name="javacSource" value="1.5" />
		<property name="javacTarget" value="1.5" /-->
		<property name="javacDebugInfo" value="true" />
		<property name="javacFailOnError" value="true" />
		<property name="javacVerbose" value="false" />
		<property name="logExtension" value=".xml" />
		<!--this property required as of Eclipse 3.0 stream builds > 20031126 -->
		<property name="buildingOSGi" value="true" />
		<!--zip args-->
		<property name="zipargs" value="-y -qq" />
		<!--unzip args-->
		<property name="unzipArgs" value="-qq" />
	</target>
	
	<target name="checkLocal">
		<available property="mapsLocal" file="${buildDirectory}/maps/releng" />
	</target>
	
	<target name="prepareMapFile" depends="checkLocal" unless="mapsLocal">
		
		<!--delete dir="${buildDirectory}/TempRepo" failonerror="false" /-->
                <mkdir dir="${buildDirectory}/maps"/>
		
		<antcall target="GetMapFiles">
			<param name="gitRepo.name" value="org.eclipse.datatools.build.git"/>
		</antcall>
	<!--
		<antcall target="GetMapFiles">
			<param name="gitRepo.name" value="org.eclipse.datatools.incubator.git"/>
		</antcall>
	-->
		<antcall target="GetMapFiles">
			<param name="gitRepo.name" value="org.eclipse.datatools.connectivity.git"/>
		</antcall>
		<antcall target="GetMapFiles">
			<param name="gitRepo.name" value="org.eclipse.datatools.modelbase.git"/>
		</antcall>
		<antcall target="GetMapFiles">
			<param name="gitRepo.name" value="org.eclipse.datatools.sqltools.git"/>
		</antcall>
		<antcall target="GetMapFiles">
			<param name="gitRepo.name" value="org.eclipse.datatools.doc.git"/>
		</antcall>
		<antcall target="GetMapFiles">
			<param name="gitRepo.name" value="org.eclipse.datatools.enablement.general.git"/>
		</antcall>
		<antcall target="GetMapFiles">
			<param name="gitRepo.name" value="org.eclipse.datatools.enablement.hsqldb.git"/>
		</antcall>
		<antcall target="GetMapFiles">
			<param name="gitRepo.name" value="org.eclipse.datatools.enablement.ibm.git"/>
		</antcall>
		<antcall target="GetMapFiles">
			<param name="gitRepo.name" value="org.eclipse.datatools.enablement.ingres.git"/>
		</antcall>
		<antcall target="GetMapFiles">
			<param name="gitRepo.name" value="org.eclipse.datatools.enablement.msft.git"/>
		</antcall>
		<antcall target="GetMapFiles">
			<param name="gitRepo.name" value="org.eclipse.datatools.enablement.mysql.git"/>
		</antcall>
		<antcall target="GetMapFiles">
			<param name="gitRepo.name" value="org.eclipse.datatools.enablement.oda.git"/>
		</antcall>
		<antcall target="GetMapFiles">
			<param name="gitRepo.name" value="org.eclipse.datatools.enablement.oracle.git"/>
		</antcall>
		<antcall target="GetMapFiles">
			<param name="gitRepo.name" value="org.eclipse.datatools.enablement.postgresql.git"/>
		</antcall>
		<antcall target="GetMapFiles">
			<param name="gitRepo.name" value="org.eclipse.datatools.enablement.sap.git"/>
		</antcall>
		<antcall target="GetMapFiles">
			<param name="gitRepo.name" value="org.eclipse.datatools.enablement.sqlite.git"/>
		</antcall>
		<antcall target="GetMapFiles">
			<param name="gitRepo.name" value="org.eclipse.datatools.enablement.sybase.git"/>
		</antcall>
				
		<!--compare the map files project-->
		<!--antcall target="compareMapFiles" /-->

		<!--tag the map files project-->
		<antcall target="tagMapFiles" />
			
		<!-- this value could be overwrite by the bootstrap command -->
		<!--property name="dtp.url.token" value="@DTP.URL.TOKEN@"/>
		<property name="dtp.url.newvalue" value="${mapCvsRoot}"/-->
		<property name="orbit.url.token" value="@ORBIT.URL.TOKEN@"/>
		<property name="orbit.url.newvalue" value="@ORBIT.URL.NEWVALUE@"/>
		
		<!-- replace orbit url to local server -->
		<replace dir="${buildDirectory}/maps" value="${orbit.url.newvalue}" token="${orbit.url.token}">
			<include name="**/orbit-bundles.map" />
		</replace>
		
		<!--replace dir="${buildDirectory}/maps" value="${dtp.url.newvalue}" token="${dtp.url.token}">
			<include name="**/*.map" />
		</replace-->
		
		<!--delete dir="${buildDirectory}/TempRepo" failonerror="false" /-->
		
	</target>
	
	<target name="GetMapFiles">
		<!--echo message="git clone ${mapGitRoot}/${gitRepo.name}.git ${buildDirectory}/TempRepo/${gitRepo.name}"/>
		<exec executable="git">
			<arg line="clone ${mapGitRoot}/${gitRepo.name}.git ${buildDirectory}/TempRepo/${gitRepo.name}"/>
		</exec>
		<exec executable="git" dir="${buildDirectory}/TempRepo/${gitRepo.name}">
			<arg line="checkout ${mapVersionTag}"/>
		</exec>
		<copy todir="${buildDirectory}/maps">
			<fileset dir="${buildDirectory}/TempRepo/${gitRepo.name}/releng" includes="${gitRepo.name}.releng/**"/>
		</copy-->
		<echo message="git archive -o ${buildDirectory}/maps/${gitRepo.name}.maps.tar --remote=${mapGitRoot}/${gitRepo.name} ${mapVersionTag} releng"/>
		<exec executable="git" dir="${buildDirectory}/maps" output="${buildDirectory}/maps/${gitRepo.name}.maps.tar">
                        <arg line="archive --format=tar" />
                        <arg line="--remote=${mapGitRoot}/${gitRepo.name}" />
                        <arg line="${mapVersionTag} releng" />
                </exec>
                <untar src="${buildDirectory}/maps/${gitRepo.name}.maps.tar" dest="${buildDirectory}/maps" />
	</target>
	
	<target name="compareMapFiles" if="compareMaps">
		<!--property file="${mapTag.properties}"/>
		<property name="cvsDiffFile" value="${buildDirectory}/cvsDiff.txt" />
		<cvs cvsRoot="${mapCvsRoot}" dest="${buildDirectory}/maps" command="diff -w -r ${lastMapTag}" output="${cvsDiffFile}" />
		<modifiedMaps mapDiffFile="${cvsDiffFile}" /-->

		<condition property="NoMapChange">
			<filesmatch file1="${buildDirectory}/directory.txt" file2="last_directory.txt"/>	
		</condition>
		<ant antfile="${eclipse.build.configs}/../helper.xml" target="InformCancelBuild" />
		<fail message="No change in map files, canceled build" if="NoMapChange"/>
		
	</target>

	<target name="tagMapFiles" if="tagMaps">
		<!-- Stores tag on the filesystem so map files can be compared -->
		<echo file="${mapTag.properties}">
		lastMapTag=r19_${buildId}
		</echo>
		<echo message="tagging org.eclipse.datatools.releng..."/>
		<cvs dest="${buildDirectory}/maps/org.eclipse.datatools.releng" command="tag r19_${buildId}" />
		<echo message="tagging org.eclipse.datatools.connectivity.releng..."/>
		<cvs dest="${buildDirectory}/maps/org.eclipse.datatools.connectivity/releng/org.eclipse.datatools.connectivity.releng" command="tag r19_${buildId}" />
		<echo message="tagging org.eclipse.datatools.enablement.releng..."/>
		<cvs dest="${buildDirectory}/maps/org.eclipse.datatools.enablement/releng/org.eclipse.datatools.enablement.releng" command="tag r19_${buildId}" />
		<echo message="tagging org.eclipse.datatools.modelbase.releng..."/>
		<cvs dest="${buildDirectory}/maps/org.eclipse.datatools.modelbase/releng/org.eclipse.datatools.modelbase.releng" command="tag r19_${buildId}" />
		<echo message="tagging org.eclipse.datatools.sqltools.releng..."/>
		<cvs dest="${buildDirectory}/maps/org.eclipse.datatools.sqltools/releng/org.eclipse.datatools.sqltools.releng" command="tag r19_${buildId}" />
		<cvs dest="${buildDirectory}/maps/org.eclipse.datatools.incubator/releng/org.eclipse.datatools.incubator.releng" command="tag r19_${buildId}" />

	</target>
			
	<target name="buildDtpEnablementAllFeature">
                <ant antfile="build.xml" dir="${basedir}">
                        <property name="component" value="${eclipse.build.configs}/dtp.enablement.all" />
                </ant>
	</target>

	<target name="buildDtpIncubationAllFeature">
                <ant antfile="build.xml" dir="${basedir}">
                        <property name="component" value="${eclipse.build.configs}/dtp.incubation.all" />
                </ant>
	</target>
	
	<!-- build doc.isv plugin -->
	<target name="buildDtpDocISV">

        <ant antfile="build.xml" dir="${eclipse.pdebuild.scripts}" target="generate">
                <property name="builder" value="${eclipse.build.configs}/dtp.doc.isv" />
        </ant>
        <ant antfile="build.xml" dir="${eclipse.pdebuild.scripts}" target="process">
                <property name="builder" value="${eclipse.build.configs}/dtp.doc.isv" />
        </ant>
		
	</target>
	
	<target name="buildDtpSdkAllFeature">

		<!-- build dtp sdk feature -->
		<ant antfile="build.xml" dir="${basedir}">
			<property name="component" value="${eclipse.build.configs}/dtp.sdk.all" />
		</ant>

	</target>

	<target name="buildDtpEnablementFeature">
		<ant antfile="build.xml" dir="${basedir}">
			<property name="component" value="${eclipse.build.configs}/dtp.enablement" />
		</ant>
	</target>
	
	<target name="buildUpdateSite" if="updateSite">
		<ant antfile="${eclipse.build.configs}/../helper.xml" target="buildUpdateJars" />
	</target>
	
	<target name="integrateDtpFeatures">

		<property name="tmpsite" value="${buildDirectory}/tmpsite" />
		<mkdir dir="${tmpsite}/new/eclipse/features" />
		<mkdir dir="${tmpsite}/new/eclipse/plugins" />

		<!-- unzip all dtp packages into same directory -->
		<unzip src="${buildDirectory}/${buildId}/dtp-all-${package.version}.zip" dest="${buildDirectory}/tmpsite"/>
		<unzip src="${buildDirectory}/${buildId}/dtp-enablement-all-${package.version}.zip" dest="${buildDirectory}/tmpsite" overwrite="true"/>
	<!--		
		<unzip src="${buildDirectory}/${buildId}/dtp-incubation-all-${package.version}.zip" dest="${buildDirectory}/tmpsite" overwrite="true"/>
	-->
		<copy todir="${buildDirectory}/tmpsite/eclipse/plugins" overwrite="true">
			<fileset dir="${buildDirectory}">
				<include name="org.eclipse.datatools.doc.isv_*.jar"/>
			</fileset>
		</copy>
		
		<!-- TODO: 
		    1. zip features/ plugins/ pack.properties under ${buildDirectory}/tmpsite/eclipse as dtp-all-unsign.zip 
		    2. sign features, plugins under ${buildDirectory}/tmpsite
			3. Download back, replace the unsigned version in ${buildDirectory}/tmpsite/eclipse
			4. Keep the signed, packed zip under ${buildDirectory}/, name as dtp-all-signed.zip
		-->

        <zip destfile="${tmpsite}/dtp-p2repo.zip">
           <fileset dir="${tmpsite}/eclipse" includes="features/**"/>
           <fileset dir="${tmpsite}/eclipse" includes="plugins/**"/>
        </zip>
		
        <antcall target="signDTPJars"/>

		<unpackUpdateJars site="${tmpsite}/eclipse" output="${tmpsite}/new/eclipse"/>

		<copy todir="${tmpsite}/new/eclipse">
			<fileset dir="${tmpsite}/eclipse" includes="*.html" />
		</copy>

	</target>

	<target name="p2.test">
		<p2.generator source="${reposource}" compress="true" 
                  append="true" flavor="tooling" 
                  metadataRepository="file:${tmpsite}/new/eclipse" 
                  artifactRepository="file:${tmpsite}/new/eclipse" 
                  metadataRepositoryName="DTP test" 
                  artifactRepositoryName="DTP test" 
                  publishArtifacts="true" p2OS="linux" mode="incremental" /> 

	</target>
	
	<target name="signDTPJars" unless="noSign">
		
        <zip destfile="${tmpsite}/dtp-all-unsign.zip">
           <fileset dir="${tmpsite}/eclipse" includes="features/**"/>
           <fileset dir="${tmpsite}/eclipse" includes="plugins/**"/>
           <fileset dir="${eclipse.build.configs}/../../extras" includes="pack.properties"/>
        </zip>
		
		<antcall target="SignJars">
			<param name="source.dir" value="${tmpsite}"/>
			<param name="source.name" value="dtp-all-unsign.zip"/>
			<param name="target.dir" value="${tmpsite}"/>
			<param name="target.name" value="dtp-all-signed.zip"/>
		</antcall>

		<unzip src="${tmpsite}/dtp-all-signed.zip" dest="${tmpsite}/eclipse"/>
		
		<copy file="${tmpsite}/dtp-all-signed.zip" tofile="${tmpsite}/dtp-p2repo.zip" overwrite="true"/>
		
	</target>
	
    <target name="SignJars">
    	
        <tstamp prefix="timestamp">
            <format property="upload" pattern="yyyy-MM-dd HH:mm:ss" locale="en" />
        </tstamp>
        <echo message="[${timestamp.upload}] Upload unsign package to signing server ..."/>
    	
        <scp todir="${username.sign}:${password.sign}@${hostname.sign}:${home.dir}" trust="true">
            <fileset dir="${source.dir}" includes="${source.name}"/>
        </scp>
    	
        <tstamp prefix="timestamp">
            <format property="sign.start" pattern="yyyy-MM-dd HH:mm:ss" locale="en" />
        </tstamp>
        <echo message="[${timestamp.sign.start}] Upload finished and start jarsigning, wait for 25 mins."/>
    	
        <sshexec host="${hostname.sign}" username="${username.sign}" password="${password.sign}" trust="true"
                 command="cd ${sign.dir};cp ${home.dir}/${source.name} ./;sign ${source.name} nomail;"/>
    	<sleep minutes="25"/>
    	
        <tstamp prefix="timestamp">
            <format property="download.start" pattern="yyyy-MM-dd HH:mm:ss" locale="en" />
        </tstamp>
    	<echo message="[${timestamp.download.start}] Download signed jars from server starts"/>
    	
        <scp localtofile="${target.dir}/${target.name}" trust="true"
             file="${username.sign}:${password.sign}@${hostname.sign}:${sign.dir}/${source.name}"/>
    	
        <tstamp prefix="timestamp">
            <format property="download.end" pattern="yyyy-MM-dd HH:mm:ss" locale="en" />
        </tstamp>
    	<echo message="[${timestamp.download.end}] Download signed jars from server ends"/>

        <condition property="CompareSignPack" value="true">
             <filesmatch file1="${source.dir}/${source.name}"
                         file2="${target.dir}/${target.name}"/>
        </condition>
    	
        <antcall target="DownloadSignedPackAgain">
        	<param name="source.name" value="${source.name}"/>
        	<param name="target.dir" value="${target.dir}"/>
        	<param name="target.name" value="${target.name}"/>
        </antcall>
    	       
    </target>

    <target name="DownloadSignedPackAgain" if="CompareSignPack">
    	
        <tstamp prefix="timestamp">
            <format property="download.again.now" pattern="yyyy-MM-dd HH:mm:ss" locale="en" />
        </tstamp>
    	<echo message="[${timestamp.download.again.now}] Sign check failed and wait for 10 mins to download again"/>

        <sleep minutes="10"/>
    	
        <tstamp prefix="timestamp">
            <format property="download.again.start" pattern="yyyy-MM-dd HH:mm:ss" locale="en" />
        </tstamp>
        <echo message="[${timestamp.download.again.start}] Download signed package again"/>
    	
        <scp localtofile="${target.dir}/${target.name}" trust="true"
             file="${username.sign}:${password.sign}@${hostname.sign}:${sign.dir}/${source.name}"/>
    	
        <tstamp prefix="timestamp">
            <format property="download.again.end" pattern="yyyy-MM-dd HH:mm:ss" locale="en" />
        </tstamp>
        <echo message="[${timestamp.download.again.end}] Download signed package ends. Start packaging..."/>
    	
    </target>

	<target name="Package">

		<property file="${buildDirectory}/finalPluginsVersions.properties"/>

		<!-- repackage source features and plugins -->

		<delete includeemptydirs="true">
			<fileset dir="${buildDirectory}/tmpsite/eclipse/features">
				<include name="org.eclipse.datatools.sdk-all.feature_*/**"/>
			</fileset>
			<fileset dir="${buildDirectory}/tmpsite/new/eclipse/features">
				<include name="org.eclipse.datatools.sdk-all.feature_*/**"/>
			</fileset>
		</delete>

		<!-- package sdk package -->
		<zip destfile="${buildDirectory}/${buildId}/dtp-sdk-${package.version}.zip">
			<zipfileset dir="${buildDirectory}/tmpsite/new/eclipse/features" prefix="eclipse/features">
				<include name="**"/>
				<exclude name="*.ecore.feature*/**"/>
				<exclude name="*.ecore.sdk.feature*/**"/>
			</zipfileset>
			<zipfileset dir="${buildDirectory}/tmpsite/new/eclipse/plugins" prefix="eclipse/plugins">
				<include name="**"/>
				<exclude name="org.eclipse.datatools.enablement.oda.ecore*/**"/>
			</zipfileset>
			<zipfileset dir="${buildDirectory}/tmpsite/new/eclipse" prefix="eclipse">
				<include name="*.html"/>
			</zipfileset>
		</zip>

		<!-- package non-sdk package -->
		<zip destfile="${buildDirectory}/${buildId}/dtp-${package.version}.zip">
			<zipfileset dir="${buildDirectory}/tmpsite/new/eclipse/features" prefix="eclipse/features">
				<include name="**"/>
				<exclude name="*sdk-all.feature*/**"/>
				<exclude name="*sdk.feature*/**"/>
				<exclude name="*.source_*/**"/>
				<exclude name="org.eclipse.datatools.enablement.oda.ecore*/**"/>
			</zipfileset>
			<zipfileset dir="${buildDirectory}/tmpsite/new/eclipse/plugins" prefix="eclipse/plugins">
				<include name="**"/>
				<exclude name="*.source_*/**"/>
				<exclude name="org.eclipse.datatools.doc.isv_*.jar"/>
				<exclude name="org.eclipse.datatools.connectivity.ui.templates_*.jar"/>
				<exclude name="org.eclipse.datatools.enablement.oda.ecore*/**"/>
			</zipfileset>
			<zipfileset dir="${buildDirectory}/tmpsite/new/eclipse" prefix="eclipse">
				<include name="readme/**"/>
				<include name="*.html"/>
			</zipfileset>
		</zip>

		<!-- package incubator-sdk package -->
	<!--
		<zip destfile="${buildDirectory}/${buildId}/dtp-incubator-sdk-${package.version}.zip">
			<zipfileset dir="${buildDirectory}/tmpsite/new/eclipse/features" prefix="eclipse/features">
				<include name="org.eclipse.datatools.enablement.oda.ecore.*/**"/>
			</zipfileset>
			<zipfileset dir="${buildDirectory}/tmpsite/new/eclipse/plugins" prefix="eclipse/plugins">
				<include name="org.eclipse.datatools.enablement.oda.ecore*/**"/>
			</zipfileset>
			<zipfileset dir="${buildDirectory}/tmpsite/new/eclipse" prefix="eclipse">
				<include name="readme/**"/>
				<include name="*.html"/>
			</zipfileset>
		</zip>
	-->
		<!-- package incubator package -->
	<!--
		<zip destfile="${buildDirectory}/${buildId}/dtp-incubator-${package.version}.zip">
			<zipfileset dir="${buildDirectory}/tmpsite/new/eclipse/features" prefix="eclipse/features">
				<include name="org.eclipse.datatools.enablement.oda.ecore.feature_*/**"/>
				<exclude name="org.eclipse.datatools.enablement.oda.ecore.feature.source_*/**"/>
				<exclude name="org.eclipse.datatools.enablement.oda.ecore.sdk.feature_*/**"/>
			</zipfileset>
			<zipfileset dir="${buildDirectory}/tmpsite/new/eclipse/plugins" prefix="eclipse/plugins">
				<include name="org.eclipse.datatools.enablement.oda.ecore*/**"/>
				<exclude name="org.eclipse.datatools.enablement.oda.ecore*source*/**"/>
			</zipfileset>
			<zipfileset dir="${buildDirectory}/tmpsite/new/eclipse" prefix="eclipse">
				<include name="readme/**"/>
				<include name="*.html"/>
			</zipfileset>
		</zip>
	-->

		<!-- package source package -->
		<zip destfile="${buildDirectory}/${buildId}/dtp-source-${package.version}.zip">
			<zipfileset dir="${buildDirectory}">
			    <include name="*.txt"/>
			    <include name="*.properties"/>
			    <include name="*.xml"/>
			</zipfileset>
	    </zip>
		
		<!-- copy to output directory -->
		<mkdir dir="${postingDirectory}/${buildId}" />
		<copy file="${buildDirectory}/${buildId}/dtp-sdk-${package.version}.zip" todir="${postingDirectory}/${buildId}"/>
		<copy file="${buildDirectory}/${buildId}/dtp-${package.version}.zip" todir="${postingDirectory}/${buildId}"/>
	<!--
		<copy file="${buildDirectory}/${buildId}/dtp-incubator-sdk-${package.version}.zip" todir="${postingDirectory}/${buildId}"/>
		<copy file="${buildDirectory}/${buildId}/dtp-incubator-${package.version}.zip" todir="${postingDirectory}/${buildId}"/>
	-->
		<copy file="${buildDirectory}/${buildId}/dtp-source-${package.version}.zip" todir="${postingDirectory}/${buildId}"/>
		<copy file="${buildDirectory}/directory.txt" todir="${postingDirectory}/${buildId}"/>
        <copy tofile="${postingDirectory}/finalFeaturesVersions.properties" file="${buildDirectory}/finalFeaturesVersions.properties" overwrite="true" />
		<copy tofile="${postingDirectory}/monitor.properties" file="monitor.properties" overwrite="true" />
        <copy todir="${postingDirectory}/${buildId}">
		   <fileset dir="." includes="*.log"/>
		</copy>
		
        <tstamp prefix="timestamp">
            <format property="package.end" pattern="yyyy-MM-dd HH:mm:ss" locale="en" />
        </tstamp>
        <echo message="[${timestamp.package.end}] Packaging finished."/>
		
	</target>

    <target name="GenerateUpdateSite" unless="HQ.BIRT.skip">
        <property file="${buildDirectory}/finalFeaturesVersions.properties"/>
    	<property name="tmpsite" value="${buildDirectory}/tmpsite" />
        <mkdir dir="${postingDirectory}/${buildId}/UpdateSite"/>
    	<mkdir dir="${postingDirectory}/${buildId}/pack200site"/>
        <property name="updateSiteDir" value="${postingDirectory}/${buildId}/UpdateSite"/>  	
    	<property name="pack200Dir" value="${postingDirectory}/${buildId}/pack200site"/>
        
    	<!-- replace the feature version in site.xml -->
        <!--copy file="${eclipse.build.configs}/../../extras/site.xml" tofile="${updateSiteDir}/site.xml" overwrite="true"/>
        <replace file="${updateSiteDir}/site.xml" value="1.8.0" token="@RELEASE.VERSION@"/>
        <replace file="${updateSiteDir}/site.xml" value="${org.eclipse.datatools.enablement.sdk.feature}" token="@org.eclipse.datatools.enablement.sdk.feature@"/>
        <replace file="${updateSiteDir}/site.xml" value="${org.eclipse.datatools.sdk.feature}" token="@org.eclipse.datatools.sdk.feature@"/-->

        <!-- push update site to output directory -->

        <unzip src="${tmpsite}/dtp-p2repo.zip" 
        	dest="${postingDirectory}/${buildId}/UpdateSite" overwrite="true"/>
    	
        <copy todir="${postingDirectory}/${buildId}/UpdateSite" overwrite="true">
        	<fileset dir="${eclipse.build.configs}/../../extras">
        		<include name="pack.properties"/>
        	</fileset>
    	</copy>
    	
    	<delete includeemptydirs="true" failonerror="false">
            <fileset dir="${postingDirectory}/${buildId}/UpdateSite/features">
                <include name="org.eclipse.datatools.sdk-all.feature_*/**"/>
            </fileset>
            <fileset dir="${postingDirectory}/${buildId}/UpdateSite">
                <include name="*.html"/>
            </fileset>
        </delete>
	
		<!-- push p2 repo to local update site for testing -->
		<antcall target="genP2CompositeUpdateSite"/>
		
    	<!-- zip p2 repo-->
		<zip destfile="${postingDirectory}/${buildId}/dtp-p2repo-${package.version}.zip">
			<zipfileset dir="${postingDirectory}/${buildId}/UpdateSite/features/" prefix="features">
				<include name="*.jar"/>
				<include name="*.pack.gz"/>
			</zipfileset>
			<zipfileset dir="${postingDirectory}/${buildId}/UpdateSite/plugins/" prefix="plugins">
				<include name="*.jar"/>
				<include name="*.pack.gz"/>
			</zipfileset>
			<zipfileset dir="${postingDirectory}/${buildId}/UpdateSite/">
				<include name="*.jar"/>
			</zipfileset>
		</zip>
    	
    	<delete includeemptydirs="true" failonerror="false">
            <fileset dir="${postingDirectory}/${buildId}">
                <include name="UpdateSite/**"/>
            </fileset>
        </delete>    	   	
	</target>

	<target name="GenerateCVSChangeLog">
		<ant antfile="${eclipse.build.configs}/../../extras/cvschanges.xml"/>
	</target>

    <target name="genP2CompositeUpdateSite">
    	
        <property name="compsite.site" value="${postingDirectory}/../../../../UpdateSite/dtp_${BranchVersion}" />
        <property name="repo" value="${compsite.site}/${buildId}" />
        <property name="p2.repo.name" value="DTP Update Site" />
        <mkdir dir="${repo}" />       
    	
	   	<!-- generate pack200 -->	
		<replace file="${eclipse.build.configs}/../../extras/pack200" token="@pack200@" value="${jvm15_home}/bin/pack200"/>
		<chmod file="${eclipse.build.configs}/../../extras/pack200" perm="755"/>

		<exec executable="dos2unix" dir="${eclipse.build.configs}/../../extras">
			<arg line=" pack200" />
		</exec>
		
    	<!-- create pack200 -->
    	<java jar="${basedir}/../org.eclipse.releng.basebuilder/plugins/org.eclipse.equinox.launcher.jar"
                fork="true"
                timeout="10800000"
                jvm="${jvm15_home}/bin/java"
                failonerror="true"
                maxmemory="512m"
                dir="${postingDirectory}/${buildId}/">
                <jvmarg value="-Dorg.eclipse.update.jarprocessor.pack200=${eclipse.build.configs}/../../extras"/>
                <arg line="-application org.eclipse.update.core.siteOptimizer -verbose"/>
                <arg line="-jarProcessor -outputDir ${pack200Dir} -processAll -pack UpdateSite"/>
        </java>
    	    	
        <!-- generator features and plugins metadata -->
        <!--copy file="${updateSiteDir}/site.xml" todir="${pack200Dir}"/-->
    	<p2.publish.featuresAndBundles
    	      metadataRepository="file:${repo}"
    	      artifactRepository="file:${repo}"
    	      source="${pack200Dir}"
    	      publishArtifacts="true"
    	      compress="true"
    	      reusePackedFiles="true"/>
    	<copy todir="${repo}/features">
    	   <fileset dir="${pack200Dir}/features" includes="*.pack.gz"/>
        </copy>
        
        <!--try create composite repository-->
        <p2.composite.artifact.repository.create location="file://${compsite.site}" name="${p2.repo.name}" compressed="true" failOnExists="false" />
        <p2.composite.metadata.repository.create location="file://${compsite.site}" name="${p2.repo.name}" compressed="true" failOnExists="false" />

        <!--add childRepo to composite repo-->
        <p2.composite.artifact.repository.add location="file://${compsite.site}" child="${buildId}" />
        <p2.composite.metadata.repository.add location="file://${compsite.site}" child="${buildId}" />

    	<!-- copy p2 metadata to build directory -->
    	<copy todir="${postingDirectory}/${buildId}/UpdateSite" overwrite="true">
    		<fileset dir="${compsite.site}/${buildId}">
    			<include name="features/**"/>
    			<include name="plugins/**"/>
    			<include name="*.jar"/>
    		</fileset>
    	</copy>
    	
    </target>
	<!-- test -->
</project>
