Collection of artifacts should be treated as a whole when using timestamp snapshot versions

classic Classic list List threaded Threaded
3 messages Options
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate
star

Collection of artifacts should be treated as a whole when using timestamp snapshot versions

axetheaxe
Hi all!

We use Maven to deploy many "classifier" artifacts to Artifactory (thus having artifacts with the same groupId and the same artifcatId but different classifiers). At the moment we use Maven 2.2.1 but we want to switch to Maven 3.0.3 as soon as possible. Moreover we use NOT unique versions as we have many large artifacts (i.e. ~700MB-1GB). So we plan to keep just one unique version in Artifactory in the future.
In the tests we made so far, we stumbled upon the way those classifier artifacts are stored. For example we deploy these artifacts:
test-main-1.0.0-SNAPSHOT.jar
test-main-1.0.0-SNAPSHOT-abc.abc
test-main-1.0.0-SNAPSHOT-lmn.lmn
test-main-1.0.0-SNAPSHOT-xyz.xyz

But in the Artifactory repository we only find those (the property 'Max Unique Snapshots' set to 2):
test-main-1.0.0-20120106.152709-4-xyz.xyz
test-main-1.0.0-20120106.152948-5-abc.abc

So it looks as there are not all artifacts kept. This behavior is independent of the Maven version.

Retrieving those artifacts does only work with Maven 3 and 'Max Unique Snapshots' set to 0.
If we use Maven 2 we moreover cannot retrieve artifacts already in the repository, e.g. in the above example that with classifier 'xyz'.

Can you reproduce this? I attach two archives containing one project deploying multiple artifacts and one project consuming those artifacts.

Thanks in advance
Alex Rüegg

test-main.zip
test-sub.zip
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate
star

Re: Collection of artifacts should be treated as a whole when using timestamp snapshot versions

elig
Hi Alex,

Thank you for the sample project, it helped identifying the problem which is actually maven fault and the way you configured your project. Every execution receive a different build number on deployment,
test-main-1.0.0-20120111.102148-1.jar
test-main-1.0.0-20120111.102149-2-lmn.lmn
test-main-1.0.0-20120111.102149-3-abc.abc
test-main-1.0.0-20120111.102150-4-xyz.xyz

Exact same behavior will happen if you deploy to a local file system so it is not related to Artifactory.
When setting the the Unique cleanup policy to 2 then build 1 and 2 are deleted and you end up only with only abc and xyz artifacts at the end of the build.

I hope that clarified the issue.

Eli  

On Mon, Jan 9, 2012 at 1:29 PM, axetheaxe <[hidden email]> wrote:
Hi all!

We use Maven to deploy many "classifier" artifacts to Artifactory (thus
having artifacts with the same groupId and the same artifcatId but different
classifiers). At the moment we use Maven 2.2.1 but we want to switch to
Maven 3.0.3 as soon as possible. Moreover we use NOT unique versions as we
have many large artifacts (i.e. ~700MB-1GB). So we plan to keep just one
unique version in Artifactory in the future.
In the tests we made so far, we stumbled upon the way those classifier
artifacts are stored. For example we deploy these artifacts:
test-main-1.0.0-SNAPSHOT.jar
test-main-1.0.0-SNAPSHOT-abc.abc
test-main-1.0.0-SNAPSHOT-lmn.lmn
test-main-1.0.0-SNAPSHOT-xyz.xyz

