For the complete documentation index, see llms.txt. This page is also available as Markdown.

Capabilities

Capability
Description
Type

"can_suspend_guests"

Supports suspend guest control

Boolean

  • true can suspend guests

  • false otherwise (default)

"guests_polling_rate"

How often to poll for added or removed guests (in seconds)

Positive integer (min: 3, max: 900, default: 15)

"tasks_polling_rate"

How long to wait before polling for task completion (in seconds)

Positive integer (min: 1, max: 60, default: 3)

"tasks_polling_retries"

How many times to poll for task completion

Positive integer (min: 0, max: 180, default: 20)

"template_method"

Level of template support

String

  • "none" No template support (default)

  • "basic" Supports full or link clones

  • "versioning" Supports template versioning

"can_link_clones"

Supports link clones

Boolean

  • true can create link clones

  • false otherwise (default)

Template images

Many cloud platforms do not support VM snapshots in the same way that traditional hypervisors do. Instead, they rely on machine images (or templates) to create new instances. To support these environments, the snapshot-related methods in the Custom Provider Framework (CPF) can be implemented using images as the underlying construct.

  1. Without Template Versioning (Full Clones)

    If template versioning is not required, a simplified mapping can be used:

    • Convert VM to Template

      • Create a new image from the VM.

      • Persist the template state by tagging the VM (e.g., storing the image ID).

    • Convert Template to VM

      • Remove the template tag.

      • Optionally delete the associated image.

    • Clone VM

      • Create a new VM instance from the stored image.

  2. With Template Versioning

    When template versioning is required, images can be used to represent snapshot states.

    • Key Concepts

      • Each “snapshot” is represented by a separate image.

      • The template VM maintains metadata linking snapshot names to image IDs.

      • Example:

        • RAS_TEMPLATE_VERSION_1image:id:42

    • Entering Maintenance Mode

      • Create a temporary working VM from the selected image (snapshot/version).

      • This VM acts as the editable instance of the template.

      • The temporary VM:

        • must not appear in guests/list.

        • must be managed internally by the provider.

      • All calls targeting the template VM (guests/get, guests/control) must be redirected to this temporary VM.

    • Exiting Maintenance Mode

      • Create a new image from the temporary VM (new version).

      • Update the template metadata (tags) to reference the new image.

      • Delete the temporary VM.

Last updated