This release is a pre-release and may not be stable for production use.
Waldur Site Agent
A stateless Python application that synchronizes data between Waldur Mastermind and service provider backends. Manages account creation, usage reporting, and membership synchronization across different cluster management systems.
Architecture
The agent uses a uv workspace architecture with pluggable backends:
- Core Package:
waldur-site-agent(base classes, common utilities) - Plugin Packages: Standalone backend implementations under
plugins/(see table below)
Agent Modes
order_process: Fetches orders from Waldur and manages backend resourcesreport: Reports usage data from backend to Waldurmembership_sync: Synchronizes user membershipsevent_process: Event-based processing using STOMP
Usage
waldur_site_agent -m <mode> -c <config-file>
Logging
The agent emits structured logs in JSON format to stdout. This applies to both the core agent and CLI tools.
Example log entry:
{"event": "Running agent in order_process mode", "level": "info", "logger": "waldur_site_agent.backend", "timestamp": "2026-02-03T14:02:35.551020+00:00"}
CLI Arguments
-m,--mode: Agent mode (order_process,report,membership_sync,event_process)-c,--config-file: Path to configuration file
Environment Variables
WALDUR_SITE_AGENT_ORDER_PROCESS_PERIOD_MINUTES: Order processing period (default: 5)WALDUR_SITE_AGENT_REPORT_PERIOD_MINUTES: Reporting period (default: 30)WALDUR_SITE_AGENT_MEMBERSHIP_SYNC_PERIOD_MINUTES: Membership sync period (default: 5)SENTRY_ENVIRONMENT: Sentry environment name
Development
# Install dependencies
uv sync --all-packages
# Run tests
uv run pytest
# Format and lint code
uvx prek run --all-files
# Load components into Waldur
waldur_site_load_components -c <config-file>
Releasing
./scripts/release.sh 0.10.0
# Review the commit, then push:
git push origin main --tags
See the Releasing Guide for details on version bumping, changelog generation, and what CI does after you push.
Documentation
- Architecture & Plugin Development
- Installation Guide
- Configuration Reference
- Deployment Guide
- Upgrading Guide
- Username Management
- SLURM Usage Reporting Setup
- Releasing Guide
Plugins
| Plugin | Description |
|---|---|
| basic_username_management | Basic username management plugin |
| ceph-s3 | Ceph S3 storage plugin (croit and RadosGW flavours) |
| cscs-dwdi | CSCS-DWDI reporting plugin |
| digitalocean | DigitalOcean plugin |
| envoy-ai-gateway | Envoy AI Gateway (API keys + usage reporting) plugin |
| harbor | Harbor container registry plugin |
| k8s-ut-namespace | Kubernetes UT ManagedNamespace plugin |
| keycloak-client | Shared Keycloak client for Waldur Site Agent plugins |
| ldap | LDAP plugin |
| litellm | LiteLLM (virtual key lifecycle + usage reporting) plugin |
| moab | MOAB plugin |
| mup | MUP plugin |
| nextcloud | Nextcloud plugin |
| okd | OKD/OpenShift plugin |
| opennebula | OpenNebula VDC plugin |
| rancher | Rancher plugin |
| rancher-kc-crd | Rancher + Keycloak CRD-driven plugin |
| slurm | SLURM plugin |
| waldur | Waldur-to-Waldur federation plugin |
License
MIT License - see LICENCE file for details.
Metadata
Release files for waldur-site-agent 1.0.6rc19
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| waldur_site_agent-1.0.6rc19.tar.gz | 131.5 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| waldur_site_agent-1.0.6rc19-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 287.3 kB
Release files / waldur_site_agent-1.0.6rc19.tar.gz
| Download URL | waldur_site_agent-1.0.6rc19.tar.gz |
|---|---|
| Size | 131.5 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
605f3ad547314ba5008f8f9b180d6936d13e1d31e23ed33b5da83076ec953451
|
|
BLAKE2b-256 checksum How to use checksums |
a12f368a74e5d3e076a6c669c90dc227784b8f73d35109d609887d8628794200
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.12.6 {"installer":{"name":"uv","version":"0.12.6","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Debian GNU/Linux","version":"12","id":"bookworm","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
|
Release files / waldur_site_agent-1.0.6rc19-py3-none-any.whl
| Download URL | waldur_site_agent-1.0.6rc19-py3-none-any.whl |
|---|---|
| Size | 155.8 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
f9dcffd1efcd64ae6a3dcc31b5965558d05ff1af672ef0767cdb0eb2fe65b064
|
|
BLAKE2b-256 checksum How to use checksums |
bcdb8ed190192bb1b62303bafe17b88330d5719a016e9a9fceec34ab4a18fe6e
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.12.6 {"installer":{"name":"uv","version":"0.12.6","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Debian GNU/Linux","version":"12","id":"bookworm","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
|