Hello Kirby, I have also tried this (at the beginning) and it was also not working. I will create a test project and will see how it goes. And if I encounter the weird behavior I will be able to attached the whole thing for people to have a look at.
Thanks again a lot for your advices. Cheers, ---------------------------------------------------------------------- Xavier MARTIN aka zeflasher or xxlm Visit my website if you love flash: http://www.webbymx.net http://dev.webbymx.net ---------------------------------------------------------------------- On Fri, Dec 2, 2011 at 5:31 PM, Kirby Files <kfi...@masergy.com> wrote: > I just noticed on StackOverflow that you're actually editing the status of > the published module in its ivy.xml *in the repo*. Are you clearing all Ivy > caches after doing this? Because Ivy's never going to notice a change to > the ivy.xml if you didn't change the revision. Ivy's caching strategy > assumes that modules, once published, don't change their metadata. > > If I were you, I'd really try to experiment in a more serious way: follow > the full workflow, as you would in a production setting. That is, publish > moduleB with a given revision and status; change the revision and status > and publish a second version. Then setup your dependencies as I mentioned, > setting the properties as appropriate in your build target. I would stick > with the default statuses at first, and only add custom statuses once > you've successfully tested that. > > Thanks, > --kirby > > -----Original Message----- > From: Xavier MARTIN [mailto:zeflas...@gmail.com] > Sent: Thursday, December 01, 2011 6:20 PM > To: ivy-user@ant.apache.org > Subject: Re: Weird behavior with status > > Hello Kirby, > > Thanks for the answer, but it's still not working. > I have slim down my ant and my ivy to the bare minimum ( I think ) but > still the behavior is the same. > Only the last status of the statuses will be resolved, not the other ones. > > I have updated the wuestion on stackoverflow to be more consise, with > simple ant and ivy files (no varaiables, ... ) I still can't get the latest > milestone or release :/ > > Thanks for any help you can provide... > ---------------------------------------------------------------------- > Xavier MARTIN aka zeflasher or xxlm > Visit my website if you love flash: > http://www.webbymx.net > http://dev.webbymx.net > ---------------------------------------------------------------------- > > > On Fri, Dec 2, 2011 at 9:01 AM, Kirby Files <kfi...@masergy.com> wrote: > > > Here's what I said at stackoverflow: > > > > Wow, that looks like a very strange overloading of the dependency > > construct. I would stick with a simpler ivy.xml, with a single > > dependency upon moduleB. Just change the rev attribute at runtime > > using a property file. That is, coalesce all of your dependencies into: > > > > <dependency org="com.org" name="moduleB" > > rev="${dependency.rev.moduleB}* *" > > > > conf="build-release->default;**build-milestone->default;** > > build-devs->default"> > > > > <artifact name="shared" type="swc" ext="swc" /> > > <artifact name="shared" type="src" ext="src.zip" /> > > </dependency> > > > > You can even supply a default value to the property (for IvyDE, for > > example) in your ivy-settings.xml: > > > > <property name="dependency.rev.moduleB" > > value="latest.integration" > > override="false"/> > > > > Thanks, > > --- > > Kirby Files > > Software Architect > > Masergy Communications > > kfi...@masergy.com > > > > > > Xavier MARTIN wrote on 12/01/2011 05:40 AM: > > > > Hello, > >> > >> I'm relatively new to IVY and have been playing with it successfully > >> the past 2 months. > >> Few days ago I had the need of using configurations and statuses in > >> my ivy files. > >> > >> I've expected a weird behavior, or probably haven't set up the things > >> the right way. > >> To make it fast, it seems that IVY will only be able to find > >> artifacts for the last status of the statuses. > >> It doesn't matter if I use custom ones or the default ones. > >> > >> For instance for the default ones, it will find artifact witht the > >> integration status but not the milestone or release ones. > >> > >> > >> Now the details (copied from stackoverflow where I've asked the > >> question > >> also) > >> http://stackoverflow.com/**questions/8336843/using-** > >> status-in-ivy-works-for-the-**less-stable-one-ie-**integration-not-fo > >> r-t<http://stackoverflow.com/questions/8336843/using-status-in-ivy-wo > >> rks-for-the-less-stable-one-ie-integration-not-for-t> > >> > >> > >> I am trying desperately to have this working. I've spent the whole > >> day on it and can't find what's wrong. > >> > >> What I want to achieve is using different artifact depending on the > >> configuration used. The configuration are build-release, > >> build-milestone and build-devs. > >> > >> Here is my ivysettings.xml file > >> > >> <?xml version="1.0" encoding="UTF-8"?> <ivysettings> > >> <property name="upload.url" value="http://domain.com" /> > >> > >> <credentials > >> host="domain.com" > >> realm="Sonatype Nexus Repository Manager" > >> username="deployment" > >> passwd="deployment" > >> /> > >> > >> <settings defaultResolver="main" /> > >> > >> <resolvers> > >> <chain name="main" returnFirst="false"> > >> <filesystem > >> name="local" > >> checkmodified="true"> > >> <artifact > >> pattern="${repository.dir}/[**organisation]/[module]/[** > >> revision]/[artifact].[ext]" > >> /> > >> </filesystem> > >> <ibiblio name="public" m2compatible="true" root=" > >> http://as-artifacts.org/**content/groups/public-**actionscript< > http://as-artifacts.org/content/groups/public-actionscript>" > >> /> > >> <ibiblio > >> name="sonar6" > >> m2compatible="true" > >> root="http://domain.com" > >> > >> pattern="[organisation]/[**module]/[revision]/[artifact].**[ext]" /> > >> </chain> > >> <url name="publishing" m2compatible="true"> > >> <artifact > >> pattern="${upload.url}/[**organisation]/[module]/[** > >> revision]/[artifact].[ext]" > >> /> > >> </url> > >> </resolvers> > >> </ivysettings> > >> > >> and here is my ivy.xml file > >> > >> <ivy-module > >> version="2.0" > >> > >> xmlns:xsi="http://www.w3.org/**2001/XMLSchema-instance<http://www.w3. > >> org/2001/XMLSchema-instance> > >> " > >> xsi:noNamespaceSchemaLocation=**"http://ant.apache.org/ivy/** > >> schemas/ivy.xsd <http://ant.apache.org/ivy/schemas/ivy.xsd> > >> " > >> > >>> > >>> > >> <info > >> organisation="com.org" > >> module="amodule" > >> status="integration" > >> /> > >> > >> <configurations> > >> <conf name="build-release" description="Dependencies used for > >> release (remote dependencies, status release)"/> > >> <conf name="build-milestone" description="Dependencies used > >> for test (remote dependencies, status milestone)" /> > >> <conf name="build-devs" description="Dependencies used for > >> development (local/remote dependencies, status integration)" /> > >> </configurations> > >> > >> <publications> > >> <artifact type="swf" ext="swf" /> > >> <artifact type="src" ext="src.zip" /> > >> </publications> > >> > >> <dependencies> > >> <!-- Default dependencies --> > >> <!-- Tink flex spark update, stored on google code--> > >> <dependency org="ws.tink" name="flex4_spark" rev="1"> > >> <artifact name="tweenlite" type="swc" ext="swc" url=" > >> http://tink.googlecode.com/**files/tink_flex4_spark.swc<http://tink.g > >> ooglecode.com/files/tink_flex4_spark.swc> > >> "/> > >> </dependency> > >> > >> <!-- Tweenlite --> > >> <dependency org="com.greensock.as3" name="tweenlite" > rev="11.691"> > >> <artifact name="tweenlite" type="swc" ext="swc" /> > >> <artifact name="tweenlite" type="src" ext="src.zip" /> > >> </dependency> > >> > >> <!-- Specific dependencies depending on build (integration, milestone > >> or release --> > >> <!-- DEVELOPMENT --> > >> <!-- moduleB --> > >> <dependency org="com.org" name="moduleB" > rev="latest.integration" > >> changing="true" conf="build-devs->default"> > >> <artifact name="shared" type="swc" ext="swc" /> > >> <artifact name="shared" type="src" ext="src.zip" /> > >> </dependency> > >> > >> > >> <!-- INTEGRATION (IE TESTING)--> > >> <!-- moduleB --> > >> <dependency org="com.org" name="moduleB" rev="latest.milestone" > >> changing="true" conf="build-milestone->**default"> > >> <artifact name="shared" type="swc" ext="swc" /> > >> <artifact name="shared" type="src" ext="src.zip" /> > >> </dependency> > >> > >> <!-- RELEASE --> > >> <!-- moduleB --> > >> <dependency org="com.org" name="moduleB" rev="latest.release" > >> conf="build-release->default"> > >> <artifact name="shared" type="swc" ext="swc" /> > >> <artifact name="shared" type="src" ext="src.zip" /> > >> </dependency> > >> </dependencies> > >> </ivy-module> > >> > >> So as you can see depending on the configuration used, different > >> version of the moduleB will be used. This is because the build script > >> is run by: - developers - autobuild (for testing) - autobuild (for > >> release) A flag is set in ant to tell which conf to use. > >> > >> Now, if the conf used is build-devs, meaning using the > >> latest.integration revision for moduleB it will work and download it. > >> If the conf build-milestone is used so get the moduleB using > >> latest.milestone revision, the artifact won't be found, although > >> listed > >> > >> :: problems summary :: > >> :::: WARNINGS > >> module not found: > >> com.org#moduleB;latest.**milestone<http://com.org#moduleB;latest.mile > >> stone> > >> > >> ==== local: tried > >> > >> -- artifact > >> com.org#moduleB;latest.**milestone!moduleB.src.zip(src)<http://com.org#moduleB;latest.**milestone%21moduleB.src.zip%28src%29> > <http://com.or > >> g#moduleB;latest.milestone%21moduleB.src.zip%28src%29> > >> **: > >> > >> > >> C:/repository/com.org/moduleB/**revision]/moduleB.src.zip<http://com. > >> org/moduleB/revision%5D/moduleB.src.zip> > >> > >> [0.0.5.0 (MD)]<-- this is the milestone release > >> > >> -- artifact > >> com.org#moduleB;latest.**milestone!moduleB.swc<http://com.org#moduleB;latest.**milestone%21moduleB.swc> > <http://com.org#moduleB > >> ;latest.milestone%21moduleB.swc> > >> : > >> > >> > >> C:/repository/com.org/moduleB/**[revision]/moduleB.swc<http://com.org > >> /moduleB/%5Brevision%5D/moduleB.swc> > >> > >> [0.0.5.0 (MD)] > >> > >> ==== public: tried > >> > >> > >> http://as-artifacts.org/**content/groups/public-** > >> actionscript/com/org/moduleB/[**revision]/moduleB-[revision].**pom<ht > >> tp://as-artifacts.org/content/groups/public-actionscript/com/org/modu > >> leB/%5Brevision%5D/moduleB-%5Brevision%5D.pom> > >> > >> -- artifact > >> com.org#moduleB;latest.**milestone!moduleB.swc<http://com.org#moduleB;latest.**milestone%21moduleB.swc> > <http://com.org#moduleB > >> ;latest.milestone%21moduleB.swc> > >> : > >> > >> > >> http://as-artifacts.org/**content/groups/public-** > >> actionscript/com/org/moduleB/[**revision]/moduleB-[revision].**swc<ht > >> tp://as-artifacts.org/content/groups/public-actionscript/com/org/modu > >> leB/%5Brevision%5D/moduleB-%5Brevision%5D.swc> > >> > >> -- artifact > >> com.org#moduleB;latest.**milestone!moduleB.src.zip(src)<http://com.org#moduleB;latest.**milestone%21moduleB.src.zip%28src%29> > <http://com.or > >> g#moduleB;latest.milestone%21moduleB.src.zip%28src%29> > >> **: > >> > >> > >> http://as-artifacts.org/**content/groups/public-** > >> actionscript/com/org/moduleB/[**revision]/moduleB-[revision].**src.zi > >> p<http://as-artifacts.org/content/groups/public-actionscript/com/org/ > >> moduleB/%5Brevision%5D/moduleB-%5Brevision%5D.src.zip> > >> > >> ==== domain.com: tried > >> > >> > >> http://domain.com/com/org/**moduleB/[revision]/moduleB.pom<http://dom > >> ain.com/com/org/moduleB/%5Brevision%5D/moduleB.pom> > >> > >> [0.0.1.0 (unreachable)] > >> > >> -- artifact > >> com.org#moduleB;latest.**milestone!moduleB.src.zip(src)<http://com.org#moduleB;latest.**milestone%21moduleB.src.zip%28src%29> > <http://com.or > >> g#moduleB;latest.milestone%21moduleB.src.zip%28src%29> > >> **: > >> > >> > >> http://domain.com/com/org/**moduleB/[revision]/moduleB.**src.zip<http > >> ://domain.com/com/org/moduleB/%5Brevision%5D/moduleB.src.zip> > >> > >> [0.0.1.0 (MD)] > >> > >> -- artifact > >> com.org#moduleB;latest.**milestone!moduleB.swc<http://com.org#moduleB;latest.**milestone%21moduleB.swc> > <http://com.org#moduleB > >> ;latest.milestone%21moduleB.swc> > >> : > >> > >> > >> http://domain.com/com/org/**moduleB/[revision]/moduleB.swc<http://dom > >> ain.com/com/org/moduleB/%5Brevision%5D/moduleB.swc> > >> > >> [0.0.1.0 (MD)] > >> > >> This is the ivy.xml in my local repository > >> (C:\repository\com.sonar6.**thor\shared\0.0.5.0) > >> > >> <ivy-module version="2.0" xmlns:xsi=" > >> http://www.w3.org/2001/**XMLSchema-instance< > http://www.w3.org/2001/XMLSchema-instance>" > >> xsi:noNamespaceSchemaLocation=**" > >> http://ant.apache.org/ivy/**schemas/ivy.xsd<http://ant.apache.org/ivy > >> /schemas/ivy.xsd> > >> "> > >> > >> <info organisation="com.org" module="moduleB" revision="0.0.5.0" > >> status="milestone" publication="20111201174403"/> > >> > >> <configurations> > >> <conf name="build-release" description="Dependencies used for > >> release (remote dependencies, status release)"/> > >> <conf name="build-milestone" description="Dependencies used > >> for test (remote dependencies, status milestone)"/> > >> <conf name="build-devs" description="Dependencies used for > >> development (local/remote dependencies, status integration)"/> > >> </configurations> > >> > >> <publications> > >> <artifact type="swc" ext="swc"/> > >> <artifact type="src" ext="src.zip"/> > >> </publications> > >> > >> <dependencies> > >> <!-- Default dependencies --> > >> <!-- Flash Console --> > >> <dependency org="com.junkbyte" name="Console" rev="2.51"> > >> <artifact name="Console" type="swc" ext="swc"/> > >> <artifact name="Console" type="src" ext="src.zip"/> > >> </dependency> > >> > >> <!-- Robotlegs --> > >> <dependency org="org.robotlegs" name="robotlegs-framework" > >> rev="1.4.0"> > >> <artifact name="robotlegs-framework" type="swc" ext="swc"/> > >> <artifact name="robotlegs-framework" type="src" > >> ext="src.zip"/> > >> </dependency> > >> > >> <!-- Signals --> > >> <dependency org="org.osflash" name="as3-signals" rev="0.8"> > >> <artifact name="as3-signals" type="swc" ext="swc"/> > >> <artifact name="as3-signals" type="src" ext="src.zip"/> > >> </dependency> > >> > >> <!-- Signal extension for Robotleg --> > >> <dependency org="org.robotlegs.plugins" > >> name="signals-extension-**command" rev="0.5"> > >> <artifact name="signals-extension-**command" type="swc" > >> ext="swc"/> > >> <artifact name="signals-extension-**command" type="src" > >> ext="src.zip"/> > >> </dependency> > >> > >> </dependencies> > >> </ivy-module> > >> > >> Now the FUN PART! Before using the defaults statuses from IVY I used > mine. > >> It had the exact same behavior (that's why I tried the defaults one > then). > >> The fun bits is that if I had > >> > >> <statuses default="status-dev"> > >> <status name="status-stable" integration="false"/> > >> <status name="status-test" integration="false"/> > >> <status name="status-dev" integration="true" /> </statuses> > >> > >> The only latest.[status] working will be for status-dev. Now if I > >> change the status order to > >> > >> <statuses default="status-dev"> > >> <status name="status-stable" integration="false"/> > >> <status name="status-dev" integration="true" /> > >> <status name="status-test" integration="false"/> </statuses> > >> > >> The only one working will be status-test. > >> > >> So I wonder if I'm hitting a bug in IVY, but I think I probably have > >> done something wrong. > >> I'm using ant 1.8.0 and IVY 2.2.0 with JDK 1.6.0 > >> > >> Thanks for any help you could provide :) > >> > >> Xavier > >> > >> > >> > >> ------------------------------**------------------------------** > >> ---------- > >> Xavier MARTIN aka zeflasher or xxlm > >> Visit my website if you love flash: > >> http://www.webbymx.net > >> http://dev.webbymx.net > >> ------------------------------**------------------------------** > >> ---------- > >> > > > > >