Monday March 05, 2007
Artifactory - a new Maven 2 Repository Manager for Enterprises From the Maven 2 user list:
We would like to announce the immediate availability of Artifactory, a Maven 2 enterprise proxy.
Artifactory offers advanced proxying, caching and security facilities to answer the needs of a robust, reproducible and independent build environment using Maven 2.
It uses a JSR-170 Java Content Repository (JCR) for storage, which makes it extremely easy to manage searchable metadata, and provide extended features such as security, transacted operations, auditing, locking, etc.
Artifactory is distributed under APLv2 at http://artifactory.sourceforge.net. It is currently available as a downloadable archive, that can be run out of the box (with default settings). An install script to run it as a Linux service is also provided. A (limited) guest live demo is available at http://www.jfrog.org/artifactory (username/password is guest/guest).
You are welcome to give it a go!
Cheers,
Yoav Landman,
The Artifactory Team
So how does this compare to Archiva, Proximity and Maven Proxy? One user writes (formatted for better reading):
- Archiva: Alpha; doesn't work (random webdav deployment failures), loads of bugs, low rate of progress. Feels dead.
- Proximity: Works; slightly confusing (don't like the separation of metadata); lots of new releases constantly; hard to configure (hacking around with spring config files) - our install takes *forever* to restart.
- m2proxy: simple, but simple.
It's interesting to see that Artifactory's UI is powered by Wicket and Dojo. The demo seems kind of sluggish, but I don't believe this application is meant to handle more than 10 users at a time. For more information on Artifactory's features, see its introduction page.
It's great to see a (seemingly) good tool come out for internal repository management.
I spent a couple days last week analyzing the best open source continuous integration server for Maven 2 projects. Hudson turned out to be the clear winner with the best UI and easiest setup. It also actually worked, which is a lot more than I can say for Continuum. While I did get Continuum to work, it required turning on anonymous SVN (no, putting the username/password in the URL did not work). CruiseControl worked as well, but required config.xml knowledge, which sometimes scares admins. Pulse and Bamboo continue to be the best commercial Maven 2 testers, while TeamCity failed my 10-minute test (twice!). One of the features I was looking for was Trac integration and that only exists for CruiseControl and Continuum.
It's amazing to see projects like Continuum and Archiva. If they're any reflection of the Maven team's ability to develop software, that's frightening. My advice: discontinue both of these projects as they're a waste of anyone's time to even research them.
Posted in Java
at Mar 05 2007, 07:35:00 AM MST
24 Comments
Search This Site
Recent Entries
- What's Next
- Jack's Mohawk
- LinkedIn Cuts 10% (a.k.a. The Journey is Over)
- Happy Birthday Abbie!
- Moving from Spring's XML to Annotations in AppFuse
- Free Maven Training in New Orleans on Election Day
- AppFuse Light ยป AppFuse, Maven Archetypes and Shared Web Assets
- Great Weekend in Montana
- Colorado Software Summit 2008 Wrapup
- RESTful Web Applications with Subbu Allamaraju
Posted by Jesse Kuhnert on March 05, 2007 at 08:37 AM MST #
Posted by Matt Raible on March 05, 2007 at 08:40 AM MST #
1) have to touch a few config files to add a mirror.
a) copy, paste and change in the proximityRepositories.xml for the new mirror.
b) add a list item in the applicationContext.xml so that proximity knows about the new mirror or repository.
c) add metadata dir and storage dir to proximity.properties
2) Upgrade to the current release candidate.
the documentation could be better. Whenever I get a new release candidate, I end up diffing the entire dir struct and going through a merge process (thank God for beyond compare).
I'll check out Archiva today to see how it compares. I fear that db storage for the artifacts will slow it down considerably. Proximity stores everything on the file system so nothing needs to be pulled out of any db before it's given to the requester.
Posted by rick marry on March 05, 2007 at 09:28 AM MST #
Posted by Eelco Hillenius on March 05, 2007 at 09:29 AM MST #
Posted by Jesse Kuhnert on March 05, 2007 at 10:13 AM MST #
Posted by JR on March 05, 2007 at 10:42 AM MST #
Posted by Eelco Hillenius on March 05, 2007 at 11:05 AM MST #
Posted by Nick Johnson on March 05, 2007 at 11:11 AM MST #
Posted by Anonymous Coward on March 05, 2007 at 11:13 AM MST #
Posted by Jesse Kuhnert on March 05, 2007 at 11:15 AM MST #
Posted by Anonymous Coward on March 05, 2007 at 11:20 AM MST #
Posted by Matt Raible on March 05, 2007 at 11:33 AM MST #
If you try any of the repository front ends against an ibiblio copy you'll see that it's not a trivial task.
Posted by Carlos Sanchez on March 05, 2007 at 03:02 PM MST #
Posted by Dave Brown on March 05, 2007 at 03:18 PM MST #
Posted by Sebastien Pouillet on March 06, 2007 at 11:20 PM MST #
"It's amazing to see projects like Continuum and Archiva. If they're any reflection of the Maven team's ability to develop software, that's frightening. My advice: discontinue both of these projects as they're a waste of anyone's time to even research them."
I second this sentiment. Lot's of this mess has to do with the fact that the Maven team seems to be stuck on a set of isolated technologies. *Everything* is plexus, and I'm sorry but basing something like Continuum on this arcane server platform born of Turbine is a mistake.
Archiva is also something of a disaster. Actually, err, Maven is something of a disaster.
Posted by Tim O'Brien on March 09, 2007 at 11:39 AM MST #
Posted by Tim O'Brien on March 09, 2007 at 11:41 AM MST #
Sounds like a formula for disaster to me. Certainly not the kind of stuff that would make a good mix for web development.
p.s. What is it that you do exactly, other than occasionally write boring articles for oreilly?
Posted by Jesse Kuhnert on March 10, 2007 at 10:15 PM MST #
Posted by Ben Hood on March 15, 2007 at 10:31 AM MDT #
Posted by Fred Simon on March 16, 2007 at 12:29 PM MDT #
Posted by Justin Lee on June 28, 2007 at 09:46 AM MDT #
Posted by Harshad on July 25, 2007 at 10:44 AM MDT #
Merit to Thoughtworks to create such a great tool. All I need to dio is just running the create_project script and It will automatically create the subversion standard layout for me as well as updating the config.xml in cruisecontrol. After create the blank project, I use the maven2 plugin and create a maven project in eclipse, finally, all I need to do is checkin my project into the Trunk........ Damn Simple.
Of course, everytime I checkin my codes, cruisecontrol will be trigger (build, junit tests,etc). If it builds successfully, it will upload the jar file to artifactory automatically.
Let me know if anyone is interested in more details, I can blog it ..
Posted by Nathan Ma on August 30, 2007 at 03:18 AM MDT #
Matt,
If it's not too much trouble or too "out of scope" at the moment, I'd like to hear if your opinions on Continuum and Archiva have changed since the time of writing this entry?
I am using Continuum and it works just fine for me. If I'm not completely mistaken, I'm giving it a username and password for SVN and it seems to work.
Regarding Archiva, I really want it to work, but after playing with it for a couple of hours, it seems a bit too random to me. Artifacts show up in the "browse" page randomly, which to me indicates that if they are not there, they are not being proxied at all, even if I mirror "*" in my settings.xml.
Anyway, if there's an update to your post, I'd love to hear it!
Cheers!
Posted by Viktor Nordling on March 04, 2008 at 02:24 AM MST #