This is definitely an Apache Ivy problem

ckup\backup1\20090922.120000.tmp\repositories\plugins-releases-local'.
2009-09-22 12:00:00,701 [INFO ] (o.a.r.j.JcrRepoBase :199) - Exporting
repositor
y 'plugins-snapshots-local' to 'C:\Documents and
Settings\8185838\.artifactory\b
ackup\backup1\20090922.120000.tmp\repositories\plugins-snapshots-local'.
2009-09-22 12:00:00,701 [INFO ] (o.a.r.j.JcrRepoBase :199) - Exporting
repositor
y 'ext-releases-local' to 'C:\Documents and
Settings\8185838\.artifactory\backup
\backup1\20090922.120000.tmp\repositories\ext-releases-local'.
2009-09-22 12:00:00,716 [INFO ] (o.a.r.j.JcrRepoBase :199) - Exporting
repositor
y 'ext-snapshots-local' to 'C:\Documents and
Settings\8185838\.artifactory\backu
p\backup1\20090922.120000.tmp\repositories\ext-snapshots-local'.
2009-09-22 12:00:00,748 [INFO ] (o.a.r.j.JcrRepoBase :199) - Exporting
repositor
y 'sun-repo-2-cache' to 'C:\Documents and
Settings\8185838\.artifactory\backup\b
ackup1\20090922.120000.tmp\repositories\sun-repo-2-cache'.
2009-09-22 12:00:00,795 [INFO ] (o.a.s.ArtifactoryApplicationContext:199) -
Expo
rting security...
2009-09-22 12:00:03,826 [INFO ] (o.a.s.ArtifactoryApplicationContext:199) -
Full
 system export completed successfully.
2009-09-22 13:10:09,286 [ERROR] (o.a.w.s.RequestUtils:89) - Request
/echannel-re
leases-local/com/xenonsoft/nelson/nelson-core/1.0-SNAPSHOT/nelson-core.jar
shoul
d be a repo request and does not match any repo key


Clearly if there resolvers that handled BASIC AUTHENTICATION it will work. I
cannot reproduce the internal server error I had two weeks ago.


<ivysettings>
    <!-- Define Apache Ivy Local Repository -->
    <property name="ivy.local.default.root"
value="${ivy.default.ivy.user.dir}/local" />
    
    <!-- Define Apache Ivy Shared Repository -->
    <property name="ivy.shared.default.root" value="${artifactory.url}" />
    <property name="ivy.shared.default.ivy.pattern"
value="[organisation]/[module]/[revision]/ivy.xml" />
    <property name="ivy.shared.default.artifact.pattern"
value="[organisation]/[module]/[revision]/[artifact](-[classifier]).[ext]"
/>
    <credentials realm="admin" host="${tester.artifactory.url}"
username="${tester.artifactory.username}"
passwd="${tester.artifactory.password}" />

    <settings defaultResolver="chain-example" />
    <resolvers>

        <!-- Specifies the software developer's local repository on his or
her workstation -->
        <filesystem name="local" local="true" m2compatible="false" >
            <ivy     
pattern="${ivy.local.default.root}/[organisation]/[module]/ivys/ivy-[revision].xml"/>
            <artifact
pattern="${ivy.local.default.root}/[organisation]/[module]/[type]s/[artifact]-[revision].[ext]"
/>
        </filesystem>
        
        <!-- Specifies XeNoNiQUE 3rd Party repository repository -->
        <ibiblio name="xenonique"
            root="${artifactory.repo.url}"
            m2compatible="true" checksums="sha1,md5"
            usepoms="true" useMavenMetadata="true"
           
pattern="[organisation]/[module]/[revision]/[artifact]-[revision](-[classifier]).[ext]"
/>


        <!-- Specifies internal third party library repository -->
        <url name="internal" descriptor="optional"
            checkmodified="true" m2compatible="true"
            checksums="sha1,md5" >
            <artifact
               
pattern="${artifactory.deploy.url}/[organisation]/[module]/[revision]/[artifact](-[classifier]).[ext]"
/>
            <artifact
               
pattern="${artifactory.deploy.url}/[organisation]/[module]/[revision]/[artifact]-[revision](-[classifier]).[ext]"
/>
        </url>
        
        <!-- Specifies internal third party library repository -->
        <url name="shared" descriptor="optional"
            checkmodified="true" m2compatible="true"
            checksums="sha1,md5" >
            <artifact
               
pattern="${tester.artifactory.url}/[organisation]/[module]/[revision]/[artifact](-[classifier]).[ext]"
/>
            <artifact
               
