Multiple stages of many pipelines rely on working with an artifact repository—both to publish versions of artifacts created in the pipeline and to retrieve specific versions for use in the pipeline. In this chapter, we’ll examine how to work with one of the most popular artifact managers, JFrog Artifactory. We’ll explore how to migrate functionality from an existing Freestyle project to a pipeline-as-code. We’ll also see how to do some other common tasks that require extra setup. Next, we’ll look at some challenges when trying to use the Artifactory integration with a Declarative Pipeline.
Finally, we’ll take a quick look at the pipeline steps for archiving artifacts and recording fingerprints (tracking information for which artifacts are associated with which builds).
First, though, for those who may not be familiar with Artifactory, we’ll take a quick look at why we use it and the value it can add.
While the rationale for most of the technologies used in our example pipeline so far is obvious, that doesn’t always seem to be the case for leveraging an artifact repository. As such, before diving into how to integrate Jenkins 2 pipelines with Artifactory, it’s worth noting the benefits that warrant making the investment to use it in your pipelines.
Just as a well-structured pipeline should have facilities to manage source code, there should also be a facility to manage binary artifacts and other generated ...