| <?xml version="1.0" encoding="UTF-8"?> |
| <project name="toplevel" default="build" basedir="." xmlns:artifact="urn:maven-artifact-ant"> |
| |
| <!-- |
| Build/test script intended to be run by build/test server. |
| For ordinary development use the separate build scripts. |
| --> |
| |
| <target name="clean"> |
| <ant dir="components/core" target="clean" /> |
| <ant dir="apps/planet" target="clean" /> |
| <ant dir="apps/weblogger" target="clean" /> |
| </target> |
| |
| <target name="build-integrated" |
| description="Build Core, Planet and Roller together (i.e. Rebuilds Core and Planet jars, uses them to build Roller)"> |
| |
| <ant dir="components/core" target="dist" /> |
| <copy file="components/core/dist/lib/roller-core.jar" todir="tools/roller-core" /> |
| |
| <ant dir="apps/planet" target="dist" /> |
| <copy file="apps/planet/dist/lib/roller-planet-business.jar" todir="tools/roller-planet" /> |
| |
| <ant dir="apps/weblogger" target="dist" /> |
| <ant dir="apps/weblogger" target="apache-release" /> |
| |
| </target> |
| |
| <target name="build" |
| description="Build Core, Planet and Roller separately (i.e. uses Core and Planet jars from Subversion)" > |
| <ant dir="components/core" target="dist" /> |
| <ant dir="apps/planet" target="dist" /> |
| <ant dir="apps/weblogger" target="dist" /> |
| <ant dir="apps/weblogger" target="apache-release" /> |
| </target> |
| |
| <target name="test"> |
| <ant dir="apps/planet" target="test" /> |
| <ant dir="apps/weblogger" target="tests" /> |
| </target> |
| |
| <!-- get the ant maven tasks. I wish I could understand ant logic so we could run this whenever the jar is missing --> |
| <target name="mvn-get"> |
| <mkdir dir="tools/buildtime/maven"/> |
| <get src="http://repo1.maven.org/maven2/org/apache/maven/maven-ant-tasks/2.0.7/maven-ant-tasks-2.0.7.jar" dest="tools/buildtime/maven/maven-ant-tasks-2.0.7.jar"/> |
| </target> |
| |
| <target name="mvn-init"> |
| <echo>If this fails with a message like ' [typedef] Could not load definitions from resource org/apache/maven/artifact/ant/antlib.xml. It could not be found.' try running mvn-get first.</echo> |
| <xmlproperty file="pom.xml" prefix="pom.xml"/> |
| <path id="maven-ant-tasks.classpath" path="tools/buildtime/maven/maven-ant-tasks-2.0.7.jar"/> |
| <typedef resource="org/apache/maven/artifact/ant/antlib.xml" uri="urn:maven-artifact-ant" |
| classpathref="maven-ant-tasks.classpath"/> |
| </target> |
| |
| <!--This target will place the roller-weblogger.war file in a maven repository alongside with its |
| corresponding pom.xml file. Before deploying be sure to check the version tag in the |
| pom_ant_weblogger.xml file. |
| For real usage change the repository url to http://www.ibiblio.org/maven2 or some other |
| public repository of your choice. To test deployment localy use somting like file://localhost/xxx --> |
| <target name="mvn-deploy" depends="build, mvn-init"> |
| <artifact:install-provider artifactId="wagon-ssh" version="1.0-alpha-5"/> |
| <artifact:pom id="maven.project.weblogger.business.jar" file="apps/weblogger/pom_ant_weblogger_business.xml"/> |
| <artifact:deploy file="apps/weblogger/dist/lib/roller-business.jar"> |
| <remoteRepository url="scp://people.apache.org/www/people.apache.org/repo/m2-ibiblio-rsync-repository"/> |
| <pom refid="maven.project.weblogger.business.jar"/> |
| </artifact:deploy> |
| <artifact:pom id="maven.project.weblogger.web.jar" file="apps/weblogger/pom_ant_weblogger_web.xml"/> |
| <artifact:deploy file="apps/weblogger/dist/lib/roller-web.jar"> |
| <remoteRepository url="scp://people.apache.org/www/people.apache.org/repo/m2-ibiblio-rsync-repository"/> |
| <pom refid="maven.project.weblogger.web.jar"/> |
| </artifact:deploy> |
| <artifact:pom id="maven.project.weblogger.war" file="apps/weblogger/pom_ant_weblogger.xml"/> |
| <artifact:deploy file="apps/weblogger/dist/webapp/roller-weblogger.war"> |
| <remoteRepository url="scp://people.apache.org/www/people.apache.org/repo/m2-ibiblio-rsync-repository"/> |
| <pom refid="maven.project.weblogger.war"/> |
| </artifact:deploy> |
| <artifact:pom id="maven.project.planet.business.jar" file="apps/planet/pom_ant_planet_business.xml"/> |
| <artifact:deploy file="apps/planet/dist/lib/roller-planet-business.jar"> |
| <remoteRepository url="scp://people.apache.org/www/people.apache.org/repo/m2-ibiblio-rsync-repository"/> |
| <pom refid="maven.project.planet.business.jar"/> |
| </artifact:deploy> |
| <artifact:pom id="maven.project.planet.web.jar" file="apps/planet/pom_ant_planet_web.xml"/> |
| <artifact:deploy file="apps/planet/dist/webapp/roller-planet-web.jar"> |
| <remoteRepository url="scp://people.apache.org/www/people.apache.org/repo/m2-ibiblio-rsync-repository"/> |
| <pom refid="maven.project.planet.web.jar"/> |
| </artifact:deploy> |
| <artifact:pom id="maven.project.planet.war" file="apps/planet/pom_ant_planet.xml"/> |
| <artifact:deploy file="apps/planet/dist/webapp/roller-planet.war"> |
| <remoteRepository url="scp://people.apache.org/www/people.apache.org/repo/m2-ibiblio-rsync-repository"/> |
| <pom refid="maven.project.planet.war"/> |
| </artifact:deploy> |
| </target> |
| |
| <!-- Install roller-weblogger.war in the local maven repository --> |
| <target name="mvn-install" depends="build, mvn-init"> |
| <artifact:pom id="maven.project.weblogger.business.jar" file="apps/weblogger/pom_ant_weblogger_business.xml"/> |
| <artifact:install file="apps/weblogger/dist/lib/roller-business.jar"> |
| <pom refid="maven.project.weblogger.business.jar"/> |
| </artifact:install> |
| <artifact:pom id="maven.project.weblogger.web.jar" file="apps/weblogger/pom_ant_weblogger_web.xml"/> |
| <artifact:install file="apps/weblogger/dist/lib/roller-web.jar"> |
| <pom refid="maven.project.weblogger.web.jar"/> |
| </artifact:install> |
| <artifact:pom id="maven.project.weblogger.war" file="apps/weblogger/pom_ant_weblogger.xml"/> |
| <artifact:install file="apps/weblogger/dist/webapp/roller-weblogger.war"> |
| <pom refid="maven.project.weblogger.war"/> |
| </artifact:install> |
| <artifact:pom id="maven.project.planet.business.jar" file="apps/planet/pom_ant_planet_business.xml"/> |
| <artifact:install file="apps/planet/dist/lib/roller-planet-business.jar"> |
| <pom refid="maven.project.planet.business.jar"/> |
| </artifact:install> |
| <artifact:pom id="maven.project.planet.web.jar" file="apps/planet/pom_ant_planet_web.xml"/> |
| <artifact:install file="apps/planet/dist/lib/roller-planet-web.jar"> |
| <pom refid="maven.project.planet.web.jar"/> |
| </artifact:install> |
| <artifact:pom id="maven.project.planet.war" file="apps/planet/pom_ant_planet.xml"/> |
| <artifact:install file="apps/planet/dist/webapp/roller-planet.war"> |
| <pom refid="maven.project.planet.war"/> |
| </artifact:install> |
| </target> |
| |
| </project> |