pattern="${tester.artifactory.url}/[organisation]/[module]/[revision]/[artifact]-[revision](-[classifier]).[ext]"
/>
        </url>

        <!--
http://repo2.maven.org/maven2/com/google/code/google-collections/google-collect/snapshot-20080530/google-collect-snapshot-20080530.pom
-->
        <ibiblio name="ibiblio-m2-A"
            root="http://repo2.maven.org/maven2/";
            m2compatible="true" checksums="sha1,md5"
            usepoms="true" useMavenMetadata="true" 
           
pattern="[organisation]/[module]/[revision]/[artifact](-[classifier]).[ext]"
/>
            
        <ibiblio name="ibiblio-m2-B"
            root="http://repo2.maven.org/maven2/";
            m2compatible="true" checksums="sha1,md5"
            usepoms="true" useMavenMetadata="true" 
           
pattern="[organisation]/[module]/[revision]/[artifact]-[revision](-[classifier]).[ext]"
/>
        
        <ibiblio name="java.net.m1"
            root="http://download.java.net/maven/1/";
            m2compatible="false"
            usepoms="true" useMavenMetadata="true" 
            pattern="[organization]/[type]s/[module]-[revision].[ext]" />
            
        <ibiblio name="java.net.m2"
            root="http://download.java.net/maven/2/";
            m2compatible="true"
            usepoms="true" useMavenMetadata="true" />
                
        <chain name="chain-example" returnFirst="true" >
            <resolver ref="local"/>
            <resolver ref="xenonique"/>
                        
            <resolver ref="ibiblio-m2-A" />
            <resolver ref="ibiblio-m2-B" />
                        
            <resolver ref="java.net.m1" />
            <resolver ref="java.net.m2" />
            
        </chain>
        
    </resolvers>
</ivysettings>

Here the credentials you supply are suppose to filter through, I think. It
is not well documented on the Apache Ivy web site. So
tester.artifactory.url=http://privateserver.com/ for example, and you use
Ant build target to perform a ``shared'' deployment of the module.

    <target name="install-shared-olde" depends="prepare"
description="Publish the target modules into the SHARED Apache Ivy
Repository">
        <tstamp>
            <format property="now" pattern="yyyyMMddHHmmss" locale="en,UK"
/>
        </tstamp>
        <ivy:publish
artifactspattern="${dist.dir}/[artifact]-${project.version}.[ext]"
resolver="shared" pubrevision="${project.version}" pubdate="${now}"
status="integration" forcedeliver="true" overwrite="true" />
        <echo message="Project ${ant.project.name} published to shared
repository with version ${project.version}" />
    </target>

In the combination with the ivy.xml for your project, this would work. As I
said before it would easier if the Ivy team actually created the credentials
as part of the resolver.

Anyway I worked my way around with some Groovy Script. I still have to blog
about the workaround. Just case you are all wondering this is all for my
nascent JavaFX project, Nelson on Kenai.

http://www.jroller.com/peter_pilgrim/entry/xenondatagrid_m3_0_nelson_framework

http://kenai.com/projects/nelson

http://www.xenonique.co.uk/hudson/job/Nelson_Framework_Core_1.2/



Peter Pilgrim (JC) wrote:
> 
> 
> HI Yoav
> 
> I think this is a Apache Ivy problem.
> 
> I created a Groovy example that uploads the POM and JAR into Artifactory
> with Basic Authentication. I intend to blog the work-around that I use. It
> is Ant build file with an external Groovy Script.
> 
> Part of the problem is that Apache Ivy has this concept of ``resolvers'',
> but does not provide or enable the feature that enables Basic
> Authorisation credentials. I mention this when I blog it may be next week
> on jroller.com.
> 
> Anyway, I am quite busy this week so I will get you that stacktrace next
> week.
> 
> btw: I am using Artifactory 2.0.7 on my local workstation.
> 
> 

-- 
View this message in context: 
http://www.nabble.com/How-to-deploy-an-POM-file-and-JAR-to-Artifactory-Using-Ant---Ivy--tp25347757p25530700.html
Sent from the Artifactory-Users mailing list archive at Nabble.com.


------------------------------------------------------------------------------
Come build with us! The BlackBerry&reg; Developer Conference in SF, CA
is the only developer event you need to attend this year. Jumpstart your
developing skills, take BlackBerry mobile applications to market and stay 
ahead of the curve. Join us from November 9&#45;12, 2009. Register now&#33;
http://p.sf.net/sfu/devconf
_______________________________________________
Artifactory-users mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/artifactory-users

Reply via email to