Author: xavier
Date: Thu Nov 29 17:52:46 2007
New Revision: 599672

URL: http://svn.apache.org/viewvc?rev=599672&view=rev
Log:
review install tutorial example (IVY-591)

Added:
    incubator/ivy/core/trunk/src/example/build-a-ivy-repository/settings/
      - copied from r599636, 
incubator/ivy/core/trunk/src/example/build-a-ivy-repository/config/
Removed:
    incubator/ivy/core/trunk/src/example/build-a-ivy-repository/config/
Modified:
    incubator/ivy/core/trunk/src/example/build-a-ivy-repository/build.xml
    
incubator/ivy/core/trunk/src/example/build-a-ivy-repository/settings/ivy-maven1-ivysettings.xml
    
incubator/ivy/core/trunk/src/example/build-a-ivy-repository/settings/ivy-maven2-ivysettings.xml
    
incubator/ivy/core/trunk/src/example/build-a-ivy-repository/settings/ivysettings-advanced.xml
    
incubator/ivy/core/trunk/src/example/build-a-ivy-repository/settings/ivysettings-basic.xml

Modified: incubator/ivy/core/trunk/src/example/build-a-ivy-repository/build.xml
URL: 
http://svn.apache.org/viewvc/incubator/ivy/core/trunk/src/example/build-a-ivy-repository/build.xml?rev=599672&r1=599671&r2=599672&view=diff
==============================================================================
--- incubator/ivy/core/trunk/src/example/build-a-ivy-repository/build.xml 
(original)
+++ incubator/ivy/core/trunk/src/example/build-a-ivy-repository/build.xml Thu 
Nov 29 17:52:46 2007
@@ -18,80 +18,96 @@
    under the License.    
 -->
 <!-- ====================================================================== 
-     23 janv. 2006 13:36:06                                                    
    
-
-     ivy-repository
-     This is a sample project to build our own ivy repository from differents 
existing repositories.
-                   
-     mb                                                                
+     This is a sample project to build our own ivy repository.
      ====================================================================== -->
 <project name="ivy-repository" default="basic" 
xmlns:ivy="antlib:org.apache.ivy.ant">
-       <property name="configuration-dir" value="config"/>
-       <property name="from-resolver" value="libraries"/>
-       <property name="to-resolver" value="local-repository"/>
+       <property name="settings.dir" value="settings"/>
+       <property name="from.resolver" value="libraries"/>
+       <property name="to.resolver" value="my-repository"/>
        
        <property name="ivy.cache.dir" value="${basedir}/cache" />
-       <property name="dest.repo.dir" value="${basedir}/ivy-local-repository" 
/>
-
-       <ivy:settings id="basic.settings"    
file="${configuration-dir}/ivysettings-basic.xml"/>
-       <ivy:settings id="maven1.settings"   
file="${configuration-dir}/ivysettings-maven1.xml"/>
-       <ivy:settings id="maven2.settings"   
file="${configuration-dir}/ivysettings-maven2.xml"/>
-       <ivy:settings id="advanced.settings" 
file="${configuration-dir}/ivysettings-advanced.xml"/>
+       <property name="dest.repo.dir" value="${basedir}/myrepository" />
 
-       
-    <!-- ================================= 
-          target: basic
-         ================================= -->
-    <target name="basic" description="--> retrieve files from well formatted 
ivy repositories">
-       <ivy:install settingsRef="basic.settings" organisation="apache" 
module="commons-lang" revision="1.0" from="${from-resolver}" 
to="${to-resolver}" />
-    </target>
+       <property name="ivy.jar.dir" value="${user.home}/.ivy2/jars" />
+       <property name="ivy.jar.file" value="${ivy.jar.dir}/ivy.jar" />
 
