Skip to content

Terraform

NORA acts as a caching proxy for the Terraform registry. Provider binaries are immutably cached; metadata uses TTL-based refresh. This is a proxy-only registry — publishing providers is not supported.

Configure Terraform to use NORA as a network mirror. Add to your Terraform CLI configuration (~/.terraformrc or terraform.rc):

provider_installation {
network_mirror {
url = "http://nora.example.com:4000/terraform/"
}
}

Then use Terraform normally:

Terminal window
terraform init
terraform plan

config.toml:

[terraform]
enabled = true
proxy = "https://registry.terraform.io"
proxy_timeout = 30
proxy_timeout_download = 120

Environment variables:

VariableDescriptionDefault
NORA_TERRAFORM_ENABLEDEnable Terraform proxyfalse
NORA_TERRAFORM_PROXYUpstream registry URLhttps://registry.terraform.io
NORA_TERRAFORM_PROXY_AUTHUpstream auth (user:pass)
NORA_TERRAFORM_PROXY_TIMEOUTUpstream timeout for metadata (seconds)30
NORA_TERRAFORM_PROXY_TIMEOUT_DOWNLOADUpstream timeout for binary downloads (seconds)120
FeatureStatusNotes
Service discovery (.well-known/terraform.json)FullPoints to NORA
Provider versions listFullTTL-cached
Provider download metadataFulldownload_url rewritten to NORA
Provider binary downloadFullImmutable cache
Module versions listFullTTL-cached
Module downloadFullX-Terraform-Get header pass-through
Provider publishProxy-only (read)
  • Proxy-only: publishing custom providers through NORA is not supported.
  • Disabled by default. Set NORA_TERRAFORM_ENABLED=true to activate.