pulp / pulp/pulp_container

[PULP-426] As a user I want to see all the available manifest digests in a repository

Open
#1,563 7 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Feature Satellite
Dominant language
Python
Stars
31
Forks
56
Avg merge
2d 22h
Merged PRs (30d)
22

Description

Is your feature request related to a problem? Please describe.
Tags are not deterministic. They are mutable and volatile. There is no guarantee that in time same content will be pointing to tag e.g. 'latest'.

Describe the solution you'd like
To solve the issue of reproducibility one could be using digests, as they are content addressable and instead mirror content by digest.
Container registry does not provide API endpoint that would list all manifest digests present within the repo as it is possible with tags/list endpoint, hence we need to add digests_list field to pulp-container-remote that will enable user to provide a list of manifest digest to mirror from the remote registry.

Describe alternatives you've considered
None

Additional context
https://issues.redhat.com/browse/SAT-24032
https://issues.redhat.com/browse/OSPRH-1338

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by tracing how pulp-container-remote handles the registry tags/list operation and how remote configuration fields are exposed. Define the digests_list field so users can provide manifest digests to mirror, and verify that the available digest list is handled consistently with tag-based mirroring.

Written by the indexing model from the issue text.

Assessment

Tech stack
python
Domain
api, backend
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Quiet
Clarity
Mostly clear
Newbie friendliness
42/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.