-    <!-- ================================= 
-          target: basic-deps
-         ================================= -->
-    <target name="basic-deps" description="--> retrieve files from well 
formatted ivy repositories with dependencies">
-       <ivy:install settingsRef="basic.settings" organisation="hibernate" 
module="hibernate" revision="2.1.8" from="${from-resolver}" to="${to-resolver}" 
transitive="true" />
+       <!-- ================================= 
+          target: load-ivy         
+            this target is not necessary if you put ivy.jar in your ant lib 
directory
+            if you already have ivy 1.4 in your ant lib, you can simply remove 
this
+            target
+         ================================= -->
+    <target name="load-ivy">
+       <!-- try to load ivy here from home ivy 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 ivy home lib dir exists (it may be 
empty) and
+             ivy is in at least one of ant's lib dir or the ivy home lib dir. 
-->
+       <path id="ivy.lib.path">
+           <fileset dir="${ivy.jar.dir}" includes="*.jar"/>
+       </path>
+       <taskdef resource="org/apache/ivy/ant/antlib.xml"
+                 uri="antlib:org.apache.ivy.ant" classpathref="ivy.lib.path"/>
+    </target>    
+
+       <!-- - - - - - - - - - - - - - - - - - 
+          target: init-ivy                      
+         - - - - - - - - - - - - - - - - - -->
+    <target name="init-ivy" depends="load-ivy">
+               <ivy:settings id="basic.settings"    
file="${settings.dir}/ivysettings-basic.xml"/>
+               <ivy:settings id="advanced.settings" 
file="${settings.dir}/ivysettings-advanced.xml"/>
     </target>
 
+       
     <!-- ================================= 
-          target: commons-lang-1-0-ibiblio-no-namespace
+          target: maven2
+          maven 2 no namespace and no dependencies
          ================================= -->
-    <target name="commons-lang-1-0-ibiblio-no-namespace" description="--> 
retrieve commons-lang 1.0 from ibiblio maven using no namespaces">
-       <ivy:install settingsRef="advanced.settings" 
organisation="commons-lang" module="commons-lang" revision="1.0" 
from="ibiblio-maven2-nonamespace" to="${to-resolver}" transitive="true" />
+    <target name="maven2" depends="init-ivy"
+       description="--> install module from maven 2 repository">
+       <ivy:install settingsRef="basic.settings" 
+               organisation="commons-lang" module="commons-lang" 
revision="1.0" 
+               from="${from.resolver}" to="${to.resolver}" />
     </target>
 
     <!-- ================================= 
-          target: commons-lang-1-0-ibiblio-with-namespace
+          target: maven2-deps
+          maven 2 no namespace with dependencies
          ================================= -->
-    <target name="commons-lang-1-0-ibiblio-with-namespace" description="--> 
retrieve commons-lang 1.0 from ibiblio maven using namespaces">
-       <ivy:install settingsRef="advanced.settings" organisation="apache" 
module="commons-lang" revision="1.0" from="ibiblio-maven2" to="${to-resolver}" 
transitive="true" />
+    <target name="maven2-deps" depends="init-ivy" 
+       description="--> install module from maven 2 repository with 
dependencies">
+       <ivy:install settingsRef="basic.settings" 
+               organisation="org.hibernate" module="hibernate" 
revision="3.2.5.ga" 
+               from="${from.resolver}" to="${to.resolver}" transitive="true" />
     </target>
 
     <!-- ================================= 
-          target: advanced
-         ================================= -->
-    <target name="advanced" description="--> retrieve files from public 
repositories (ivyrep, ibiblio, ...) using namespaces">
-       <ivy:install settingsRef="advanced.settings" organisation="hibernate" 
module="hibernate" revision="3.0" from="${from-resolver}" to="${to-resolver}" 
transitive="true" />
-    </target>
-
-       <!-- ================================= 
-          target: maven1
+          target: maven2-namespace
+          maven 2 with namespace no dependencies
          ================================= -->
