The best and most common approach I'm aware of for handling this is to have
your Ivy settings including three different Ivy settings files, one for each
stage/status. Which settings to include is determined by a property. The
default value, and the one developers and the dev CI server would use, would
pick up the integration Ivy settings. This property would be overridden,
preferably by a value in a properties file under .ivy2 or elsewhere in
user.home, for milestone and release builds.

Note that your integration Ivy settings wouldn't just have integration Ivy
resolvers. It would have a chain of integration, milestone, and release. The
milestone Ivy settings would have a chain of milestone and release. The
release Ivy settings would have just release resolvers. This is presuming
that you've published your modules to different directories/locations--to
different Ivy repositories, literally--depending on their status
(preferable), or you at least have some way to distinguish between them
based on pattern within the same repo (acceptable).

On Thu, Mar 24, 2011 at 4:55 AM, Alex Kiesel <[email protected]> wrote:

> Hi,
>
> I'd like to deploy a build system on top of Ivy. Currently, I face one
> problem: I'd like to have different dependencies when integration,
> milestone or release is built. A release should only depend on other
> releases, milestones should require releases and/or milestones and
> integration build may take anything.
>
> I'd like to leave the rev="" setting in the dependency untouched. Is
> there one parameter to <ivy:resolve> that would help me?
>
> Regards,
> -Alex
>

Reply via email to