You are viewing a plain text version of this content. The canonical link for it is here.
Posted to ivy-user@ant.apache.org by Ross Camara <rm...@us.ibm.com> on 2008/08/04 22:15:55 UTC

Ivy Ant tasks and extra attributes?

Our project makes use of an extra attribute to manage the different
platforms for our project. For the most part ivy seems to support the usage
of extra attributes in all the places where you would want to make use of
those attributes. However one area that we have run into some problems is
that many of the ant tasks don't support the usage of an extra attribute as
a mechanism for filtering/selecting a module. The primary case where we
have run into this is with the install ant task which we would like to use
to move modules from repository to repository. Specifically since we have
modules in our repository with the same name, organization, and revision
but with different values for an extra (platform) attribute the install
task will fail since it isn't able to resolve down to a single dependency.
Is there a suggested/preferred way to solve this?

One idea we have been considering is to patch the ivy ant tasks.
Specifically we would allow certain ant tasks to have a nested element
called 'extra' with attributes name and value. This would allow you to
specify an arbitrary number of extra attributes that could be used by the
ivy ant tasks.

For example:
<ivy:install from="${source.repository}" to="${publish.repository}"
transitive="false"
            module="${ivy.module.name}" organisation=."$
{ivy.module.orginization}"
            revision="${ivy.module.revision}" >
      <extra name="platform" value="${ivy.module.platform}" />
</ivy:install>

Are there any obvious problems with what we are thinking of doing? Or is
there a better more established way to handle this?


Ross Camara
Software Developer
(703) 390-9923
rmcamara@us.ibm.com?