Most discussion seems to be taking place on the jira, probably should direct further discussion there for the wider audience.
-----Original Message----- From: Jason van Zyl [mailto:[email protected]] Sent: Saturday, January 31, 2009 11:03 AM To: Maven Developers List Subject: Re: [Proposal] Use Nexus to actively manage the Apache repository I have added an JIRA issues for this where information can be shared about what Nexus can do. It will also give people a chance to comment in public outside the realm of this mailing list; https://issues.apache.org/jira/browse/INFRA-1885 On 30-Jan-09, at 6:39 PM, Brian E. Fox wrote: > It seems that many circumstances are converging at the same time to > show > that we need to make the next step and use active repository > management > on the Apache repository. The increased pace of releases lately is > showing the flaws in the current system and it's not even possible to > deploy a release right now on p.a.o[1]. That's only a temporary issue, > but more noticeable is that we require all releases be staged and > using > the maven-staging-plugin has always been a stop gap measure. It's slow > and inconvenient to use and often breaks down in the middle of a > release > due to uncorrected permissions on the file system from a previous > release, or simply from transport errors due to the large amount of > data > pulled down and pushed back up. > > > > I'm proposing that we use Nexus Pro to manage the repository because > of > the staging support. The staging and promotion suite of Nexus allows > you > to stage release artifacts before they go live in a release > repository. > A single URL for all projects is all you need in your > distributionManagement and Nexus can sort out where they go based on > profiles you define. These profiles allow you to control which > artifacts > get staged together, who gets notified, who can see them, etc. These > staged artifacts go into a temporary repository that is created on the > fly when you deploy. This repository is then used for testing and > subsequently dropped or promoted in a single transaction to your > release > repository. We've been using this for the Nexus OSS releases for a few > months and it saves us tons of time when we stage / test / restage > releases, and completely eliminates the manual artifact and metadata > manipulation previously required. This will also make it much easier > to > stage dependent releases together into a single repository. You can > read > more details about staging here[2] > > > > Besides the staging support, having an repository manager will provide > us additional benefits: > > We won't have to deal with people forgetting to reset the permissions. > > The metadata will always be corrected, even from non-maven native > projects. > > The snapshot repository will be actively managed to reduce overall > disk > use creep that requires drastic measures like dumping the whole thing. > > The plugin API will allow us to evolve and tailor the system to meet > future Apache processes and requirements (such as enforcing valid > signatures, licensing requirements, packaging requirements, etc). > > > > There are other MRMs out there (including one here at Apache), but > none > of them support the staging process the we need right now. Nexus also > requires the least overhead in terms of resources and external > dependencies (none). Using the new LDAP setup being piloted at ASF > Infra > will make it finally possible to tie all the correct user accounts > together for committers. Sonatype is making free Nexus Pro licenses > available to OSS projects and naturally Apache qualifies. This is > similar to the existing Jira and Confluence installations being used > by > Apache projects via a free OSS license from Atlassian[4],[5] > > > > The Apache repository is an organization-wide resource used for all > Apache releases that then get synced to Central. I'm proposing it here > as the Maven team is in the best position to get it setup and worked > out > before rolling it out to the rest of the organization, but there's no > doubt that this will be useful to all Apache projects built with > Maven. > > > > In the interest of full disclosure, I work at Sonatype and manage the > engineering team that produces Nexus. We will support and manage the > installation as required. > > > > [1] https://issues.apache.org/jira/browse/INFRA-1886 > > [2] http://books.sonatype.com/nexus-book/reference/staging.html > > [3] http://nexus.sonatype.org > > [4] http://www.atlassian.com > > [5] https://issues.apache.org > > > > Discussion? > > > > ---------------------- > > Brian Fox > > Apache Maven PMC > > http://blogs.sonatype.com/brian/ > > > > > > > > ---------------------- > > Brian Fox > > Apache Maven PMC > > http://blogs.sonatype.com/brian/ > > > Thanks, Jason ---------------------------------------------------------- Jason van Zyl Founder, Apache Maven jason at sonatype dot com ---------------------------------------------------------- To do two things at once is to do neither. --Publilius Syrus, Roman slave, first century B.C. --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected] --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
