OpenTofu lets you declaratively manage your cloud infrastructure.
Go to file
Christian Mesh d490309360 Support for static variables used with encrypted plans
This starts to address a long standing quirk of how variables are
processed for plan files.  When we introduced state and plan encryption,
we opened up the door for variables to be used when applying an
encrypted plan file.  In opentofu#1922, we discussed a workaround
where the auto tfvars file or env variables could be used when
the -var and -var-file flags were forbidden.

The approach taken here is to compare any provided input variables (from
any source) against the variables in the plan file. If there are any
mismatches, we provide a clear error.

We could potentially detect if this plan file was encrypted and only
allow this additional functionality in that circumstance. This is a
complex interaction that will need to be discussed in the corresponding
PR.

Signed-off-by: Christian Mesh <christianmesh1@gmail.com>
2024-09-18 15:37:11 -04:00
.github Fix typos (#1954) 2024-09-17 12:04:30 +02:00
cmd/tofu Another batch of minor typos (#1953) 2024-09-09 07:51:39 -04:00
docs Fix typos (#1905) 2024-08-29 13:20:33 -04:00
internal Support for static variables used with encrypted plans 2024-09-18 15:37:11 -04:00
rfc Fix typos (#1905) 2024-08-29 13:20:33 -04:00
scripts Fix typos (#1905) 2024-08-29 13:20:33 -04:00
testing Fix typos (#1905) 2024-08-29 13:20:33 -04:00
tools Update copyright notice (#1232) 2024-02-08 09:48:59 +00:00
version Set next version to 1.9.0 (#1830) 2024-07-18 07:56:58 -04:00
website Update docs version message (#1990) 2024-09-18 11:04:59 -04:00
.copywrite.hcl ignore any lock file on license header check (#1776) 2024-07-08 15:27:11 +03:00
.devcontainer.json Update devcontainer image to Go 1.21 (#1470) 2024-04-08 11:37:25 +02:00
.gitignore Bug Fix #1403 - Set grade and channel correctly (#1450) 2024-04-09 10:41:35 -04:00
.go-version Bump go version to 1.21.11 (latest 1.21) (#1748) 2024-07-25 14:02:22 -04:00
.golangci.yml Move varhcl (body variable inspection) into hcl fork (#1919) 2024-08-23 10:01:07 -04:00
.goreleaser.yaml Fixes #1931: Dockerfile update / base image deprecation (#1993) 2024-09-17 16:07:07 +02: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 fix config generation with optional empty sensitive string (#1986) 2024-09-18 11:10:56 -04: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 Add MAINTAINER and update CODEOWNERS (#919) 2023-11-24 14:08:53 +01:00
CONTRIBUTING.md Explicit checkbox that the contributor did not look at Terraform (#1936) 2024-08-21 13:58:37 +02:00
Dockerfile Fixes #1931: Dockerfile update / base image deprecation (#1993) 2024-09-17 16:07:07 +02:00
go.mod Move varhcl (body variable inspection) into hcl fork (#1919) 2024-08-23 10:01:07 -04:00
go.sum Move varhcl (body variable inspection) into hcl fork (#1919) 2024-08-23 10:01:07 -04:00
LICENSE Update copyright notice (#1232) 2024-02-08 09:48:59 +00:00
MAINTAINERS Update maintainers file (#1088) 2024-01-10 08:57:47 -05:00
Makefile Add the .POSIX line to Makefile (#1928) 2024-09-18 10:54:39 -04:00
README.md [TSC] summary for TSC meetings in August (#1935) 2024-08-27 16:03:56 +02:00
RELEASE.md Creates RELEASE.md (#1758) 2024-09-04 07:14:32 -04:00
SECURITY.md Added Security disclousure policy (#749) 2023-10-19 15:27:59 -07:00
tools.go add automated copyright header check (#1696) 2024-06-03 16:49:36 +03:00
TSC_SUMMARY.md Fix typos (#1954) 2024-09-17 12:04:30 +02:00
WEEKLY_UPDATES.md Fix typos (#1954) 2024-09-17 12:04:30 +02:00

OpenTofu

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