-    <target name="maven1" description="--> retrieve commons-lang 1.0 from 
maven1 repo using namespaces">
-       <ivy:install settingsRef="maven1.settings" organisation="apache" 
module="commons-lang" revision="1.0" from="ibiblio-maven" to="${to-resolver}" 
transitive="true" />
+    <target name="maven2-namespace" depends="init-ivy" 
+       description="--> install module from maven 2 using namespaces">
+       <ivy:install settingsRef="advanced.settings" 
+               organisation="apache" module="commons-lang" revision="1.0" 
+               from="${from.resolver}" to="${to.resolver}" />
     </target>
 
     <!-- ================================= 
-          target: maven2
+          target: maven2-namespace-deps
+          maven 2 with namespace and dependencies
          ================================= -->
-    <target name="maven2" description="--> retrieve files from maven2 repo 
using namespaces">
-       <ivy:install settingsRef="maven2.settings" organisation="hibernate" 
module="hibernate" revision="3.0" from="ibiblio-maven2" to="${to-resolver}" 
transitive="true" />
+    <target name="maven2-namespace-deps" depends="init-ivy"
+       description="--> install module with dependencies from maven2 repo 
using namespaces">
+       <ivy:install settingsRef="advanced.settings" 
+               organisation="hibernate" module="hibernate" revision="3.2.5.ga" 
+               from="${from.resolver}" to="${to.resolver}" transitive="true" />
     </target>
 
        <!-- ================================= 
           target: clean-cache
          ================================= -->
-    <target name="clean-cache" description="--> clean the cache">
+    <target name="clean-cache" depends="init-ivy" description="--> clean the 
cache">
+       <ivy:cleancache settingsRef="basic.settings" />
+       <ivy:cleancache settingsRef="advanced.settings" />
        <delete dir="${ivy.cache.dir}" failonerror="true"  />
     </target>
 

Modified: 
incubator/ivy/core/trunk/src/example/build-a-ivy-repository/settings/ivy-maven1-ivysettings.xml
URL: 
http://svn.apache.org/viewvc/incubator/ivy/core/trunk/src/example/build-a-ivy-repository/settings/ivy-maven1-ivysettings.xml?rev=599672&r1=599636&r2=599672&view=diff
==============================================================================
--- 
incubator/ivy/core/trunk/src/example/build-a-ivy-repository/settings/ivy-maven1-ivysettings.xml
 (original)
+++ 
incubator/ivy/core/trunk/src/example/build-a-ivy-repository/settings/ivy-maven1-ivysettings.xml
 Thu Nov 29 17:52:46 2007
@@ -25,7 +25,7 @@
       http://ibiblio.lsu.edu/main/pub/packages/maven2
       http://www.ibiblio.net/pub/packages/maven2
        -->
-       <property name="ibiblio-maven1-root" 
value="http://www.ibiblio.org/maven/"; override="false" />
+       <property name="ibiblio-maven1-root" 
value="http://repo1.maven.org/maven/"; override="false" />
 
        <namespaces>
                <namespace name="ibiblio-maven">
@@ -115,7 +115,6 @@
        <resolvers>
                <ibiblio        name="ibiblio-maven" 
                                        root="${ibiblio-maven1-root}" 
-                                       
pattern="[module]/[type]s/[artifact]-[revision].[ext]"
                                        m2compatible="false"
                                        namespace="ibiblio-maven"
                />

Modified: 
incubator/ivy/core/trunk/src/example/build-a-ivy-repository/settings/ivy-maven2-ivysettings.xml
URL: 
http://svn.apache.org/viewvc/incubator/ivy/core/trunk/src/example/build-a-ivy-repository/settings/ivy-maven2-ivysettings.xml?rev=599672&r1=599636&r2=599672&view=diff
==============================================================================
--- 
incubator/ivy/core/trunk/src/example/build-a-ivy-repository/settings/ivy-maven2-ivysettings.xml
 (original)
+++ 
incubator/ivy/core/trunk/src/example/build-a-ivy-repository/settings/ivy-maven2-ivysettings.xml
 Thu Nov 29 17:52:46 2007
