DZone
Thanks for visiting DZone today,
Edit Profile
  • Manage Email Subscriptions
  • How to Post to DZone
  • Article Submission Guidelines
Sign Out View Profile
  • Post an Article
  • Manage My Drafts
Over 2 million developers have joined DZone.
Log In / Join
Refcards Trend Reports
Events Video Library
Refcards
Trend Reports

Events

View Events Video Library

Related

  • Building MCP Hub for DevOps and CI/CD Pipelines
  • Using ChartMuseum as a Helm Repository
  • Advanced Argo Rollouts With Datadog Metrics for Progressive Delivery
  • Preventing Downtime in Public Safety Systems: DevOps Lessons from Production

Trending

  • MuleSoft IDP: Enhancing Efficiency and Accuracy in Data Extraction
  • Using LLMs to Automate Data Cleaning and Transformation Pipelines
  • Your AI Agent Tests Are Passing, But Your Agent Is Still Broken
  • Compliance Automated Standard Solution (COMPASS), Part 10: How OSCAL Mapping Paves the Way for Continuous Compliance Scalability
  1. DZone
  2. Testing, Deployment, and Maintenance
  3. Deployment
  4. Use a Binary Repository Manager and Keep Up With DevOps

Use a Binary Repository Manager and Keep Up With DevOps

You're better than that simple shared file system; update your DevOps practice with a binary repository manager to eliminate clutter and points of failure.

By 
Raghav Baldania user avatar
Raghav Baldania
·
Updated Apr. 25, 17 · Opinion
Likes (10)
Comment
Save
Tweet
Share
12.7K Views

Join the DZone community and get the full member experience.

Join For Free

Using Repository Managers [Refcard]

Intended to help you design and configure a binary repository, optimize it for various workflows, and fit it smoothly into your software development lifecycle.

DOWNLOAD

Storing your artifacts, builds, libraries and other binaries in a dumb flat file-system is so 2010. A shared file system just doesn’t cut it anymore; you need to be smarter than that. To beat the pace of modern day business, your organization must be DevOps savvy. Your mantra must be, “Eat, live and breathe DevOps.” Your key to keeping up with DevOps is a Binary Repository Manager, and here are five reasons why.

1. A Binary Repository Manager Caters to a Wide Audience

A binary repository manager is much more than just a dependency manager, so your audience scope is broader than just developers. The diagram below shows JFrog’s Binary Repository Manager, Artifactory, interfacing with a wide range of tools and products for dependency management, build, CI, provisioning, security vulnerability analysis, distribution, and more.

Image title

Scope out your target audience, use cases and workflows very carefully and thoroughly. This will help you design your repositories and permission model so that each member of your audience gets what they need without impinging on someone else’s binaries.


Image title


2. Eliminate Remote Dependencies as Single-Points-of-Failure

Image title

Most of your dev teams will have some sort of dependency on a central repository such as Maven Central, the NPM public Registry, Nuget Gallery, Docker Hub, etc. However, the reliability of these repositories may not always be what you expect. You would have no control over things like downtime, maintenance, version lifetime, or deprecations; yet, being able to manage and control these binaries that you bring from central repositories is critical.

A binary repository manager solves the reliability issue by caching remote binaries locally. Not only does this eliminate the dependency on central repositories giving you total control over your binaries, but it also removes network latency since all binaries are now accessed locally on your internal network.

3. Fully Reproducible Builds in Your CI Pipeline

Fully reproducible builds in your CI pipeline

An average enterprise will have more than one continuous integration server, and then have multiple master/slave models over these integration servers, so it’s critical that your binary repository manager can work with all the CI servers in your organization (Jenkins, Hudson, TeamCity, Bamboo, Travis, TFS, etc.). As per the best practices, it is always recommended to promote your builds as they proceed further towards the different phases (dev, QA, staging, pre-prod, prod, etc.) of build lifecycle instead of reproducing the same build over and over again. Standardize the build promotion process and always avoid regenerating the same builds. Whether you’re running a simple Maven build or building a complex Docker image, the Bill of Materials (BoM) describing all the information related to the build is critical. This exhaustive build information including build output, dependencies, system properties, environment variables, and much more, is stored in your binary repository manager and is a single source of truth that lets you fully reproduce a build at any time later on.

4. Artifact Clutter Builds Up If Not Cleaned Up

Image title

Generating hundreds of thousands of artifacts is easy; managing them all is certainly not. We all know we should be implementing a cleanup regimen but tend to forget how important it is as we get busier with other high priority tasks. Deprecated artifacts and buggy snapshots accumulate, cluttering up your repositories and eating up your storage. A binary repository manager will clean up your repositories, both with automated background tasks that look for orphaned artifacts, as well as with cron-based or event triggered cleanup jobs for more specific use cases. Checksum-based storage with Artifactory already helps with storage optimization, as you are not occupying any redundant storage space for something that is not required, but cleanup is recommended. Some even have dedicated query languages that let you define any complex set of binaries using simple queries so you can clean up even the most obscure binaries that are cluttering up your system.

5. Automate While You “REST”

Automation is the key to any successful organization. You can’t grow your business and scale your operations unless you have a binary repository manager with a powerful REST API that will fully support the automation you need. Whether you’re managing dependencies, deploying builds, creating users, managing access control, replicating artifacts to your global instances, or managing disaster recovery instance, the right binary repository manager can automate and integrate all aspects of artifact management within your organization.

The DevOps revolution is here, and you now have several good reasons to look into adopting a binary repository manager for your organization. If you need more reasons, you can read about them from additional sources, but it’s clear that to join the revolution, your approach to binaries can never be the same again.

Using Repository Managers [Refcard]

Intended to help you design and configure a binary repository, optimize it for various workflows, and fit it smoothly into your software development lifecycle.

DOWNLOAD
Binary repository manager Repository (version control) Continuous Integration/Deployment DevOps

Opinions expressed by DZone contributors are their own.

Related

  • Building MCP Hub for DevOps and CI/CD Pipelines
  • Using ChartMuseum as a Helm Repository
  • Advanced Argo Rollouts With Datadog Metrics for Progressive Delivery
  • Preventing Downtime in Public Safety Systems: DevOps Lessons from Production

Partner Resources

×

Comments

The likes didn't load as expected. Please refresh the page and try again.

  • RSS
  • X
  • Facebook

ABOUT US

  • About DZone
  • Support and feedback
  • Community research

ADVERTISE

  • Advertise with DZone

CONTRIBUTE ON DZONE

  • Article Submission Guidelines
  • Become a Contributor
  • Core Program
  • Visit the Writers' Zone

LEGAL

  • Terms of Service
  • Privacy Policy

CONTACT US

  • 3343 Perimeter Hill Drive
  • Suite 215
  • Nashville, TN 37211
  • [email protected]

Let's be friends:

  • RSS
  • X
  • Facebook