Skip to main content

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.

Metadata

Release files for waldur-site-agent-nextcloud 1.0.7

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for waldur-site-agent-nextcloud 1.0.7
File Size Uploaded Provenance
waldur_site_agent_nextcloud-1.0.7.tar.gz 16.6 kB Without provenance Details

Built distribution (wheel)

Table of built distributions (wheels) for waldur-site-agent-nextcloud 1.0.7
File Interpreter ABI Platform
waldur_site_agent_nextcloud-1.0.7-py3-none-any.whl Python 3 none any Details

Total release size: 30.7 kB

Release files / waldur_site_agent_nextcloud-1.0.7.tar.gz

Download URL waldur_site_agent_nextcloud-1.0.7.tar.gz
Size 16.6 kB
Tags Source
SHA-256 checksum
How to use checksums
b3fb2a97eb1874c85fa11cd29a159cfc06a940becd2fa75815aa0253ffa6bf6f
BLAKE2b-256 checksum
How to use checksums
9b1f4ab77ab1eebd96494642222d1c9901bf5709a374610004e9f24c35596c53
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.12.9 {"installer":{"name":"uv","version":"0.12.9","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_nextcloud-1.0.7-py3-none-any.whl

Download URL waldur_site_agent_nextcloud-1.0.7-py3-none-any.whl
Size 14.1 kB
Tags Python 3
SHA-256 checksum
How to use checksums
118b934d85f286b3dd37fbbc4a4d447c524717daea3ae826c112c4fc9f0a9964
BLAKE2b-256 checksum
How to use checksums
f14f42e18040c30943d652cecba1305721b4c12b0d2dca8d66982e96dd6b5547
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.12.9 {"installer":{"name":"uv","version":"0.12.9","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}

Security for waldur-site-agent-nextcloud 1.0.7

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page