This repurposes the page that was previously about "terraform" blocks to now be about "language" blocks instead. This is the modern way to describe version compatibility constraints for OpenTofu, though we retain some support for required_versions in "terraform" blocks as a transitional aid for those who want to write modules that can work with older versions of OpenTofu. There were previously additional sections on this page discussing other settings that can appear in "terraform" blocks, but they were essentially just links to more detailed documentation elsewhere and so this reduces all of that to just a single section that acknowledges that this block type accepts other options and links to the relevant documentation for each one. This structure matches the reality that "terraform" blocks are just a dumping ground for a variety of tangentially-related settings, and that we're intending to gradually replace all of the settings in there with brand-agnostic alternatives in future releases. Signed-off-by: Martin Atkins <mart@degeneration.co.uk>
OpenTofu Documentation
This directory contains the portions of the OpenTofu website that pertain to the core functionality, excluding providers and the overall configuration.
Development server
You can start a local development server with Docker by running the following command from this (the website) directory:
docker compose up --build
The development server will be available on http://localhost:3000/docs/main/ .
Under Docs in the navigation bar, select Development version to see local changes.
Suggesting Changes
You can submit an issue with documentation requests or submit a pull request with suggested changes.
Click Edit this page at the bottom of any OpenTofu website page to go directly to the associated markdown file in GitHub.
Modifying Sidebar Navigation
You must update the sidebar navigation when you add or delete documentation .mdx files. If you do not update the navigation, the website deploy preview fails.
To update the sidebar navigation, you must edit the appropriate nav-data.json file. This repository contains the sidebar navigation files for the following documentation sets:
- OpenTofu Language:
language-nav-data.json - OpenTofu CLI:
cli-nav-data.json - Introduction to OpenTofu:
intro-nav-data.json
Previewing Changes
Currently, you can preview your changes through the opentofu/opentofu.org repository.
Follow the Getting Started guide.
Copyright headers for code examples
In order to not include copyright headers for code examples used in docs, please, add the files under examples folder. This way, it will be ignored on automated copyright headers check.