ant-ivy-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Adrian Woodhead <adr...@last.fm>
Subject Re: problem resolving "latest" artifact
Date Mon, 03 Nov 2008 17:21:11 GMT


buzzterrier wrote:
> I publish milestone and release status artifacts to the same Ivysvn
> repository using the ivy buildnumber feature. Below is the milestone ant
> task I use (note that the release task is identical, but has a "release"
> status):
>
> 	<target name="milestone" depends="jar" description="--> publish this
> project in the blue ivy subversion repository">
> 		 <ivy:info file="ivy.xml"/>
> 		 		 <ivy:buildnumber
> 		 			 organisation="${ivy.organisation}" module="${ivy.module}"
> 		 			revision="1.0." defaultBuildNumber="1"/>
>
>
>             <ivy:publish artifactspattern="${build.dir}/[artifact].[ext]"
>                     resolver="shared"
>             		pubrevision="${ivy.new.revision}"
>                     status="milestone"/>
> 	    </target>
>
> The result publishing with these tasks is a new directory for reach release
> in the subversion repos:
>
> \\subversion\ivy\foo.bar\coreTools
>      \1.0.1
>      \1.0.2
>      \LATEST
>
> inside of each of the versioned directories is the artifact and associated
> ivy meta files e.g.
> coreTools-1.0.1.jar
> ivy-1.01.xml
> ...
>
> the LATEST directory has all the released jars and metadata:
> coreTools-1.0.1.jar
> ivy-1.01.xml
> coreTools.1.0.2.jar
> ivy-1.02.xml
> ...
>
> This seems odd, I thought that LATEST directory would have just the last
> published jar and metadata i.e. coreTools-1.0.2.jar
>   
If you are using IvySvn 2.0.0-beta 5 you can try set the 
"cleanupPublishFolder" on "svn" to true, that will hopefully do what you 
expect. It is described in more detail here 
http://code.google.com/p/ivysvn/wiki/Usage (under "Cleaning up 
previously published artifacts").

> Also, when I try to resolve the latest.milestone or latest.release for
> coreTools.jar from a different project, I get the following error:
>
> [ivy:retrieve] 	No resource found at
> svn://subversion/ivy/foo.bar/coreTools/LATEST/ivy-LATEST.xml, returning
> default resource
>
> So it wants coreTools-LATEST.jar instead of coreTools-1.0.2.jar
>
> So what is the expected behavior? Should the LATEST directory only have the
> last released artifact? And if the artifacts are in the LATEST directory,
> why would it be trying to reference coreTools-LATEST.jar? 
>   
That's a good question. I haven't tried this before as we use 
"latest.integration" which seems to work, but this might also be due to 
the fact that we don't put the version number in the file names, only in 
the folder names. I'll make a note to test this and your cases when I 
next have some time. If you want you could file this as a bug 
http://code.google.com/p/ivysvn/issues/list (which will ensure I don't 
forget about it!)

Regards,

Adrian


Mime
View raw message