Moved Spring Web Flow to a top level project
This commit is contained in:
2
build-spring-webflow/.cvsignore
Normal file
2
build-spring-webflow/.cvsignore
Normal file
@@ -0,0 +1,2 @@
|
||||
build.properties
|
||||
target
|
||||
11
build-spring-webflow/.project
Normal file
11
build-spring-webflow/.project
Normal file
@@ -0,0 +1,11 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<projectDescription>
|
||||
<name>build-spring-webflow</name>
|
||||
<comment></comment>
|
||||
<projects>
|
||||
</projects>
|
||||
<buildSpec>
|
||||
</buildSpec>
|
||||
<natures>
|
||||
</natures>
|
||||
</projectDescription>
|
||||
78
build-spring-webflow/build-continuous.xml
Normal file
78
build-spring-webflow/build-continuous.xml
Normal file
@@ -0,0 +1,78 @@
|
||||
<?xml version="1.0"?>
|
||||
<!--
|
||||
=======================================================================
|
||||
Build file containing targets for continuously integrating build
|
||||
Targets are put in a separate build file to prevent users from
|
||||
having to put in an SSH library in ANT_HOME/lib
|
||||
|
||||
This build requires an SSH client to be put in ANT_HOME/lib. Refer
|
||||
to Ant's SCP documentation for more information.
|
||||
|
||||
@author Alef Arendsen
|
||||
@author Arjen Poutsma
|
||||
=======================================================================
|
||||
-->
|
||||
<project name="build-spring-webflow-continuous" default="snapshot" xmlns:ivy="antlib:fr.jayasoft.ivy.ant">
|
||||
|
||||
<import file="${basedir}/build.xml"/>
|
||||
|
||||
<!-- targets for uploading binaries, creating snapshots, et cetera -->
|
||||
<!--
|
||||
properties needed (some are set in CruiseControl configuration)
|
||||
- release.zip release zip (set by build.xml)
|
||||
- release.version release version (set by build.xml)
|
||||
- target.release.dir release directory (set by build.xml)
|
||||
- upload.tmp.dir temporary directory to use when uploading
|
||||
- upload.username username to use when SCP'ing to server
|
||||
- upload.password password to use when SCP'ing to server
|
||||
- upload.url url to use when SCP'ing to server
|
||||
- upload.log.dir directory to upload logs to
|
||||
- upload.binaries.dir directory to upload binaries to
|
||||
-->
|
||||
<target name="snapshot" depends="init, guard.upload.tmp.dir">
|
||||
<delete quiet="true" dir="${upload.tmp.dir}"/>
|
||||
<mkdir dir="${upload.tmp.dir}"/>
|
||||
<tstamp>
|
||||
<format property="tstamp" pattern="yyyyMMdd-HHmm"/>
|
||||
</tstamp>
|
||||
<move file="${target.release.dir}/${release.zip}"
|
||||
tofile="${upload.tmp.dir}/spring-webflow-${release.version}-${tstamp}.zip"/>
|
||||
</target>
|
||||
|
||||
<target name="upload" depends="upload-binaries"/>
|
||||
|
||||
<!-- SCP needs an SSH library on the classpath (see Ant documentation for more info) -->
|
||||
<target name="upload-binaries" depends="init, guard.upload.tmp.dir, guard.upload.binaries.dir, guard.upload.url, guard.upload.password, guard.upload.username">
|
||||
<scp todir="${upload.username}@${upload.url}:${upload.binaries.dir}" password="${upload.password}">
|
||||
<fileset dir="${upload.tmp.dir}">
|
||||
<include name="spring-*.zip"/>
|
||||
</fileset>
|
||||
</scp>
|
||||
<delete quiet="true" dir="${upload.tmp.dir}"/>
|
||||
</target>
|
||||
|
||||
<target name="guard.upload.tmp.dir" unless="upload.tmp.dir">
|
||||
<fail message="This target requires the upload.tmp.dir property to be set"/>
|
||||
</target>
|
||||
|
||||
<target name="guard.upload.log.dir" unless="upload.log.dir">
|
||||
<fail message="This target requires the upload.log.dir property to be set"/>
|
||||
</target>
|
||||
|
||||
<target name="guard.upload.binaries.dir" unless="upload.binaries.dir">
|
||||
<fail message="This target requires the upload.binaries.dir property to be set"/>
|
||||
</target>
|
||||
|
||||
<target name="guard.upload.username" unless="upload.username">
|
||||
<fail message="This target requires the upload.username property to be set"/>
|
||||
</target>
|
||||
|
||||
<target name="guard.upload.url" unless="upload.url">
|
||||
<fail message="This target requires the upload.url.property to be set"/>
|
||||
</target>
|
||||
|
||||
<target name="guard.upload.password" unless="upload.password">
|
||||
<fail message="This target requires the upload.password property to be set"/>
|
||||
</target>
|
||||
|
||||
</project>
|
||||
232
build-spring-webflow/build.xml
Normal file
232
build-spring-webflow/build.xml
Normal file
@@ -0,0 +1,232 @@
|
||||
<?xml version="1.0"?>
|
||||
<!--
|
||||
=======================================================================
|
||||
A master build file for creating a release of Spring Web Flow
|
||||
=======================================================================
|
||||
-->
|
||||
<project name="build-spring-webflow" default="release" xmlns:ivy="antlib:fr.jayasoft.ivy.ant">
|
||||
|
||||
<!-- Load local and user build preferences -->
|
||||
<property file="build.properties" />
|
||||
<property file="project.properties" />
|
||||
<property file="${user.home}/build.properties" />
|
||||
|
||||
<!-- Try to load ivy here from local lib dir, in case the user has not already dropped
|
||||
it into ant's lib dir (note that the latter copy will always take precedence).
|
||||
We will not fail as long as local lib dir exists (it may be empty) and
|
||||
ivy is in at least one of ant's lib dir or the local lib dir. -->
|
||||
<path id="ivy.lib.path">
|
||||
<fileset dir="${common.build.dir}/lib" includes="*.jar" />
|
||||
</path>
|
||||
|
||||
<taskdef resource="fr/jayasoft/ivy/ant/antlib.xml" uri="antlib:fr.jayasoft.ivy.ant" classpathref="ivy.lib.path" />
|
||||
|
||||
<!-- simplistic pattern for zipping up sources -->
|
||||
<selector id="project.source.zip.includes">
|
||||
<or>
|
||||
<filename name="common-build/**" />
|
||||
<and>
|
||||
<or>
|
||||
<filename name="spring-webflow/build-spring-webflow/**" />
|
||||
<filename name="spring-webflow/spring-binding/**" />
|
||||
<filename name="spring-webflow/spring-webflow/**" />
|
||||
<filename name="spring-webflow/spring-webflow-samples/**" />
|
||||
</or>
|
||||
<and>
|
||||
<!-- exclude core project derived artifacts -->
|
||||
<filename name="*/*/docs/**" negate="true"/>
|
||||
<filename name="*/*/target/**" negate="true" />
|
||||
<filename name="*/*/build.properties" negate="true" />
|
||||
<filename name="*/*/lib/**" negate="true" />
|
||||
</and>
|
||||
<and>
|
||||
<!-- exclude sample project derived artifacts -->
|
||||
<filename name="*/*/*/docs/**" negate="true"/>
|
||||
<filename name="*/*/*/target/**" negate="true" />
|
||||
<filename name="*/*/*/build.properties" negate="true" />
|
||||
<filename name="*/*/*/lib/**" negate="true" />
|
||||
</and>
|
||||
</and>
|
||||
</or>
|
||||
</selector>
|
||||
|
||||
<!--
|
||||
targets: displays all targets suitable for developer use
|
||||
-->
|
||||
<target name="targets">
|
||||
<echo>
|
||||
Master build for Spring Web Flow and Spring Web Flow samples.
|
||||
|
||||
Please execute
|
||||
ant -p
|
||||
|
||||
to see a list of all relevant targets.
|
||||
</echo>
|
||||
</target>
|
||||
|
||||
<!--
|
||||
init: initializes some common settings
|
||||
-->
|
||||
<target name="init" unless="init.done" depends="init.pre, init.post" />
|
||||
|
||||
<target name="init.pre">
|
||||
|
||||
<!-- ivy will determine the right order to build web flow main and samples -->
|
||||
|
||||
<property name="ivy.conf.dir" value="${common.build.dir}" />
|
||||
|
||||
<ivy:configure file="${ivy.conf.dir}/ivyconf.xml" />
|
||||
|
||||
<ivy:buildlist reference="modules">
|
||||
<fileset dir="..">
|
||||
<include name="spring-binding/build.xml" />
|
||||
<include name="spring-webflow/build.xml" />
|
||||
<include name="spring-webflow-samples/*/build.xml" />
|
||||
</fileset>
|
||||
</ivy:buildlist>
|
||||
|
||||
<tstamp>
|
||||
<format property="build.timestamp" pattern="yyyyMMddHHmmss" />
|
||||
</tstamp>
|
||||
<tstamp>
|
||||
<format property="TSTAMPCOL" pattern="hh:mm" />
|
||||
</tstamp>
|
||||
|
||||
<!-- default the release version (used in release archive zips) to the current timestamp -->
|
||||
<property name="release.version" value="${build.timestamp}" />
|
||||
|
||||
<!-- root of build hierarchy -->
|
||||
<property name="target.dir" value="${basedir}/target" />
|
||||
|
||||
<!-- directory for release zips -->
|
||||
<property name="target.release.dir" value="${target.dir}/release" />
|
||||
|
||||
<!-- directory for release zips -->
|
||||
<property name="zip.toplevel.dir" value="spring-webflow-${release.version}" />
|
||||
<property name="release.zip" value="spring-webflow-${release.version}.zip" />
|
||||
|
||||
<echo message='user.dir = "${user.dir}"' />
|
||||
<echo message='ant.file = "${ant.file}"' />
|
||||
<echo message='ant.java.version = "${ant.java.version}"' />
|
||||
<echo message='release.version = "${release.version}"' />
|
||||
|
||||
</target>
|
||||
|
||||
<target name="init.post">
|
||||
<property name="projects" value="modules" />
|
||||
<property name="projects.names" refid="modules" />
|
||||
<property name="init.done" value="true" />
|
||||
</target>
|
||||
|
||||
<target name="clean" depends="init" description="Cleans all build output files from all projects">
|
||||
<delete dir="${target.dir}" />
|
||||
<echo>projects=${projects}</echo>
|
||||
<echo>projects.names=${projects.names}</echo>
|
||||
<subant target="clean" inheritall="false">
|
||||
<buildpath refid="${projects}" />
|
||||
</subant>
|
||||
</target>
|
||||
|
||||
<target name="clean-all" depends="init" description="Cleans all build output files from all projects, and also retrieved libs">
|
||||
<delete dir="${target.dir}" />
|
||||
<echo>projects=${projects}</echo>
|
||||
<subant target="clean-all" inheritall="false">
|
||||
<buildpath refid="${projects}" />
|
||||
</subant>
|
||||
</target>
|
||||
|
||||
<target name="retrieve" depends="init" description="Does a retrieve in all projects">
|
||||
<delete dir="${target.dir}" />
|
||||
<echo>projects=${projects}</echo>
|
||||
<echo>projects.names=${projects.names}</echo>
|
||||
<subant target="retrieve" inheritall="false">
|
||||
<buildpath refid="${projects}" />
|
||||
</subant>
|
||||
</target>
|
||||
|
||||
<target name="publish" depends="init" description="Calls publish targets on each project">
|
||||
<echo>projects=${projects}</echo>
|
||||
<subant target="publish" inheritall="false">
|
||||
<buildpath refid="${projects}" />
|
||||
</subant>
|
||||
</target>
|
||||
|
||||
<target name="dist" depends="init" description="Calls dist targets on each project">
|
||||
<echo>projects=${projects}</echo>
|
||||
<subant target="dist" inheritall="false">
|
||||
<buildpath refid="${projects}" />
|
||||
</subant>
|
||||
</target>
|
||||
|
||||
<target name="build-release-repo" depends="init"
|
||||
description="Builds repo of all dependencies for all projects">
|
||||
<echo>projects=${projects}</echo>
|
||||
<subant target="retrieve-to-repo" inheritall="false">
|
||||
<property name="retrieve.to.repo.dir" value="${target.dir}/repo" />
|
||||
<property name="retrieve.to.repo.pattern"
|
||||
value="${release.repo.ivy.retrieve.pattern}" />
|
||||
<property name="retrieve.to.repo.pattern.ivy"
|
||||
value="${release.repo.ivy.retrieve.ivy.pattern}" />
|
||||
<buildpath refid="${projects}" />
|
||||
</subant>
|
||||
</target>
|
||||
|
||||
<target name="tests" depends="init" description="Calls test targets on each project">
|
||||
<echo>projects=${projects}</echo>
|
||||
<subant target="tests" inheritall="false">
|
||||
<buildpath refid="${projects}" />
|
||||
</subant>
|
||||
</target>
|
||||
|
||||
<target name="javadoc" depends="init" description="Calls javadoc targets on each project">
|
||||
<echo>projects=${projects}</echo>
|
||||
<subant target="javadoc" inheritall="false" failonerror="no">
|
||||
<buildpath refid="${projects}" />
|
||||
</subant>
|
||||
</target>
|
||||
|
||||
<target name="doc" depends="init" description="Calls doc targets on applicable projects">
|
||||
<echo>projects=${projects}</echo>
|
||||
<subant target="doc-all" inheritall="false" failonerror="false">
|
||||
<buildpathelement location="../spring-webflow" />
|
||||
</subant>
|
||||
</target>
|
||||
|
||||
<target name="tomcat-copy-war" depends="init" description="Copies all war to tomcat webapp dir">
|
||||
<echo>projects=${projects}</echo>
|
||||
<subant target="tomcat-copy-war" inheritall="false" failonerror="no">
|
||||
<buildpath refid="${projects}" />
|
||||
</subant>
|
||||
</target>
|
||||
|
||||
<target name="release" depends="dist, build-release-repo, javadoc, doc, gen.release.zip"
|
||||
description="Generate the spring-webflow release archive" />
|
||||
|
||||
<target name="gen.release.zip" depends="init">
|
||||
<mkdir dir="${target.release.dir}" />
|
||||
<delete file="${target.release.dir}/${release.zip}" />
|
||||
|
||||
<zip zipfile="${target.release.dir}/${release.zip}">
|
||||
<!-- important readme, license, and other text files -->
|
||||
<zipfileset file="../spring-webflow/*.txt" prefix="${zip.toplevel.dir}" />
|
||||
<!-- binary files -->
|
||||
<zipfileset dir="../spring-binding/target/dist/jars" prefix="${zip.toplevel.dir}" />
|
||||
<zipfileset dir="../spring-binding/target/dist/ivys" prefix="${zip.toplevel.dir}/ivys" />
|
||||
<zipfileset dir="../spring-binding/target/javadocs" prefix="${zip.toplevel.dir}/docs/api-binding" />
|
||||
<zipfileset dir="../spring-webflow/target/dist/jars" prefix="${zip.toplevel.dir}" />
|
||||
<zipfileset dir="../spring-webflow/target/dist/ivys" prefix="${zip.toplevel.dir}/ivys" />
|
||||
<zipfileset dir="../spring-webflow/target/javadocs" prefix="${zip.toplevel.dir}/docs/api" />
|
||||
<zipfileset dir="../spring-webflow/docs/reference/target" prefix="${zip.toplevel.dir}/docs/reference">
|
||||
<exclude name="**/html_single/**" />
|
||||
<exclude name="**/pdf/images/**" />
|
||||
</zipfileset>
|
||||
<zipfileset dir="../spring-webflow/docs" includes="upgrade-guide.pdf" prefix="${zip.toplevel.dir}/docs" />
|
||||
<zipfileset dir="${target.dir}/repo" prefix="${zip.toplevel.dir}/projects/repository" />
|
||||
<!-- project sources -->
|
||||
<zipfileset dir="../.." prefix="${zip.toplevel.dir}/projects">
|
||||
<selector refid="project.source.zip.includes" />
|
||||
</zipfileset>
|
||||
</zip>
|
||||
</target>
|
||||
|
||||
</project>
|
||||
7
build-spring-webflow/project.properties
Normal file
7
build-spring-webflow/project.properties
Normal file
@@ -0,0 +1,7 @@
|
||||
# Configurable property values that may be locally overriden by a build.properties file
|
||||
|
||||
# The version number of the release that will be built
|
||||
release.version=1.0.1
|
||||
|
||||
# The location of the common build system
|
||||
common.build.dir=${basedir}/../common-build
|
||||
27
build-spring-webflow/readme.txt
Normal file
27
build-spring-webflow/readme.txt
Normal file
@@ -0,0 +1,27 @@
|
||||
This is where the master build that creates releases of Spring Web Flow resides.
|
||||
|
||||
USERS
|
||||
- To build all Spring Web Flow related projects:
|
||||
|
||||
1. From this directory, run:
|
||||
ant dist
|
||||
|
||||
Build Pre-requisites:
|
||||
- javac 1.5 or > must be in your system path
|
||||
- ant 1.6 or > must be in your system path
|
||||
- ivy 1.3 or > (Note: a version of Ivy is included and will be used automatically if you do not already have
|
||||
Ivy installed in your ANT_HOME/lib directory.
|
||||
If you have Ivy already installed in %ANT_HOME%/lib make sure it is 1.3 or >. 1.2 won't work.)
|
||||
|
||||
DEVELOPERS
|
||||
- To build a new Spring Web Flow product release:
|
||||
|
||||
1. Update project.properties to reflect the new release version, if necessary.
|
||||
|
||||
2. From this directory, run:
|
||||
ant release
|
||||
|
||||
The release archive will be created and placed in:
|
||||
target/release
|
||||
|
||||
Questions? See http://forum.springframework.org.
|
||||
Reference in New Issue
Block a user