Registry / http-networking / pulp-glue

pulp-glue

JSON →
library0.40.1pypypiunverified

`pulp-glue` is a Python library that provides a version-agnostic interface for interacting with PulpCore's REST API. It aims to abstract differences between PulpCore API versions, offering a more stable API surface for consumers. The current version is 0.39.0, with regular updates typically tied to PulpCore releases.

pip install pulp-glue
INSTALL
IMPORT
SIG · PULP-GLUE
P
pulp-glue
http-networkingpythonv0.40.1
Install
3.9s avg
Import
Disk
30MB
Pass rate
10/ 10
Env Coverage10 / 10
glibc
3.93.13
musl
3.93.13
Install & Compatibility
Where this runs
tested against v0.40.1 · pip install
no network on importno background threads
Install × environment matrix
Each cell = how many times install + import succeeded across repeated harness runs. Partial = flaky.
glibc = Debian/Ubuntu slim · musl = Alpine Linux
musl
py 3.103.920 runs
installs and imports cleanly · install 0.0s · import 0.000s · 33.3MB
glibc
py 3.103.920 runs
installs and imports cleanly · install 3.9s · import 0.000s · 33MB
30MB installed
● package 30MB
Code
Verified usage

Verified import paths — ran on the pinned version, not inferred.

PulpConnection
from pulp_glue import PulpConnection
from pulp_glue import PulpConnection

This example demonstrates how to connect to a Pulp server using `PulpConnection` and `PulpAPI`, authenticate with basic credentials (from environment variables), and then list available core repositories. Adjust `PULP_BASE_URL`, `PULP_USERNAME`, and `PULP_PASSWORD` for your Pulp instance. Set `verify_ssl=True` in production if your server has a trusted certificate.

import os from pulp_glue.common.connection import PulpConnection from pulp_glue.common.api import PulpAPI import httpx # For error handling # Configuration (replace with your Pulp server details or environment variables) PULP_BASE_URL = os.environ.get('PULP_BASE_URL', 'https://localhost:8080/pulp/api/v3/') PULP_USERNAME = os.environ.get('PULP_USERNAME', 'admin') PULP_PASSWORD = os.environ.get('PULP_PASSWORD', 'password') try: # 1. Establish a connection # In production, ensure verify_ssl=True with valid certs connection = PulpConnection( base_url=PULP_BASE_URL, basic_auth=(PULP_USERNAME, PULP_PASSWORD), verify_ssl=False ) # 2. Initialize the API client api = PulpAPI(connection) # 3. Perform a basic operation (e.g., list repositories) print(f"Connecting to Pulp at: {PULP_BASE_URL}") print(f"Listing core repositories:") repositories = api.repositories_core.list() for repo in repositories.results: print(f" - {repo.name} (Pulp HREF: {repo.pulp_href})") except httpx.HTTPStatusError as e: print(f"HTTP Error: {e.response.status_code} - {e.response.text}") print("Please check your Pulp URL, username, and password.") except httpx.RequestError as e: print(f"Request Error: {e}") print("Could not connect to the Pulp server. Check the URL and server status.") except Exception as e: print(f"An unexpected error occurred: {e}")
Debug
Known issues
breakingSupport for Python 3.6 was dropped in version 0.28.0, and Python 3.7 was dropped in version 0.33.0.
fix
Ensure your environment uses Python 3.10 or newer (currently up to 3.14 is supported).
affects: >=0.28.0, >=0.33.0
deprecatedThe `PulpAPI.get_client()` method was deprecated in version 0.34.0.
fix
For specific client access (e.g., `pulpcore`), import `get_client` directly from `pulp_glue.pulpcore.client`. For general API interaction, access resources directly via the `PulpAPI` object (e.g., `api.repositories_core`).
affects: >=0.34.0
gotchaThe `verify_ssl` argument in `PulpConnection` now defaults to `True` since version 0.27.0. If you are using self-signed certificates or a development environment, you might need to set `verify_ssl=False` explicitly.
fix
When initializing `PulpConnection`, add `verify_ssl=False` for untrusted certificates, or ensure your server uses valid, trusted SSL certificates.
affects: >=0.27.0
Upgrade
Version history
0.40.1latest on PyPI · released Jun 8, 2026
Audit
Dependencies

No dependency data recorded yet.

Agent activity
16 hits · last 30 days
node
16
Resources
pulp-glue — pip install pulp-glue · libregistry