How to Partition Nexus Repositories: Targets, Privileges, and Roles

Part of my daily routine involves managing the Sonatype OSS Repository, a free, hosted Nexus Professional instance for hosting open source project repositories . There are more than 100 projects hosted on the OSS instance, and each project has at least one release repository, one snapshot repository, and one repository group.    When we started offering this service I would create two repositories and a single repository group for each project, but as community adoption increased, I found that managing hundreds of repositories was become a very complicated and time-consuming task.  In this post, I’m going to discuss how I consolidated hundreds of repositories down to a single release repository, snapshot repository, and repository group.  I’m also going to discuss how I used Nexus security settings to partition these consolidated repositories, providing necessary isolation between separate projects.

If you are running a large instance of Nexus to manage internal development, or if you are responsible for an open source project’s installation of Nexus, you can use the approach outlined in this post. Read more…

 

Categories: Nexus, Sonatype Tags: , ,

Documenting the Nexus REST API with Enunciate

Nexus OSS Core has more than 120 REST Resources published. And that number is just increasing with new Nexus Plugins. Not to mention Nexus Pro that comes with even more plugins and more REST resources.    Everything you do in Nexus, whether you use the Maven Nexus plugin or the Nexus UI, is interacting with a REST service that is available to you if you want to write your own customizations and scripts.   It has been this way since we started the project in 2007.  In this post, I’m going to discuss how this came to be, how Nexus was developed with REST in mind from the beginning.

Nexus: A Core of REST Services

When we started the Nexus project, I called it a “blind” application.  A “blind” webapp is one with no UI technology whatsoever built-in.   All it publishes is a few static files, and a REST API.   All of the UI that you see in Nexus is Javascript.   Your browser executes Javascript which, in turn, interacts with a set of services.   The only presentation technology on the server side is a trivial Velocity template used to render the initial “shell” of the page. Read more…

 

Categories: Nexus, Sonatype Tags: , , , , ,

Nexus Open Source Security: Video Walkthrough of Major Features

This video was used as a demonstration reel at January’s Jfokus 2010 in Stockholm, Sweden. It provides a useful walk through of the major features of Nexus Security, including user roles, groups, and privileges. If you are new to Nexus, or if you are evaluating the tool, this five minute video gives you an overview of the UI used to manage Nexus Open Source security.

Highlights of this demonstration of Nexus Security:

Time (M:SS)
Note
0:20 Logging into Nexus.
0:29 Listing and managing Nexus Users
0:38 Adding a Nexus User
1:00 Assigning User Roles
1:18 Browsing a User’s Role Tree
1:40 Tracing a Privilege to a Role
2:04 Listing Different Classes of Users
2:26 Managing Nexus Roles
2:54 Creating a Custom Nexus Role
3:52 Managing Nexus Privileges
4:26 Creating a Custom Privilege Set
 

Categories: Nexus, Sonatype Tags: , ,

Searching for Artifacts in Nexus: Demo of Major Features

When Jason van Zyl and Anders Hammar presented at Jfokus 2010 in Stockholm, Sweden last month, they asked me to put together a demonstration of various core features of Nexus. In this post, we take a look at the demonstration of the Nexus search interface. While this video lacks a soundtrack, they are a good overview of the major features available in the Nexus search interface.

Read more…

 

Categories: Nexus, Sonatype Tags:

How to Customize the Nexus Logo in Nexus Professional

Nexus Professional 1.5.0 ships with a simple branding plugin that makes it easy to add your own logo to the Nexus UI.   In this post, you will learn how to install the Nexus Branding Plugin and how to configure Nexus to use your own custom logo.

Step 1: Create a custom logo. If you want to create a drop-in replacement for the default logo, create a 248×50 logo with a transparent background and save it as a PNG.  In the video that accompanies this blog post, you’ll see that I have created a 248×50 transparent PNG that has the logo of a fictitious company named “myCorp++”. Read more…

 

Categories: Nexus, Sonatype Tags: ,