<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="buildDtpSdkAllFeature"/>
		<antcall target="buildDtpEnablementAllFeature"/>
		<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="HEAD">
			<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="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>

	<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"/>
		
		<!-- 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.7.2" 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"/>
				<include name="site.xml"/>
			</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" />
        <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 -->
        <!--p2.generator updatesite="${repo}" compress="true" append="true" flavor="tooling"
                      metadataRepository="file:${repo}"
                      artifactRepository="file:${repo}"
                      metadataRepositoryName="${p2.repo.name}"
                      artifactRepositoryName="${p2.repo.name}"
                      publishArtifacts="true" p2OS="linux" mode="incremental"
                      site="file:${updateSiteDir}/site.xml"/-->
        <copy file="${updateSiteDir}/site.xml" todir="${pack200Dir}"/>
        <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">
              <arg line="-application org.eclipse.equinox.p2.publisher.UpdateSitePublisher"/>
              <arg line="-metadataRepository file:${repo}"/>
              <arg line="-artifactRepository file:${repo}"/>
              <arg line="-source ${pack200Dir}"/>
              <arg line="-configs gtk.linux.x86"/>
              <arg line="-compress"/>
        	  <arg line="-reusePack200Files"/>
              <arg line="-publishArtifacts"/>
        </java>
    	<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>
	
</project>