@@ -25,8 +25,7 @@
          http://ibiblio.lsu.edu/main/pub/packages/maven2
          http://www.ibiblio.net/pub/packages/maven2
        -->
-       <property name="ibiblio-maven2-root" 
value="http://www.ibiblio.org/maven2/"; override="false" />
-       <property name="ibiblio-maven2-pattern" 
value="[organisation]/[module]/[revision]/[module]-[revision].[ext]" 
override="false" />
+       <property name="ibiblio-maven2-root" 
value="http://repo1.maven.org/maven2/"; override="false" />
 
        <namespaces>
        <namespace name="ibiblio-maven2">
@@ -129,13 +128,11 @@
        <resolvers>
                <ibiblio        name="ibiblio-maven2" 
                                        root="${ibiblio-maven2-root}" 
-                                       pattern="${ibiblio-maven2-pattern}"
                                        m2compatible="true"
                                        namespace="ibiblio-maven2"
                />
                <ibiblio        name="ibiblio-maven2-nonamespace" 
                                        root="${ibiblio-maven2-root}" 
-                                       pattern="${ibiblio-maven2-pattern}"
                                        m2compatible="true"
                />
        </resolvers>

Modified: 
incubator/ivy/core/trunk/src/example/build-a-ivy-repository/settings/ivysettings-advanced.xml
URL: 
http://svn.apache.org/viewvc/incubator/ivy/core/trunk/src/example/build-a-ivy-repository/settings/ivysettings-advanced.xml?rev=599672&r1=599636&r2=599672&view=diff
==============================================================================
--- 
incubator/ivy/core/trunk/src/example/build-a-ivy-repository/settings/ivysettings-advanced.xml
 (original)
+++ 
incubator/ivy/core/trunk/src/example/build-a-ivy-repository/settings/ivysettings-advanced.xml
 Thu Nov 29 17:52:46 2007
@@ -17,23 +17,149 @@
    under the License.    
 -->
 <ivysettings>
-       <settings   defaultCache="${ivy.cache.dir}"     
-            defaultResolver="local-repository"
+       <settings   defaultCache="${ivy.cache.dir}/advanced"    
+            defaultResolver="my-repository"
             defaultConflictManager="all" />            <!-- in order to get 
all revisions without any eviction -->
 
