Nexus Guide


This guide is here for Nexus administrators and explains how to setup the nexus repository for new projects.
Project's Release Managers should read the migration guide to setup appropriately their POMs.

Setup Staging (Administrator)

Staging is necessary to ensure that deployed artifacts are acceptable for central synchronization.

Administrator must respect the name conventions when setting up staging.

Repository target

An administrator has to create a new Repository Target (click on the 'Add' green button).
This acts as a filter to detect when an artifact is uploaded to which project it belongs.
In our case, the pattern reflects the main groupId of the project (should be of the form 'org.ow2.<project>').

Example:

  • Name : OW2 Chameleon (Maven2)
    • (OW2 <Project Name With Appropriate Camelcase>)
  • Repository Type : maven2
  • Pattern Expression : .*/org/ow2/chameleon/.*

Screenshot:
repository-target.png

Staging Profile

A Staging Profile is the central configuration point of staging repositories.
It mainly answers theses questions:

  • In which hosted repository the artifacts will finally be placed ?
  • Will the profile accept deploy (from maven) and/or upload (from UI) artifacts ?
  • What are the rules to be checked on the artifacts before promoting the repository ?

Click on the 'Add' green button and select *Staging Profile*.

Example:

  • Profile Name : OW2 Chameleon
    • (OW2 <Project Name With Appropriate Camelcase>)
  • Staging Mode : Deploy
  • Template : Maven2
  • Repository Target : OW2 Chameleon (Maven2)
  • Release Repository : Releases
  • Target Groups : Public Repositories
  • Close Repository Staging RuleSet : Closing RuleSet

Configure the notifications accordingly to the project's convenience.

Screenshot:
staging-profile.png

LDAP Role

Nexus can map a role on an LDAP group.
This is particularily handy when we want to define a role for all the committers of a project (each GForge project having a unique LDAP group).
Then it will be possible to gives additionnal permissions/roles to this new role.

Open the Roles page (in the Security section on the left).
Click on the 'Add' green button and select External Role Mapping.
The specified ID must be the name of the LDAP role (usually the GForge project's unix ID).

Example:

  • Role Id : chameleon
  • Name : OW2 Chameleon (chameleon)
    • (OW2 <Project Name With Appropriate Camelcase> (<unix project name>))
  • Description : External mapping for chameleon (LDAP)

Additional Roles

If left 'as is', the new role cannot do anything interesting, extra roles have to be assigned:

  • Nexus Developer role
  • OW2 Upload to Snapshot Role
  • Staging: deployer (OW2 Chameleon)
  • UI: Staging Repositories
  • Repo: All Repositories (Read)
  • Staging: Profile OW2 Chameleon (promote)

Screenshot:
roles.png

References