Project

General

Profile

Actions

Bug #34257

closed

Limited CV docker tags cannot be pulled after syncing library repo with "limit sync tags"

Added by Ian Ballou about 3 years ago. Updated almost 3 years ago.

Status:
Closed
Priority:
Normal
Assignee:
Category:
-
Target version:
Fixed in Releases:
Found in Releases:

Description

Cloned from https://bugzilla.redhat.com/show_bug.cgi?id=2040453

Description of problem:

Scenario: there is a content view version promoted to some LCE with docker tags. Tags: latest, glibc, and uclibc.

There are no filters.

The library repository is given "Limit Sync Tags": glibc,uclibc and the repo is re-synced.

Now, the library repo is missing latest as it should.

However, when you try to `podman pull` from the content view version LCE repository, latest is also missing, even though the content view version never changed.

Example error:

WARN0003 failed, retrying in 1s ... (3/3). Error: initializing source docker://satellite.example.com/default_organization-environment-testcv-myproduct-prometheus_busybox:uclibc: reading manifest uclibc in satellite.example.com/default_organization-environment-testcv-myproduct-prometheus_busybox: unknown: uclibc was not found!

Version-Release number of selected component (if applicable):

Katello 4.1+, maybe older versions as well.

How reproducible:

100%

Steps to Reproduce:
1. Sync a docker repo
2. Add that docker repo to a content view and publish
3. `podman pull` from the content view version LCE repository (Library is fine)
4. Ensure that `podman pull` works on some tag "A" in the repo
5. Update the repository's limit sync tags to exclude the tag "A" that was tested before
6. Re-sync the repository
7. Try pulling tag "A" again. Notice that there is an error about the tag being missing.

Actual results:
Tag "A" cannot be pulled.

Expected results:
Tag "A" can still be pulled.

Additional info:

This is due to RepositoryDockerMetaTags disappearing when the library repository is synced. Workarounds include resyncing the repository and republishing the content view. Alternatively, you can run `repository.index_content` in the foreman console on the related content view version repository.

Actions

Also available in: Atom PDF