This release is a pre-release and may not be stable for production use.
waldur-site-agent-nextcloud
Nextcloud plugin for Waldur Site Agent.
Users purchase storage plans in Waldur and automatically receive access to a shared Nextcloud Group Folder. Login is via Keycloak OIDC.
How it works
- Each Waldur resource → a Nextcloud Group + Group Folder (with quota from the plan)
- Users added to the resource → added to the Nextcloud group → can access the folder
- Usage is reported as Group Folder bytes used
Prerequisites
Install and enable in Nextcloud admin:
- User OIDC app (
user_oidc) — configure to point at your Keycloak realm - Group Folders app (
groupfolders)
In the OIDC provider settings, set the user ID attribute to preferred_username
(matches the Keycloak username that the site-agent uses when calling the OCS API).
Configuration example
offerings:
- name: "Nextcloud Storage"
waldur_api_url: "https://sky.sigma2.no/api/"
waldur_api_token: "${SITE_AGENT_API_TOKEN}"
waldur_offering_uuid: "${OFFERING_UUID}"
backend_type: "nextcloud"
order_processing_backend: "nextcloud"
membership_sync_backend: "nextcloud"
reporting_backend: "nextcloud"
# STOMP is strongly recommended for Nextcloud. On event-based deployments
# the agent retries the team-member fetch to avoid a race where the
# create-order event arrives before Waldur commits the initial membership.
stomp_enabled: true
# stomp_membership_sync_enabled: false # uncomment to keep HTTP polling for
# # membership sync even with STOMP on
backend_settings:
nextcloud_url: "https://nextcloud.example.com"
admin_username: "admin"
admin_password: "${NEXTCLOUD_ADMIN_PASSWORD}"
group_prefix: "waldur-" # prefix for auto-created groups
default_storage_quota_gb: 25 # fallback if plan has no storage limit (GiB)
allow_resharing: false # allow users to reshare folder contents
backend_components:
storage:
# Quota values are in GiB (1 GiB = 1024³ bytes), consistent with how
# Nextcloud labels storage in its UI.
measured_unit: "GiB"
accounting_type: "limit"
label: "Storage"
unit_factor: 1
Backend settings reference
| Key | Default | Description |
|---|---|---|
nextcloud_url |
(required) | Base URL of the Nextcloud instance |
admin_username |
(required) | Admin account for OCS API calls |
admin_password |
(required) | Admin password (use env var substitution) |
group_prefix |
"waldur-" |
Prefix prepended to every auto-created group name |
default_storage_quota_gb |
25 |
Fallback quota (GiB) when the Waldur plan has no storage limit |
allow_resharing |
false |
If false, group members cannot reshare folder contents |
STOMP settings reference
| Key | Default | Description |
|---|---|---|
stomp_enabled |
false |
Enable STOMP event-driven processing |
stomp_membership_sync_enabled |
null |
Inherits stomp_enabled. Set false to keep HTTP polling for membership. |
team_fetch_attempts (backend-level, non-configurable)
The Nextcloud backend sets team_fetch_attempts = 4 internally.
On order-processing paths (including STOMP create-order events) the event can
arrive before Waldur has committed the initial team membership row. The agent
retries the team-member fetch up to 4 times (with a 3 s delay between
attempts) if the list comes back empty. Other backends default to 1 (no
retry); this higher value is specific to Nextcloud's create-order path.
Note: the retry only helps when the team is entirely absent. A non-empty but stale team (new member not yet committed) breaks on the first attempt.
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 waldur_site_agent_nextcloud-1.0.6rc18.tar.gz.
File metadata
- Download URL: waldur_site_agent_nextcloud-1.0.6rc18.tar.gz
- Upload date:
- Size: 16.4 kB
- Tags: Source
- Uploaded using 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}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
f972b82f65215fa6481b63f8cbd9073899f95eecb29cbdaa509a73f2f6ca6346
|
|
| MD5 |
ed459921c03afb13611c9762dad550a7
|
|
| BLAKE2b-256 |
df6bef902eeda206e5769bbc02c69585191c6ef7b593caf9e74606c16c1737e0
|
File details
Details for the file waldur_site_agent_nextcloud-1.0.6rc18-py3-none-any.whl.
File metadata
- Download URL: waldur_site_agent_nextcloud-1.0.6rc18-py3-none-any.whl
- Upload date:
- Size: 13.9 kB
- Tags: Python 3
- Uploaded using 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}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
bf005b8a8fffe12da64ce23c958169a1342c77b981dab7086dbc8c5619fa0e64
|
|
| MD5 |
24d4b160ff87c3460cc0f89405a60481
|
|
| BLAKE2b-256 |
ec98026d8b3023c3d0aa2544e3f8e16000e93305414eba13d63dca2b285ecbdf
|