Initial import of http://easyant.org/svn/easyant@650 with trunks and not the branches
git-svn-id: https://svn.apache.org/repos/asf/incubator/easyant/skeletons/trunk@1071697 13f79535-47bb-0310-9956-ffa450edef68
diff --git a/std-ant-plugin/module.ivy b/std-ant-plugin/module.ivy
new file mode 100644
index 0000000..e8d6abe
--- /dev/null
+++ b/std-ant-plugin/module.ivy
@@ -0,0 +1,25 @@
+<!--
+ Copyright 2008-2010 the EasyAnt project
+
+ See the NOTICE file distributed with this work for additional information
+ regarding copyright ownership.
+
+ Licensed 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.
+-->
+<ivy-module version="2.0" xmlns:ea="http://www.easyant.org">
+ <info organisation="org.apache.easyant.skeletons" module="std-ant-plugin"
+ status="integration" revision="0.1">
+ <description>Skeleton for creating ant based plugin for easyant</description>
+ <ea:build module="build-std-skeleton" revision="0.1"/>
+ </info>
+</ivy-module>
diff --git a/std-ant-plugin/src/main/resources/module.ivy.tpl b/std-ant-plugin/src/main/resources/module.ivy.tpl
new file mode 100644
index 0000000..22b3088
--- /dev/null
+++ b/std-ant-plugin/src/main/resources/module.ivy.tpl
@@ -0,0 +1,32 @@
+<ivy-module version="2.0" xmlns:ea="http://www.easyant.org">
+ <info organisation="@project.organisation@" module="@project.module@"
+ status="integration" revision="@project.revision@">
+ <!--
+ This easyant section is equivalent to having a module.ant like this:
+
+ <project name="@project.organisation@;@project.module@"
+ xmlns:ea="antlib:org.apache.easyant">
+
+ <ea:import organisation="org.apache.easyant.buildtypes" module="build-std-ant-plugin" revision="0.1"/>
+ </project>
+ -->
+ <!-- note that in a module.ivy the organisation attribute is not mandatory
+ if not specified easyant will use the default organisation for build type / plugin -->
+ <ea:build organisation="org.apache.easyant.buildtypes" module="build-std-ant-plugin" revision="0.1"/>
+ </info>
+ <configurations>
+ <conf name="default" visibility="public" description="runtime dependencies artifact can be used with this conf"/>
+ <conf name="test" visibility="private" description="this scope indicates that the dependency is not required for normal use of the application, and is only available for the test compilation and execution phases."/>
+ <conf name="provided" visibility="public" description="this is much like compile, but indicates you expect the JDK or a container to provide it. It is only available on the compilation classpath, and is not transitive."/>
+ </configurations>
+ <publications>
+ <artifact name="@project.module@" type="ant"/>
+ </publications>
+
+ <dependencies>
+ <!-- your project dependencies goes here -->
+ <!--
+ <dependency org="junit" name="junit" rev="4.4" conf="test->default" />
+ -->
+ </dependencies>
+</ivy-module>
diff --git a/std-ant-plugin/src/main/resources/skeleton.postinstall.ant.tpl b/std-ant-plugin/src/main/resources/skeleton.postinstall.ant.tpl
new file mode 100644
index 0000000..e78787a
--- /dev/null
+++ b/std-ant-plugin/src/main/resources/skeleton.postinstall.ant.tpl
@@ -0,0 +1,12 @@
+<project name="org.apache.easyant.plugins#skeleton-postinstall" default="doit">
+
+ <target name="doit">
+ <!-- rename the plugin skeleton -->
+ <move file="${basedir}/src/main/resources/temp-plugin.ant"
+ tofile="${basedir}/src/main/resources/@project.module@.ant"/>
+ <!-- rename the plugin testcase skeleton -->
+ <move file="${basedir}/src/test/antunit/temp-plugin-test.xml"
+ tofile="${basedir}/src/test/antunit/@project.module@-test.xml"/>
+ </target>
+
+</project>
diff --git a/std-ant-plugin/src/main/resources/src/main/resources/temp-plugin.ant.tpl b/std-ant-plugin/src/main/resources/src/main/resources/temp-plugin.ant.tpl
new file mode 100644
index 0000000..3abffcf
--- /dev/null
+++ b/std-ant-plugin/src/main/resources/src/main/resources/temp-plugin.ant.tpl
@@ -0,0 +1,18 @@
+<project name="@project.organisation@;@project.module@"
+ xmlns:ivy="antlib:org.apache.ivy.ant"
+ xmlns:ea="antlib:org.apache.easyant">
+
+ <!--
+ Force compliance with easyant-core to 0.7 or higher
+ <ea:core-version requiredrevision="[0.7,+]" />
+ -->
+
+ <!-- Sample init target -->
+ <target name=":init" phase="validate">
+ <!-- you should remove this echo message -->
+ <echo level="debug">This is the init target of @project.module@</echo>
+ </target>
+
+ <!-- define a generic default target for this plugin -->
+ <target name="doit" depends="validate"/>
+</project>
diff --git a/std-ant-plugin/src/main/resources/src/test/antunit/temp-plugin-test.xml.tpl b/std-ant-plugin/src/main/resources/src/test/antunit/temp-plugin-test.xml.tpl
new file mode 100644
index 0000000..14fac8e
--- /dev/null
+++ b/std-ant-plugin/src/main/resources/src/test/antunit/temp-plugin-test.xml.tpl
@@ -0,0 +1,55 @@
+<!--
+ Copyright 2008-2009 the EasyAnt project
+
+ See the NOTICE file distributed with this work for additional information
+ regarding copyright ownership.
+
+ Licensed 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="@project.organisation@;@project.module@-test" xmlns:au="antlib:org.apache.ant.antunit">
+
+ <!-- Mocking required phase -->
+ <phase name="validate"/>
+
+ <!-- Import your plugin -->
+ <import file="../../main/resources/@project.module@.ant"/>
+
+ <!-- Defines a setUp / tearDown (before each test) that cleans the environnement -->
+ <target name="clean" description="remove stale build artifacts before / after each test">
+ <delete dir="${basedir}" includeemptydirs="true">
+ <include name="**/target/**"/>
+ <include name="**/lib/**"/>
+ </delete>
+ </target>
+
+ <target name="setUp" depends="clean"/>
+ <target name="tearDown" depends="clean"/>
+
+ <!-- init test case -->
+ <target name="testInit">
+ <antcall target=":init"/>
+ <au:assertLogContains level="debug" text="This is the init target of @project.module@"/>
+ </target>
+
+ <!--
+ A sample ant unit test case,
+ see the antunit official documentation for more informations
+
+ <target name="testSample" description="a sample of ant unit test case">
+ <au:assertTrue>
+ <matches string="abc" pattern="abc"/>
+ </au:assertTrue>
+ </target>
+ -->
+
+</project>
\ No newline at end of file
diff --git a/std-java-application/module.ivy b/std-java-application/module.ivy
new file mode 100644
index 0000000..8350afd
--- /dev/null
+++ b/std-java-application/module.ivy
@@ -0,0 +1,25 @@
+<!--
+ Copyright 2008-2010 the EasyAnt project
+
+ See the NOTICE file distributed with this work for additional information
+ regarding copyright ownership.
+
+ Licensed 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.
+-->
+<ivy-module version="2.0" xmlns:ea="http://www.easyant.org">
+ <info organisation="org.apache.easyant.skeletons" module="std-java-application"
+ status="integration" revision="0.1">
+ <description>Skeleton for creating standard java application</description>
+ <ea:build module="build-std-skeleton" revision="0.1"/>
+ </info>
+</ivy-module>
diff --git a/std-java-application/src/main/resources/module.ivy.tpl b/std-java-application/src/main/resources/module.ivy.tpl
new file mode 100644
index 0000000..b393da0
--- /dev/null
+++ b/std-java-application/src/main/resources/module.ivy.tpl
@@ -0,0 +1,28 @@
+<ivy-module version="2.0" xmlns:ea="http://www.easyant.org">
+ <info organisation="@project.organisation@" module="@project.module@"
+ status="integration" revision="@project.revision@">
+ <!--
+ This easyant section is equivalent to having a module.ant like this:
+
+ <project name="@project.organisation@;@project.module@"
+ xmlns:ea="antlib:org.apache.easyant">
+
+ <ea:import organisation="org.apache.easyant.buildtypes" module="build-std-java" revision="0.2"/>
+ </project>
+ -->
+ <!-- note that in a module.ivy the organisation attribute is not mandatory
+ if not specified easyant will use the default organisation for build type / plugin -->
+ <ea:build organisation="org.apache.easyant.buildtypes" module="build-std-java" revision="0.2"/>
+ </info>
+ <configurations>
+ <conf name="default" visibility="public" description="runtime dependencies artifact can be used with this conf"/>
+ <conf name="test" visibility="private" description="this scope indicates that the dependency is not required for normal use of the application, and is only available for the test compilation and execution phases."/>
+ <conf name="provided" visibility="public" description="this is much like compile, but indicates you expect the JDK or a container to provide it. It is only available on the compilation classpath, and is not transitive."/>
+ </configurations>
+ <dependencies>
+ <!-- your project dependencies goes here -->
+ <!--
+ <dependency org="junit" name="junit" rev="4.4" conf="test->default" />
+ -->
+ </dependencies>
+</ivy-module>
diff --git a/std-java-webapplication/module.ivy b/std-java-webapplication/module.ivy
new file mode 100644
index 0000000..0af2327
--- /dev/null
+++ b/std-java-webapplication/module.ivy
@@ -0,0 +1,25 @@
+<!--
+ Copyright 2008-2010 the EasyAnt project
+
+ See the NOTICE file distributed with this work for additional information
+ regarding copyright ownership.
+
+ Licensed 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.
+-->
+<ivy-module version="2.0" xmlns:ea="http://www.easyant.org">
+ <info organisation="org.apache.easyant.skeletons" module="std-java-webapplication"
+ status="integration" revision="0.1">
+ <description>Skeleton for creating standard java web application</description>
+ <ea:build module="build-std-skeleton" revision="0.1"/>
+ </info>
+</ivy-module>
diff --git a/std-java-webapplication/src/main/resources/module.ivy.tpl b/std-java-webapplication/src/main/resources/module.ivy.tpl
new file mode 100644
index 0000000..8bb2086
--- /dev/null
+++ b/std-java-webapplication/src/main/resources/module.ivy.tpl
@@ -0,0 +1,28 @@
+<ivy-module version="2.0" xmlns:ea="http://www.easyant.org">
+ <info organisation="@project.organisation@" module="@project.module@"
+ status="integration" revision="@project.revision@">
+ <!--
+ This easyant section is equivalent to having a module.ant like this:
+
+ <project name="@project.organisation@;@project.module@"
+ xmlns:ea="antlib:org.apache.easyant">
+
+ <ea:import organisation="org.apache.easyant.buildtypes" module="build-webapp-java" revision="0.1"/>
+ </project>
+ -->
+ <!-- note that in a module.ivy the organisation attribute is not mandatory
+ if not specified easyant will use the default organisation for build type / plugin -->
+ <ea:build organisation="org.apache.easyant.buildtypes" module="build-webapp-java" revision="0.1"/>
+ </info>
+ <configurations>
+ <conf name="default" visibility="public" description="runtime dependencies artifact can be used with this conf"/>
+ <conf name="test" visibility="private" description="this scope indicates that the dependency is not required for normal use of the application, and is only available for the test compilation and execution phases."/>
+ <conf name="provided" visibility="public" description="this is much like compile, but indicates you expect the JDK or a container to provide it. It is only available on the compilation classpath, and is not transitive."/>
+ </configurations>
+ <dependencies>
+ <!-- your project dependencies goes here -->
+ <!--
+ <dependency org="junit" name="junit" rev="4.4" conf="test->default" />
+ -->
+ </dependencies>
+</ivy-module>
diff --git a/std-skeleton/module.ivy b/std-skeleton/module.ivy
new file mode 100644
index 0000000..b578053
--- /dev/null
+++ b/std-skeleton/module.ivy
@@ -0,0 +1,25 @@
+<!--
+ Copyright 2008-2010 the EasyAnt project
+
+ See the NOTICE file distributed with this work for additional information
+ regarding copyright ownership.
+
+ Licensed 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.
+-->
+<ivy-module version="2.0" xmlns:ea="http://www.easyant.org">
+ <info organisation="org.apache.easyant.skeletons" module="std-skeleton"
+ status="integration" revision="0.1">
+ <description>Emtpy skeleton structure</description>
+ <ea:build module="build-std-skeleton" revision="0.1"/>
+ </info>
+</ivy-module>
diff --git a/std-skeleton/src/main/resources/module.ivy.tpl b/std-skeleton/src/main/resources/module.ivy.tpl
new file mode 100644
index 0000000..70356dd
--- /dev/null
+++ b/std-skeleton/src/main/resources/module.ivy.tpl
@@ -0,0 +1,9 @@
+<ivy-module version="2.0" xmlns:ea="http://www.easyant.org">
+ <info organisation="@project.organisation@" module="@project.module@"
+ status="integration" revision="@project.revision@">
+ <!--
+ <description>YOUR SKELETON DESCRIPTION GOES HERE</description>
+ -->
+ <ea:build module="build-std-skeleton" revision="0.1"/>
+ </info>
+</ivy-module>
diff --git a/std-skeleton/src/main/resources/skeleton.postinstall.ant.tpl b/std-skeleton/src/main/resources/skeleton.postinstall.ant.tpl
new file mode 100644
index 0000000..6a2c18a
--- /dev/null
+++ b/std-skeleton/src/main/resources/skeleton.postinstall.ant.tpl
@@ -0,0 +1,12 @@
+<project name="org.apache.easyant.plugins#skeleton-postinstall" default="doit">
+
+ <target name="doit">
+ <!-- rename the plugin skeleton -->
+ <move file="${basedir}/src/main/resources/module.ivy"
+ tofile="${basedir}/src/main/resources/module.ivy.tpl"/>
+ <!-- rename the plugin testcase skeleton -->
+ <move file="${basedir}/src/test/antunit/temp-plugin-test.xml"
+ tofile="${basedir}/src/test/antunit/@project.module@-test.xml"/>
+ </target>
+
+</project>
diff --git a/std-skeleton/src/main/resources/src/main/resources/module.ivy b/std-skeleton/src/main/resources/src/main/resources/module.ivy
new file mode 100644
index 0000000..70356dd
--- /dev/null
+++ b/std-skeleton/src/main/resources/src/main/resources/module.ivy
@@ -0,0 +1,9 @@
+<ivy-module version="2.0" xmlns:ea="http://www.easyant.org">
+ <info organisation="@project.organisation@" module="@project.module@"
+ status="integration" revision="@project.revision@">
+ <!--
+ <description>YOUR SKELETON DESCRIPTION GOES HERE</description>
+ -->
+ <ea:build module="build-std-skeleton" revision="0.1"/>
+ </info>
+</ivy-module>
diff --git a/std-skeleton/src/main/resources/src/test/antunit/temp-plugin-test.xml.tpl b/std-skeleton/src/main/resources/src/test/antunit/temp-plugin-test.xml.tpl
new file mode 100644
index 0000000..a1a2193
--- /dev/null
+++ b/std-skeleton/src/main/resources/src/test/antunit/temp-plugin-test.xml.tpl
@@ -0,0 +1,43 @@
+<!--
+ Copyright 2008-2009 the EasyAnt project
+
+ See the NOTICE file distributed with this work for additional information
+ regarding copyright ownership.
+
+ Licensed 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="@project.organisation@;@project.module@-test" xmlns:au="antlib:org.apache.ant.antunit">
+
+ <!-- Defines a setUp / tearDown (before each test) that cleans the environnement -->
+ <target name="clean" description="remove stale build artifacts before / after each test">
+ <delete dir="${basedir}" includeemptydirs="true">
+ <include name="**/target/**"/>
+ <include name="**/lib/**"/>
+ </delete>
+ </target>
+
+ <target name="setUp" depends="clean"/>
+ <target name="tearDown" depends="clean"/>
+
+ <!--
+ A sample ant unit test case,
+ see the antunit official documentation for more informations
+
+ <target name="testSample" description="a sample of ant unit test case">
+ <au:assertTrue>
+ <matches string="abc" pattern="abc"/>
+ </au:assertTrue>
+ </target>
+ -->
+
+</project>