-    <include file="${ivy.settings.dir}/ivy-maven1-ivysettings.xml" /> 
-    <include file="${ivy.settings.dir}/ivy-maven2-ivysettings.xml" /> 
+       <!-- you can override this property to use mirrors 
+         http://mirrors.dotsrc.org/maven2
+         http://ftp.ggi-project.org/pub/packages/maven2
+         http://mirrors.sunsite.dk/maven2
+         http://public.planetmirror.com/pub/maven2
+         http://ibiblio.lsu.edu/main/pub/packages/maven2
+         http://www.ibiblio.net/pub/packages/maven2
+       -->
+       <property name="ibiblio-maven2-root" 
value="http://repo1.maven.org/maven2/"; override="false" />
+
+       <namespaces>
+       <namespace name="ibiblio-maven2">
+               <rule>  <!-- imported apache maven1 projects -->
+               <fromsystem>
+                       <src org="apache" module=".+"/>
+       
+                    <dest org="$m0" module="$m0"/>
+                </fromsystem>
+                <tosystem>
+                                       <src org="commons-.+" 
module="commons-.+" />
+                                       <src org="ant" module=".*" />
+                                       <src org="avalon-.+" module="avalon-.+" 
/>
+                                       <src org="avalon" module="avalon" />
+                                       <src org="axis" module="axis" />
+                                       <src org="axis2" module="axis2" />
+                                       <src org="batik" module="batik" />
+                                       <src org="bcel" module="bcel" />
+                                       <src org="beehive" module="beehive" />
+                                       <src org="bsf" module="bsf" />
+                                       <src org="cactus" module="cactus" />
+                                       <src org="cocoon" module="cocoon" />
+                                       <src org="cornerstone-.+" 
module="cornerstone-.+" />
+                                       <src org="create-checksums" 
module="create-checksums" />
+                                       <src org="crimson" module="crimson" />
+                                       <src org="directory-.+" 
module="directory-.+" />
+                                       <src org="directory" module="directory" 
/>
+                                       <src org="ecs" module="ecs" />
+                                       <src org="excalibur-.+" 
module="excalibur-.+" />
+                                       <src org="excalibur" module="excalibur" 
/>
+                                       <src org="fop" module="fop" />
+                                       <src org="fulcrum" module="fulcrum" />
+                                       <src org="geronimo-.+" 
module="geronimo-.+" />
+                                       <src org="geronimo" module="geronimo" />
+                                       <src org="hivemind" module="hivemind" />
+                                       <src org="jakarta-regexp" 
module="jakarta-regexp" />
+                                       <src org="james" module="james" />
+                                       <src org="jaxme" module="jaxme" />
+                                       <src org="jcs-javagroups" 
module="jcs-javagroups" />
+                                       <src org="jcs" module="jcs" />
+                                       <src org="jspapi" module="jspapi" />
+                                       <src org="jstl" module="jstl" />
+                                       <src org="juddi" module="juddi" />
+                                       <src org="log4j" module="log4j" />
+                                       <src org="logkit" module="logkit" />
+                                       <src org="lucene" module="lucene" />
+                                       <src org="magicGball" 
module="magicGball" />
+                                       <src org="maven" module="maven" />
+                                       <src org="merlin-developer" 
module="merlin-developer" />
+                                       <src org="merlin" module="merlin" />
+                                       <src org="muse" module="muse" />
+                                       <src org="myfaces" module="myfaces" />
+                                       <src org="nekohtml" module="nekohtml" />
+                                       <src org="ojb" module="ojb" />
+                                       <src org="oro" module="oro" />
+                                       <src org="pluto-container" 
module="pluto-container" />
+                                       <src org="poi" module="poi" />
+                                       <src org="pubscribe" module="pubscribe" 
/>
+                                       <src org="sandesha" module="sandesha" />
+                                       <src org="servletapi" 
module="servletapi" />
+                                       <src org="slide" module=".*" />
+                                       <src org="stratum" module="stratum" />
+                                       <src org="struts" module="struts" />
+                                       <src org="taglibs" module="taglibs" />
+                                       <src org="tapestry" module="tapestry" />
+                                       <src org="tomcat-util" 
module="tomcat-util" />
+                                       <src org="tomcat" module="tomcat" />
+                                       <src org="torque" module="torque" />
+                                       <src org="turbine" module="turbine" />
+                                       <src org="velocity-.+" 
module="velocity-.+" />
+                                       <src org="velocity" module="velocity" />
+                                       <src org="ws-commons.*" 
module="ws-commons.*" />
+                                       <src org="wsdl4j" module="wsdl4j" />
+                                       <src org="wsrf" module="wsrf" />
+                                       <src org="xalan" module="xalan" />
+                                       <src org="xerces" module=".*" />
+                                       <src org="xercesjarv" 
module="xercesjarv" />
+                                       <src org="xml-apis" module="xml-apis" />
+                                       <src org="xml-resolver" 
module="xml-resolver" />
+                                       <src org="xml-security" 
module="xml-security" />
+                                       <src org="xmlbeans" module="xmlbeans" />
+                                       <src org="xmlrpc" module="xmlrpc" />
+                                       
+                                       <dest org="apache" module="$m0"/>
+               </tosystem>
+               </rule>
+
+                       <rule> <!-- new apache projects -->
+                       <fromsystem>
+                               <src org="apache" />
+                               <dest org="org.apache"/>
+                       </fromsystem>
+                           <tosystem>
+                       <src org="org.apache" />
+                           <dest org="apache" />
+                       </tosystem>
+                       </rule>
+                       <rule> <!-- hibernate -->
+                       <fromsystem>
+                               <src org="hibernate" />
+                               <dest org="org.hibernate"/>
+                       </fromsystem>
+                           <tosystem>
+                       <src org="org.hibernate" />
+                           <dest org="hibernate" />
+                       </tosystem>
+                       </rule>
+                       <rule> <!-- net.sf projects -->
+                       <fromsystem>
+                               <src org="ehcache" />
+                               <dest org="net.sf.$o0"/>
+                       </fromsystem>
+                           <tosystem>
+                       <src org="net.sf.(.+)" />
+                           <dest org="$o1" />
+                       </tosystem>
+                       </rule>
+       </namespace>
+       </namespaces>
 
        <resolvers>
