Story #6875
[Meta] Integrate with Bandersnatch
100%
Description
Bandersnatch is an officially-blessed tool for mirroring Python repositories developed by the PyPA organization. It has fairly widespread usage.
https://github.com/pypa/bandersnatch
https://bandersnatch.readthedocs.io
Currently we're attempting to re-implement several features such as package whitelists and blacklists, full PyPI mirroring support, and some version of "keep only the latest releases" -- all of which Bandersnatch already supports, with some degree of polish and testing and additional minor features such as regex filtering.
It would be ideal if we could leverage Bandersnatch's existing support for these features by using Bandersnatch as a library which acts as the frontend to Pulp, and is the only way in which we interact with PyPI. This would be beneficial to both ourselves and to the Python community, as it would increase the testing and quality of the Bandersnatch upstream as issues are found and fixed.
An issue has been file upstream to track the changes that are necessary within Bandersnatch to support this kind of usage.
https://github.com/pypa/bandersnatch/issues/548
This issue will be used to track the efforts needed within Pulp to integrate with Bandersnatch.
Subtasks
Associated revisions
History
#1
Updated by dalley 8 months ago
- Related to Story #4690: Implement package locking / digest specification added
#5
Updated by dalley 7 months ago
- Related to deleted (Story #4690: Implement package locking / digest specification)
#6
Updated by gerrod 4 months ago
- Status changed from NEW to MODIFIED
Applied in changeset 5270947abc578d13c942f5cc64bf27556c212ebc.
Please register to edit this issue
Pulp now uses Bandersnatch to perform metadata syncing
Sync uses Bandersnatch to perform metadata fetching and filtering enabling Pulp to sync all of PyPi.
closes: #6930 closes: #6875 closes: #985 https://pulp.plan.io/issues/6930 https://pulp.plan.io/issues/6875 https://pulp.plan.io/issues/985