Lightwell UI lists Python packages, versions, and repository counts through content-sources-backend. That backend reads Pulp Postgres directly (Tangy). We need Pulp HTTP APIs so the path is UI → backend → Pulp REST, not SQL.
Today GET …/content/python/packages/ is one row per file (wheel + sdist). It cannot paginate distinct package names or return versions per package.
{pk} is the repository UUID. Latest complete repository version is implied.
| UI path |
Pulp |
| PackageList |
New GET …/repositories/python/python/{pk}/packages/ — one row per name_normalized, paginate, name_normalized__istartswith |
PackageList rows: name, name_normalized, versions[] and other details.
Lightwell UI lists Python packages, versions, and repository counts through content-sources-backend. That backend reads Pulp Postgres directly (Tangy). We need Pulp HTTP APIs so the path is UI → backend → Pulp REST, not SQL.
Today
GET …/content/python/packages/is one row per file (wheel + sdist). It cannot paginate distinct package names or return versions per package.{pk}is the repository UUID. Latest complete repository version is implied.GET …/repositories/python/python/{pk}/packages/— one row pername_normalized, paginate,name_normalized__istartswithPackageList rows:
name,name_normalized,versions[]and other details.