Project

Profile

Help

Story #4669

As a user, I can associate a RepositoryVersion with a DockerDistribution

Added by dkliban@redhat.com 7 months ago. Updated 7 months ago.

Status:
MODIFIED
Priority:
Normal
Category:
-
Sprint/Milestone:
-
Start date:
Due date:
% Done:

100%

Platform Release:
Blocks Release:
Target Release - Docker:
Backwards Incompatible:
No
Groomed:
Yes
Sprint Candidate:
Yes
Tags:
QA Contact:
Complexity:
Smash Test:
Verified:
No
Verification Required:
No
Sprint:
Sprint 51

Description

The docker plugin currently requires the user to create a Publication before the content of the RepositoryVersion can be made available via a Distribution. The is no publisher that would generate metadata for the content, so the Publication and RepositoryVersion are exactly the same. The creation of a Publication is unnecessary steps. The user should be able to create a Distribution with a reference to a RepositoryVersion.


Checklist


Related issues

Related to Pulp - Test #4754: As a user, I can associate a RepositoryVersion with a DockerDistribution CLOSED - DUPLICATE Actions

Associated revisions

Revision a9fdc824 View on GitHub
Added by dkliban@redhat.com 7 months ago

Problem: BaseDistribution.validate() is too Distribution specific

Solution: Move validate() to the Distribution instead

This patch allows classes that inherit from BaseDistribution to call super().validate(data) to get
the validation provided by the ModelSerializer.

This patch also removes base_path from BaseDistribution because it is defined on the Distribution.
DockerDistribution also defines it for itself.

re: #4669
https://pulp.plan.io/issues/4669

Revision 202d3cdf View on GitHub
Added by dkliban@redhat.com 7 months ago

Problem: Publications are not needed for Docker plugin

Solution: Add 'repository_version' field to DockerDistribution

This patch allows users to create DockerDistributions that serve repository versions. A distribution can
be created with either a repository or repository version defined. If a repository is defined, the latest
version of that repository is always available at the distribution. If a repository version is specified,
then that repository version is always available at that distribution.

This patch updates an existing test and adds a new one. The two tests assert that a docker or podman pull
can be performed when a repository is used in a distribution and when a repository version is used.

This patch also fixes the tests to work with docker as the client.

closes: #4669
https://pulp.plan.io/issues/4669

Revision 202d3cdf View on GitHub
Added by dkliban@redhat.com 7 months ago

Problem: Publications are not needed for Docker plugin

Solution: Add 'repository_version' field to DockerDistribution

This patch allows users to create DockerDistributions that serve repository versions. A distribution can
be created with either a repository or repository version defined. If a repository is defined, the latest
version of that repository is always available at the distribution. If a repository version is specified,
then that repository version is always available at that distribution.

This patch updates an existing test and adds a new one. The two tests assert that a docker or podman pull
can be performed when a repository is used in a distribution and when a repository version is used.

This patch also fixes the tests to work with docker as the client.

closes: #4669
https://pulp.plan.io/issues/4669

History

#1 Updated by dkliban@redhat.com 7 months ago

  • Checklist item add RepositoryVersion field to DockerDistribution added

#2 Updated by ipanova@redhat.com 7 months ago

  • Tags Pulp 3 added

#3 Updated by ipanova@redhat.com 7 months ago

  • Checklist item deleted (remove DockerPublisher model, viewset, serializer)
  • Checklist item changed from update docs to remove steps of creating Publisher and Publication to update docs to remove steps of creating Publication
  • Description updated (diff)

#4 Updated by amacdona@redhat.com 7 months ago

  • Blocks Task #4671: Publish REST API on read the docs added

#5 Updated by amacdona@redhat.com 7 months ago

  • Blocks deleted (Task #4671: Publish REST API on read the docs )

#6 Updated by ipanova@redhat.com 7 months ago

  • Groomed changed from No to Yes
  • Sprint set to Sprint 51

#7 Updated by dkliban@redhat.com 7 months ago

  • Status changed from NEW to ASSIGNED
  • Assignee set to dkliban@redhat.com

#8 Updated by dkliban@redhat.com 7 months ago

  • Status changed from ASSIGNED to POST

#9 Updated by dkliban@redhat.com 7 months ago

  • Checklist item remove 'publication' field from DockerDistribution model + serializer set to Done
  • Checklist item update docs to remove steps of creating Publication set to Done
  • Checklist item update the the registry code to use the RepositoryVersion directly set to Done
  • Checklist item add RepositoryVersion field to DockerDistribution set to Done

#10 Updated by dkliban@redhat.com 7 months ago

  • Status changed from POST to MODIFIED
  • % Done changed from 0 to 100

#11 Updated by bmbouter 7 months ago

  • Tags deleted (Pulp 3)

#12 Updated by kersom 7 months ago

  • Related to Test #4754: As a user, I can associate a RepositoryVersion with a DockerDistribution added

Please register to edit this issue

Also available in: Atom PDF