But in the Artifactory repository we only find those (the property 'Max
Unique Snapshots' set to 2):
test-main-1.0.0-20120106.152709-4-xyz.xyz
test-main-1.0.0-20120106.152948-5-abc.abc

So it looks as there are not all artifacts kept. This behavior is
independent of the Maven version.

Retrieving those artifacts does only work with Maven 3 and 'Max Unique
Snapshots' set to 0.
If we use Maven 2 we moreover cannot retrieve artifacts already in the
repository, e.g. in the above example that with classifier 'xyz'.

Can you reproduce this? I attach two archives containing one project
deploying multiple artifacts and one project consuming those artifacts.

Thanks in advance
Alex Rüegg

http://forums.jfrog.org/file/n7167518/test-main.zip test-main.zip
http://forums.jfrog.org/file/n7167518/test-sub.zip test-sub.zip

--
View this message in context: http://forums.jfrog.org/Collection-of-artifacts-should-be-treated-as-a-whole-when-using-timestamp-snapshot-versions-tp7167518p7167518.html
Sent from the Artifactory - Users mailing list archive at Nabble.com.

------------------------------------------------------------------------------
Ridiculously easy VDI. With Citrix VDI-in-a-Box, you don't need a complex
infrastructure or vast IT resources to deliver seamless, secure access to
virtual desktops. With this all-in-one solution, easily deploy virtual
desktops for less than the cost of PCs and save 60% on VDI infrastructure
costs. Try it free! http://p.sf.net/sfu/Citrix-VDIinabox
_______________________________________________
Artifactory-users mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/artifactory-users


------------------------------------------------------------------------------
Ridiculously easy VDI. With Citrix VDI-in-a-Box, you don't need a complex
infrastructure or vast IT resources to deliver seamless, secure access to
virtual desktops. With this all-in-one solution, easily deploy virtual
desktops for less than the cost of PCs and save 60% on VDI infrastructure
costs. Try it free! http://p.sf.net/sfu/Citrix-VDIinabox
_______________________________________________
Artifactory-users mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/artifactory-users
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate
star

Re: Collection of artifacts should be treated as a whole when using timestamp snapshot versions

axetheaxe
Hello Eli!

Good point. I looked at the local maven repo after executing 'mvn install' but did not consider to deploy to a "local" remote repo. Thank you for the hint.
Okay this is then a maven issue for which I have to search in the appropriate forums.
But why can Artifactory not handle it correctly? Maybe giving an option in the repo configuration to keep at least n number of artifacts per classifier? That would help much despite we seem to be the only one stumbling about this problem.

Many thanks
Alex

elig wrote
Hi Alex,

Thank you for the sample project, it helped identifying the problem which
is actually maven fault and the way you configured your project. Every
execution receive a different build number on deployment,
test-main-1.0.0-20120111.102148-1.jar
test-main-1.0.0-20120111.102149-2-lmn.lmn
test-main-1.0.0-20120111.102149-3-abc.abc
test-main-1.0.0-20120111.102150-4-xyz.xyz

Exact same behavior will happen if you deploy to a local file system so it
is not related to Artifactory.
When setting the the Unique cleanup policy to 2 then build 1 and 2 are
deleted and you end up only with only abc and xyz artifacts at the end of
the build.

I hope that clarified the issue.

Eli

On Mon, Jan 9, 2012 at 1:29 PM, axetheaxe <[hidden email]> wrote:

> Hi all!
>
> We use Maven to deploy many "classifier" artifacts to Artifactory (thus
> having artifacts with the same groupId and the same artifcatId but
> different
> classifiers). At the moment we use Maven 2.2.1 but we want to switch to
> Maven 3.0.3 as soon as possible. Moreover we use NOT unique versions as we
> have many large artifacts (i.e. ~700MB-1GB). So we plan to keep just one
> unique version in Artifactory in the future.
> In the tests we made so far, we stumbled upon the way those classifier
> artifacts are stored. For example we deploy these artifacts:
> test-main-1.0.0-SNAPSHOT.jar
> test-main-1.0.0-SNAPSHOT-abc.abc
> test-main-1.0.0-SNAPSHOT-lmn.lmn
> test-main-1.0.0-SNAPSHOT-xyz.xyz
>
> But in the Artifactory repository we only find those (the property 'Max
> Unique Snapshots' set to 2):
> test-main-1.0.0-20120106.152709-4-xyz.xyz
> test-main-1.0.0-20120106.152948-5-abc.abc
>
> So it looks as there are not all artifacts kept. This behavior is
> independent of the Maven version.
>
> Retrieving those artifacts does only work with Maven 3 and 'Max Unique
> Snapshots' set to 0.
> If we use Maven 2 we moreover cannot retrieve artifacts already in the
> repository, e.g. in the above example that with classifier 'xyz'.
>
> Can you reproduce this? I attach two archives containing one project
> deploying multiple artifacts and one project consuming those artifacts.
>
> Thanks in advance
> Alex Rüegg
>
> http://forums.jfrog.org/file/n7167518/test-main.zip test-main.zip
> http://forums.jfrog.org/file/n7167518/test-sub.zip test-sub.zip
Loading...