Hi Eli,

Thanks for your reply.

In summary my question now is - is it possible to build a plugin to
artifactory to generate a pom.xml on the way from the remote ivy repo to the
local maven style repo? If so do you know of a good reference I can use to
achieve it?

*Why?*
I have a proxy repo setup in Ivy with remote set to our custom ivy layout
and local set to the default maven layout - our maven projects will use this
proxy repo as we roll off our ant-ivy build onto a maven build. I like
ant/ivy and maven; maven makes considerably more sense here however - hence
the move. 

Reading between the lines of your reply it's clear I've missed a key bit of
understanding with respect to Artifactory. I find myself assuming that
Artifactory is 'on-the-fly' translating the ivy.xml artifact to a pom syntax
that our maven builds can read on  the way from our Ivy rep through the
Artifactory proxy. When you think about it this would be rather difficult to
generically support - especially since our ivy files don't use the standard
maven configurations (master, compile, runtime, ....etc). 

What I */could/* do, as you say, is create a maven plugin that can read the
ivy.xml and translate it to it's own domain language. I can envisage a bit
of ivy api usage, perhaps a call to the makepom functionality that Ivy has.
I have used the Ant task which uses this feature quite extensively in the
past and found that if I added a bit of XSL to powerup the output pom (in
order to support some of the conflict manager and exclusion syntax that ivy
supports) it worked very well. The limitations of ivy's makepom
functionality wouldn't affect us here I think as we make little or no usage
of the conflict resolution features of ivy.

What I would /*like*/ to do is create an Artifactory plugin that generates a
pom from the Ivy.xml as it caches the artifacts into the maven layout local
repo from the remote repo. This pom could then be used by the maven projects
to resolve transient dependencies etc... this way our legacy code can be
migrated as we use it, converted builds can go straight into a maven repo
and legacy ant/ivy builds can continue to go into the ivy repo without
change. When we're on maven completely the ivy repo will age gracefully
until we need it no more and turn it off.  Of course ivy can read the maven
repo so legacy projects can easily depend on maven built projects. A maven
plugin will achieve all this too i guess - but it doesn't feel as tidy to
me.

Is this reasonable - or have I missed something that would block it?

NB: I'd love to give Gradle a go, ain't gonna happen soon though :).
Probably doesn't quite make sense here either - some of the reasons for the
maven switch are not yet supported by gradle.

Regards,
Jon


Eli Givoni wrote
> 
> Hi Jon,
> 
> How are you planing to make maven resolve dependencies from ivy.xml? It
> sounds like you are ready to use Gradle :)
> 
> Once you find a way to process the ivy.xml inside your maven job  you can
> use a single Virtual repository layout conversion to handle Ivy and Maven
> requests, you can read all about Repositories layouts
> here<http://wiki.jfrog.org/confluence/display/RTF/Repository+Layouts>.
> Basically you set up one Virtual repository with maven-2-default layout
> set. The ivy.xml should be deployed on an Ivy layout repository. When an
> ivy layout request will hit the virtual repository it will know how to
> translate the path for example maven/way/path to ivy.way/path and resolve
> the ivy.xml and ivy dependencies.
> 
> HTH,
> 
> Eli
> 
> 
> On Thu, Feb 2, 2012 at 4:48 AM, joncourt <jon.court@> wrote:
> 
>> Hi,
>>
>> Is it possible to utilise a pure ivy.xml artifact as a way of coalescing
>> a
>> bunch of dependencies and expose it to maven based projects?
>>
>> We have a bunch of these types of artifacts which in our ivy repo which
>> don't actually have any jars in them but are used to specify a load of
>> transient dependencies. I can't resolve them at the moment using any of
>> the
>> combinations of a dependency in maven (i.e. combo's of classifier and
>> type).
>> You can do this with pure maven or pure ivy - doesn't seem to translate
>> however.
>>
>> Regards,
>> Jon
>>
>> --
>> View this message in context:
>> http://forums.jfrog.org/Pure-ivy-xml-artifact-resolution-tp7245579p7245579.html
>> Sent from the Artifactory - Users mailing list archive at Nabble.com.
>>
>>
>> ------------------------------------------------------------------------------
>> Keep Your Developer Skills Current with LearnDevNow!
>> The most comprehensive online learning library for Microsoft developers
>> is just $99.99! Visual Studio, SharePoint, SQL - plus HTML5, CSS3, MVC3,
>> Metro Style Apps, more. Free future releases when you subscribe now!
>> http://p.sf.net/sfu/learndevnow-d2d
>> _______________________________________________
>> Artifactory-users mailing list
>> [email protected]
>> https://lists.sourceforge.net/lists/listinfo/artifactory-users
>>
> 
> ------------------------------------------------------------------------------
> Keep Your Developer Skills Current with LearnDevNow!
> The most comprehensive online learning library for Microsoft developers
> is just $99.99! Visual Studio, SharePoint, SQL - plus HTML5, CSS3, MVC3,
> Metro Style Apps, more. Free future releases when you subscribe now!
> http://p.sf.net/sfu/learndevnow-d2d
> _______________________________________________
> Artifactory-users mailing list
> [email protected]
> https://lists.sourceforge.net/lists/listinfo/artifactory-users
> 


--
View this message in context: 
http://artifactory-users.108859.n3.nabble.com/Pure-ivy-xml-artifact-resolution-tp3709002p3724446.html
Sent from the Artifactory - Users mailing list archive at Nabble.com.

------------------------------------------------------------------------------
Keep Your Developer Skills Current with LearnDevNow!
The most comprehensive online learning library for Microsoft developers
is just $99.99! Visual Studio, SharePoint, SQL - plus HTML5, CSS3, MVC3,
Metro Style Apps, more. Free future releases when you subscribe now!
http://p.sf.net/sfu/learndevnow-d2d
_______________________________________________
Artifactory-users mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/artifactory-users

Reply via email to