blob: 1281793ac1cdc4e89ba25bc23f34acdfd58e1623 [file] [log] [blame]
<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="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="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="checkLocal">
<available property="mapsLocal" file="${buildDirectory}/maps/org.eclipse.datatools.releng" />
</target>
<target name="prepareMapFile" depends="checkLocal" unless="mapsLocal">
<cvs cvsRoot="${mapCvsRoot}"
package="org.eclipse.datatools.releng" dest="${buildDirectory}/maps" tag="${mapVersionTag}" />
<cvs cvsRoot="${mapCvsRoot}"
package="org.eclipse.datatools.connectivity/releng/org.eclipse.datatools.connectivity.releng"
dest="${buildDirectory}/maps" tag="${mapVersionTag}" />
<cvs cvsRoot="${mapCvsRoot}"
package="org.eclipse.datatools.enablement/releng/org.eclipse.datatools.enablement.releng"
dest="${buildDirectory}/maps" tag="${mapVersionTag}" />
<cvs cvsRoot="${mapCvsRoot}"
package="org.eclipse.datatools.modelbase/releng/org.eclipse.datatools.modelbase.releng"
dest="${buildDirectory}/maps" tag="${mapVersionTag}" />
<cvs cvsRoot="${mapCvsRoot}"
package="org.eclipse.datatools.sqltools/releng/org.eclipse.datatools.sqltools.releng"
dest="${buildDirectory}/maps" tag="${mapVersionTag}" />
<cvs cvsRoot="${mapCvsRoot}"
package="org.eclipse.datatools.incubator/releng/org.eclipse.datatools.incubator.releng"
dest="${buildDirectory}/maps" tag="${mapVersionTag}" />
<!--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}"/>
<replace dir="${buildDirectory}/maps" value="${dtp.url.newvalue}" token="${dtp.url.token}">
<include name="**/*.map" />
</replace>
</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}" />
</target>
<target name="tagMapFiles" if="tagMaps">
<!-- Stores tag on the filesystem so map files can be compared -->
<echo file="${mapTag.properties}">
lastMapTag=r18_${buildId}
</echo>
<echo message="tagging org.eclipse.datatools.releng..."/>
<cvs dest="${buildDirectory}/maps/org.eclipse.datatools.releng" command="tag r18_${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 r18_${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 r18_${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 r18_${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 r18_${buildId}" />
<cvs dest="${buildDirectory}/maps/org.eclipse.datatools.incubator/releng/org.eclipse.datatools.incubator.releng" command="tag r18_${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_182" />
<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>