Pulp plugin to trigger webhooks on package uploads
Project description
Pulp RPM Webhook Plugin
This plugin extends Pulp's functionality by adding webhook notifications when artifacts are published or uploaded.
Features
- Triggers webhooks on artifact publications for following types:
- RPM
- File
- Provides detailed artifact information in webhook payloads
- Supports authentication via secret tokens
- Configurable webhook endpoint URL
Installation
pip install pulp-webhook
Configuration
Add the following to your Pulp settings:
# Webhook endpoint URL
WEBHOOK_URL = "https://your-webhook-endpoint.com"
# Optional secret token for authentication (adds header X-PulpWebhook-Token)
WEBHOOK_SECRET = "your-secret-token"
Usage
RPM
- Create an RPM repository:
pulp rpm repository create --name my-rpm-repo
- Create a distribution:
pulp rpm distribution create --name my-dist --base-path my-dist --repository my-rpm-repo
- Upload or sync RPM packages to the repository. The plugin will automatically trigger webhooks when packages are published.
File
- Create a file repository:
pulp file repository create --name my-file-repo --autopublish
- Create a distribution:
pulp file distribution create --name my-dist --base-path my-dist --repository my-file-repo
- Upload or sync files to the repository. The plugin will automatically trigger webhooks when packages are published.
Webhook Payload Structure
The webhook payload includes:
- Event type ("rpm.published")
- Repository name
- Publication details
- List of added packages with:
- Package metadata (name, version, release, etc.)
- Distribution URLs
- Upstream URLs (if synced from a remote)
Contributing
Contributions are welcome! Please follow these steps:
- Fork the repository
- Create a feature branch
- Make your changes
- Submit a pull request
License
This project is licensed under the GNU General Public License v2.0 - see the LICENSE file for details.
Links
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file pulp_webhook-0.1.0.tar.gz.
File metadata
- Download URL: pulp_webhook-0.1.0.tar.gz
- Upload date:
- Size: 11.7 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
3bb5189ed20f443b5decd98b49cac571d9ac1aed7c4c06c2538e3886ea954fc3
|
|
| MD5 |
f73432ed56608edbab3363a6add71a6f
|
|
| BLAKE2b-256 |
b326df753633759af61a907819c4fbbb4b500d89b23af0f402b0c790171f18d5
|
File details
Details for the file pulp_webhook-0.1.0-py3-none-any.whl.
File metadata
- Download URL: pulp_webhook-0.1.0-py3-none-any.whl
- Upload date:
- Size: 13.0 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
70316067cef79b9970717ae15cfc54f3d98b55b236f5291e33230f36da805db7
|
|
| MD5 |
d23a1326b803b3747cdd231fabdb2951
|
|
| BLAKE2b-256 |
0f6f0e921461648e33b3aaf6e867c92f7624d6b930993e7a0b8e097462a350f6
|