blob: 1812f5db0340f60f9042492c0033d4fed2d1e469 [file] [log] [blame]
Xiaoying Gub98c4812008-03-11 06:27:01 +00001<project name="Helper targets" default="noDefault" basedir="." >
2 <property name="postingDirectory" value="${buildDirectory}" />
3 <property name="publishingContent" value="${eclipse.build.configs}/../publishingFiles"/>
4
5 <!-- ===================================================================== -->
6 <!-- Set of helper targets for building the Eclipse SDK -->
7 <!-- ===================================================================== -->
8 <target name="discoverOS">
9 <condition property="onUnix">
10 <and>
11 <os family="unix" />
12 </and>
13 </condition>
14 <condition property="onWindows">
15 <and>
16 <os family="windows" />
17 </and>
18 </condition>
19 </target>
20
21 <target name="printWarnings" if="onWindows" depends="discoverOS">
22 <echo message="The UNIX versions of your build output will be invalid. Windows will not preserve symbolic links and permissions on executable files." />
23 </target>
24
25 <target name="setLabels">
26 <!--required-->
27 <!-- setup the label.properties file packaged in the source builds. -->
28 <!--Set this property to empty string-->
29 <property name="buildType" value="" />
30 <tstamp>
31 <format property="TODAY" pattern="MMMM d, yyyy" />
32 <format property="TSTAMP" pattern="HHmm" />
33 </tstamp>
34 <copy file="label.properties.template" tofile="${buildDirectory}/label.properties" overwrite="true" />
35 <replace file="${buildDirectory}/label.properties" token="@builddate@" value="${TODAY}" />
36 <replace file="${buildDirectory}/label.properties" token="@buildtype@" value="${buildType}" />
37 <replace file="${buildDirectory}/label.properties" token="@ds@" value="${timestamp}" />
38 <replace file="${buildDirectory}/label.properties" token="@buildid@" value="${buildId}" />
39 </target>
40
41 <target name="generateChecksum" unless="skipChecksum">
42 <checksum file="${archiveFullPath}" property="md5" />
43 <echo message="${md5} *${downloadFile}" file="${postingDirectory}/${buildLabel}/checksum/${downloadFile}.md5" />
44 </target>
45
46 <target name="publish" description="Preparing to post the build...">
47 <!--post clickThroughs-->
48 <copy todir="${postingDirectory}/${buildLabel}">
49 <fileset dir="${buildDirectory}/maps/org.eclipse.releng" includes="clickThroughs/" />
50 </copy>
51
52 <!--post directory.txt-->
53 <copy file="${buildDirectory}/directory.txt" todir="${postingDirectory}/${buildLabel}" />
54
55 <!--post instructions on automated testing-->
56 <copy file="${eclipse.build.configs}/sdk.tests/testScripts/readme.html" tofile="${postingDirectory}/${buildLabel}/automatedtesting.html" />
57 <copy file="${buildDirectory}/plugins/org.eclipse.test/testframework.html" tofile="${postingDirectory}/${buildLabel}/testframework.html" />
58
59 <antcall target="generateEclipseIndex" />
60
61 <!--get static files required in the buildLabel directory-->
62 <copy todir="${postingDirectory}/${buildLabel}">
63 <fileset dir="${publishingContent}/staticDropFiles" />
64 </copy>
65
66 <!--copy buildnotes from plugin directories-->
67 <mkdir dir="${postingDirectory}/${buildLabel}/buildnotes" />
68 <copy todir="${postingDirectory}/${buildLabel}/buildnotes" flatten="true">
69 <fileset dir="${buildDirectory}/plugins" includes="**/buildnotes_*.html,**/buildnotes_*.htm,**/jdt_core_style.css" />
70 </copy>
71
72 <!--copy javadoc logs-->
73 <copy file="${buildDirectory}/plugins/org.eclipse.platform.doc.isv/doc.bin.log" tofile="${postingDirectory}/${buildLabel}/compilelogs/platform.doc.isv.javadoc.txt" failonerror="false" />
74 <copy file="${buildDirectory}/plugins/org.eclipse.jdt.doc.isv/doc.bin.log" tofile="${postingDirectory}/${buildLabel}/compilelogs/jdt.doc.isv.javadoc.txt" failonerror="false" />
75 <copy file="${buildDirectory}/plugins/org.eclipse.jdt.doc.isv/jdtapt.doc.bin.log" tofile="${postingDirectory}/${buildLabel}/compilelogs/jdt.apt.javadoc.txt" failonerror="false" />
76 <copy file="${buildDirectory}/plugins/org.eclipse.pde.doc.user/doc.bin.log" tofile="${postingDirectory}/${buildLabel}/compilelogs/pde.doc.user.javadoc.txt" failonerror="false" />
77 <copy file="${buildDirectory}/plugins/org.eclipse.platform.doc.isv/platformconvert.txt" tofile="${postingDirectory}/${buildLabel}/compilelogs/platform.doc.isv.schema.txt" failonerror="false" />
78 <copy file="${buildDirectory}/plugins/org.eclipse.jdt.doc.isv/jdtconvert.txt" tofile="${postingDirectory}/${buildLabel}/compilelogs/jdt.doc.isv.schema.txt" failonerror="false" />
79 <copy file="${buildDirectory}/plugins/org.eclipse.pde.doc.user/pdeconvert.txt" tofile="${postingDirectory}/${buildLabel}/compilelogs/pde.doc.user.schema.txt" failonerror="false" />
80
81 </target>
82
83
84 <!-- ===================================================================== -->
85 <!-- Target used to test the build -->
86 <!-- ===================================================================== -->
87 <target name="testAll" unless="skip.tests">
88 <waitfor maxwait="4" maxwaitunit="hour" checkevery="1" checkeveryunit="minute">
89 <and>
90 <available file="${postingDirectory}/${buildLabel}/checksum/eclipse-Automated-Tests-${buildId}.zip.md5"/>
91 <available file="${postingDirectory}/${buildLabel}/checksum/eclipse-SDK-${buildId}-win32.zip.md5"/>
92 <available file="${postingDirectory}/${buildLabel}/checksum/eclipse-SDK-${buildId}-linux-gtk.tar.gz.md5"/>
93 <available file="${postingDirectory}/${buildLabel}/checksum/eclipse-SDK-${buildId}-macosx-carbon.tar.gz.md5"/>
94 </and>
95 </waitfor>
96
97 <property name="cvstest.properties" value="${base.builder}/../eclipseInternalBuildTools/cvstest.properties" />
98 <antcall target="configure.team.cvs.test"/>
99
100 <!--replace buildid in vm.properties for JVM location settings-->
101 <replace dir="${eclipse.build.configs}/sdk.tests/testConfigs"
102 token="@buildid@"
103 value="${buildId}"
104 includes="**/vm.properties"/>
105
106 <parallel>
107 <antcall target="test-JUnit" />
108 <antcall target="test-performance" />
109 </parallel>
110 </target>
111
112 <target name="test-JUnit">
113 <echo message="Starting tests." />
114 <property name="dropLocation" value="${postingDirectory}" />
115 <ant antfile="testAll.xml" dir="${eclipse.build.configs}/sdk.tests/testConfigs" />
116
117 <antcall target="generateEclipseIndex" />
118
119 <!--copy the test results and new index page to the posting location-->
120 <copy todir="${postingDirectory}/${buildLabel}" overwrite="true">
121 <fileset dir="${buildDirectory}/${buildLabel}" includes="testresults/**,*.php" />
122 </copy>
123 <replace file="${postingDirectory}/${buildLabel}/testResults.php" token="@build@" value="${buildId}" />
124
125 </target>
126
127 <!-- ===================================================================== -->
128 <!-- Target used to test the build -->
129 <!-- ===================================================================== -->
130 <target name="test-performance" unless="skip.performance.tests">
131 <echo message="Starting performance tests." />
132 <property name="dropLocation" value="${postingDirectory}" />
133 <ant antfile="testAll.xml" dir="${eclipse.build.configs}/sdk.tests/testConfigs" target="performanceTests" />
134 <antcall target="generatePerformanceResults" />
135 </target>
136
137 <!-- ===================================================================== -->
138 <!-- Target used to test the build for internal references -->
139 <!-- ===================================================================== -->
140 <target name="test-internalReferences">
141 <waitfor maxwait="4" maxwaitunit="hour" checkevery="1" checkeveryunit="minute">
142 <available file="${postingDirectory}/${buildLabel}/checksum/eclipse-SDK-${buildId}-win32.zip.md5"/>
143 </waitfor>
144
145 <property name="apiscanner" value="${eclipse.build.configs}/sdk/tools/apiscanner" />
146 <property name="workingDir" value="${buildDirectory}/internalReference" />
147 <mkdir dir="${workingDir}" />
148 <unzip src="${postingDirectory}/${buildLabel}/eclipse-SDK-${buildId}-win32.zip" dest="${workingDir}" />
149
150 <java classname="org.eclipse.wtp.releng.tools.component.violation.ComponentViolationEmitter" fork="true" dir="${apiscanner}">
151 <arg line="
152 -eclipseDir ${workingDir}/eclipse
153 -compXMLDir ${buildDirectory}/plugins
154 -compRefDir component-ref
155 -compVioDir ${postingDirectory}/${buildLabel}/internalReference
156 -xsl xsl/component-violation.xsl
157 -summaryXSL xsl/component-violation-summary.xsl" />
158 <classpath>
159 <fileset dir="${apiscanner}/lib" />
160 </classpath>
161 </java>
162 </target>
163
164 <!-- ===================================================================== -->
165 <!-- Helper targets -->
166 <!-- ===================================================================== -->
167
168
169 <target name="configure.team.cvs.test" unless="test.xml.tmp" if="cvstest.properties">
170 <copy file="${eclipse.build.configs}/sdk.tests/testScripts/test.xml" tofile="${eclipse.build.configs}/sdk.tests/testScripts/test.xml.tmp" />
171 <replace file="${eclipse.build.configs}/sdk.tests/testScripts/test.xml" propertyFile="${cvstest.properties}">
172 <replacefilter token="${cvs_user}" property="cvs_user" />
173 <replacefilter token="${cvs_password}" property="cvs_password" />
174 <replacefilter token="${cvs_host}" property="cvs_host" />
175 <replacefilter token="${cvs_root}" property="cvs_root" />
176 </replace>
177 <delete file="${eclipse.build.configs}/sdk.tests/testScripts/test.xml.tmp" />
178 </target>
179
180
181
182 <target name="generatePerformanceResults">
183 <mkdir dir="${buildDirectory}/${buildLabel}/performance" />
184 <mkdir dir="${postingDirectory}/${buildLabel}/performance" />
185 <taskdef name="performanceResults" classname="org.eclipse.releng.performance.PerformanceResultHtmlGenerator" />
186 <condition property="configArgs" value="-ws gtk -arch ppc">
187 <not>
188 <equals arg1="{os.arch}" arg2="i386" />
189 </not>
190 </condition>
191 <property name="configArgs" value="" />
192
193 <java jar="${basedir}/../org.eclipse.releng.basebuilder/plugins/org.eclipse.equinox.launcher.jar" fork="true" maxmemory="256m">
194 <arg line="${configArgs} -application org.eclipse.test.performance.ui.resultGenerator
195 -baseline ${eclipse.perf.ref}
196 -baseline.prefix 3.2_200606291905
197 -current ${buildId}
198 -jvm ${eclipse.perf.jvm}
199 -output ${postingDirectory}/${buildLabel}/performance/
200 -config eclipseperfwin1_R3.3,eclipseperflnx1_R3.3,eclipseperfwin2_R3.3,eclipseperflnx2_R3.3,eclipseperflnx3_R3.3
201 -config.properties ${eclipse.perf.config.descriptors}
202 -scenario.pattern org.eclipse.%.test"
203 />
204 <!-- add this argument to list above when there are milestone builds to highlight
205 -highlight.latest 3.3M1_
206 -->
207 <env key="LD_LIBRARY_PATH" value="${basedir}/../org.eclipse.releng.basebuilder" />
208 <sysproperty key="eclipse.perf.dbloc" value="${dbloc}" />
209 </java>
210
211 <performanceResults
212 xmlDirectoryName="${postingDirectory}/${buildLabel}/performance/xml"
213 dropDirectoryName="${postingDirectory}/${buildLabel}"
214 testResultsTemplateFileName="${publishingContent}/templateFiles/performance.php.template"
215 testResultsHtmlFileName="performance/performance.php"
216 hrefTestResultsTargetPath="html"
217 testManifestFileName="${publishingContent}/performanceTestManifest.xml"
218 />
219
220 <replace file="${postingDirectory}/${buildLabel}/performance/performance.php" token="@buildType@" value="${buildType}" />
221 </target>
222
223 <target name="verifyCompile" if="eclipse.running">
224
225 <echo message="Checking for compile errors..." />
226 <echo message="Log file directory: ${postingDirectory}/${buildId}/compilelogs" />
227
228 <!--create html output for compile logs-->
229 <echo message="${postingDirectory}/${buildId}/compilelogs/plugins"/>
230 <eclipse.convert input="${postingDirectory}/${buildId}/compilelogs/plugins" validation="true"/>
231
232 <!-- Sends email to recipient list in monitor.properties with compile logs attached if errors found-->
233 <!-- The shell scripts will gather compile error plugin list into monitor.properties -->
Xiaoying Guc4f3d6e2008-03-31 09:51:29 +0000234 <echo message="${eclipse.build.configs}/../../extras/verifyCompile.sh"/>
Xiaoying Gub98c4812008-03-11 06:27:01 +0000235 <exec executable="${eclipse.build.configs}/../../extras/verifyCompile.sh">
236 <arg value="${postingDirectory}/${buildId}/compilelogs"/>
237 </exec>
Xiaoying Gubf0c0992008-06-10 08:59:26 +0000238 <echo message=" start check compile error"/>
Xiaoying Gub98c4812008-03-11 06:27:01 +0000239 <antcall target="checkCompileError"/>
240 </target>
241
242 <target name="rSyncWithSnzZrh" unless="test">
243 <waitfor maxwait="300" maxwaitunit="minute" checkevery="1" checkeveryunit="minute">
244 <available file="${postingDirectory}/${buildId}/eclipse-Automated-Tests-${buildId}.zip" />
245 </waitfor>
246 <antcall target="zrhBuilds" />
247 <antcall target="snzBuilds" />
248 </target>
249
250 <target name="snzBuilds">
251 <!--copy drops to local directory for rsync with snz-->
252 <copy todir="/builds/transfer/files/snz">
253 <fileset dir="${postingDirectory}" includes ="${buildId}/eclipse-SDK-*-win32.zip,${buildId}/eclipse-SDK-*-linux-gtk.tar.gz" excludes="${buildId}/eclipse-SDK-examples-*-win32.zip" />
254 </copy>
255 </target>
256
257 <target name="zrhBuilds">
258 <!--copy drops to local directory for rsync with zrh-->
259 <copy todir="/builds/transfer/files/zrh">
260 <fileset dir="${postingDirectory}" includes ="${buildId}/eclipse-SDK-*-macosx-carbon.tar.gz,${buildId}/eclipse-SDK-*-win32.zip,${buildId}/eclipse-SDK-*-linux-*.tar.gz" excludes="${buildId}/eclipse-SDK-examples-*-win32.zip,${buildId}/eclipse-SDK-*-linux-gtk-x86_64.tar.gz,${buildId}/eclipse-SDK-*-linux-gtk-ppc.tar.gz" />
261 </copy>
262 </target>
263 <!-- ===================================================================== -->
264 <!-- Default target -->
265 <!-- ===================================================================== -->
266 <target name="noDefault">
267 <echo message="You must specify a target when invoking this file" />
268 </target>
269
270 <target name="buildUpdateJars">
271 <property name="updateJarWorkingDir" value="${buildDirectory}/updateJars" />
272 <mkdir dir="${updateJarWorkingDir}" />
273 <mkdir dir="${updateJarWorkingDir}/site" />
274
275 <!--eclipse-master-${buildId}.bak.zip contains the signed update jars. eclipse-master-${buildId}.zip contains the
276 features and plug-ins unpacked. Need features in directory structures for tool to work. -->
277
278 <unzip src="${buildDirectory}/${buildId}/birt-report-framework-sdk-${package.version}.zip" dest="${updateJarWorkingDir}" />
279
280 <!--operation on creates update jars for features and for plug-ins which are to be unpacked when installed-->
281 <java classname="org.eclipse.releng.generators.UpdateBuilder" >
282 <arg line="-root ${updateJarWorkingDir}/eclipse -directory ${buildDirectory}/directory.txt -build ${buildId} -site ${updateJarWorkingDir}/site -sitexml ${updateSite}/site.xml" />
283 <classpath>
284 <pathelement location="${base.builder}/plugins/org.eclipse.internal.build.tools/internalTools.jar"/>
285 <pathelement location="${base.builder}/plugins/org.eclipse.build.tools/buildTools.jar"/>
286 <pathelement location="${base.builder}/plugins/org.eclipse.osgi_3.2.0.v20060601.jar"/>
287 </classpath>
288 </java>
289
290 <!--store previous site.xml-->
291 <move file="${updateSite}/site.xml" tofile="${updateSite}/site.xml.bak" overwrite="true" />
292 <!--copy site.xml to update site-->
293 <copy todir="${updateSite}" overwrite="true">
294 <fileset dir="${updateJarWorkingDir}/site" includes="site.xml" />
295 </copy>
296
297 <mkdir dir="${updateSite}/features" />
298 <mkdir dir="${updateSite}/plugins" />
299
300 <!--use original signed update jars-->
301 <!-- back up
302 <exec executable="unzip" dir=".">
303 <arg line="-j ${buildDirectory}/${buildId}/birt-report-framework-sdk-${package.version}.bak.zip -i */features/* -x */master-equinox* */com.ibm.icu.base* -d ${updateSite}/features" />
304 </exec>
305 -->
306 <exec executable="unzip" dir=".">
307 <arg line="-j ${buildDirectory}/${buildId}/birt-report-framework-sdk-${package.version}.bak.zip -i */features/* -d ${updateSite}/features" />
308 </exec>
309 <java jar="${eclipse.home}/startup.jar"
310 fork="true"
311 jvm="${java15-home}/bin/java"
312 failonerror="true"
313 maxmemory="128m"
314 dir="${buildDirectory}">
315 <arg line="-application org.eclipse.update.core.siteOptimizer"/>
316 <arg line="-digestBuilder -digestOutputDir=${updateSite} -siteXML=${updateSite}/site.xml"/>
317 </java>
318 </target>
319
320 <target name="cleanSites">
321 <cleanSite ageInMinutes="1440" directoryName="/builds/transfer/files/master/downloads/drops" realDelete="true" />
322 <cleanSite ageInMinutes="1440" directoryName="/builds/transfer/files/master/equinox/drops/" realDelete="true" />
323 <cleanSite ageInMinutes="1440" directoryName="/builds/transfer/files/bogus/downloads/drops" realDelete="true" />
324 <cleanSite ageInMinutes="1440" directoryName="/builds/transfer/files/zrh" realDelete="true" />
325 <cleanSite ageInMinutes="1440" directoryName="/builds/transfer/files/snz" realDelete="true" />
326 </target>
327
328 <target name="CheckoutFromP4" depends="init">
329
330 <!-- check out org.eclipse.releng -->
331 <!-- check out version control files -->
332
333 <property file="${eclipse.build.configs}/../../config.properties"/>
334
335 <echo message="p4.workspace=${p4.workspace}"/>
336 <echo message="p4.home=${p4.home}"/>
337 <echo message="p4.client=${p4.client}"/>
338
339
340 <delete dir="${p4.workspace}/Development/JRP/Dev/build" failonerror="false" />
341 <mkdir dir="${p4.workspace}/Development/JRP/Dev/build" />
342
343 <delete dir="${p4.home}/CvsDiff" failonerror="false"/>
344 <delete dir="${p4.home}/reportTestsLib" failonerror="false"/>
345
346 <!-- checkout the package to checkout.dir -->
347 <echo message="checking out daily build scripts" />
348
349 <!-- //${p4.client}/Development/JRP/Dev/build/sampleReports/...
350 //${p4.client}/Development/JRP/Dev/build/cvsDiff/...
351 -->
352 <p4sync view="//${p4.client}/Development/JRP/Dev/build/script/...
353 //${p4.client}/Development/JRP/Dev/build/lib/...
354 //${p4.client}/Development/JRP/Dev/build/AutomationLib/...
355 //${p4.client}/Development/JRP/Dev/birt/org.eclipse.birt.report.data.oda.jdbc/jdbc-drivers/..."
356 port="${p4.port}"
357 user="${p4.user}"
358 globalopts="-P ${p4.passwd}"
359 failonerror="true"
360 force="true" />
361
362 <copy todir="${p4.home}/reportTestsLib" overwrite="true" failonerror="true">
363 <fileset dir="${p4.workspace}/Development/JRP/Dev/build/AutomationLib"/>
364 </copy>
365 <copy todir="${p4.home}/drivers" overwrite="true" failonerror="true">
366 <fileset dir="${p4.workspace}/Development/JRP/Dev/birt/org.eclipse.birt.report.data.oda.jdbc/jdbc-drivers"/>
367 </copy>
368 <!--
369 <copy todir="${p4.home}/CvsDiff" overwrite="true" failonerror="true">
370 <fileset dir="${p4.workspace}/Development/JRP/Dev/build/cvsDiff"/>
371 </copy>
372 -->
373 <copy todir="${p4.home}/../PackageFiles/template" overwrite="true" failonerror="true">
374 <fileset dir="${p4.workspace}/Development/JRP/Dev/build/script/template">
375 <include name="**"/>
376 </fileset>
377 </copy>
378 </target>
379
380 <target name="backupSrc">
381 </target>
382
383 <target name="cleanBuild">
384
385 <echo message="clean up last input under ${buildDirectory} ..." />
386 <delete failonerror="false" includeemptydirs="true">
387 <fileset dir="${buildDirectory}">
388 <include name="*.properties"/>
389 <include name="*.txt"/>
390 <include name="*.xml"/>
391 <include name="plugins/**"/>
392 <include name="features/**"/>
393 <include name="maps/source"/>
394 </fileset>
395 </delete>
396 <delete failonerror="false" includeemptydirs="true">
397 <fileset dir="${p4.home}">
398 <include name="source/**"/>
399 <include name="CvsResult/*.xml"/>
400 <include name="CvsResult/DaysInPast/*.xml"/>
401 </fileset>
402 </delete>
403 </target>
404 <target name="init">
405 <echo message="loading ${eclipse.build.configs}/../../build.properties ..."/>
406 <property file="${eclipse.build.configs}/../../build.properties"/>
407 </target>
408
409 <target name="getDTPDownloads" depends="init">
410
411 <tstamp prefix="timestamp">
412 <format property="TODAY_US" pattern="MMddyy" timezone="GMT-16"/>
413 <format property="TODAY_SH" pattern="MMddyy" />
414 </tstamp>
415
416 <property name="plugin-dest" value="${baseLocation}"/>
417 <property name="package-dest" value="${baseLocation}/../PackageFiles"/>
418 <property name="AllInOne-dest" value="${baseLocation}/../PackageFiles/AllInOne"/>
419 <property name="AllInOne-Linux-dest" value="${baseLocation}/../PackageFiles/AllInOne-Linux"/>
420 <property name="file-version" value="${file-prefix}${timestamp.TODAY_US}"/>
421
422 <get src="http://download.eclipse.org/datatools/downloads/drops/N_DTP_1.6/${file-version}.zip" dest="${postingDirectory}/../platform/DTP/${file-version}.zip" verbose="true" usetimestamp="true" />
423
424 <echo message="START to Unzip the downloaded Plugins files" />
425 <unzip src="${postingDirectory}/../platform/DTP/${file-version}.zip" dest="${p4.home}/downloads/${file-version}"/>
426
427 <echo message="Clean last download stuff" />
428 <delete includeemptydirs="true" failonerror="false">
429 <fileset dir="${plugin-dest}/plugins" >
430 <include name="*.datatools.*.jar" />
431 <include name="org.eclipse.datatools.*/**" />
432 <include name="org.apache.xerces_*.jar"/>
433 <include name="org.apache.xml.resolver_*.jar"/>
434 <include name="javax.wsdl_*.jar"/>
435 </fileset>
436 <fileset dir="${plugin-dest}/features" >
437 <include name="org.eclipse.datatools.*/**" />
438 </fileset>
439 <fileset dir="${package-dest}/dtp/eclipse/plugins" >
440 <include name="*.datatools.*.jar" />
441 <include name="org.eclipse.datatools.*/**" />
442 <include name="org.apache.xerces_*.jar"/>
443 <include name="org.apache.xml.resolver_*.jar"/>
444 <include name="javax.wsdl_*.jar"/>
445 </fileset>
446 <fileset dir="${package-dest}/dtp/eclipse/features" >
447 <include name="org.eclipse.datatools.*/**" />
448 </fileset>
449 <!-- =============================
450 <fileset dir="${AllInOne-dest}/eclipse/plugins" >
451 <include name="*.datatools.*.jar" />
452 <include name="org.eclipse.datatools.*/**" />
453 <include name="org.apache.xerces_*.jar"/>
454 <include name="org.apache.xml.resolver_*.jar"/>
455 <include name="javax.wsdl_*.jar"/>
456 </fileset>
457 <fileset dir="${AllInOne-dest}/eclipse/features" >
458 <include name="org.eclipse.datatools.*/**" />
459 </fileset>
460 <fileset dir="${AllInOne-Linux-dest}/eclipse/plugins" >
461 <include name="*.datatools.*.jar" />
462 <include name="org.eclipse.datatools.*/**" />
463 <include name="org.apache.xerces_*.jar"/>
464 <include name="org.apache.xml.resolver_*.jar"/>
465 <include name="javax.wsdl_*.jar"/>
466 </fileset>
467 <fileset dir="${AllInOne-Linux-dest}/eclipse/features" >
468 <include name="org.eclipse.datatools.*/**" />
469 </fileset>
470 ====================================== -->
471 </delete>
472
473 <!--Define the ODA dependency plugins-->
474 <patternset id="oda.runtime.plugins">
475 <include name="org.eclipse.datatools.connectivity_*.jar" />
476 <include name="org.eclipse.datatools.connectivity.ui_*.jar" />
477 <include name="org.eclipse.datatools.connectivity.ui.dse_*.jar" />
478 <include name="org.eclipse.datatools.doc.user_*/**"/>
479 <include name="org.eclipse.datatools.connectivity.oda.consumer_*.jar" />
480 <include name="org.eclipse.datatools.connectivity.oda.design.ui_*.jar" />
481 <include name="org.eclipse.datatools.connectivity.oda.design_*.jar" />
482 <include name="org.eclipse.datatools.connectivity.oda.flatfile.ui_*.jar" />
483 <include name="org.eclipse.datatools.connectivity.oda.flatfile_*.jar" />
484 <include name="org.eclipse.datatools.connectivity.oda.profile_*.jar" />
485 <include name="org.eclipse.datatools.connectivity.oda_*.jar" />
486 <include name="org.eclipse.datatools.connectivity.oda.designer.finfo_*.jar"/>
487 <include name="org.eclipse.datatools.connectivity.oda.finfo_*.jar"/>
488 <include name="org.eclipse.datatools.connectivity.oda.template.ui_*.jar"/>
489 <include name="org.eclipse.datatools.enablement.oda.xml_*.jar"/>
490 <include name="org.eclipse.datatools.enablement.oda.xml.ui_*.jar"/>
491 <include name="org.eclipse.datatools.enablement.oda.designer.finfo_*.jar"/>
492 <include name="org.eclipse.datatools.enablement.oda.finfo_*.jar"/>
493 <include name="org.eclipse.datatools.oda.cshelp_*.jar"/>
494 <include name="org.eclipse.datatools.enablement.oda.ws.ui_*.jar"/>
495 <include name="org.eclipse.datatools.enablement.oda.ws_*.jar"/>
496 <include name="org.eclipse.datatools.help_*.jar"/>
497 <include name="org.eclipse.datatools.doc.isv_*.jar"/>
498 <include name="org.apache.xerces_*.jar"/>
499 <include name="org.apache.xml.resolver_*.jar"/>
500 <include name="javax.wsdl_*.jar"/>
501 </patternset>
502 <patternset id="oda.runtime.features">
503 <include name="org.eclipse.datatools.connectivity.oda.designer.feature_*/**" />
504 <include name="org.eclipse.datatools.connectivity.oda.feature_*/**" />
505 <include name="org.eclipse.datatools.enablement.oda.feature_*/**" />
506 <include name="org.eclipse.datatools.enablement.oda.designer.feature_*/**" />
507 <include name="org.eclipse.datatools.doc.user_*/**"/>
508 </patternset>
509
510
511 <!-- Copy to static baseLocation -->
512 <copy todir="${plugin-dest}/plugins" failonerror="false" >
513 <fileset dir="${p4.home}/downloads/${file-version}/eclipse/plugins">
514 <patternset refid="oda.runtime.plugins" />
515 </fileset>
516 </copy>
517 <copy todir="${plugin-dest}/features" failonerror="false" >
518 <fileset dir="${p4.home}/downloads/${file-version}/eclipse/features">
519 <patternset refid="oda.runtime.features" />
520 </fileset>
521 </copy>
522
523 <!-- Copy to package files dir -->
524 <copy todir="${package-dest}/dtp/eclipse/plugins" failonerror="false">
525 <fileset dir="${p4.home}/downloads/${file-version}/eclipse/plugins">
526 <patternset refid="oda.runtime.plugins" />
527 </fileset>
528 </copy>
529
530 <copy todir="${package-dest}/dtp/eclipse/features" failonerror="false" >
531 <fileset dir="${p4.home}/downloads/${file-version}/eclipse/features">
532 <patternset refid="oda.runtime.features" />
533 </fileset>
534 </copy>
535 </target>
536
537 <!-- Build BIRT Web Viewer -->
538 <target name="BuildWebViewer" depends="init">
539 <mkdir dir="${buildDirectory}/${buildId}/birt_web"/>
540 <ant antfile="WebViewerPackager.xml" dir="${buildDirectory}/plugins/org.eclipse.birt.report.viewer" target="Jar">
541 <property name="integrate.dir" value="${buildDirectory}/${buildId}/eclipse"/>
542 <property name="baseLocation.emf" value="${baseLocation.emf}"/>
543 </ant>
544 <ant antfile="WebViewerPackager.xml" dir="${buildDirectory}/plugins/org.eclipse.birt.report.viewer" target="Export">
545 <property name="export.dir" value="${buildDirectory}/${buildId}/birt_web"/>
546 </ant>
547 <!-- copy extra chartengine and emf -->
548 <!--
549 <copy todir="${buildDirectory}/${buildId}/birt_web/org.eclipse.birt.report.viewer/birt_web/WEB-INF/platform/lib">
550 <fileset dir="${baseLocation}/plugins/">
551 <include name="org.eclipse.emf.common_*.jar" />
552 <include name="org.eclipse.emf.ecore.xmi_*.jar" />
553 <include name="org.eclipse.emf.ecore_*.jar" />
554 </fileset>
555 </copy>
556 <copy todir="${buildDirectory}/${buildId}/birt_web/org.eclipse.birt.report.viewer/birt_web/WEB-INF/platform/lib">
557 <fileset dir="${buildDirectory}/${buildId}/eclipse/plugins" />
558 <mapper type="regexp" from="org.eclipse.birt.chart.engine_.*.jar" to="chartengineapi.jar"/>
559 </copy>
560 -->
561 <copy todir="${buildDirectory}/${buildId}/birt_web/org.eclipse.birt.report.viewer/birt_web/WEB-INF/lib">
562 <fileset dir="${buildDirectory}/${buildId}/eclipse/plugins" >
563 <include name="org.eclipse.birt.chart.engine_.*.jar"/>
564 </fileset>
565 <mapper type="regexp" from="org.eclipse.birt.chart.engine_.*.jar" to="chartengineapi.jar"/>
566 </copy>
567 </target>
568
569 <target name="runBirtPerformance" depends="init">
570 <ant dir="${runner.dir}" antfile="testRunner.xml" target="org.eclipse.birt.test.performance"/>
571 <!-- copy performance result to public test result dir -->
572 <property file="${buildDirectory}/finalPluginsVersions.properties"/>
573 <copy todir="${test.dir}/unitTestReport/html">
574 <fileset dir="${test.dir}/eclipse/plugins/org.eclipse.birt.test.performance_${org.eclipse.birt.test.performance}">
575 <include name="reporting_*.xml"/>
576 </fileset>
577 </copy>
578 </target>
579
580 <target name="runBirtTest" depends="init,prepareBirtTest">
581 <!-- call the birt unit test -->
582 <ant dir="${runner.dir}" antfile="testRunner.xml" />
583 <antcall target="transformTestReports"/>
584 </target>
585
586 <target name="prepareBirtTest" depends="init">
587 <!-- Clean last test plugins -->
588 <delete includeEmptyDirs="true" failonerror="false">
589 <fileset dir="${test.dir}/eclipse">
590 <include name="**/*"/>
591 </fileset>
592 </delete>
593 <!-- clean last unit test reports -->
594 <delete failonerror="false">
595 <fileset dir="${test.dir}/unitTestReport">
596 <include name="**/*.xml"/>
597 <include name="**/*.html"/>
598 <exclude name="**/build.xml"/>
599 </fileset>
600 </delete>
601 <!-- prepare unit test components -->
602 <copy todir="${test.dir}">
603 <fileset dir="${postingDirectory}/${buildId}">
604 <include name="birt-report-designer-all-in-one-${package.version}-linux-gtk.tar.gz"/>
605 <include name="birt-tests-suite-${package.version}.zip"/>
606 </fileset>
607 </copy>
608
609 <exec executable="gunzip" dir="${test.dir}">
610 <arg line="birt-report-designer-all-in-one-${package.version}-linux-gtk.tar.gz" />
611 </exec>
612 <exec executable="tar" dir="${test.dir}">
613 <arg line="-xvf birt-report-designer-all-in-one-${package.version}-linux-gtk.tar" />
614 </exec>
615 <exec executable="unzip" dir="${test.dir}">
616 <arg line="-o -q birt-tests-suite-${package.version}.zip -d ${test.dir}" />
617 </exec>
618 <exec executable="unzip" dir="${postingDirectory}/${buildId}/../../platform/2.3M4_platform">
619 <arg line="-o -q eclipse-test-framework-3.4M4.zip -d ${test.dir}" />
620 </exec>
621 <delete>
622 <fileset dir="${test.dir}">
623 <include name="*.zip"/>
624 <include name="*.gz"/>
625 <include name="*.tar"/>
626 </fileset>
627 </delete>
628
629 <!-- copy drivers for jdbc testing -->
630 <property file="${buildDirectory}/finalPluginsVersions.properties"/>
631 <copy todir="${test.dir}/eclipse/plugins/org.eclipse.birt.report.data.oda.jdbc_${org.eclipse.birt.report.data.oda.jdbc}/drivers">
632 <fileset dir="${p4.home}/drivers">
633 <include name="**"/>
634 </fileset>
635 </copy>
636 </target>
637
638
639
640 <target name="transformTestReports">
641 <property file="${buildDirectory}/finalPluginsVersions.properties"/>
642 <copy todir="${test.dir}/unitTestReport/smokexml">
643 <fileset dir="${test.dir}/eclipse/plugins/org.eclipse.birt.report.tests.engine_${org.eclipse.birt.report.tests.engine}">
644 <include name="TESTS-*.xml"/>
645 </fileset>
646 <fileset dir="${test.dir}/eclipse/plugins/org.eclipse.birt.tests.data_${org.eclipse.birt.tests.data}">
647 <include name="TESTS-*.xml"/>
648 </fileset>
649 </copy>
650 <!-- XSLT trasform-->
651 <exec executable="${test.dir}/unitTestReport/processXML.sh"/>
652 <ant dir="${test.dir}/unitTestReport" antfile="build.xml"/>
653 <mkdir dir="${postingDirectory}/../unitTestReport/${package.version}/${buildId}"/>
654 <copy todir="${postingDirectory}/../unitTestReport/${package.version}/${buildId}" overwrite="true">
655 <fileset dir="${test.dir}/unitTestReport/html">
656 <include name="*.html"/>
657 </fileset>
658 </copy>
659 </target>
660
661 <target name="buildLanguagePack">
662 <antcall target="MakeNLPack1"/>
663 <antcall target="PackageNLPack1"/>
664 </target>
665 <target name="MakeNLPack1">
666 <echo message="Start Make NL1 Pack" />
667 <ant antfile="LanguagePackBuild.xml" dir="${eclipse.build.configs}/birt.nl/tools" target="main" inheritAll="true">
668 <property name="build.id" value="${buildId}" />
669 </ant>
670 </target>
671
672 <target name="PackageNLPack1" >
673 <echo message="Start Packaging NL1 for full, framework and RCP" />
674 <ant antfile="BIRTDownloadSetup.xml" target="createNLGroup1" dir="${eclipse.build.configs}/birt/tools" inheritAll="false">
675 <property name="deposit" value="${buildDirectory}/${buildId}" />
676 <property name="OutputDir" value="${postingDirectory}/${buildId}"/>
677 </ant>
678 <echo message="Start Packaging NL1 for charts" />
679 <ant antfile="BIRTDownloadSetup.xml" target="createNLGroup1Chart" dir="${eclipse.build.configs}/birt/tools" inheritAll="false">
680 <property name="deposit" value="${buildDirectory}/${buildId}" />
681 <property name="OutputDir" value="${postingDirectory}/${buildId}"/>
682 </ant>
683 <echo message="Start Packaging NL1 for runtime" />
684 <ant antfile="BIRTDownloadSetup.xml" target="createNLGroup1Runtime" dir="${eclipse.build.configs}/birt/tools" inheritAll="false">
685 <property name="deposit" value="${buildDirectory}/${buildId}" />
686 <property name="OutputDir" value="${postingDirectory}/${buildId}"/>
687 </ant>
688 <!-- Create NL FeatureOverlay packages -->
689 <ant antfile="BIRTDownloadSetup.xml" dir="${eclipse.build.configs}/birt/tools" target="createBirtNLFeatureOverlay">
690 <property name="OutputDir" value="${postingDirectory}/${buildId}" />
691 <property name="deposit" value="${buildDirectory}/${buildId}" />
692 </ant>
693 </target>
694
695 <target name="InformQA" unless="nomail">
696 <property file="${eclipse.build.configs}/../../config.properties" />
697 <mail mailport="${mail.port}" tolist="${QA.members}" from="${mail.from}" replyto="${replyto.address}" subject="${BranchVersion} Build Is Ready (BuildId: ${buildId})" >
698 <message>
699Hi All,
700
701Today's build (BuildId: ${buildId}) is available.
702Build based on:
703${build.environment}
704
705Please download :
706
707AllInOne from ${QA.test.dir}\BIRT2.3-download\${buildId}\birt-report-designer-all-in-one-${package.version}.zip${rtn}
708AllInOne for linux from: ${QA.test.dir}\BIRT2.3-download\${buildId}\birt-report-designer-all-in-one-${package.version}-linux-gtk.tar.gz${rtn}
709RCP from ${QA.test.dir}\BIRT2.3-download\${buildId}\birt-rcp-report-designer-${package.version}.zip${rtn}
710Runtime from ${QA.test.dir}\BIRT2.3-download\${buildId}\birt-runtime-${package.version}.zip${rtn}
711Framework from ${QA.test.dir}\BIRT2.3-download\${buildId}\birt-report-framework-${package.version}.zip${rtn}
712Source drops from ${QA.test.dir}\BIRT2.3-download\${buildId}\birt-source-${package.version}.zip${rtn}
713JUnit Test Suite Framework from ${QA.test.dir}\BIRT2.3-download\${buildId}\birt-tests-suite-${package.version}.zip${rtn}
714
715NL pack from ${QA.test.dir}\BIRT2.3-download\${buildId}\
716
717Internal Update Site URL: http://qa-build/UpdateSite/${package.version}
718
719Please visit [ http://qa-build:8080/BuildCentral ] for more information.
720
721Have a nice day!
722 </message>
723 </mail>
724 <!-- create download info file -->
725 <echo file="download.properties" append="false">
726 allInOne=\\${QA.test.dir}\\BIRT2.3-download\\${buildId}\\birt-report-designer-all-in-one-${package.version}.zip
727 runtime=\\${QA.test.dir}\\BIRT2.3-download\\${buildId}\\birt-runtime-${package.version}.zip
728 rcp=\\${QA.test.dir}\\BIRT2.3-download\\${buildId}\\birt-rcp-report-designer-${package.version}.zip
729 frameworkSDK=\\${QA.test.dir}\\BIRT2.3-download\\${buildId}\\birt-report-framework-sdk-${package.version}.zip
730 </echo>
731 <copy tofile="${postingDirectory}/download.properties" file="download.properties" overwrite="true" />
732 </target>
733
734 <target name="InformPerformance" unless="nomail">
735 <property file="${eclipse.build.configs}/../../config.properties" />
736 <mail mailport="${mail.port}" subject="${BranchVersion} Performance Test Reporting (BuildId: ${buildId} ) " tolist="${QA.PERFORMANCE}">
737 <from address="${mail.from}"/>
738 <replyto address="${replyto.address}"/>
739 <message>
740Hi All,
741
742Please see the attachments for performance test (BuildId: ${buildId}) results.
743
744Please visit [ http://qa-build:8080/BuildCentral ] for more information.
745
746Have a nice day!
747 </message>
748 <fileset dir="${test.dir}/unitTestReport/html">
749 <include name="reporting_*.xml"/>
750 </fileset>
751 </mail>
752 </target>
753
754
755 <target name="genTestResultSummary">
756 <property file="${eclipse.build.configs}/../../config.properties" />
757 <property name="tool.lib.path" value="${p4.home}/dailybuild/source/org.eclipse.birt.build"/>
758 <path id="customjar.classpath">
759 <path location="${tool.lib.path}/customtask.jar" />
760 <fileset dir="${tool.lib.path}/lib">
761 <include name="*.jar"/>
762 </fileset>
763 </path>
764 <!-- Using custom build tools to get failure/error summary of test result -->
765 <java classname="org.eclipse.birt.build.ParseResultCount">
766 <classpath refid="customjar.classpath" />
767 <arg value="${test.dir}/unitTestReport/xml" />
768 <arg value="${test.dir}/unitTestReport/html/result.properties" />
769 <arg value="Y"/>
770 <arg value="Y"/>
771 </java>
772 <!--
773 <java classname="org.eclipse.birt.build.ParseResultCount">
774 <classpath refid="customjar.classpath" />
775 <arg value="${test.dir}/unitTestReport/smokexml" />
776 <arg value="${test.dir}/unitTestReport/html/result.properties" />
777 <arg value="Y"/>
778 <arg value="N"/>
779 </java>
780 -->
781 <move file="${test.dir}/unitTestReport/html/result.properties"
782 tofile="${postingDirectory}/result.properties"/>
783 </target>
784
785 <target name="InformAutomation" unless="nomail">
786 <property file="${eclipse.build.configs}/../../config.properties" />
787 <mail mailport="${mail.port}" subject="${BranchVersion} Test Suite Projects Reporting (BuildId: ${buildId} ) " tolist="${QA.AUTOMATION}">
788 <from address="${mail.from}"/>
789 <replyto address="${replyto.address}"/>
790 <message>
791Hi All,
792
793Please see the attachments for test results.
794The repository of junit test reports can be found under: ${QA.test.dir}\unitTestReport\${package.version}\
795
796Please visit [ http://qa-build:8080/BuildCentral ] for more information.
797
798Have a nice day!
799 </message>
Xiaoying Guc4f3d6e2008-03-31 09:51:29 +0000800 <!--
Xiaoying Gub98c4812008-03-11 06:27:01 +0000801 <fileset dir="${test.dir}/unitTestReport/html">
Xiaoying Gubf0c0992008-06-10 08:59:26 +0000802
Xiaoying Gub98c4812008-03-11 06:27:01 +0000803 <include name="TESTS-EngineSmokeTests.html"/>
804 <include name="TESTS-DtESmokeTests.html"/>
Xiaoying Gubf0c0992008-06-10 08:59:26 +0000805
Xiaoying Gub98c4812008-03-11 06:27:01 +0000806 <include name="org.eclipse.birt.report.tests.model.AllTests.html"/>
807 <include name="org.eclipse.birt.report.tests.engine.AllTests.html"/>
808 <include name="org.eclipse.birt.report.tests.chart.AllTests.html"/>
809 <include name="org.eclipse.birt.tests.data.engine.AllTests.html"/>
810 <include name="org.eclipse.birt.report.tests.regression.AllTests.html"/>
811 </fileset>
Xiaoying Guc4f3d6e2008-03-31 09:51:29 +0000812 -->
Xiaoying Gub98c4812008-03-11 06:27:01 +0000813 </mail>
814 </target>
815
816 <target name="checkErrorExist">
817 <property file="${eclipse.build.configs}/../../monitor.properties" />
818 <condition property="has.compile.error" value="true">
819 <equals arg1="${compileHasError}" arg2="true" />
820 </condition>
Xiaoying Gubf0c0992008-06-10 08:59:26 +0000821 <echo message="${has.compile.error}"/>
822 <echo message="monitor: ${eclipse.build.configs}/../../monitor.properties" />
Xiaoying Gub98c4812008-03-11 06:27:01 +0000823 </target>
824
825 <target name="checkCompileError" depends="checkErrorExist" if="has.compile.error" >
826 <property file="${eclipse.build.configs}/../../config.properties" />
827 <property file="${eclipse.build.configs}/../../monitor.properties" />
Xiaoying Guc4f3d6e2008-03-31 09:51:29 +0000828 <echo message="${mail.port}"/>
829 <echo message="${buildId}"/>
830 <echo message="${COMPILE.ERROR.RECIPIENTS}"/>
831 <echo message="${mail.from}"/>
832 <echo message="${replyto.address}"/>
833 <echo message="${error.plugin.list}"/>
Xiaoying Gub98c4812008-03-11 06:27:01 +0000834
Xiaoying Guc4f3d6e2008-03-31 09:51:29 +0000835 <echo message="${postingDirectory}/${buildId}/compilelogs/plugins"/>
Xiaoying Gub98c4812008-03-11 06:27:01 +0000836 <mail mailport="${mail.port}" subject="Compile errors found in Today's Datatools Build (BuildId: ${buildId} ) " tolist="${COMPILE.ERROR.RECIPIENTS}">
837 <from address="${mail.from}"/>
838 <replyto address="${replyto.address}"/>
839 <message>
840Hi All,
841
Xiaoying Guc4f3d6e2008-03-31 09:51:29 +0000842Compile errors are found in today's DTP build(BuildId: ${buildId}):
Xiaoying Gub98c4812008-03-11 06:27:01 +0000843
844${error.plugin.list}
845
846Please see the attachments for details.
847
848Have a nice day!
849 </message>
Xiaoying Gubf0c0992008-06-10 08:59:26 +0000850 <attachments>
Xiaoying Gub98c4812008-03-11 06:27:01 +0000851 <fileset dir="${postingDirectory}/${buildId}/compilelogs/plugins">
852 <include name="*compilelog.html"/>
853 </fileset>
Xiaoying Gubf0c0992008-06-10 08:59:26 +0000854 </attachments>
Xiaoying Gub98c4812008-03-11 06:27:01 +0000855 </mail>
856 </target>
857
858 <target name="generateCompileSummary">
859
860 <property file="config.properties" />
861 <property name="tool.lib.path" value="${p4.home}/dailybuild/source/org.eclipse.birt.build"/>
862 <property name="compile.log.summary" value="${postingDirectory}/compileSummary.properties"/>
863
864 <path id="customjar.classpath">
865 <path location="${tool.lib.path}/customtask.jar" />
866 <fileset dir="${tool.lib.path}/lib">
867 <include name="*.jar"/>
868 </fileset>
869 </path>
870
871 <delete file="${compile.log.summary}" failonerror="false" />
872 <!-- Using custom build tools to get failure/error summary of test result -->
873 <java classname="org.eclipse.birt.build.ParseCompileSummary">
874 <classpath refid="customjar.classpath" />
875 <arg value="${postingDirectory}/${buildId}/compilelogs/plugins" />
876 <arg value="${compile.log.summary}" />
877 <arg value="Y" />
878 <arg value="Y" />
879 </java>
880 </target>
881</project>