dgt_devops06 – OpenTofu (Terraform fork)

Course Title: dgt_devops06 – OpenTofu (Terraform Fork)


Overview

In DevOps and infrastructure management, “Infrastructure as Code” (IaC) is a widely used practice that lets teams automate and manage their infrastructure. This course introduces OpenTofu, a fork of Terraform that emerged in response to HashiCorp’s changes to Terraform’s licensing. Terraform was originally released under open-source licenses such as MIT and Apache 2.0, but the more recent shift to the Business Source License (BSL) has led developers to seek alternatives that adhere more closely to traditional open-source principles.

In the practical part you will not write HCL by hand. You will describe the infrastructure you want to the machine in natural language (resources, providers, naming, constraints), let it produce the OpenTofu configuration, and then read that configuration and the plan it generates line by line, checking them against what you learned about state, providers and dependencies before allowing anything to be applied.

Course Objectives

  • Understand the history and reasons behind the creation of OpenTofu.
  • Learn to drive OpenTofu infrastructure-as-code projects in natural language, reviewing every configuration and plan the machine proposes.
  • Compare and contrast OpenTofu with Terraform, emphasizing licensing implications.
  • Learn about community-driven support for emerging open-source projects like OpenTofu.

Modules

  1. Introduction to Infrastructure as Code
  2. The evolution of IaC
  3. Key principles and benefits

  4. Understanding Terraform’s Licensing Changes

  5. Overview of BSL vs. MIT, Apache 2.0, and GPL
  6. Implications for open-source projects and users

  7. OpenTofu: A Community-Driven Fork

  8. Origins and motivations behind OpenTofu
  9. Key features and community contributions

  10. Getting Started with OpenTofu

  11. Installation and setup, carried out by the machine on your instructions and verified by you
  12. Basic configuration and deployment examples: describing the target infrastructure, reading the generated configuration and validating the plan

  13. Advanced Use Cases of OpenTofu

  14. Complex infrastructure setups specified in natural language and reviewed for correctness
  15. Integrations with other DevOps tools

  16. Supporting Open Source Innovation: In Garanti del Talento

  17. The role of initiatives like “In Garanti del Talento” in nurturing open-source projects
  18. How to contribute and support emerging technologies

Target Audience

This course is intended for IT professionals, DevOps engineers, cloud architects, and anyone working on infrastructure automation. It is suitable both for experienced Terraform users and for those new to IaC concepts, and it covers the current state of open-source IaC tools.

Outcome

By the end of this course, participants will understand OpenTofu as an alternative to Terraform and will be able to direct a machine to implement it in their projects, judging whether its configurations and plans are correct and safe. Additionally, you’ll learn how community efforts like “In Garanti del Talento” support open-source innovation.

The course covers infrastructure management with OpenTofu.
The students can push their exercises to the Academy DevOps & SRE Git project. For this module, create a folder with your username as its name in the following subfolder: https://github.com/Garanti-Del-Talento/gdt_academy/tree/main/dgt_devops06__opentofu