blob: 688c7adadbd34bfab723c9df06ba279e9eaeed94 [file] [log] [blame]
<?xml version="1.0" encoding="UTF-8"?>
<!--
* Licensed to the Apache Software Foundation (ASF) under one
* or more contributor license agreements. See the NOTICE file
* distributed with this work for additional information
* regarding copyright ownership. The ASF licenses this file
* to you under the Apache License, Version 2.0 (the
* "License"); you may not use this file except in compliance
* with the License. You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing,
* software distributed under the License is distributed on an
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
* KIND, either express or implied. See the License for the
* specific language governing permissions and limitations
* under the License.
-->
<project name="AppEngineSDKInstaller">
<property name="appengine.version" value="1.5.0.1"/>
<property name="appengine.distribution.location" value="http://googleappengine.googlecode.com/files/appengine-java-sdk-${appengine.version}.zip" />
<property name="unpack.location" value="${basedir}/target/appengine-java-sdk-${appengine.version}"/>
<property name="appengine.tools.api" value="${basedir}/target/appengine-java-sdk-${appengine.version}/lib/appengine-tools-api.jar"/>
<property name="appengine.api" value="${basedir}/target/appengine-java-sdk-${appengine.version}/lib/impl/appengine-api.jar"/>
<property name="appengine.local.runtime.shared" value="${basedir}/target/appengine-java-sdk-${appengine.version}/lib/shared/appengine-local-runtime-shared.jar"/>
<property name="appengine.local.testing" value="${basedir}/target/appengine-java-sdk-${appengine.version}/lib/testing/appengine-testing.jar"/>
<property name="appengine.local.api.labs" value="${basedir}/target/appengine-java-sdk-${appengine.version}/lib/impl/appengine-api-labs.jar"/>
<property name="appengine.local.api.stubs" value="${basedir}/target/appengine-java-sdk-${appengine.version}/lib/impl/appengine-api-stubs.jar"/>
<property name="localRepository" value="${user.home}/.m2/repository"/>
<target name="check-installed">
<condition property="already.installed" >
<available file="${localRepository}/com/google/appengine-java-sdk/${appengine.version}/appengine-java-sdk-${appengine.version}.zip"/>
</condition>
<condition property="maven.suffix" value="">
<os family="unix"/>
</condition>
<condition property="maven.suffix" value=".bat">
<os family="windows"/>
</condition>
</target>
<target name="check-unpacked">
<condition property="already.unpacked" >
<available file="${unpack.location}"/>
</condition>
</target>
<target name="install" depends="check-installed" unless="already.installed">
<mkdir dir="${basedir}/target/appengine-download/"/>
<get src="${appengine.distribution.location}"
dest="${basedir}/target/appengine-download/appengine-java-sdk-${appengine.version}.zip"
verbose="true"
usetimestamp="true"/>
<exec executable="mvn${maven.suffix}" dir="${basedir}" failonerror="false">
<arg line="install:install-file -DgroupId=com.google -DartifactId=appengine-java-sdk -Dversion=${appengine.version} -Dpackaging=zip -DgeneratePom=true -Dfile=${basedir}/target/appengine-download/appengine-java-sdk-${appengine.version}.zip"/>
</exec>
<antcall target="unpack-appengine-sdk"/>
<exec executable="mvn${maven.suffix}" dir="${basedir}" failonerror="false">
<arg line="install:install-file -DgroupId=com.google.appengine -DartifactId=appengine-tools -Dversion=${appengine.version} -Dpackaging=jar -DgeneratePom=true -Dfile=${appengine.tools.api}"/>
</exec>
<exec executable="mvn${maven.suffix}" dir="${basedir}" failonerror="false">
<arg line="install:install-file -DgroupId=com.google.appengine -DartifactId=appengine-api -Dversion=${appengine.version} -Dpackaging=jar -DgeneratePom=true -Dfile=${appengine.api}"/>
</exec>
<exec executable="mvn${maven.suffix}" dir="${basedir}" failonerror="false">
<arg line="install:install-file -DgroupId=com.google.appengine -DartifactId=appengine-local-runtime-shared -Dversion=${appengine.version} -Dpackaging=jar -DgeneratePom=true -Dfile=${appengine.local.runtime.shared}"/>
</exec>
<exec executable="mvn${maven.suffix}" dir="${basedir}" failonerror="false">
<arg line="install:install-file -DgroupId=com.google.appengine -DartifactId=appengine-testing -Dversion=${appengine.version} -Dpackaging=jar -DgeneratePom=true -Dfile=${appengine.testing}"/>
</exec>
<exec executable="mvn${maven.suffix}" dir="${basedir}" failonerror="false">
<arg line="install:install-file -DgroupId=com.google.appengine -DartifactId=appengine-api-labs -Dversion=${appengine.version} -Dpackaging=jar -DgeneratePom=true -Dfile=${appengine.api.labs}"/>
</exec>
<exec executable="mvn${maven.suffix}" dir="${basedir}" failonerror="false">
<arg line="install:install-file -DgroupId=com.google.appengine -DartifactId=appengine-api-stubs -Dversion=${appengine.version} -Dpackaging=jar -DgeneratePom=true -Dfile=${appengine.api.stubs}"/>
</exec>
</target>
<target name="unpack-appengine-sdk" depends="check-installed, check-unpacked" unless="already.unpacked">
<fail message="AppEngine SDK zip file not installed in local repository: ${localRepository}" unless="already.installed"/>
<mkdir dir="${basedir}/target/appengine-unpack-temp/"/>
<unzip src="${localRepository}/com/google/appengine-java-sdk/${appengine.version}/appengine-java-sdk-${appengine.version}.zip"
dest="${basedir}/target/appengine-unpack-temp/"
overwrite="false">
</unzip>
<move todir="${unpack.location}">
<fileset dir="${basedir}/target/appengine-unpack-temp/appengine-java-sdk-${appengine.version}"/>
</move>
<delete dir="${basedir}/target/appengine-unpack-temp/"/>
</target>
<target name="clean-appengine-files">
<delete dir="${unpack.location}"/>
</target>
</project>