infra-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Jason van Zyl (JIRA)" <>
Subject [jira] Commented: (INFRA-1885) Install Nexus on a solaris zone so Maven projects can stage and promote releases
Date Mon, 02 Mar 2009 15:42:56 GMT


Jason van Zyl commented on INFRA-1885:

You mean 15 +1s, and a +0.

> Install Nexus on a solaris zone so Maven projects can stage and promote releases
> --------------------------------------------------------------------------------
>                 Key: INFRA-1885
>                 URL:
>             Project: Infrastructure
>          Issue Type: New Feature
>      Security Level: public(Regular issues) 
>          Components: Nexus
>            Reporter: Jason van Zyl
>            Assignee: Brian Fox
>            Priority: Minor
> The staging and promotion features in Nexus would allow Maven project to easily deploy
a release to a staging repository for voting, and then simply press a button in the Web UI
to promote it to the production Apache repository for releases. Here is the proposal from
> 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]
> [2]
> [3]
> [4]
> [5]

This message is automatically generated by JIRA.
You can reply to this email to add a comment to the issue online.

View raw message