Notice: This Wiki is now read only and edits are no longer possible. Please see: https://gitlab.eclipse.org/eclipsefdn/helpdesk/-/wikis/Wiki-shutdown-plan for the plan.
XQuery Development Tools/Build
Contents
Introduction
Currently builds are conducted using the Athena_Common_Build infrastructure and the Hudson build server.
Builds
Information about running builds and various configuration options.
Build Configuration
Since currently there are no unit tests the XQuery builds are just building the code and producing the necessary ZIP and P2 Update Zip archives. The build that is on Hudson is using that Athena_Common_Build set of ant scripts. This allows for a easy configuration of an eclipse feature based build, it does NOT currently work with a product based build.
Build Properties
An Athena build is controlled primarily by the build.properties file. The following is an example of the build.properties file in the org.eclipse.wst.xquery.releng project.
## BEGIN PROJECT BUILD PROPERTIES ## # default settings for all this project's builds, for this branch; see also o.e.d.common.releng/build.properties for more overrideable defaults # To permit automatic downloads of non-EPL compatible code, set this to property to "I accept" thirdPartyDownloadLicenseAcceptance="I accept" # MUST BE SET # projectid=webtools.xquery zipPrefix=wst-xquery incubation= version=0.5.0 buildType=N mainFeatureToBuildID=org.eclipse.wst.xquery.feature #testFeatureToBuildID=org.eclipse.wst.xml.xpath2.processor_tests.feature # MUST BE SET # JAVA_HOME=/opt/public/common/ibm-java2-ppc-50 JAVA50_HOME=/opt/public/common/ibm-java2-ppc-50 dependencyURLs=http://download.eclipse.org/eclipse/downloads/drops/R-3.5-200906111540/eclipse-SDK-3.5-linux-gtk-ppc.tar.gz,http://download.eclipse.org/tools/orbit/downloads/drops/R20090825191606/orbit-R20090825191606.zip #what steps should we do? default: build.steps=buildUpdate,buildZips,buildTests,generateDigests,test,publish,cleanup #build.steps=buildUpdate,buildZips,buildTests,generateDigests,test,publish,cleanup build.steps=buildUpdate,buildZips,generateDigests,publish,cleanup compilerArg=-enableJavadoc -encoding ISO-8859-1 flattenDependencies=true parallelCompilation=true generateFeatureVersionSuffix=true individualSourceBundles=true forceContextQualifier=v${env.BUILD_ID} writableBuildRoot=${WORKSPACE}/build ## END PROJECT BUILD PROPERTIES ##
Build Dependencies
There are several dependencies needed for XQuery. Additional dependencies will be added as needed:
- Eclipse 3.5 SDK
- Eclipse Orbit
Note: Currently WST is not yet included as we are awaiting the final XQuery code approval from Eclipse IP.
Executing a Build
A build can be run both manually by a committer or it will be checked every 10 to 20 minutes to determine if a build needs to be run. Builds are only run if the following projects have changed in the cvsroot/webtools repository:
- incubator/sourceediting/development/org.eclipse.wst.xquery.releng
- incubator/sourceediting/plugins/com.google.gson
- incubator/sourceediting/plugins/org.eclipse.wst.xquery.marklogic
- incubator/sourceediting/features/org.eclipse.wst.xquery.feature
If any of these get changes, a build will be executed.
Build Metrics and Trends
The builds on Hudson allow for some build metric and trends to be captured. In particular are the following:
- Compiler Warnings
- Build Execution Time
- Disk Usage
- Unit Testing Failure/Passing trends.
A failed build will also affect the weather report for a build.
Unit Tests
To be filled in when there are some.