sylve Provider

Interacts with a Sylve node (https://sylve.io/) to manage bhyve VMs, jails, and related resources.

Example Usage

terraform {
  required_providers {
    sylve = {
      source = "ivomarino/sylve"
    }
  }
}

provider "sylve" {
  endpoint  = "https://sylve.example.com:8181" # or SYLVE_ENDPOINT
  username  = "admin"                          # or SYLVE_USERNAME -- the users.username value, NOT an email
  password  = var.sylve_password               # or SYLVE_PASSWORD -- never hardcode this
  auth_type = "sylve"                          # or SYLVE_AUTH_TYPE -- "sylve" (default) or "pam"

  # insecure_tls = true # only for a self-signed-cert dev/test instance
}

variable "sylve_password" {
  type      = string
  sensitive = true
}

Schema

Optional

  • auth_type (String) “sylve” (local Sylve account, the default) or “pam” (system account on the Sylve host). Also read from SYLVE_AUTH_TYPE.
  • endpoint (String) Sylve API base URL, e.g. “https://sylve.example.com:8181”. Also read from SYLVE_ENDPOINT.
  • insecure_tls (Boolean) Skip TLS certificate verification. Only for self-signed test/dev Sylve instances. Also read from SYLVE_INSECURE_TLS (“true”/”false”).
  • password (String, Sensitive) Sylve (or PAM) password. Also read from SYLVE_PASSWORD – never hardcode this in committed configuration.
  • username (String) Sylve (or PAM) username. Also read from SYLVE_USERNAME.

Not published on the Terraform Registry yet -- see the repo's README for local dev_overrides usage in the meantime.

This site uses Just the Docs, a documentation theme for Jekyll.