You are viewing a plain text version of this content. The canonical link for it is here.
Posted to easyant-commits@incubator.apache.org by jl...@apache.org on 2012/10/16 19:27:46 UTC
svn commit: r1398938 [4/4] - in /incubator/easyant/plugins/trunk: ./
abstract-compile/ abstract-compile/src/main/resources/
abstract-compile/src/test/antunit/ abstract-package/
abstract-package/src/main/resources/ abstract-package/src/test/antunit/
abs...
Modified: incubator/easyant/plugins/trunk/easyant-plugin-documentation/src/test/antunit/easyant-plugin-documentation-test.xml
URL: http://svn.apache.org/viewvc/incubator/easyant/plugins/trunk/easyant-plugin-documentation/src/test/antunit/easyant-plugin-documentation-test.xml?rev=1398938&r1=1398937&r2=1398938&view=diff
==============================================================================
--- incubator/easyant/plugins/trunk/easyant-plugin-documentation/src/test/antunit/easyant-plugin-documentation-test.xml (original)
+++ incubator/easyant/plugins/trunk/easyant-plugin-documentation/src/test/antunit/easyant-plugin-documentation-test.xml Tue Oct 16 19:27:43 2012
@@ -14,54 +14,47 @@
See the License for the specific language governing permissions and
limitations under the License.
-->
-<project name="org.apache.easyant.plugins;easyant-plugin-documentation-test"
- xmlns:au="antlib:org.apache.ant.antunit"
- xmlns:ivy="antlib:org.apache.ivy.ant"
- xmlns:ea="antlib:org.apache.easyant">
+<project name="org.apache.easyant.plugins;easyant-plugin-documentation-test" xmlns:au="antlib:org.apache.ant.antunit"
+ xmlns:ivy="antlib:org.apache.ivy.ant" xmlns:ea="antlib:org.apache.easyant">
- <!-- Import your plugin -->
- <property name="target" value="${basedir}/target/test-antunit"/>
+ <!-- Import your plugin -->
+ <property name="target" value="${basedir}/target/test-antunit" />
<!-- configure easyant in current project -->
<ea:configure-easyant-ivy-instance />
<!-- import our local plugin -->
- <ea:import-test-module moduleIvy="../../../module.ivy" sourceDirectory="../../main/resources"/>
+ <ea:import-test-module moduleIvy="../../../module.ivy" sourceDirectory="../../main/resources" />
- <!-- Defines a setUp / tearDown (before each test) that cleans the environnement -->
+ <!-- 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/**"/>
+ <include name="**/target/**" />
+ <include name="**/lib/**" />
</delete>
</target>
-
+
<target name="setUp" depends="clean">
- <property name="plugindoc.module.ivy" value="${basedir}/sample-module.ivy"/>
- <property name="plugindoc.source.dir" value="${basedir}/src/main/resources"/>
- <property name="plugindoc.todir" value="${target}/artifacts"/>
+ <property name="plugindoc.module.ivy" value="${basedir}/sample-module.ivy" />
+ <property name="plugindoc.source.dir" value="${basedir}/src/main/resources" />
+ <property name="plugindoc.todir" value="${target}/artifacts" />
</target>
- <target name="tearDown" depends="clean"/>
-
+ <target name="tearDown" depends="clean" />
+
<target name="test-easyant-plugin-documentation:report" depends="easyant-plugin-documentation:report">
- <au:assertPropertyEquals name="plugindoc.module.ivy" value="${basedir}/sample-module.ivy"/>
- <au:assertPropertyEquals name="plugindoc.source.dir" value="${basedir}/src/main/resources"/>
- <au:assertPropertyEquals name="plugindoc.main.confs" value="default"/>
- <au:assertPropertyEquals name="plugindoc.todir" value="${target}/artifacts"/>
- <au:assertFileExists file="${target}/artifacts/org.apache.easyant.plugins-tinyplugin-default.html"/>
+ <au:assertPropertyEquals name="plugindoc.module.ivy" value="${basedir}/sample-module.ivy" />
+ <au:assertPropertyEquals name="plugindoc.source.dir" value="${basedir}/src/main/resources" />
+ <au:assertPropertyEquals name="plugindoc.main.confs" value="default" />
+ <au:assertPropertyEquals name="plugindoc.todir" value="${target}/artifacts" />
+ <au:assertFileExists file="${target}/artifacts/org.apache.easyant.plugins-tinyplugin-default.html" />
</target>
-
<target name="prepare-register-artifact">
- <ivy:settings id="easyant.ivy.instance"/>
- <ivy:resolve file="sample-module.ivy" settingsRef="easyant.ivy.instance"/>
+ <ivy:settings id="easyant.ivy.instance" />
+ <ivy:resolve file="sample-module.ivy" settingsRef="easyant.ivy.instance" />
</target>
-
-
<target name="test-easyant-plugin-documentation:register-artifact" depends="prepare-register-artifact,easyant-plugin-documentation:register-artifact">
- <au:assertPropertyEquals name="plugindoc.publish.type" value="html"/>
- <au:assertPropertyEquals name="plugindoc.publish.confs" value="documentation"/>
-
+ <au:assertPropertyEquals name="plugindoc.publish.type" value="html" />
+ <au:assertPropertyEquals name="plugindoc.publish.confs" value="documentation" />
</target>
-
-</project>
+</project>
\ No newline at end of file
Modified: incubator/easyant/plugins/trunk/easyant-plugin-documentation/src/test/antunit/sample-module.ivy
URL: http://svn.apache.org/viewvc/incubator/easyant/plugins/trunk/easyant-plugin-documentation/src/test/antunit/sample-module.ivy?rev=1398938&r1=1398937&r2=1398938&view=diff
==============================================================================
--- incubator/easyant/plugins/trunk/easyant-plugin-documentation/src/test/antunit/sample-module.ivy (original)
+++ incubator/easyant/plugins/trunk/easyant-plugin-documentation/src/test/antunit/sample-module.ivy Tue Oct 16 19:27:43 2012
@@ -14,15 +14,17 @@
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">
+<ivy-module version="2.0" xmlns:ea="http://www.easyant.org">
<info organisation="org.apache.easyant.plugins" module="tinyplugin" revision="0.9">
</info>
<configurations>
- <conf name="default" description="runtime dependencies artifact can be used with this conf"/>
- <conf name="test" 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" 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>
+ <conf name="default" description="runtime dependencies artifact can be used with this conf" />
+ <conf name="test"
+ 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"
+ 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 type="ant"/>
+ <artifact type="ant" />
</publications>
</ivy-module>
Modified: incubator/easyant/plugins/trunk/easyant-plugin-publication/module.ivy
URL: http://svn.apache.org/viewvc/incubator/easyant/plugins/trunk/easyant-plugin-publication/module.ivy?rev=1398938&r1=1398937&r2=1398938&view=diff
==============================================================================
--- incubator/easyant/plugins/trunk/easyant-plugin-publication/module.ivy (original)
+++ incubator/easyant/plugins/trunk/easyant-plugin-publication/module.ivy Tue Oct 16 19:27:43 2012
@@ -14,17 +14,20 @@
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">
+<ivy-module version="2.0" xmlns:ea="http://www.easyant.org">
<info organisation="org.apache.easyant.plugins" module="easyant-plugin-publication" revision="0.9">
- <description>This module provides publication features for easyant plugins.</description>
- <ea:build organisation="org.apache.easyant.buildtypes" module="build-std-ant-plugin" revision="0.1"/>
- </info>
- <configurations>
- <conf name="default" description="runtime dependencies artifact can be used with this conf"/>
- <conf name="test" 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" 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>
+ <extends organisation="org.apache.easyant.plugins" module="parent-plugin" revision="0.1" />
+ <description>This module provides publication features for easyant plugins.</description>
+ <ea:build organisation="org.apache.easyant.buildtypes" module="build-std-ant-plugin" revision="0.1" />
+ </info>
+ <configurations>
+ <conf name="default" description="runtime dependencies artifact can be used with this conf" />
+ <conf name="test"
+ 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"
+ 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 type="ant"/>
+ <artifact type="ant" />
</publications>
-</ivy-module>
+</ivy-module>
\ No newline at end of file
Modified: incubator/easyant/plugins/trunk/easyant-plugin-publication/src/main/resources/easyant-plugin-publication.ant
URL: http://svn.apache.org/viewvc/incubator/easyant/plugins/trunk/easyant-plugin-publication/src/main/resources/easyant-plugin-publication.ant?rev=1398938&r1=1398937&r2=1398938&view=diff
==============================================================================
--- incubator/easyant/plugins/trunk/easyant-plugin-publication/src/main/resources/easyant-plugin-publication.ant (original)
+++ incubator/easyant/plugins/trunk/easyant-plugin-publication/src/main/resources/easyant-plugin-publication.ant Tue Oct 16 19:27:43 2012
@@ -14,27 +14,25 @@
See the License for the specific language governing permissions and
limitations under the License.
-->
-<project name="org.apache.easyant.plugins#easyant-plugin-publication"
- xmlns:ivy="antlib:org.apache.ivy.ant"
- xmlns:ac="antlib:net.sf.antcontrib"
- xmlns:ea="antlib:org.apache.easyant">
-
+<project name="org.apache.easyant.plugins#easyant-plugin-publication" xmlns:ivy="antlib:org.apache.ivy.ant"
+ xmlns:ac="antlib:net.sf.antcontrib" xmlns:ea="antlib:org.apache.easyant">
<ea:core-version requiredrevision="[0.9,+]" />
<ea:import mrid="org.apache.easyant.plugins#ivy-publication;0.9" />
<ea:import mrid="org.apache.easyant.plugins#abstract-test;0.9" />
<ea:import mrid="org.apache.easyant.plugins#abstract-provisioning;0.9" />
- <ea:parameter property="publish.plugin.before.test"
- description="defines if easyant should publish the plugin before running test"/>
- <ea:parameter property="target.artifacts" default="${target}/artifacts" description="destination directory for target artifacts"/>
+ <ea:parameter property="publish.plugin.before.test" description="defines if easyant should publish the plugin before running test" />
+ <ea:parameter property="target.artifacts" default="${target}/artifacts" description="destination directory for target artifacts" />
<!--
publish in build scoped repository before test
-->
- <target name="easyant-plugin-publication:before-test" depends="abstract-provisioning:provisioning" extensionOf="abstract-test:test-ready" if="publish.plugin.before.test">
- <ea:configure-build-scoped-repository buildScopedRepositoryName="build" settingsRef="easyant.ivy.instance"/>
- <ivy:publish artifactspattern="${target.artifacts}/[artifact](-[classifier]).[ext]" resolver="build" forcedeliver="true" overwrite="true" settingsRef="easyant.ivy.instance" />
+ <target name="easyant-plugin-publication:before-test" depends="abstract-provisioning:provisioning"
+ extensionOf="abstract-test:test-ready" if="publish.plugin.before.test">
+ <ea:configure-build-scoped-repository buildScopedRepositoryName="build"
+ settingsRef="easyant.ivy.instance" />
+ <ivy:publish artifactspattern="${target.artifacts}/[artifact](-[classifier]).[ext]" resolver="build"
+ forcedeliver="true" overwrite="true" settingsRef="easyant.ivy.instance" />
</target>
-
-</project>
+</project>
\ No newline at end of file
Modified: incubator/easyant/plugins/trunk/easyant-plugin-publication/src/test/antunit/easyant-plugin-publication-test.xml
URL: http://svn.apache.org/viewvc/incubator/easyant/plugins/trunk/easyant-plugin-publication/src/test/antunit/easyant-plugin-publication-test.xml?rev=1398938&r1=1398937&r2=1398938&view=diff
==============================================================================
--- incubator/easyant/plugins/trunk/easyant-plugin-publication/src/test/antunit/easyant-plugin-publication-test.xml (original)
+++ incubator/easyant/plugins/trunk/easyant-plugin-publication/src/test/antunit/easyant-plugin-publication-test.xml Tue Oct 16 19:27:43 2012
@@ -14,46 +14,43 @@
See the License for the specific language governing permissions and
limitations under the License.
-->
-<project name="org.apache.easyant.plugins;easyant-plugin-publication-test"
- xmlns:au="antlib:org.apache.ant.antunit"
- xmlns:ivy="antlib:org.apache.ivy.ant"
- xmlns:ea="antlib:org.apache.easyant">
+<project name="org.apache.easyant.plugins;easyant-plugin-publication-test" xmlns:au="antlib:org.apache.ant.antunit"
+ xmlns:ivy="antlib:org.apache.ivy.ant" xmlns:ea="antlib:org.apache.easyant">
- <!-- Import your plugin -->
- <property name="target" value="target/test-antunit"/>
+ <!-- Import your plugin -->
+ <property name="target" value="target/test-antunit" />
<!-- configure easyant in current project -->
<ea:configure-easyant-ivy-instance />
<!-- import our local plugin -->
- <ea:import-test-module moduleIvy="../../../module.ivy" sourceDirectory="../../main/resources"/>
+ <ea:import-test-module moduleIvy="../../../module.ivy" sourceDirectory="../../main/resources" />
- <!-- Defines a setUp / tearDown (before each test) that cleans the environnement -->
+ <!-- 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/**"/>
+ <include name="**/target/**" />
+ <include name="**/lib/**" />
</delete>
</target>
-
+
<target name="setUp" depends="clean">
- <property name="publish.plugin.before.test" value="true"/>
- <property name="project.ivy.instance" value="project.ivy.instance"/>
- <ivy:settings id="${project.ivy.instance}"/>
- <ivy:resolve file="sample-module.ivy" settingsRef="${project.ivy.instance}"/>
+ <property name="publish.plugin.before.test" value="true" />
+ <property name="project.ivy.instance" value="project.ivy.instance" />
+ <ivy:settings id="${project.ivy.instance}" />
+ <ivy:resolve file="sample-module.ivy" settingsRef="${project.ivy.instance}" />
<!--
FIXME:this plugin assume artifacts are already in target/artifacts
This job is done by resources-std-plugin, should we add an import of this plugin there ?
-->
- <mkdir dir="${target}/artifacts"/>
- <echo file="${target}/artifacts/sample-easyant-plugin.ant"/>
+ <mkdir dir="${target}/artifacts" />
+ <echo file="${target}/artifacts/sample-easyant-plugin.ant" />
</target>
- <target name="tearDown" depends="clean"/>
+ <target name="tearDown" depends="clean" />
<target name="test-easyant-plugin-publication:before-test" depends="easyant-plugin-publication:before-test">
- <au:assertLogContains text="Registering build scoped repository in" level="debug"/>
- <au:assertLogContains text=":: publishing :: org.apache.easyant#sample-easyant-plugin"/>
- <au:assertLogContains text=":: publishing :: org.apache.easyant#sample-easyant-plugin"/>
- <au:assertLogContains text="published sample-easyant-plugin to"/>
- <au:assertLogContains text="published ivy to"/>
+ <au:assertLogContains text="Registering build scoped repository in" level="debug" />
+ <au:assertLogContains text=":: publishing :: org.apache.easyant#sample-easyant-plugin" />
+ <au:assertLogContains text=":: publishing :: org.apache.easyant#sample-easyant-plugin" />
+ <au:assertLogContains text="published sample-easyant-plugin to" />
+ <au:assertLogContains text="published ivy to" />
</target>
-
-</project>
+</project>
\ No newline at end of file
Modified: incubator/easyant/plugins/trunk/easyant-plugin-publication/src/test/antunit/sample-module.ivy
URL: http://svn.apache.org/viewvc/incubator/easyant/plugins/trunk/easyant-plugin-publication/src/test/antunit/sample-module.ivy?rev=1398938&r1=1398937&r2=1398938&view=diff
==============================================================================
--- incubator/easyant/plugins/trunk/easyant-plugin-publication/src/test/antunit/sample-module.ivy (original)
+++ incubator/easyant/plugins/trunk/easyant-plugin-publication/src/test/antunit/sample-module.ivy Tue Oct 16 19:27:43 2012
@@ -15,10 +15,9 @@
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" module="sample-easyant-plugin" revision="0.1" status="integration"/>
+<ivy-module version="2.0" xmlns:ea="http://www.easyant.org">
+ <info organisation="org.apache.easyant" module="sample-easyant-plugin" revision="0.1" status="integration" />
<publications>
- <artifact type="ant"/>
+ <artifact type="ant" />
</publications>
-
-</ivy-module>
+</ivy-module>
\ No newline at end of file
Modified: incubator/easyant/plugins/trunk/ivy-provisioning/module.ivy
URL: http://svn.apache.org/viewvc/incubator/easyant/plugins/trunk/ivy-provisioning/module.ivy?rev=1398938&r1=1398937&r2=1398938&view=diff
==============================================================================
--- incubator/easyant/plugins/trunk/ivy-provisioning/module.ivy (original)
+++ incubator/easyant/plugins/trunk/ivy-provisioning/module.ivy Tue Oct 16 19:27:43 2012
@@ -14,16 +14,19 @@
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">
+<ivy-module version="2.0" xmlns:ea="http://www.easyant.org">
<info organisation="org.apache.easyant.plugins" module="ivy-provisioning" revision="0.9">
- <ea:build organisation="org.apache.easyant.buildtypes" module="build-std-ant-plugin" revision="0.1"/>
- </info>
- <configurations>
- <conf name="default" description="runtime dependencies artifact can be used with this conf"/>
- <conf name="test" 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" 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>
+ <extends organisation="org.apache.easyant.plugins" module="parent-plugin" revision="0.1" />
+ <ea:build organisation="org.apache.easyant.buildtypes" module="build-std-ant-plugin" revision="0.1" />
+ </info>
+ <configurations>
+ <conf name="default" description="runtime dependencies artifact can be used with this conf" />
+ <conf name="test"
+ 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"
+ 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 type="ant"/>
+ <artifact type="ant" />
</publications>
-</ivy-module>
+</ivy-module>
\ No newline at end of file
Modified: incubator/easyant/plugins/trunk/ivy-provisioning/src/main/resources/ivy-provisioning.ant
URL: http://svn.apache.org/viewvc/incubator/easyant/plugins/trunk/ivy-provisioning/src/main/resources/ivy-provisioning.ant?rev=1398938&r1=1398937&r2=1398938&view=diff
==============================================================================
--- incubator/easyant/plugins/trunk/ivy-provisioning/src/main/resources/ivy-provisioning.ant (original)
+++ incubator/easyant/plugins/trunk/ivy-provisioning/src/main/resources/ivy-provisioning.ant Tue Oct 16 19:27:43 2012
@@ -14,11 +14,8 @@
See the License for the specific language governing permissions and
limitations under the License.
-->
-<project name="org.apache.easyant.plugins#ivy-provisioning"
- xmlns:ivy="antlib:org.apache.ivy.ant"
- xmlns:ac="antlib:net.sf.antcontrib"
+<project name="org.apache.easyant.plugins#ivy-provisioning" xmlns:ivy="antlib:org.apache.ivy.ant" xmlns:ac="antlib:net.sf.antcontrib"
xmlns:ea="antlib:org.apache.easyant">
-
<ea:core-version requiredrevision="[0.9,+]" />
<ea:import mrid="org.apache.easyant.plugins#abstract-provisioning;0.9" />
@@ -27,27 +24,33 @@
<ea:parameter property="test.confs" default="test" description="confs used for test librairies" />
<ea:parameter property="provided.confs" default="provided" description="confs used for provided librairies" />
<ea:parameter property="project.ivy.instance" default="project.ivy.instance" description="the ivy instance name for your project" />
- <ea:parameter property="project.ivy.file" required="true" description="the name of the file containing dependencies of your project" />
- <ea:parameter property="retrieve.dependencies" default="false" description="defines if dependencies should be retrieve dependencies in the lib directory"/>
-
- <ea:parameter property="retrieve.pattern.lib.main" default="${lib.main}/[artifact]-[revision].[ext]" description="retrieve pattern for main artifacts" />
- <ea:parameter property="retrieve.pattern.lib.test" default="${lib.test}/[artifact]-[revision].[ext]" description="retrieve pattern for test artifacts" />
- <ea:parameter property="retrieve.pattern.lib.provided" default="${lib.provided}/[artifact]-[revision].[ext]" description="retrieve pattern for provided artifacts" />
-
- <ea:parameter property="sync.lib.dir" default="true" description="a boolean that define if lib dir should be synchronized or not"/>
+ <ea:parameter property="project.ivy.file" required="true"
+ description="the name of the file containing dependencies of your project" />
+ <ea:parameter property="retrieve.dependencies" default="false"
+ description="defines if dependencies should be retrieve dependencies in the lib directory" />
+
+ <ea:parameter property="retrieve.pattern.lib.main" default="${lib.main}/[artifact]-[revision].[ext]"
+ description="retrieve pattern for main artifacts" />
+ <ea:parameter property="retrieve.pattern.lib.test" default="${lib.test}/[artifact]-[revision].[ext]"
+ description="retrieve pattern for test artifacts" />
+ <ea:parameter property="retrieve.pattern.lib.provided" default="${lib.provided}/[artifact]-[revision].[ext]"
+ description="retrieve pattern for provided artifacts" />
+ <ea:parameter property="sync.lib.dir" default="true"
+ description="a boolean that define if lib dir should be synchronized or not" />
<!-- is project ivy settings configured ? -->
<ea:parameter property="project.ivy.settings.file" description="the ivysettings file used by your project" />
<ea:parameter property="project.ivy.settings.url" description="the ivysettings url used by your project" />
<condition property="is.project.ivy.settings.configured">
- <isreference refid="${project.ivy.instance}"/>
+ <isreference refid="${project.ivy.instance}" />
</condition>
- <fail unless="is.project.ivy.settings.configured" message="project ivy instance is not configured, at least one of the following property must be set : project.ivy.settings.file, project.ivy.settings.url"/>
+ <fail unless="is.project.ivy.settings.configured"
+ message="project ivy instance is not configured, at least one of the following property must be set : project.ivy.settings.file, project.ivy.settings.url" />
- <path id="project.lib.main.classpath"/>
- <path id="project.lib.test.classpath"/>
- <path id="project.lib.provided.classpath"/>
+ <path id="project.lib.main.classpath" />
+ <path id="project.lib.test.classpath" />
+ <path id="project.lib.provided.classpath" />
</target>
<!-- =================================
@@ -56,69 +59,73 @@
<target name="-ivy-provisioning:resolve" depends="abstract-provisioning:provisioning-ready">
<ivy:resolve file="${project.ivy.file}" settingsRef="${project.ivy.instance}" />
<condition property="project.contains.main.confs">
- <matches string="${ivy.resolved.configurations}" pattern="${main.confs}"/>
+ <matches string="${ivy.resolved.configurations}" pattern="${main.confs}" />
</condition>
<condition property="project.contains.test.confs">
- <matches string="${ivy.resolved.configurations}" pattern="${test.confs}"/>
+ <matches string="${ivy.resolved.configurations}" pattern="${test.confs}" />
</condition>
<condition property="project.contains.provided.confs">
- <matches string="${ivy.resolved.configurations}" pattern="${provided.confs}"/>
+ <matches string="${ivy.resolved.configurations}" pattern="${provided.confs}" />
</condition>
</target>
- <target name="ivy-provisioning:resolve" depends="-ivy-provisioning:resolve,-ivy-provisioning:resolve-main-confs,-ivy-provisioning:resolve-test-confs,-ivy-provisioning:resolve-provided-confs" description="resolve and retrieve dependencies with ivy" unless="skip.resolve" extensionOf="abstract-provisioning:provisioning"/>
+ <target name="ivy-provisioning:resolve"
+ depends="-ivy-provisioning:resolve,-ivy-provisioning:resolve-main-confs,-ivy-provisioning:resolve-test-confs,-ivy-provisioning:resolve-provided-confs"
+ description="resolve and retrieve dependencies with ivy" unless="skip.resolve" extensionOf="abstract-provisioning:provisioning" />
<target name="-ivy-provisioning:resolve-main-confs" depends="-ivy-provisioning:resolve" if="project.contains.main.confs">
- <ivy:cachepath pathid="cache.main.classpath" conf="${main.confs}" settingsRef="${project.ivy.instance}"/>
+ <ivy:cachepath pathid="cache.main.classpath" conf="${main.confs}" settingsRef="${project.ivy.instance}" />
<ea:path pathid="compile.main.classpath" overwrite="append-if-not-exist">
- <path refid="cache.main.classpath"/>
+ <path refid="cache.main.classpath" />
</ea:path>
<ac:if>
- <istrue value="${retrieve.dependencies}"/>
+ <istrue value="${retrieve.dependencies}" />
<ac:then>
<mkdir dir="${lib.main}" />
- <ivy:retrieve pattern="${retrieve.pattern.lib.main}" settingsRef="${project.ivy.instance}" conf="${main.confs}" sync="${sync.lib.dir}"/>
+ <ivy:retrieve pattern="${retrieve.pattern.lib.main}" settingsRef="${project.ivy.instance}"
+ conf="${main.confs}" sync="${sync.lib.dir}" />
<ea:path pathid="project.lib.main.classpath" overwrite="append">
- <fileset dir="${lib.main}" includes="*.jar" erroronmissingdir="false"/>
+ <fileset dir="${lib.main}" includes="*.jar" erroronmissingdir="false" />
</ea:path>
</ac:then>
</ac:if>
</target>
<target name="-ivy-provisioning:resolve-test-confs" depends="-ivy-provisioning:resolve" if="project.contains.test.confs">
- <ivy:cachepath pathid="cache.test.classpath" conf="${test.confs}" settingsRef="${project.ivy.instance}"/>
+ <ivy:cachepath pathid="cache.test.classpath" conf="${test.confs}" settingsRef="${project.ivy.instance}" />
<ea:path pathid="compile.test.classpath" overwrite="append-if-not-exist">
- <path refid="cache.test.classpath"/>
+ <path refid="cache.test.classpath" />
</ea:path>
<ac:if>
- <istrue value="${retrieve.dependencies}"/>
+ <istrue value="${retrieve.dependencies}" />
<ac:then>
- <mkdir dir="${lib.test}"/>
+ <mkdir dir="${lib.test}" />
<!-- resolve test dependencies -->
- <ivy:retrieve pattern="${retrieve.pattern.lib.test}" settingsRef="${project.ivy.instance}" conf="${test.confs}" sync="${sync.lib.dir}"/>
+ <ivy:retrieve pattern="${retrieve.pattern.lib.test}" settingsRef="${project.ivy.instance}"
+ conf="${test.confs}" sync="${sync.lib.dir}" />
<ea:path pathid="project.lib.test.classpath" overwrite="append">
- <fileset dir="${lib.test}" includes="*.jar" erroronmissingdir="false"/>
+ <fileset dir="${lib.test}" includes="*.jar" erroronmissingdir="false" />
</ea:path>
</ac:then>
</ac:if>
</target>
-
+
<target name="-ivy-provisioning:resolve-provided-confs" depends="-ivy-provisioning:resolve" if="project.contains.provided.confs">
- <ivy:cachepath pathid="cache.provided.classpath" conf="${provided.confs}" settingsRef="${project.ivy.instance}"/>
+ <ivy:cachepath pathid="cache.provided.classpath" conf="${provided.confs}" settingsRef="${project.ivy.instance}" />
<ea:path pathid="compile.main.classpath" overwrite="append-if-not-exist">
- <path refid="cache.provided.classpath"/>
+ <path refid="cache.provided.classpath" />
</ea:path>
<ac:if>
- <istrue value="${retrieve.dependencies}"/>
+ <istrue value="${retrieve.dependencies}" />
<ac:then>
- <mkdir dir="${lib.provided}"/>
+ <mkdir dir="${lib.provided}" />
<!-- resolve provided dependencies -->
- <ivy:retrieve pattern="${retrieve.pattern.lib.provided}" settingsRef="${project.ivy.instance}" conf="${provided.confs}" sync="${sync.lib.dir}"/>
+ <ivy:retrieve pattern="${retrieve.pattern.lib.provided}" settingsRef="${project.ivy.instance}"
+ conf="${provided.confs}" sync="${sync.lib.dir}" />
<ea:path pathid="project.lib.provided.classpath" overwrite="append">
- <fileset dir="${lib.provided}" includes="*.jar" erroronmissingdir="false"/>
+ <fileset dir="${lib.provided}" includes="*.jar" erroronmissingdir="false" />
</ea:path>
</ac:then>
</ac:if>
</target>
-
-</project>
+</project>
\ No newline at end of file
Modified: incubator/easyant/plugins/trunk/ivy-provisioning/src/test/antunit/ivy-provisioning-test.xml
URL: http://svn.apache.org/viewvc/incubator/easyant/plugins/trunk/ivy-provisioning/src/test/antunit/ivy-provisioning-test.xml?rev=1398938&r1=1398937&r2=1398938&view=diff
==============================================================================
--- incubator/easyant/plugins/trunk/ivy-provisioning/src/test/antunit/ivy-provisioning-test.xml (original)
+++ incubator/easyant/plugins/trunk/ivy-provisioning/src/test/antunit/ivy-provisioning-test.xml Tue Oct 16 19:27:43 2012
@@ -14,80 +14,75 @@
See the License for the specific language governing permissions and
limitations under the License.
-->
-<project name="org.apache.easyant.plugins;ivy-provisioning-test"
- xmlns:au="antlib:org.apache.ant.antunit"
- xmlns:ivy="antlib:org.apache.ivy.ant"
- xmlns:ea="antlib:org.apache.easyant">
+<project name="org.apache.easyant.plugins;ivy-provisioning-test" xmlns:au="antlib:org.apache.ant.antunit"
+ xmlns:ivy="antlib:org.apache.ivy.ant" xmlns:ea="antlib:org.apache.easyant">
- <!-- Import your plugin -->
- <property name="target" value="target/test-antunit"/>
+ <!-- Import your plugin -->
+ <property name="target" value="target/test-antunit" />
<!-- configure easyant in current project -->
<ea:configure-easyant-ivy-instance />
<!-- import our local plugin -->
- <ea:import-test-module moduleIvy="../../../module.ivy" sourceDirectory="../../main/resources"/>
+ <ea:import-test-module moduleIvy="../../../module.ivy" sourceDirectory="../../main/resources" />
- <!-- Defines a setUp / tearDown (before each test) that cleans the environnement -->
+ <!-- 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/**"/>
+ <include name="**/target/**" />
+ <include name="**/lib/**" />
</delete>
</target>
-
+
<target name="setUp" depends="clean">
- <property name="project.ivy.instance" value="project.ivy.instance"/>
- <ivy:settings id="${project.ivy.instance}"/>
- <property name="project.ivy.file" value="sample-module.ivy"/>
+ <property name="project.ivy.instance" value="project.ivy.instance" />
+ <ivy:settings id="${project.ivy.instance}" />
+ <property name="project.ivy.file" value="sample-module.ivy" />
</target>
- <target name="tearDown" depends="clean"/>
-
+ <target name="tearDown" depends="clean" />
+
<target name="test-ivy-provisioning:init" depends="-ivy-provisioning:init">
- <au:assertPropertyEquals name="main.confs" value="default"/>
- <au:assertPropertyEquals name="test.confs" value="test"/>
- <au:assertPropertyEquals name="provided.confs" value="provided"/>
- <au:assertPropertyEquals name="project.ivy.instance" value="project.ivy.instance"/>
- <au:assertPropertyEquals name="project.ivy.file" value="sample-module.ivy"/>
- <au:assertPropertyEquals name="retrieve.dependencies" value="false"/>
- <au:assertPropertyEquals name="retrieve.pattern.lib.main" value="${lib.main}/[artifact]-[revision].[ext]"/>
- <au:assertPropertyEquals name="retrieve.pattern.lib.test" value="${lib.test}/[artifact]-[revision].[ext]"/>
- <au:assertPropertyEquals name="retrieve.pattern.lib.provided" value="${lib.provided}/[artifact]-[revision].[ext]"/>
- <au:assertPropertyEquals name="sync.lib.dir" value="true"/>
- <au:assertPropertyEquals name="is.project.ivy.settings.configured" value="true"/>
- <au:assertReferenceSet refid="project.lib.main.classpath"/>
- <au:assertReferenceSet refid="project.lib.test.classpath"/>
- <au:assertReferenceSet refid="project.lib.provided.classpath"/>
+ <au:assertPropertyEquals name="main.confs" value="default" />
+ <au:assertPropertyEquals name="test.confs" value="test" />
+ <au:assertPropertyEquals name="provided.confs" value="provided" />
+ <au:assertPropertyEquals name="project.ivy.instance" value="project.ivy.instance" />
+ <au:assertPropertyEquals name="project.ivy.file" value="sample-module.ivy" />
+ <au:assertPropertyEquals name="retrieve.dependencies" value="false" />
+ <au:assertPropertyEquals name="retrieve.pattern.lib.main" value="${lib.main}/[artifact]-[revision].[ext]" />
+ <au:assertPropertyEquals name="retrieve.pattern.lib.test" value="${lib.test}/[artifact]-[revision].[ext]" />
+ <au:assertPropertyEquals name="retrieve.pattern.lib.provided" value="${lib.provided}/[artifact]-[revision].[ext]" />
+ <au:assertPropertyEquals name="sync.lib.dir" value="true" />
+ <au:assertPropertyEquals name="is.project.ivy.settings.configured" value="true" />
+ <au:assertReferenceSet refid="project.lib.main.classpath" />
+ <au:assertReferenceSet refid="project.lib.test.classpath" />
+ <au:assertReferenceSet refid="project.lib.provided.classpath" />
</target>
<target name="test-ivy-provisioning:resolve" depends="-ivy-provisioning:resolve">
- <au:assertLogContains text=":: resolving dependencies :: org.apache.easyant#standard-java-app;0.1"/>
- <au:assertPropertyEquals name="project.contains.main.confs" value="true"/>
- <au:assertPropertyEquals name="project.contains.test.confs" value="true"/>
- <au:assertPropertyEquals name="project.contains.provided.confs" value="true"/>
+ <au:assertLogContains text=":: resolving dependencies :: org.apache.easyant#standard-java-app;0.1" />
+ <au:assertPropertyEquals name="project.contains.main.confs" value="true" />
+ <au:assertPropertyEquals name="project.contains.test.confs" value="true" />
+ <au:assertPropertyEquals name="project.contains.provided.confs" value="true" />
</target>
<target name="prepare-resolve">
- <property name="retrieve.dependencies" value="true"/>
+ <property name="retrieve.dependencies" value="true" />
</target>
<target name="test-ivy-provisioning:resolve-main-confs" depends="prepare-resolve,-ivy-provisioning:resolve-main-confs">
- <au:assertReferenceSet refid="cache.main.classpath"/>
- <au:assertReferenceSet refid="compile.main.classpath"/>
- <au:assertFileExists file="${lib.main}"/>
+ <au:assertReferenceSet refid="cache.main.classpath" />
+ <au:assertReferenceSet refid="compile.main.classpath" />
+ <au:assertFileExists file="${lib.main}" />
</target>
<target name="test-ivy-provisioning:resolve-test-confs" depends="prepare-resolve,-ivy-provisioning:resolve-test-confs">
- <au:assertReferenceSet refid="cache.test.classpath"/>
- <au:assertReferenceSet refid="compile.test.classpath"/>
- <au:assertFileExists file="${lib.test}"/>
+ <au:assertReferenceSet refid="cache.test.classpath" />
+ <au:assertReferenceSet refid="compile.test.classpath" />
+ <au:assertFileExists file="${lib.test}" />
</target>
<target name="test-ivy-provisioning:resolve-provided-confs" depends="prepare-resolve,-ivy-provisioning:resolve-provided-confs">
- <au:assertReferenceSet refid="cache.provided.classpath"/>
- <au:assertReferenceSet refid="compile.main.classpath"/>
- <au:assertFileExists file="${lib.provided}"/>
+ <au:assertReferenceSet refid="cache.provided.classpath" />
+ <au:assertReferenceSet refid="compile.main.classpath" />
+ <au:assertFileExists file="${lib.provided}" />
</target>
-
-
-
-</project>
+</project>
\ No newline at end of file
Modified: incubator/easyant/plugins/trunk/ivy-provisioning/src/test/antunit/sample-module.ivy
URL: http://svn.apache.org/viewvc/incubator/easyant/plugins/trunk/ivy-provisioning/src/test/antunit/sample-module.ivy?rev=1398938&r1=1398937&r2=1398938&view=diff
==============================================================================
--- incubator/easyant/plugins/trunk/ivy-provisioning/src/test/antunit/sample-module.ivy (original)
+++ incubator/easyant/plugins/trunk/ivy-provisioning/src/test/antunit/sample-module.ivy Tue Oct 16 19:27:43 2012
@@ -15,15 +15,16 @@
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" module="standard-java-app" revision="0.1" status="integration"/>
+<ivy-module version="2.0" xmlns:ea="http://www.easyant.org">
+ <info organisation="org.apache.easyant" module="standard-java-app" revision="0.1" status="integration" />
<configurations>
- <conf name="default" description="runtime dependencies artifact can be used with this conf"/>
- <conf name="test" 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" 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."/>
+ <conf name="default" description="runtime dependencies artifact can be used with this conf" />
+ <conf name="test"
+ 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"
+ 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>
- <dependency org="junit" name="junit" rev="4.4" conf="*->default"/>
+ <dependency org="junit" name="junit" rev="4.4" conf="*->default" />
</dependencies>
-
-</ivy-module>
+</ivy-module>
\ No newline at end of file
Modified: incubator/easyant/plugins/trunk/ivy-publication/module.ivy
URL: http://svn.apache.org/viewvc/incubator/easyant/plugins/trunk/ivy-publication/module.ivy?rev=1398938&r1=1398937&r2=1398938&view=diff
==============================================================================
--- incubator/easyant/plugins/trunk/ivy-publication/module.ivy (original)
+++ incubator/easyant/plugins/trunk/ivy-publication/module.ivy Tue Oct 16 19:27:43 2012
@@ -14,17 +14,20 @@
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">
+<ivy-module version="2.0" xmlns:ea="http://www.easyant.org">
<info organisation="org.apache.easyant.plugins" module="ivy-publication" revision="0.9">
- <description>This module publication features (to share projects with your team).</description>
- <ea:build organisation="org.apache.easyant.buildtypes" module="build-std-ant-plugin" revision="0.1"/>
- </info>
- <configurations>
- <conf name="default" description="runtime dependencies artifact can be used with this conf"/>
- <conf name="test" 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" 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>
+ <extends organisation="org.apache.easyant.plugins" module="parent-plugin" revision="0.1" />
+ <description>This module publication features (to share projects with your team).</description>
+ <ea:build organisation="org.apache.easyant.buildtypes" module="build-std-ant-plugin" revision="0.1" />
+ </info>
+ <configurations>
+ <conf name="default" description="runtime dependencies artifact can be used with this conf" />
+ <conf name="test"
+ 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"
+ 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 type="ant"/>
+ <artifact type="ant" />
</publications>
-</ivy-module>
+</ivy-module>
\ No newline at end of file
Modified: incubator/easyant/plugins/trunk/ivy-publication/src/main/resources/ivy-publication.ant
URL: http://svn.apache.org/viewvc/incubator/easyant/plugins/trunk/ivy-publication/src/main/resources/ivy-publication.ant?rev=1398938&r1=1398937&r2=1398938&view=diff
==============================================================================
--- incubator/easyant/plugins/trunk/ivy-publication/src/main/resources/ivy-publication.ant (original)
+++ incubator/easyant/plugins/trunk/ivy-publication/src/main/resources/ivy-publication.ant Tue Oct 16 19:27:43 2012
@@ -14,71 +14,65 @@
See the License for the specific language governing permissions and
limitations under the License.
-->
-<project name="org.apache.easyant.plugins#ivy-publication"
- xmlns:ivy="antlib:org.apache.ivy.ant"
- xmlns:ac="antlib:net.sf.antcontrib"
+<project name="org.apache.easyant.plugins#ivy-publication" xmlns:ivy="antlib:org.apache.ivy.ant" xmlns:ac="antlib:net.sf.antcontrib"
xmlns:ea="antlib:org.apache.easyant">
<ea:core-version requiredrevision="[0.9,+]" />
- <extension-point name="ivy-publication:generate-release-version" description="defines how to build release version number"/>
-
- <extension-point name="ivy-publication:generate-shared-version" description="defines how to build shared version number"/>
-
- <extension-point name="ivy-publication:generate-local-version" description="defines how to build local version number"/>
-
- <extension-point name="ivy-publication:publish-ready" description="defines publication prerequisites"/>
+ <extension-point name="ivy-publication:generate-release-version" description="defines how to build release version number" />
+ <extension-point name="ivy-publication:generate-shared-version" description="defines how to build shared version number" />
+ <extension-point name="ivy-publication:generate-local-version" description="defines how to build local version number" />
+ <extension-point name="ivy-publication:publish-ready" description="defines publication prerequisites" />
<target name="-ivy-publication:init">
- <ea:parameter property="release.resolver" default="shared"
- description="the name of the resolver use for release publication"/>
- <ea:parameter property="shared.resolver" default="shared"
- description="the name of the shared resolver"/>
- <ea:parameter property="local.resolver" default="local"
- description="the name of the local resolver"/>
-
- <ea:parameter property="project.ivy.instance" default="project.ivy.instance"
- description="ivy instance name"/>
- <ea:parameter property="project.ivy.file" required="true"
- description="ivy file (use to resolve dependencies for the project)"/>
+ <ea:parameter property="release.resolver" default="shared"
+ description="the name of the resolver use for release publication" />
+ <ea:parameter property="shared.resolver" default="shared" description="the name of the shared resolver" />
+ <ea:parameter property="local.resolver" default="local" description="the name of the local resolver" />
+
+ <ea:parameter property="project.ivy.instance" default="project.ivy.instance" description="ivy instance name" />
+ <ea:parameter property="project.ivy.file" required="true"
+ description="ivy file (use to resolve dependencies for the project)" />
<ea:parameter property="publish.overwrite" default="false"
- description="specify if publish should overwrite existing artifacts or not"/>
-
- <ea:parameter property="ivy.haltonmissing"
- description="defines if ivy must halt when artifact is missing" default="true"/>
+ description="specify if publish should overwrite existing artifacts or not" />
+
+ <ea:parameter property="ivy.haltonmissing" description="defines if ivy must halt when artifact is missing"
+ default="true" />
<!-- is project ivy settings configured ? -->
<ea:parameter property="project.ivy.settings.file" description="the ivysettings file used by your project" />
<ea:parameter property="project.ivy.settings.url" description="the ivysettings url used by your project" />
- <ea:parameter property="target.artifacts" default="${target}/artifacts" description="destination directory for target artifacts"/>
-
- <ea:parameter property="fail.publication.if.no.revision" default="true" description="fail build if current module has no revision in 'info' tag of the module.ivy"/>
+ <ea:parameter property="target.artifacts" default="${target}/artifacts" description="destination directory for target artifacts" />
+
+ <ea:parameter property="fail.publication.if.no.revision" default="true"
+ description="fail build if current module has no revision in 'info' tag of the module.ivy" />
<condition property="is.project.ivy.settings.configured">
- <isreference refid="${project.ivy.instance}"/>
+ <isreference refid="${project.ivy.instance}" />
</condition>
- <fail unless="is.project.ivy.settings.configured" message="project ivy instance is not configured, at least one of the following property must be set : project.ivy.settings.file, project.ivy.settings.url"/>
+ <fail unless="is.project.ivy.settings.configured"
+ message="project ivy instance is not configured, at least one of the following property must be set : project.ivy.settings.file, project.ivy.settings.url" />
</target>
<macrodef name="check-version-number">
<sequential>
- <property name="pub.no.revision.message" value="It seems that you did not specify the revision number of your project, we strongly recommend you to set it through the 'info' tag in your module ivy before any publication"/>
+ <property name="pub.no.revision.message"
+ value="It seems that you did not specify the revision number of your project, we strongly recommend you to set it through the 'info' tag in your module ivy before any publication" />
<ac:if>
- <contains string="${ivy.revision}" substring="working@"/>
+ <contains string="${ivy.revision}" substring="working@" />
<ac:then>
<ac:if>
- <istrue value="${fail.publication.if.no.revision}"/>
+ <istrue value="${fail.publication.if.no.revision}" />
<ac:then>
- <fail message="${pub.no.revision.message}"/>
+ <fail message="${pub.no.revision.message}" />
</ac:then>
<ac:else>
- <echo message="Warning : ${pub.no.revision.message}" level="warning"/>
+ <echo message="Warning : ${pub.no.revision.message}" level="warning" />
</ac:else>
</ac:if>
</ac:then>
</ac:if>
<!-- at this point if no version was set use the one in ivy file -->
- <property name="version" value="${ivy.revision}"/>
- <property name="module.name" value="${ivy.module}"/>
-
+ <property name="version" value="${ivy.revision}" />
+ <property name="module.name" value="${ivy.module}" />
</sequential>
</macrodef>
@@ -86,16 +80,12 @@
target: release
================================= -->
<target name="ivy-publication:release" depends="-ivy-publication:init,ivy-publication:generate-release-version,ivy-publication:publish-ready">
- <ea:checkresolver resolver="release.resolver" settingsRef="${project.ivy.instance}" description="name of the repository used to publish releases"/>
- <check-version-number/>
- <ivy:publish artifactspattern="${target.artifacts}/[artifact](-[classifier]).[ext]"
- resolver="${release.resolver}"
- pubrevision="${version}"
- status="release"
- settingsRef="${project.ivy.instance}"
- overwrite="${publish.overwrite}"
- haltonmissing="${ivy.haltonmissing}"
- update="true"/>
+ <ea:checkresolver resolver="release.resolver" settingsRef="${project.ivy.instance}"
+ description="name of the repository used to publish releases" />
+ <check-version-number />
+ <ivy:publish artifactspattern="${target.artifacts}/[artifact](-[classifier]).[ext]" resolver="${release.resolver}"
+ pubrevision="${version}" status="release" settingsRef="${project.ivy.instance}" overwrite="${publish.overwrite}"
+ haltonmissing="${ivy.haltonmissing}" update="true" />
<echo message="project ${module.name} released with version ${version} on ${release.resolver}" />
</target>
@@ -103,42 +93,30 @@
target: publish-shared
================================= -->
<target name="ivy-publication:publish-shared" depends="-ivy-publication:init,ivy-publication:generate-shared-version,ivy-publication:publish-ready">
- <ea:checkresolver resolver="shared.resolver" settingsRef="${project.ivy.instance}" description="name of the repository used to publish shared integration versions (snapshots)"/>
- <check-version-number/>
+ <ea:checkresolver resolver="shared.resolver" settingsRef="${project.ivy.instance}"
+ description="name of the repository used to publish shared integration versions (snapshots)" />
+ <check-version-number />
<tstamp>
<format property="now" pattern="yyyyMMddHHmmss" />
</tstamp>
- <ivy:publish artifactspattern="${target.artifacts}/[artifact](-[classifier]).[ext]"
- resolver="${shared.resolver}"
- forcedeliver="true"
- pubdate="${now}"
- pubrevision="${version}"
- status="integration"
- overwrite="${publish.overwrite}"
- settingsRef="${project.ivy.instance}"
- haltonmissing="${ivy.haltonmissing}"/>
+ <ivy:publish artifactspattern="${target.artifacts}/[artifact](-[classifier]).[ext]" resolver="${shared.resolver}"
+ forcedeliver="true" pubdate="${now}" pubrevision="${version}" status="integration" overwrite="${publish.overwrite}"
+ settingsRef="${project.ivy.instance}" haltonmissing="${ivy.haltonmissing}" />
<echo message="project ${module.name} published with version ${version} on ${shared.resolver}" />
</target>
-
<!-- =================================
target: publish-local
================================= -->
<target name="ivy-publication:publish-local" depends="-ivy-publication:init,ivy-publication:generate-local-version,ivy-publication:publish-ready">
- <check-version-number/>
+ <check-version-number />
<tstamp>
<format property="now" pattern="yyyyMMddHHmmss" />
</tstamp>
- <ivy:publish artifactspattern="${target.artifacts}/[artifact](-[classifier]).[ext]"
- resolver="${local.resolver}"
- pubrevision="${version}"
- pubdate="${now}"
- status="integration"
- forcedeliver="true"
- overwrite="${publish.overwrite}"
- settingsRef="${project.ivy.instance}"
- haltonmissing="${ivy.haltonmissing}"/>
+ <ivy:publish artifactspattern="${target.artifacts}/[artifact](-[classifier]).[ext]" resolver="${local.resolver}"
+ pubrevision="${version}" pubdate="${now}" status="integration" forcedeliver="true" overwrite="${publish.overwrite}"
+ settingsRef="${project.ivy.instance}" haltonmissing="${ivy.haltonmissing}" />
<echo message="project ${module.name} published locally with version ${version}" />
</target>
@@ -148,5 +126,4 @@
<target name="ivy-publication:clean-local" description="cleans the local repository">
<delete dir="${ivy.local.default.root}" />
</target>
-
-</project>
+</project>
\ No newline at end of file
Modified: incubator/easyant/plugins/trunk/ivy-publication/src/test/antunit/ivy-publication-test.xml
URL: http://svn.apache.org/viewvc/incubator/easyant/plugins/trunk/ivy-publication/src/test/antunit/ivy-publication-test.xml?rev=1398938&r1=1398937&r2=1398938&view=diff
==============================================================================
--- incubator/easyant/plugins/trunk/ivy-publication/src/test/antunit/ivy-publication-test.xml (original)
+++ incubator/easyant/plugins/trunk/ivy-publication/src/test/antunit/ivy-publication-test.xml Tue Oct 16 19:27:43 2012
@@ -14,72 +14,67 @@
See the License for the specific language governing permissions and
limitations under the License.
-->
-<project name="org.apache.easyant.plugins;ivy-publication-test"
- xmlns:au="antlib:org.apache.ant.antunit"
- xmlns:ivy="antlib:org.apache.ivy.ant"
- xmlns:ea="antlib:org.apache.easyant">
+<project name="org.apache.easyant.plugins;ivy-publication-test" xmlns:au="antlib:org.apache.ant.antunit"
+ xmlns:ivy="antlib:org.apache.ivy.ant" xmlns:ea="antlib:org.apache.easyant">
- <!-- Import your plugin -->
- <property name="target" value="${basedir}/target/test-antunit"/>
+ <!-- Import your plugin -->
+ <property name="target" value="${basedir}/target/test-antunit" />
<!-- configure easyant in current project -->
<ea:configure-easyant-ivy-instance />
<!-- import our local plugin -->
- <ea:import-test-module moduleIvy="../../../module.ivy" sourceDirectory="../../main/resources"/>
+ <ea:import-test-module moduleIvy="../../../module.ivy" sourceDirectory="../../main/resources" />
- <!-- Defines a setUp / tearDown (before each test) that cleans the environnement -->
+ <!-- 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/**"/>
+ <include name="**/target/**" />
+ <include name="**/lib/**" />
</delete>
</target>
-
+
<target name="setUp" depends="clean">
- <property name="ivy.local.default.root" value="${target}/local-repo"/>
- <property name="ivy.shared.default.root" value="${target}/shared-repo"/>
- <property name="project.ivy.file" value="sample-module.ivy"/>
- <ivy:settings id="project.ivy.instance"/>
- <ivy:resolve file="${project.ivy.file}" settingsRef="project.ivy.instance"/>
- <mkdir dir="${target}/artifacts"/>
- <echo file="${target}/artifacts/standard-java-app.jar"/>
+ <property name="ivy.local.default.root" value="${target}/local-repo" />
+ <property name="ivy.shared.default.root" value="${target}/shared-repo" />
+ <property name="project.ivy.file" value="sample-module.ivy" />
+ <ivy:settings id="project.ivy.instance" />
+ <ivy:resolve file="${project.ivy.file}" settingsRef="project.ivy.instance" />
+ <mkdir dir="${target}/artifacts" />
+ <echo file="${target}/artifacts/standard-java-app.jar" />
</target>
- <target name="tearDown" depends="clean"/>
-
+ <target name="tearDown" depends="clean" />
+
<target name="test-ivy-publication:init" depends="-ivy-publication:init">
- <au:assertPropertyEquals name="release.resolver" value="shared"/>
- <au:assertPropertyEquals name="shared.resolver" value="shared"/>
- <au:assertPropertyEquals name="local.resolver" value="local"/>
- <au:assertPropertyEquals name="project.ivy.instance" value="project.ivy.instance"/>
- <au:assertPropertyEquals name="publish.overwrite" value="false"/>
- <au:assertPropertyEquals name="ivy.haltonmissing" value="true"/>
- <au:assertPropertyEquals name="target.artifacts" value="${target}/artifacts"/>
- <au:assertPropertyEquals name="is.project.ivy.settings.configured" value="true"/>
+ <au:assertPropertyEquals name="release.resolver" value="shared" />
+ <au:assertPropertyEquals name="shared.resolver" value="shared" />
+ <au:assertPropertyEquals name="local.resolver" value="local" />
+ <au:assertPropertyEquals name="project.ivy.instance" value="project.ivy.instance" />
+ <au:assertPropertyEquals name="publish.overwrite" value="false" />
+ <au:assertPropertyEquals name="ivy.haltonmissing" value="true" />
+ <au:assertPropertyEquals name="target.artifacts" value="${target}/artifacts" />
+ <au:assertPropertyEquals name="is.project.ivy.settings.configured" value="true" />
</target>
-
<target name="common-publish-assert">
- <au:assertLogContains text=":: publishing :: org.apache.easyant#standard-java-app"/>
- <au:assertLogContains text=":: publishing :: org.apache.easyant#standard-java-app"/>
- <au:assertLogContains text="published standard-java-app to"/>
- <au:assertLogContains text="published ivy to"/>
-
- <au:assertPropertyEquals name="module.name" value="standard-java-app"/>
+ <au:assertLogContains text=":: publishing :: org.apache.easyant#standard-java-app" />
+ <au:assertLogContains text=":: publishing :: org.apache.easyant#standard-java-app" />
+ <au:assertLogContains text="published standard-java-app to" />
+ <au:assertLogContains text="published ivy to" />
+ <au:assertPropertyEquals name="module.name" value="standard-java-app" />
</target>
<target name="test-ivy-publication:release" depends="ivy-publication:release,common-publish-assert">
- <au:assertLogContains text="project standard-java-app released with version 0.1 on shared"/>
+ <au:assertLogContains text="project standard-java-app released with version 0.1 on shared" />
</target>
+
<target name="test-ivy-publication:publish-shared" depends="ivy-publication:publish-shared,common-publish-assert">
- <au:assertLogContains text="project standard-java-app published with version 0.1 on shared"/>
+ <au:assertLogContains text="project standard-java-app published with version 0.1 on shared" />
</target>
+
<target name="test-ivy-publication:publish-local" depends="ivy-publication:publish-local,common-publish-assert">
- <au:assertLogContains text="project standard-java-app published locally with version 0.1"/>
+ <au:assertLogContains text="project standard-java-app published locally with version 0.1" />
</target>
<target name="test-ivy-publication:clean-local" depends="ivy-publication:clean-local">
- <au:assertFileDoesntExist file="${ivy.local.default.root}"/>
+ <au:assertFileDoesntExist file="${ivy.local.default.root}" />
</target>
-
-
-
-</project>
+</project>
\ No newline at end of file
Modified: incubator/easyant/plugins/trunk/ivy-publication/src/test/antunit/sample-module.ivy
URL: http://svn.apache.org/viewvc/incubator/easyant/plugins/trunk/ivy-publication/src/test/antunit/sample-module.ivy?rev=1398938&r1=1398937&r2=1398938&view=diff
==============================================================================
--- incubator/easyant/plugins/trunk/ivy-publication/src/test/antunit/sample-module.ivy (original)
+++ incubator/easyant/plugins/trunk/ivy-publication/src/test/antunit/sample-module.ivy Tue Oct 16 19:27:43 2012
@@ -15,7 +15,6 @@
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" module="standard-java-app" revision="0.1" status="integration"/>
-
-</ivy-module>
+<ivy-module version="2.0" xmlns:ea="http://www.easyant.org">
+ <info organisation="org.apache.easyant" module="standard-java-app" revision="0.1" status="integration" />
+</ivy-module>
\ No newline at end of file
Modified: incubator/easyant/plugins/trunk/module.ivy
URL: http://svn.apache.org/viewvc/incubator/easyant/plugins/trunk/module.ivy?rev=1398938&r1=1398937&r2=1398938&view=diff
==============================================================================
--- incubator/easyant/plugins/trunk/module.ivy (original)
+++ incubator/easyant/plugins/trunk/module.ivy Tue Oct 16 19:27:43 2012
@@ -14,9 +14,9 @@
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.plugins" module="plugins-orchestrator" revision="0.9" >
- <description>This module acts as orchestrator to build all easyant plugins.</description>
- <ea:build module="meta-build" revision="0.9"/>
+<ivy-module version="2.0" xmlns:ea="http://www.easyant.org">
+ <info organisation="org.apache.easyant.plugins" module="plugins-orchestrator" revision="0.1">
+ <description>This module acts as orchestrator to build all easyant plugins.</description>
+ <ea:build module="meta-build" revision="0.9" />
</info>
-</ivy-module>
+</ivy-module>
\ No newline at end of file
Copied: incubator/easyant/plugins/trunk/parent.ivy (from r1398099, incubator/easyant/plugins/trunk/module.ivy)
URL: http://svn.apache.org/viewvc/incubator/easyant/plugins/trunk/parent.ivy?p2=incubator/easyant/plugins/trunk/parent.ivy&p1=incubator/easyant/plugins/trunk/module.ivy&r1=1398099&r2=1398938&rev=1398938&view=diff
==============================================================================
--- incubator/easyant/plugins/trunk/module.ivy (original)
+++ incubator/easyant/plugins/trunk/parent.ivy Tue Oct 16 19:27:43 2012
@@ -14,9 +14,13 @@
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.plugins" module="plugins-orchestrator" revision="0.9" >
- <description>This module acts as orchestrator to build all easyant plugins.</description>
- <ea:build module="meta-build" revision="0.9"/>
+<ivy-module version="2.0" xmlns:ea="http://www.easyant.org">
+ <info organisation="org.apache.easyant.plugins" module="parent-plugin" revision="0.1">
+ <description>This module acts as parent to share common stuff for subprojects.</description>
+ <ea:plugin module="scm-svn" revision="0.9" as="scm">
+ <ea:property name="scm.connection.baseurl" value="https://svn.easyant.org/buildtypes/trunk" />
+ <ea:property name="scm.tag.name" value="${ivy.module}-${version}" />
+ </ea:plugin>
+ <ea:plugin module="antunit" revision="0.9" />
</info>
-</ivy-module>
+</ivy-module>
\ No newline at end of file