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
croit-s3 Croit S3 storage plugin
cscs-dwdi CSCS-DWDI reporting plugin
digitalocean DigitalOcean 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.6rc9.tar.gz (111.9 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.6rc9-py3-none-any.whl (135.0 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: waldur_site_agent-1.0.6rc9.tar.gz
  • Upload date:
  • Size: 111.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.28 {"installer":{"name":"uv","version":"0.11.28","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.6rc9.tar.gz
Algorithm Hash digest
SHA256 58dbc2a820503d53396ed1c941de5a1db2f45337dd3325464b5fe0ad1366c2aa
MD5 7eadd67c6694f98cf38226dd974c2668
BLAKE2b-256 ee721b88744fc5e8ebd8c62e712caf543ceceef675e9921990075ef90aceb857

See more details on using hashes here.

File details

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

File metadata

  • Download URL: waldur_site_agent-1.0.6rc9-py3-none-any.whl
  • Upload date:
  • Size: 135.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.28 {"installer":{"name":"uv","version":"0.11.28","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.6rc9-py3-none-any.whl
Algorithm Hash digest
SHA256 e4180c3b718cbefed52acb022fbdca203c8cbcefad1642eca449ac46bfb92d50
MD5 b4f2f2d90f62e64d4ec639b0c10c6e99
BLAKE2b-256 1c2bcfb98c2f56f01473df33ee298ffcdb71eef9ea24009f61faa00525da15aa

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