The last time I approached this problem I did the following: - Versioned my artifacts to reflect their version in SCM (Svn revision # in this case) - Used ivy:findrevision to determine if the current artifact was in my Repo
I only published if the artifact wasn't in the repo, and if it wasn't a "container" artifact. i.e. - if it's a WAR which contains jars, I published it each time. HTH, ~Tim On Mon, Jul 18, 2011 at 12:43 PM, Shaka Tard <shakat...@gmail.com> wrote: > Hi. I'm using Nexus Artifact Repository with IVY and ANT, and I like it > very much. > > I have Hudson building my artifacts on a regular basis, even if the source > code hasn't changed on these applications at all. I do this to ensure that > the thing is building and working properly, and also to integrate the latest > revisions of libraries to ensure that a new library revision builds and > integrates with my builds. I use this as my proverbial canary in the coal > mine, and it let's me know when something new is breaking my codebase. > However, my libraries don't change too often, and that's not the source of > my problem. My problem is what happens when the builds are identical. > > I auto-increment my build number using ivy:buildnumber. My biggest concern > at the moment is that my ANT script publishes the artifacts regardless of > whether the latest artifact is identical to the one produced yesterday. > This means I could have hundreds of revisions cluttering up Nexus when my > continuous integration is running, and I don't want to continue to let that > happen. I could make publishing a manual affair, but I'd rather not do that > too, if it can be avoided. > > I know that the artifacts are stored with their checksum. I could build > another ivy.xml file, and set the artifact as a dependency, resolve it, and > then using ANT I could determine whether the file is identical or not, and > prevent the publish that way. That, however, seems to be a lot of work, and > I decided to write to this user group to see if there were any better ways > to accomplish this task. > > Thanks much in advance, > Shaka >