<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Terraform/OpenTofu :: HomeLab</title><link>https://bubacoder.github.io/infra/terraform/index.html</link><description>Terraform&#10;Infrastructure automation to provision and manage resources in any cloud or data center.&#10;Home: Terraform | HashiCorp Developer&#10;Releases: Releases · hashicorp/terraform&#10;Final version with Mozilla Public License: 1.5.7&#10;The newer versions are released under Business Source License.&#10;OpenTofu&#10;The open source infrastructure as code tool&#10;Home: OpenTofu&#10;Releases: Releases · opentofu/opentofu&#10;Basic Terraform commands - Cheat sheet Command Description terraform init Initialize the Terraform directory and download the required provider plugins terraform fmt -recursive Ensure all Terraform code in the current directory and subdirectories is formatted properly terraform validate Validate the syntax of the Terraform configuration files and check for errors terraform plan Show the execution plan, the resources that will be created, updated, or destroyed terraform apply Apply the changes required to reach the desired state of the infrastructure terraform destroy Destroy the Terraform-managed infrastructure terraform show Display the current state of the Terraform-managed infrastructure terraform state list List all resources in the Terraform state terraform apply -replace "id" Force replacement of a resource Deployments terraform/azure-vm – Full module docs: A simple VM on Azure for testing infra deployment. terraform/aws-vm – Full module docs: An EC2 VM with persistent EBS storage and Secrets Manager.</description><generator>Hugo</generator><language>en-us</language><atom:link href="https://bubacoder.github.io/infra/terraform/index.xml" rel="self" type="application/rss+xml"/><item><title>Azure VM modules</title><link>https://bubacoder.github.io/infra/terraform/azure-vm/index.html</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://bubacoder.github.io/infra/terraform/azure-vm/index.html</guid><description>The modules in the terraform/azure-vm/modules folder are implementing a Virtual Machine with the associated network setup and storage. This VM can be used to test/host the Docker services of this repo.&#10;Prerequisites Azure Storage Account for Remote State Before using this Terraform configuration, create an Azure Storage Account to store the remote state.</description></item><item><title>AWS VM — Terraform</title><link>https://bubacoder.github.io/infra/terraform/aws-vm/index.html</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://bubacoder.github.io/infra/terraform/aws-vm/index.html</guid><description>Deploys an Ubuntu 26.04 LTS (Resolute Raccoon) EC2 instance on AWS with:&#10;x86_64 or ARM64 (Graviton) architecture selection Persistent EBS data volume that survives instance termination Secrets Manager + IAM Instance Profile for credential-less secret retrieval Cloud-init bootstrap → Ansible configuration Uses the terraform-aws-modules community collection to minimise custom code.&#10;For the separate-admin-host bootstrap workflow, see Bootstrap on AWS. It reuses this template with bootstrap_mode = "external", a supplied public SSH key, an optional AMI pin, Elastic IP and SSM-based host trust. External mode mounts storage and prepares SSM but does not create Git credentials, clone the repository or run Ansible inside cloud-init. Standalone mode remains the default. Bootstrap owns separate state; do not use task aws-vm:* to manage bootstrap-created resources.</description></item></channel></rss>