OpenTofu lets you declaratively manage your cloud infrastructure.
Find a file
Martin Atkins e06e12f98a
Some checks failed
Quick Checks / List files changed for pull request (push) Has been cancelled
build / Build for freebsd_386 (push) Has been cancelled
build / Build for linux_386 (push) Has been cancelled
build / Build for openbsd_386 (push) Has been cancelled
build / Build for windows_386 (push) Has been cancelled
build / Build for freebsd_amd64 (push) Has been cancelled
build / Build for linux_amd64 (push) Has been cancelled
build / Build for openbsd_amd64 (push) Has been cancelled
build / Build for solaris_amd64 (push) Has been cancelled
build / Build for windows_amd64 (push) Has been cancelled
build / Build for freebsd_arm (push) Has been cancelled
build / Build for linux_arm (push) Has been cancelled
build / Build for linux_arm64 (push) Has been cancelled
build / Build for darwin_amd64 (push) Has been cancelled
build / Build for darwin_arm64 (push) Has been cancelled
build / End-to-end Tests for linux_386 (push) Has been cancelled
build / End-to-end Tests for windows_386 (push) Has been cancelled
build / End-to-end Tests for darwin_amd64 (push) Has been cancelled
build / End-to-end Tests for linux_amd64 (push) Has been cancelled
build / End-to-end Tests for windows_amd64 (push) Has been cancelled
Website checks / List files changed for pull request (push) Has been cancelled
Quick Checks / License Checks (push) Has been cancelled
Quick Checks / Unit tests for linux_386 (push) Has been cancelled
Quick Checks / Race Tests (push) Has been cancelled
Website checks / Build (push) Has been cancelled
Website checks / Test Installation Instructions (push) Has been cancelled
Quick Checks / Unit tests for linux_amd64 (push) Has been cancelled
Quick Checks / Unit tests for windows_amd64 (push) Has been cancelled
Quick Checks / Unit tests for linux_arm (push) Has been cancelled
Quick Checks / Unit tests for darwin_arm64 (push) Has been cancelled
Quick Checks / Unit tests for linux_arm64 (push) Has been cancelled
Quick Checks / End-to-end Tests (push) Has been cancelled
Quick Checks / Code Consistency Checks (push) Has been cancelled
go.mod: List our own tools in the "tools" directive
We previously adopted the new "tools" mechanism for the third-party tools
we use for go:generate, etc. However, it's also acceptable to include tools
from our own module in this list, which then makes it possible to run them
using the same "go tool" shorthand.

For example, it's now possible to run "go tool protobuf-compile" to rebuild
the protocol buffers schemas, or "go tool tofu" as a shorthand way to
compile and run OpenTofu CLI itself.

It still remains possible to run these tools in the same ways they used to
work. This is just a new way to get the same results through a more modern
Go toolchain feature.

