pulp / pulp-cli

https://docs.pulpproject.org/pulp_cli/
GNU General Public License v2.0
36 stars 42 forks source link

Add options for creating pull-through remote and distributions #1034

Open rfguimaraes opened 3 months ago

rfguimaraes commented 3 months ago

Summary

Currently, the container plugin offers the option of creating pull-through remotes and distributions as tech preview. However, even at this stage, the feature is very useful and it would be nice to have contexts for it in pulp_glue and options for it in the CLI. In terms of the CLI, I believe it could work as verbatim publications, by specifying a "type" argument.

Versions

pulpcore: 3.55 (currently installed version, likely applies to 3.56.1 as well) pulp_container: 2.18.0 (introduced the pull-through feature)

Examples

Current state, from the pulp_container plugin documentation:

# initialize a pull-through remote (the concept of upstream-name is not applicable here)
REMOTE_HREF=$(http ${BASE_ADDR}/pulp/api/v3/remotes/container/pull-through/ name=docker-cache url=https://registry-1.docker.io | jq -r ".pulp_href")

# create a pull-through distribution linked to the initialized remote
http ${BASE_ADDR}/pulp/api/v3/distributions/container/pull-through/ remote=${REMOTE_HREF} name=docker-cache base_path=docker-cache

Idealised state (suggestion):

REMOTE_HREF=$(pulp container remote create --type pull-through --name docker-cache --url https://registry-1.docker.io | jq -r ".pulp_href")

pulp container distribution create --type pull-through --remote-href "$REMOTE_HREF"