Project

Profile

Help

Story #9358

closed

Pulp - Story #7832: [EPIC] As a user, I have Alternate Content Sources

As a user I can use Alternate Content Sources

Added by ppicka over 2 years ago. Updated over 2 years ago.

Status:
MODIFIED
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:
Sprint 106
Quarter:

Description

Add refresh endpoint with slightly adjust synchronize method and first stage to support ACS.


Sub-issues 1 (0 open1 closed)

Pulp - Task #9374: Update and delete calls for the ACS should be asyncCLOSED - CURRENTRELEASEipanova@redhat.com

Actions

Related issues

Related to Pulp - Story #8856: As a user, I have a convenient UX for mirroring repositoriesCLOSED - DUPLICATE

Actions
Actions #2

Updated by ppicka over 2 years ago

  • Status changed from ASSIGNED to NEW
  • Assignee deleted (ppicka)
Actions #3

Updated by ppicka over 2 years ago

  • Subject changed from Refresh endpoint to create ACS to As a user I can use Alternate Content Sources
Actions #4

Updated by dalley over 2 years ago

  • Related to Story #8856: As a user, I have a convenient UX for mirroring repositories added
Actions #5

Updated by dalley over 2 years ago

Quoting from a related issue:

To fix this, we should introduce a new RemoteRepositoryViewset which will provide a new primitive Pulp endpoint, /pulp/api/v3/remote_repositories///. This viewset will work with all repositories that have remote set, which is to say that the queryset would be Repository.objects.filter(remote__isnull=False).

This viewset would provide only one action endpoint, "refresh" (or "update"), which would perform a mirror-mode sync and publish with the internally-attached remote. The viewset would not provide the "modify" endpoint since mirrored repositories shouldn't be able to be changed, and it wouldn't provide the "sync" endpoint because there would not be any need to customize the sync in that way. This avoids needing to throw errors if a user attempts an operation they shouldn't do - because the new API provides no mechanism to do it - and also avoids creating a new model.

The old /repositories/// endpoint will remain exactly as it is currently, even at the code level, since all of the changes are in the new viewset. However we should discourage users from using this API with repositories they want to sync from external sources, and encourage using the new API instead, which has the benefit of being much easier to use for most if not all use cases.

The workflow:

Create a "remote repository", specifying name + description + any remote options, which will transparently create both the remote and repository.
"refresh" (or "update" or "sync") it - no parameters necessary because it uses the internal remote. syncs for most plugins would always "mirror"
Actions #6

Updated by rchan over 2 years ago

  • Sprint changed from Sprint 104 to Sprint 105
Actions #7

Updated by ppicka over 2 years ago

  • Copied to Story #9377: As a user I can use Alternate Content Sources added
Actions #8

Updated by ppicka over 2 years ago

  • Copied to deleted (Story #9377: As a user I can use Alternate Content Sources)
Actions #9

Updated by ppicka over 2 years ago

  • Status changed from NEW to ASSIGNED
  • Assignee set to ppicka
Actions #10

Updated by pulpbot over 2 years ago

  • Status changed from ASSIGNED to POST
Actions #11

Updated by rchan over 2 years ago

  • Sprint changed from Sprint 105 to Sprint 106

Added by ppicka over 2 years ago

Revision 738cc1a6 | View on GitHub

ACS support

Adding model/serializer and refresh endpoint.

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

Actions #12

Updated by ppicka over 2 years ago

  • Status changed from POST to MODIFIED

Added by ppicka over 2 years ago

Revision 3cc44029 | View on GitHub

ACS support

Adding model/serializer and refresh endpoint.

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

Also available in: Atom PDF