Signed-off-by: Martin Atkins <mart@degeneration.co.uk>
2026-01-08 12:51:43 -08:00
.github Update actions/setup-go to v5.6.0 (#3614) 2025-12-19 16:53:01 +02:00
cmd/tofu main: Log about reliance on GODEBUG settings 2025-12-18 12:33:55 -08:00
contributing fix: broken links on DEVELOPING.md (#3395) 2025-10-21 05:43:34 -03:00
docs tracing: Centralize our OpenTelemetry package imports 2025-10-30 13:27:10 -07:00
internal Handle ignoring computed fields in ignore_changes blocks for testing (#3646) 2026-01-08 10:51:40 +00:00
rfc updating comments on how we refer to documents 2026-01-06 11:34:45 -06:00
scripts go.mod: Use the new "tool" directive 2025-10-10 07:06:56 -03:00
testing plan diff: summarize the current -> planned notation 2025-08-26 11:37:44 -07:00
tools go.mod: List our own tools in the "tools" directive 2026-01-08 12:51:43 -08:00
version version: Update which dependencies we consider "interesting" 2025-12-17 12:57:02 -08:00
website website: Boolean operator short-circuit was added in OpenTofu v1.10 (#3645) 2026-01-07 15:58:18 +00:00
.copywrite.hcl ignore any lock file on license header check (#1776) 2024-07-08 15:27:11 +03:00
.devcontainer.json Update .devcontainer.json go's version to 1.22 (#2385) 2025-01-17 15:45:56 +01:00
.gitattributes fix: internal/getprovider tests on Windows (#3275) 2025-09-16 15:29:31 -03:00
.gitignore Fix linting on Windows (#3457) 2025-12-02 07:11:14 -03:00
.go-version go.mod: Upgrade to Go 1.25.5 2025-12-08 11:11:30 -08:00
.golangci.yml lint: reintroduce ST1012 static check 2026-01-05 11:54:37 -06:00
.goreleaser.yaml More nightly build work, hardcode env vars and remove version (#3138) 2025-08-13 14:33:52 +01:00
.licensei.toml feat: add license checks on dependencies (#310) 2023-09-13 19:10:41 +03:00
.tfdev Rename github.com/placeholderplaceholderplaceholder/opentf to github.com/opentofu/opentofu (#461) 2023-09-20 14:35:35 +03:00
CHANGELOG.md Handle ignoring computed fields in ignore_changes blocks for testing (#3646) 2026-01-08 10:51:40 +00:00
CHARTER.md Updated references and moved governance stuff to a new repo opentofu/org (#2953) 2025-06-25 10:50:10 -07:00
CODE_OF_CONDUCT.md Update core team email. (#752) 2023-10-19 12:03:39 +02:00
codecov.yml Update copyright notice (#1232) 2024-02-08 09:48:59 +00:00
CODEOWNERS update CODEOWNERS to match the new governance chart (#2959) 2025-06-25 12:47:24 -03:00
CONTRIBUTING.md Update CONTRIBUTING.md - Changing TSC membership (#3053) 2025-07-22 09:25:26 -07:00
CONTRIBUTING.RELEASE.md Add github workflow to run govoulncheck on all branches with supported OpenTofu versions (#2636) 2025-05-14 18:26:22 +03:00
Dockerfile OpenTofu 1.10: Disable usage of ghcr.io image as a base image (#1994) 2025-01-07 10:08:23 -05:00
Dockerfile.minimal Fixes #2356: Minimal base image (#2375) 2025-01-15 13:46:34 +01:00
go.mod go.mod: List our own tools in the "tools" directive 2026-01-08 12:51:43 -08:00
go.sum go.mod: go get github.com/zclconf/go-cty-yaml@v1.2.0 2025-12-18 08:19:21 -08:00
GOVERNANCE.md Updated references and moved governance stuff to a new repo opentofu/org (#2953) 2025-06-25 10:50:10 -07:00
LICENSE Update copyright notice (#1232) 2024-02-08 09:48:59 +00:00
MAINTAINERS.md OpenTofu Charter and Governance (#2830) 2025-05-23 08:18:56 -04:00
Makefile go.mod: List our own tools in the "tools" directive 2026-01-08 12:51:43 -08:00
README.md Add TSC Meeting link / info (#2847) 2025-05-23 10:00:27 -04:00
RELEASE.md Update support policy in RELEASE.md per TSC-09-12-25 (#3559) 2025-12-09 12:53:08 -05:00
SECURITY.md Added Security disclousure policy (#749) 2023-10-19 15:27:59 -07:00
WEEKLY_UPDATES.md Weekly update 2024-10-11 (#2068) 2024-10-11 15:20:00 +02:00

OpenTofu

OpenSSF Best Practices

OpenTofu is an OSS tool for building, changing, and versioning infrastructure safely and efficiently. OpenTofu can manage existing and popular service providers as well as custom in-house solutions.

The key features of OpenTofu are:

  • Infrastructure as Code: Infrastructure is described using a high-level configuration syntax. This allows a blueprint of your datacenter to be versioned and treated as you would any other code. Additionally, infrastructure can be shared and re-used.

  • Execution Plans: OpenTofu has a "planning" step where it generates an execution plan. The execution plan shows what OpenTofu will do when you call apply. This lets you avoid any surprises when OpenTofu manipulates infrastructure.

  • Resource Graph: OpenTofu builds a graph of all your resources, and parallelizes the creation and modification of any non-dependent resources. Because of this, OpenTofu builds infrastructure as efficiently as possible, and operators get insight into dependencies in their infrastructure.

  • Change Automation: Complex changesets can be applied to your infrastructure with minimal human interaction. With the previously mentioned execution plan and resource graph, you know exactly what OpenTofu will change and in what order, avoiding many possible human errors.

Getting help and contributing

Tip

For more OpenTofu events, subscribe to the OpenTofu Events Calendar!

Reporting security vulnerabilities

If you've found a vulnerability or a potential vulnerability in OpenTofu please follow Security Policy. We'll send a confirmation email to acknowledge your report, and we'll send an additional email when we've identified the issue positively or negatively.

If you believe you have found any possible copyright or intellectual property issues, please contact liaison@opentofu.org. We'll send a confirmation email to acknowledge your report.

Registry Access

In an effort to comply with applicable sanctions, we block access from specific countries of origin.

License

Mozilla Public License v2.0