-           <filesystem name="local-repository">
-               <ivy 
pattern="${dest.repo.dir}/[organisation]/[module]/ivys/ivy-[revision].xml"/>
-               <artifact 
pattern="${dest.repo.dir}/[organisation]/[module]/[type]s/[artifact]-[revision].[ext]"/>
+           <filesystem name="my-repository">
+               <ivy 
pattern="${dest.repo.dir}/advanced/[organisation]/[module]/ivys/ivy-[revision].xml"/>
+               <artifact 
pattern="${dest.repo.dir}/advanced/[organisation]/[module]/[type]s/[artifact]-[revision].[ext]"/>
            </filesystem>
        
-           <chain name="libraries" returnFirst="false">
-                       <resolver ref="local-repository" />
-                       <ivyrep name="official-ivy-rep"/>
-                       <resolver ref="ibiblio-maven2" />
-           </chain>
+               <ibiblio        name="libraries" 
+                                       root="${ibiblio-maven2-root}" 
+                                       m2compatible="true"
+                                       namespace="ibiblio-maven2"
+               />
        </resolvers>
 </ivysettings>

Modified: 
incubator/ivy/core/trunk/src/example/build-a-ivy-repository/settings/ivysettings-basic.xml
URL: 
http://svn.apache.org/viewvc/incubator/ivy/core/trunk/src/example/build-a-ivy-repository/settings/ivysettings-basic.xml?rev=599672&r1=599636&r2=599672&view=diff
==============================================================================
--- 
incubator/ivy/core/trunk/src/example/build-a-ivy-repository/settings/ivysettings-basic.xml
 (original)
+++ 
incubator/ivy/core/trunk/src/example/build-a-ivy-repository/settings/ivysettings-basic.xml
 Thu Nov 29 17:52:46 2007
@@ -17,14 +17,14 @@
    under the License.    
 -->
 <ivysettings>
-       <settings       defaultCache="${ivy.cache.dir}" 
+       <settings       defaultCache="${ivy.cache.dir}/no-namespace"    
                        defaultResolver="libraries"
                        defaultConflictManager="all" />         <!-- in order 
to get all revisions without any eviction -->
        <resolvers>
-               <ivyrep name="libraries" />
-               <filesystem name="local-repository">
-                       <ivy 
pattern="${dest.repo.dir}/[organisation]/[module]/ivys/ivy-[revision].xml"/>
-                       <artifact 
pattern="${dest.repo.dir}/[organisation]/[module]/[type]s/[artifact]-[revision].[ext]"/>
+               <ibiblio name="libraries" m2compatible="true" />
+               <filesystem name="my-repository">
+                       <ivy 
pattern="${dest.repo.dir}/no-namespace/[organisation]/[module]/ivys/ivy-[revision].xml"/>
+                       <artifact 
pattern="${dest.repo.dir}/no-namespace/[organisation]/[module]/[type]s/[artifact]-[revision].[ext]"/>
                </filesystem>
        </resolvers>
 </ivysettings>


Reply via email to