Nappin, Chris (IT Services) wrote:
Hi,
I'm currently evaluating ivy and have a question about shared
repositories and configurations.
I've created a simple shared repository intended to be used by a number
of in-house projects. This contains hand-written ivy module dependency
files for each artifact. Each project has a different set of
configurations.
It's generally a good idea to have a fairly standard set of
configurations (you can include them from a standard file using the
<include> element). You can always add additional module specific ones
if required.
I would like each of the artifacts to be usable by all projects and all
configurations, without having to add a list of all project
configurations to every module dependency file in the shared repository.
My repository shouldn't have to know about every project that is going
to use it. Is this possible, and if so how?
You don't need to have a particular configuration name in your module in
order to use artifacts from that configuration name in another module. e.g.
Other module:
confs = foo, bar
Your module:
confs = baz
<dependency org="yours" name="Other module" rev="whatever" conf="baz->foo"/>
That means your baz conf depends on the foo conf from the other module.
Did that answer your question - I may have misunderstood? Configuration
mapping in dependencies allows you to express complex relationships
between confs in the source module and those in the dependency module.
See
http://ant.apache.org/ivy/history/latest-milestone/ivyfile/dependency.html
Tom