dovolume

package
v0.0.1-dev.137 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jul 11, 2026 License: MIT Imports: 17 Imported by: 0

Documentation

Overview

Package dovolume implements the "do-volume" storage driver — Rune's reference cloud driver, backed by DigitalOcean Block Storage.

The driver is registered under the name "do-volume" (operator-facing, hyphenated) while the Go package itself is "dovolume" (Go forbids hyphens). Operators consume it by writing a StorageClass that points at it:

storageClass:
  name: do-ssd-nyc3
  driver: do-volume
  parameters:
    region: nyc3
    fsType: ext4
    apiToken: "secret:do-api-token.shared.rune/token"
  reclaimPolicy: retain
  allowedTopologies:
    - matchLabels:
        rune.io/region: nyc3

Auth uses a DigitalOcean Personal Access Token sourced from the StorageClass `parameters.apiToken` value. The controller resolves any `secret:...` reference into plaintext before the driver sees it (RUNE-200 PR 3 / pkg/storage/driverparams), so token rotation flows through the secrets store with no driver-level wiring.

Introduced in RUNE-069.

Index

Constants

View Source
const DriverName = "do-volume"

DriverName is the registry key.

Variables

This section is empty.

Functions

This section is empty.

Types

type Config

type Config struct {
	// APIBaseURL overrides the DO API endpoint. Defaults to
	// "https://api.digitalocean.com" — only set in tests against a
	// httptest.Server.
	APIBaseURL string

	// VolumeNamePrefix is prepended to every DO volume name created by
	// this driver, so multiple Rune clusters can share one DO
	// account without colliding. Default "rune-".
	VolumeNamePrefix string
}

Config is the runefile [storage.drivers.do-volume] section after parsing. Only knobs that don't belong on per-StorageClass parameters live here — auth is sourced from StorageClass `parameters.apiToken` (resolved by the controller-side secret resolver).

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL