Sonatype Nexus Open Source Community Projects


November 7, 2013 By Manfred Moser

Sonatype Nexus can easily be integrated with external systems due to the fact that all functionality is available via various REST API calls. On the other hand Nexus can be expanded by writing plugins for Nexus that customize it and add further functionality.

In our recent Nexus Live October event we talked about using this REST API to script Nexus configuration after it has been installed. We learned more about the Puppet module that HubSpot has open sourced and provided for you to use as well.

In our upcoming November Nexus Live event we are going to talk about a similar project that offers installation of Nexus via Chef. The main author is Kyle Allan from RiotGames. He is also author of another open source project that uses the Nexus REST API to implement command line programs to interact with Nexus.

These three projects are great examples of open source contributions to the Nexus community. The YUM/RPM integration is another example. It ended up becoming part of Nexus itself. The tools from the Nexus Ruby support project could be on the same trajectory. And who knows? If there is enough interest and help in the community, the same might happen to the Nexus APT Plugin?

When it comes to native packaging systems you might be interested to check out the deb or rpm packaging projects. For Red Hat users the Openshift integration might be interesting.

The Puppet module written by Clemens Escoffier focuses on using Nexus as a component repository and Puppet to retrieve components from it. This can be used to get your deployables from Nexus to your production servers via Puppet.

Other devops and Nexus related plugins are the Nexus Rundeck Plugin and the Nexus Webhook Plugin created by Vincent Behar.

Benjamin Muschko needed to publish components created in his Gradle build to Nexus and wanted further features than the normal deployment and created a Gradle Nexus Plugin.

Further features for Nexus itself are available in the Artifact Usage Plugin and the Dependency Management Plugin. Both provide more information about a specific component. The GroupId Management Plugin on the other hand simplifies a security related administration task, while the Repository Cleanup Task fully automates an administration task by implementing a new scheduled task.

When it comes to integrating with external systems the GitLab Token Auth Plugin provides security integration with GitLab. The AWS S3 Publish Plugin on the other hand integrates with a cloud based storage. When it comes to CI servers Jenkins (and potentially Hudson) users should check out the List Nexus Versions Plugin and the Nexus Metadata Plugin. You can also find a poller for the Go CI server.

With all this open source goodness mentioned you should not forget that Nexus itself as well as the book Repository Management with Nexus are open source as well. As with any open source project, the quality and activity level of the various projects fluctuates. All these projects showcase different usage models and you can step in and improve them and adapt them to your own needs.

When you engage in such a task use these pointers, contact us on the mailing lists or on hipchat and let us know what you came up with. And of course we would love to have you on the panel of an upcoming Nexus Live event.