Project

Profile

Help

Story #5027

closed

As a user, I can 'docker push' to a Pulp repository

Added by dkliban@redhat.com over 4 years ago. Updated almost 2 years ago.

Status:
CLOSED - CURRENTRELEASE
Priority:
Normal
Assignee:
-
Sprint/Milestone:
-
Start date:
Due date:
% Done:

100%

Estimated time:
(Total: 0:00 h)
Platform Release:
Groomed:
No
Sprint Candidate:
No
Tags:
Sprint:
Quarter:

Description

Motivation

There are currently two upload workflows for Pulp 3 users. Most plugins are encouraged to provide support for the latter.

Basic Upload

1. Create a repository named 'foo'
2. Upload an artifact
3. Create content unit
4. Create a new repository version of 'foo' from the content unit

Smart Upload

1. Create a repository name 'foo'
2. Upload content unit and create a repository version

The Smart Upload for the Docker plugin needs to support creating repository versions using a docker client.

Smart Upload for Docker

1. Create a repository named 'foo'
2. docker tag docker tag 0e5574283393 <pulp-hostname>:24817/foo
3. docker push <pulp-hostname>:24817/foo

Step 3 above creates a new repository version of 'foo' that contains a manifest '0e5574283393', a tag 'latest' pointing to the manifest, and all other manifests and blobs associated with manifest '0e5574283393'. The latest repository version of 'foo' can be consumed using docker client

4. docker pull <pulp-hostname>:24817/foo

Required REST APIs

/v2/ - GET

/v2/<repository-name>/blobs/<digest> - HEAD, GET

/v2/<repository-name>/blobs/<digest>/uploads - POST

/v2/<repository-name>/blobs/<digest>/uploads/<uuid> - HEAD, GET, PUT, PATCH

/v2/<repository-name>/manifests/<digest or tag> - HEAD, GET, PUT

etherpad for reference for the endpoints https://etherpad.net/p/docker_push


Subtasks 3 (0 open3 closed)

Story #6788: As an admin i can configure whether foreign layers can be pushed to the registryCLOSED - DUPLICATE

Actions
Task #6827: Ensure that all relations between content models are properly createdCLOSED - CURRENTRELEASE

Actions
Issue #6878: Auto create repos and distributions for the container pushCLOSED - CURRENTRELEASEipanova@redhat.comActions

Related issues

Related to Container Support - Story #4657: As a user i can use skopeo pulp transport to upload images to Pulp container registryCLOSED - WONTFIX

Actions

Also available in: Atom PDF