OpenTofu lets you declaratively manage your cloud infrastructure.
Go to file
Martin Atkins a8b6342556 tofu: Context.Input now takes a context.Context
This continues our ongoing effort to get a coherent chain of
context.Context all the way from "package main" to all of our calls to
external components.

Context.Input now passes this through to the UI input implementation,
which was already written to handle cancellation. However, that
implementation currently handles interruption itself by directly watching
for the interrupt signal and so we remove the cancellation from the
context for now to avoid changing how interrupts are handled. Hopefully
in future we can remove the inline SIGINT handling from the UIInput
implementation and use its context-cancellation-handling instead.

All of the _test.go file updates here are purely mechanical additions of
the extra argument. No test is materially modified by this change, which
is intentional to get some assurance that isn't a breaking change.

Signed-off-by: Martin Atkins <mart@degeneration.co.uk>
2024-11-19 10:15:21 -08:00
.github upgrade golangci-lint to v1.62 (#2174) 2024-11-18 19:56:29 +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 tofu: Context.Input now takes a context.Context 2024-11-19 10:15:21 -08:00
rfc rfc: Static Evaluation of Provider Iteration further updates 2024-10-31 10:50:34 -07: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 Bump version to 1.9.0-alpha2 (#2153) 2024-11-07 12:50:50 -05:00
website Bump cross-spawn from 7.0.3 to 7.0.6 in /website (#2185) 2024-11-19 18:44:34 +01: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 golang version to 1.22.8 (address CVE-2024-34156) (#2050) 2024-11-19 17:47:57 +01:00
.golangci.yml Implement Provider for_each (#2105) 2024-11-05 18:08:23 -05: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 initwd: Commentary on version constraint parsing compromises 2024-11-06 11:10:52 -08: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 Update CONTRIBUTING.md: Update 'docker run' example (#2005) 2024-09-23 07:23:32 -04:00
Dockerfile Fixes #1931: Dockerfile update / base image deprecation (#1993) 2024-09-17 16:07:07 +02:00
go.mod Bump github.com/golang-jwt/jwt/v4 from 4.4.2 to 4.5.1 (#2179) 2024-11-19 18:16:50 +01:00
go.sum Bump github.com/golang-jwt/jwt/v4 from 4.4.2 to 4.5.1 (#2179) 2024-11-19 18:16:50 +01: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 Update lint make target to match CI (#2025) 2024-10-02 08:26:27 -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 [TSC] summary for the 2024-10-22 TSC meeting (#2094) 2024-10-23 17:37:51 +02:00
WEEKLY_UPDATES.md Weekly update 2024-10-11 (#2068) 2024-10-11 15:20:00 +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