Tag Retention Logic

JFrog Artifactory Documentation

ft:sourceType
Paligo

Docker, OCI, and Helm OCI local repositories include the ability to define repository-specific retention policies using the Max Unique Tags and Tag Retention fields. These fields allow you to control how Artifactory behaves when pushing new images and tags, and how it deals with tag overwriting.

In this article, learn how each field works and the implications when both settings are active together.

Important

Before version 7.75.3, the tag retention logic applied only to the tag entities themselves, but not to their layers or blobs. This meant that when a manifest exceeded the limits and was deleted, Artifactory continued to store its nested images, layers, and blobs, although their reference tag was removed. This led to unnecessary uti

"Tag retention logic" refers to two fields that are available in Docker, OCI, and Helm OCI local repository settings when creating or editing a repository:

tag_retention_logic.png

By default, Max Unique Tags is set to zero (0) and Tag Retention is set to one (1), which means that they are inactive: so Artifactory allows the upload of unlimited unique tags and also does not save previous overwrites of existing tags.

When entering a higher limit value, these fields become active and apply FIFO (first in, first out) logic, meaning that the oldest tag is removed when the number of tags or overwrites exceeds the defined limits.