Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

What's the purpose of an artifact repository?

Wherever you read about continuous delivery or continuous integration it's recommended to use an artifact repository to store the artifacts even though Jenkins already stores them for each build.

So why is it recommended to use an artifact repository? Is there a smooth solution to work with the artifacts of the Jenkins builds, ex. to use these artifacts for deployment?

like image 908
user1338413 Avatar asked Feb 26 '13 10:02

user1338413


People also ask

What is the purpose of using artifact repository?

An artifact repository is a software application designed to manage these artifacts. Using an artifact repository provides consistency to your Continuous Integration/Continuous Development (CI/CD) workflow. It saves teams time and increases build performance.

What are two roles of an artifact repository in a CI CD pipeline?

An artifact repository provides traceability, search, and management of binary files.

What is Artifactory and how it works?

Artifactory provides full metadata for all major package formats for both artifacts and folders. These include metadata that originates with the package itself, custom metadata added by users such as searchable properties and metadata that is automatically generated by tools such as build information and more.

What is the use of artifacts in DevOps?

An artifact is a byproduct of software development that helps describe the architecture, design and function of software. Artifacts are like roadmaps that software developers can use to trace the entire software development process. Artifacts might be databases, data models, printed documents or scripts.


1 Answers

An artifact repository and continuous integration tools serve two different purposes and one cannot be substituted with the other. Check this video from Artifactory, one of the providers of artifact repositories, about why one should use an artifact repository.

Jenkins stores the artifacts as plain files without versioning while artifacts in an artifact repository can be version controlled. So you have a lot more flexibility in retrieving artifacts and governing them. Read this very good article on why we need them. Surely not all of those things are supported by continuous integration tools like Jenkins.

Moreover, you can also look at the Artifactory plugin for Jenkins which integrates the two.

like image 107
Shiva Kumar Avatar answered Oct 14 '22 03:10

Shiva Kumar