// the find
hetznercloud/terraform-provider-hcloud
Terraform Hetzner Cloud provider
The official Hetzner Cloud provider for Terraform and OpenTofu, maintained by Hetzner itself. It covers the full surface of the Hetzner Cloud API — servers, networks, load balancers, firewalls, zones, storage boxes, certificates — for anyone running infrastructure on Hetzner through HCL.
Resource and data-source coverage is close to 1:1 with the actual Hetzner Cloud API, including newer surfaces like storage boxes and DNS zones/rrsets, not just the usual compute/network basics. Acceptance tests hit real infrastructure rather than mocks, which catches API drift that unit tests alone would miss. The deprecation process is actually documented and enforced (schema-level deprecated flags, changelog links, a dedicated docs section per attribute) instead of attributes just quietly disappearing. CI runs lint, build, test, and release as separate gated workflows with Codecov wired in.
The README states outright that only the HCL interface is covered by semver — the Go code underneath can break on any release, so anything importing the `hcloud` or `internal` packages directly is on its own. The package layout is mid-migration from one flat `hcloud` package into per-resource `internal` subpackages, so the codebase structure is inconsistent depending on which resource you're reading. Running the acceptance suite (`make testacc`) requires a funded Hetzner account and provisions real resources, so contributors can't fully verify changes without spending money. Attribute deprecations rely on manual migration by the user with no automated state migration — if you're on an old `datacenter`-style config, moving to `location` is a manual edit, not something the provider does for you.