Artifact Repository

Artifact Repository 2018-02-12T16:25:00+00:00

DevOps Component Repository

A key part of DevOps is building a delivery pipeline, which is capable of deploying development versions of your binary artifacts to a component repository (e.g., Nexus) and to a target environment (e.g., deploying a web application to a web container). An example, would be a Maven-based build system where you want to share new development versions (in Maven these are so called SNAPSHOT versions) of your artifacts.

Once we verify the code satisfies the requirements, you will then want to freeze this specific version in version control (often known as tagging or labeling). In other words, a baseline is created that expresses a release candidate that is a specific version of the software for later reuse. Later, a release build is created. A release build promotes an existing release candidate that will be eligible for production. It prepares release artifacts (in Maven, for example, by removing the SNAPSHOT in version elements) and deploys these artifacts to the component repository. Nonfunctional requirements (NFR) are explicitly tested again before the release is staged to production. Of course, this process is only a small subset of an overall pipeline.


Nexus manages software “artifacts” required for development. If you develop software, your builds can download dependencies from Nexus and can publish artifacts to Nexus creating a new way to share artifacts within an organization. While Central repository has always served as a great convenience for developers you shouldn’t be hitting it directly. You should be proxying Central with Nexus and maintaining your own repositories to ensure stability within your organization.