Project

Profile

Help

Story #3180

closed

As a user, I can mirror Galaxy roles to a local repo

Added by bmbouter almost 5 years ago. Updated over 3 years ago.

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

0%

Estimated time:
Platform Release:
Groomed:
Yes
Sprint Candidate:
Yes
Tags:
Sprint:
Sprint 33
Quarter:

Description

This is designed to develop the code that will find roles on Galaxy and sync them.

1. Find roles through https://galaxy.ansible.com/api/v1/roles/
2. Sync associated repos using python-git. Save them as a bare repo into /var/lib/pulp/shared/pulp_ansible/<repo_name>
3. Create a content unit for each role as a unit. Note a unit contains a version number, so when syncing a repo with 10 versions, you'll get 10 content units for that role sync.

Actions #1

Updated by bmbouter almost 5 years ago

  • Blocked by Story #3179: As an user, I can view information for a role in Pulp added
Actions #2

Updated by bmbouter almost 5 years ago

  • Blocks Story #3181: As a user, I have a roles API for published distribution base paths added
Actions #3

Updated by daviddavis almost 5 years ago

  • Groomed changed from No to Yes
  • Sprint Candidate changed from No to Yes
Actions #4

Updated by daviddavis almost 5 years ago

  • Sprint/Milestone changed from 0.1 Release to 52
Actions #5

Updated by rchan over 4 years ago

  • Sprint/Milestone changed from 52 to 53
Actions #6

Updated by daviddavis over 4 years ago

  • Status changed from NEW to ASSIGNED
  • Assignee set to daviddavis
Actions #7

Updated by daviddavis over 4 years ago

I'm wondering how to best deal with the pagination of the Ansible Galaxy API. By default the page size is 10 which right now is about 1463 for all roles. That means we'll have to do 1463 requests to pull down info for all galaxy roles. I tried bumping up the page size to 1000 (ie https://galaxy.ansible.com/api/v1/roles/?page_size=1000) but then the time of a request slows down quite a bit (to 10-20s). So timeouts become a potential problem.

Actions #8

Updated by bmbouter over 4 years ago

What about somewhere in the middle, like 100? That would reduce the query count by an order of magnitude and still keep the times to < 10s. If not that, then I would be in favor of just doing a lot of requests with the normal pagination size of 10.

Actions #9

Updated by bmbouter over 4 years ago

  • Sprint/Milestone changed from 53 to 54
Actions #10

Updated by sean797 over 4 years ago

We need to also be careful in case the Galaxy API has any rate limiting in place.

Actions #11

Updated by daviddavis over 4 years ago

@sean797 great point.

Actions #12

Updated by rchan over 4 years ago

  • Sprint/Milestone changed from 54 to 56

Added by daviddavis over 4 years ago

Revision d405c1bf

As a user, I can mirror Galaxy roles to a local repo

fixes #3180 https://pulp.plan.io/issues/3180

Actions #13

Updated by bmbouter over 4 years ago

  • Sprint set to Sprint 33
Actions #14

Updated by bmbouter over 4 years ago

  • Sprint/Milestone deleted (56)
Actions #15

Updated by daviddavis over 4 years ago

  • Status changed from ASSIGNED to MODIFIED
Actions #16

Updated by ttereshc over 4 years ago

  • Tags Pulp 3 added
Actions #17

Updated by daviddavis over 4 years ago

  • Sprint/Milestone set to 0.1 Release

Added by bmbouter over 4 years ago

Revision d0eb9d12

Metadata Fetching Improvements

  • New progress reporting has been added which shows the page-by-page fetching from Galaxy's role API.

  • The page fetching from Galaxy is now asyncrhonous with a parallelization of 20.

  • Adds retry support for 504 errors with logging when fetching Role metadata

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

Actions #18

Updated by bmbouter almost 4 years ago

  • Blocks deleted (Story #3181: As a user, I have a roles API for published distribution base paths)
Actions #19

Updated by bmbouter almost 4 years ago

  • Blocked by deleted (Story #3179: As an user, I can view information for a role in Pulp)
Actions #20

Updated by bmbouter almost 4 years ago

  • Status changed from MODIFIED to CLOSED - CURRENTRELEASE
Actions #21

Updated by bmbouter over 3 years ago

  • Tags deleted (Pulp 3)

Also available in: Atom PDF