Skip to main content

DigitalOcean plugin for Waldur Site Agent

Project description

DigitalOcean plugin for Waldur Site Agent

This plugin integrates Waldur Site Agent with DigitalOcean using the python-digitalocean SDK. It provisions droplets based on marketplace orders and exposes droplet metadata back to Waldur.

Configuration

Example configuration for an offering:

offerings:
  - name: DigitalOcean VM
    waldur_api_url: https://waldur.example.com/api/
    waldur_api_token: <TOKEN>
    waldur_offering_uuid: <OFFERING_UUID>
    backend_type: digitalocean
    order_processing_backend: digitalocean
    reporting_backend: digitalocean
    membership_sync_backend: digitalocean
    backend_settings:
      token: <DIGITALOCEAN_API_TOKEN>
      default_region: ams3
      default_image: ubuntu-22-04-x64
      default_size: s-1vcpu-1gb
      default_user_data: |
        #cloud-config
        packages:
          - htop
      default_tags:
        - waldur
    backend_components:
      cpu:
        measured_unit: Cores
        unit_factor: 1
        accounting_type: limit
        label: CPU
      ram:
        measured_unit: MiB
        unit_factor: 1
        accounting_type: limit
        label: RAM
      disk:
        measured_unit: MiB
        unit_factor: 1
        accounting_type: limit
        label: Disk

Resource attributes

You can override defaults per resource using attributes passed from Waldur:

  • region or backend_region_id
  • image or backend_image_id
  • size or backend_size_id
  • user_data or cloud_init
  • ssh_key_id, ssh_key_fingerprint, or ssh_public_key
  • ssh_key_name (optional when using ssh_public_key)
  • tags (list of strings)

If ssh_public_key is provided, the plugin will create the key in DigitalOcean if it does not already exist.

Resize via limits

To resize droplets from UPDATE orders, you can provide a size mapping:

backend_settings:
  size_mapping:
    s-1vcpu-1gb:
      cpu: 1
      ram: 1024
      disk: 25

When limits match an entry in size_mapping, the droplet will be resized to the corresponding size_slug.

Project 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_digitalocean-1.0.4rc10.tar.gz (8.2 kB view details)

Uploaded Source

Built Distribution

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

File details

Details for the file waldur_site_agent_digitalocean-1.0.4rc10.tar.gz.

File metadata

  • Download URL: waldur_site_agent_digitalocean-1.0.4rc10.tar.gz
  • Upload date:
  • Size: 8.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.7 {"installer":{"name":"uv","version":"0.11.7","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_digitalocean-1.0.4rc10.tar.gz
Algorithm Hash digest
SHA256 5715e7183c600926c7e02cf2cb5f7c4ad1ee08f1be4927b17a185247eae5df61
MD5 2e7bcb478bfd8b3d58e66ab33561a67d
BLAKE2b-256 57b46ad3bbff484e0284bf73f6f493416be79fba4f3e6e99745ce55e74c26b41

See more details on using hashes here.

File details

Details for the file waldur_site_agent_digitalocean-1.0.4rc10-py3-none-any.whl.

File metadata

  • Download URL: waldur_site_agent_digitalocean-1.0.4rc10-py3-none-any.whl
  • Upload date:
  • Size: 9.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.7 {"installer":{"name":"uv","version":"0.11.7","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_digitalocean-1.0.4rc10-py3-none-any.whl
Algorithm Hash digest
SHA256 14a946de8cf11dd7bd69fc8d94553e13c5530c373e0236c1d1fb5f28e8411fa9
MD5 d2fe3292196f84ca4222b382b798adcc
BLAKE2b-256 d26ba51726d6b80ab1b17771d96bd6fad0218649c4be0b07ccbcab87e67008be

See more details on using hashes here.

Supported by

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