Recreate the transactional CI mirrors with Pulp

Description

Right now, the CI mirrors are created and maintained by a set of custom scripts and jobs.

It seems that Pulp can do what our current system does. The reason behind not using it when we first made the mirrors system was out desire to provide a quick solution and avoid adding more services to maintain.

There are however, quite a few reasons to want to switch to pulp:

  1. Aside from RPMs it can also manage other interesting kinds of resources like Containers, DEB packages and Python packages.

  2. If it works well for us - we can maintain less code by dropping the existing mirror management code

  3. It has built-in distribution mechanisms that can be useful to scale it up.

  4. It seems it has support for assigning packages to multiple repos. This cab be used as a tagging mechanism to implement https://ovirt-jira.atlassian.net/browse/OVIRT-2033#icft=OVIRT-2033

Activity

Show:

Barak Korren May 17, 2018 at 12:28 PM

One very important concept for implementing the mirrors is creating immutable versions, or snapshots of the content. While this concept is supported by Satellite 6 and probably Katello, according to the document linked below this concept is only supported by Pulp 3 which seems to still be under development:

https://docs.pulpproject.org/en/3.0/nightly/overview/from-pulp-2.html

Details

Assignee

Reporter

Components

Priority

Created May 17, 2018 at 9:48 AM
Updated June 12, 2018 at 1:20 PM

Flag notifications