terraform {
  # Terraform v1.15 is installed; the optional() object defaults used here need >= 1.3.
  required_version = ">= 1.6"

  # Hosts under var.hosts already exist and are driven over SSH by the null
  # provider's provisioners (local for rendering). google is scaffold-only: with
  # var.gcp_hosts left at its default {}, no google_* resource is ever planned and
  # the provider is never actually invoked -- `terraform plan`/`validate` work with
  # no GCP credentials configured at all. Populate var.gcp_hosts (and the usual
  # GOOGLE_APPLICATION_CREDENTIALS / gcloud auth) to actually create a GCP host.
  required_providers {
    null = {
      source  = "hashicorp/null"
      version = "~> 3.2"
    }
    local = {
      source  = "hashicorp/local"
      version = "~> 2.5"
    }
    google = {
      source  = "hashicorp/google"
      version = "~> 6.0"
    }
    time = {
      source  = "hashicorp/time"
      version = "~> 0.12"
    }
  }
}
