terraform {
  required_version = ">= 0.14"

  backend "s3" {
    bucket                      = "tfstate"
    key                         = "terraform.tfstate"
    region                      = "us-east-1"
    endpoint                    = "https://2df513adaee2eeae12106af900bed297.r2.cloudflarestorage.com"
    skip_metadata_api_check     = true
    skip_region_validation      = true
    skip_credentials_validation = true
    use_path_style              = true
    skip_s3_checksum            = true
  }

  required_providers {
    hcloud = {
      source  = "hetznercloud/hcloud"
      version = "1.50.0"
    }

    cloudflare = {
      source  = "cloudflare/cloudflare"
      version = "5.2.0"
    }

    azurerm = {
      source  = "hashicorp/azurerm"
      version = "4.24.0"
    }

    ct = {
      source  = "poseidon/ct"
      version = "0.13.0"
    }

    cloudinit = {
      source  = "hashicorp/cloudinit"
      version = "2.3.6"
    }

    null = {
      source  = "hashicorp/null"
      version = "~> 3.2.3"
    }
  }
}