| <project |
| name="standaloneTest" |
| default="standaloneTest" |
| basedir="."> |
| <!-- |
| Required inputs: build.home buildType buildId timestamp |
| build.stream [optional] build.committers [optional] testTarget |
| [optional] |
| --> |
| <property |
| environment="env"/> |
| |
| <!-- |
| Let users override standard properties, if desired. If |
| directory, file, or some properties do not exist, then standard |
| properties will be used. |
| --> |
| <echo message="LOCAL_BUILD_PROPERTIES_DIR: ${env.LOCAL_BUILD_PROPERTIES_DIR}"/> |
| |
| |
| <property |
| file="${env.LOCAL_BUILD_PROPERTIES_DIR}/${ant.project.name}.properties"/> |
| <fail |
| unless="projectname" |
| message="a projectname is required"/> |
| |
| <property |
| name="keyCfgFile" |
| value="${env.PROJECT_BUILDERS}/${projectname}/${env.RELENG}/maps/build.cfg"/> |
| <property |
| name="build.home" |
| value="${env.BUILD_HOME}"/> |
| <echo |
| level="info" |
| message="keyCfgFile: ${keyCfgFile}"/> |
| <!-- required to get proper value of dropinsFolder --> |
| <property |
| file="${keyCfgFile}"/> |
| <fail |
| message="testRoot must be set for this task" |
| unless="env.PROJECT_TESTS"/> |
| <property |
| name="testRoot" |
| value="${env.PROJECT_TESTS}/${projectname}"/> |
| <property |
| name="env.DEP_DIR" |
| value="/helios"/> |
| <property |
| name="distribution" |
| value="wtp"/> |
| |
| <property |
| name="buildDirectory" |
| value="${env.PROJECT_PROJECTS}/${projectName}/workdir"/> |
| |
| <!-- |
| <property |
| name="dependency.properties" |
| value="${buildDirectory}/maps/${env.RELENG}${env.DEP_DIR}/maps/dependencies.properties"/> |
| --> |
| <property |
| name="dependency.properties" |
| value="${env.PROJECT_BUILDERS}/${projectname}/${env.RELENG}${env.DEP_DIR}/maps/dependencies.properties"/> |
| <available |
| file="${dependency.properties}" |
| property="dependency.properties.exists"/> |
| <fail |
| message="dependency file not found: ${dependency.properties}" |
| unless="dependency.properties.exists"/> |
| <target |
| name="standaloneTest"> |
| <property |
| file="${build.home}/${env.RELENG_BUILDER}/build.properties"/> |
| <property |
| name="local.cache.dir" |
| value="${env.LOCAL_PREREQS_CACHE}"/> |
| <property |
| name="testRoot" |
| value="${build.home}/testRoot"/> |
| <!-- don't delete automatically |
| <delete |
| dir="${testRoot}" |
| failonerror="false"/> |
| --> |
| <mkdir |
| dir="${testRoot}"/> |
| <!-- no longer needed here, ... done in standalonecheckout |
| <antcall |
| target="getReleng"/> |
| --> |
| |
| <condition property="installed"> |
| <available file="${testRoot}/eclipse" type="dir"/> |
| </condition> |
| |
| <echo message="installed: ${installed}" /> |
| <echo message="installed location: ${testRoot}/eclipse" /> |
| |
| <antcall |
| target="run"/> |
| </target> |
| <target |
| name="getReleng"> |
| <property |
| name="releng.tag" |
| value="v${buildType}${timestamp}"/> |
| <mkdir |
| dir="${env.PROJECT_BUILDERS}/${projectname}"/> |
| <cvs |
| cvsRoot=":pserver:anonymous@dev.eclipse.org:/cvsroot/webtools" |
| package="${env.RELENG}" |
| dest="${env.PROJECT_BUILDERS}/${projectname}" |
| command="export" |
| tag="${releng.tag}" |
| quiet="${env.CVS_QUIET}" |
| reallyquiet="${env.CVS_REALLY_QUIET}"/> |
| </target> |
| <target |
| name="getDependencies" |
| unless="installed"> |
| <ant |
| antfile="${env.PROJECT_BUILDERS}/${projectname}/${env.RELENG_BUILDER}/distribution/${distribution}.tests/testdependency.xml"> |
| <property |
| name="base.install.dir" |
| value="${testRoot}"/> |
| <property |
| name="dependencyTargets" |
| value="${env.PROJECT_BUILDERS}/${projectname}/${env.RELENG_BUILDER}/scripts/dependency/build.xml"/> |
| </ant> |
| |
| <antcall |
| target="getAndInstallWTP"> |
| <param |
| name="file" |
| value="wtp-sdk-${buildType}-${buildId}-${timestamp}.zip"/> |
| </antcall> |
| <antcall |
| target="getAndInstallWTP"> |
| <param |
| name="file" |
| value="wtp-tests-${buildType}-${buildId}-${timestamp}.zip"/> |
| </antcall> |
| |
| </target> |
| <target |
| name="getAndInstallWTP"> |
| <available |
| file="${local.cache.dir}/${file}" |
| property="file.exists"/> |
| <antcall |
| target="getWTP"/> |
| <available |
| file="${local.cache.dir}/${file}" |
| property="file.exists"/> |
| <antcall |
| target="installWTP"/> |
| </target> |
| <target |
| name="getWTP"> |
| <condition |
| property="file.url.1" |
| value="http://build.eclipse.org/webtools/committers/${projectname}/${timestamp}" |
| else="http://download.eclipse.org/webtools/downloads"> |
| <isset |
| property="build.committers"/> |
| </condition> |
| <condition |
| property="file.url" |
| value="${file.url.1}/${buildType}-${buildId}-${timestamp}" |
| else="${file.url.1}/drops/${buildType}-${buildId}-${timestamp}"> |
| <isset |
| property="build.stream"/> |
| </condition> |
| <antcall |
| target="getWTP2"/> |
| </target> |
| <target |
| name="getWTP2" |
| unless="file.exists"> |
| <property |
| name="file.url" |
| value="http://download.eclipse.org/webtools/downloads/drops/${build.stream}/${buildType}-${buildId}-${timestamp}"/> |
| <get |
| dest="${local.cache.dir}/${file}" |
| src="${file.url}/${file}" |
| ignoreerrors="true"/> |
| </target> |
| <target |
| name="installWTP" |
| if="file.exists"> |
| <unzip |
| src="${local.cache.dir}/${file}" |
| dest="${testRoot}${dropinsFolder}" |
| overwrite="true"/> |
| </target> |
| <target |
| name="run" |
| depends="getDependencies"> |
| <mkdir |
| dir="${testRoot}/results/consolelogs"/> |
| <copy |
| todir="${testRoot}" |
| flatten="true" |
| overwrite="true"> |
| <fileset |
| dir="${env.PROJECT_BUILDERS}/${projectname}/${env.RELENG_BUILDER}/distribution/${distribution}.tests/testScripts"/> |
| </copy> |
| <ant |
| antfile="${env.PROJECT_BUILDERS}/${projectname}/${env.RELENG_BUILDER}/distribution/${distribution}.tests/build.xml" |
| target="runTestEclipse"> |
| <property |
| name="testRoot" |
| value="${testRoot}"/> |
| <!-- if not otherwise set, assume all tests --> |
| <property |
| name="testTarget" |
| value="all"/> |
| </ant> |
| <copy |
| file="${env.PROJECT_BUILDERS}/${projectname}/${env.RELENG_BUILDER}/distribution/${distribution}.tests/templateFiles/index.php" |
| todir="${testRoot}/results" |
| overwrite="true"/> |
| </target> |
| <target |
| name="clean" |
| if="clean"> |
| <property |
| file="${env.PROJECT_BUILDERS}/${projectname}/${env.RELENG_BUILDER}/build.properties"/> |
| <property |
| name="testRoot" |
| value="${build.home}/testRoot"/> |
| <delete |
| dir="${testRoot}" |
| failonerror="false"/> |
| </target> |
| </project> |