Skip to main content
Pre-release

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 resources
  • report: Reports usage data from backend to Waldur
  • membership_sync: Synchronizes user memberships
  • event_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

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
moab MOAB plugin
mup MUP 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.

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

waldur_site_agent-1.0.6rc17.tar.gz (125.8 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

waldur_site_agent-1.0.6rc17-py3-none-any.whl (150.0 kB view details)

Uploaded Python 3

File details

Details for the file waldur_site_agent-1.0.6rc17.tar.gz.

File metadata

  • Download URL: waldur_site_agent-1.0.6rc17.tar.gz
  • Upload date:
  • Size: 125.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.12.3 {"installer":{"name":"uv","version":"0.12.3","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}

File hashes

Hashes for waldur_site_agent-1.0.6rc17.tar.gz
Algorithm Hash digest
SHA256 196fe7708c72c53f6c82b5629cd991c300f33f0342b5849ec38ce14a0bb2b27a
MD5 7e0dff78d5aad4bd9297eec02d4e042d
BLAKE2b-256 9108c066560eeb8ce0111bcc017cd9f3126256c51afcd6bd23ea96d03d3f376d

See more details on using hashes here.

File details

Details for the file waldur_site_agent-1.0.6rc17-py3-none-any.whl.

File metadata

  • Download URL: waldur_site_agent-1.0.6rc17-py3-none-any.whl
  • Upload date:
  • Size: 150.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.12.3 {"installer":{"name":"uv","version":"0.12.3","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}

File hashes

Hashes for waldur_site_agent-1.0.6rc17-py3-none-any.whl
Algorithm Hash digest
SHA256 003b962e45815b8aa10a071de42a0e009f60e1e3658cb4c3a08540421bf3793a
MD5 096b2514994728ee51051f5de1edac10
BLAKE2b-256 4a4eb58acfa0932f7bc5e3727887cba073fa20a8f63170dd080ead7249fd6d82

See more details on using hashes here.

Release history Release notifications | RSS feed

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page