Terraform
wikipedia:Terraform (software) (2014) is an open-source infrastructure as code software.
- Terraform Cloud (September 2019)
- Terraform Enterprise
- Terraform Registry
Technical characteristics
- HCL2 based
- Types: strings, number, bool, list, maps, set, tuple, object, any and null (Terraform 0.12)
Supported platforms/providers
- AWS: AWS EKS, GCP, IBM Cloud, DigitalOcean, Azure: Azure Stack, AzureRM, OpenStack, ServiceNow, F5 Networks, Nutanix, Tecent Cloud, Helm, Oracle OCI, Brightbox, RightScale, Linode, SkyTap, UCloud, Hedvig, Zabbix, Rollbar
Installation
- macOS:
brew install terraform
. - Ubuntu:
snap install terraform
orsnap install terraform-snap
- Linux:
sudo apt-get update && sudo apt-get install -y gnupg software-properties-common curl curl -fsSL https://apt.releases.hashicorp.com/gpg | sudo apt-key add - sudo apt-add-repository "deb [arch=amd64] https://apt.releases.hashicorp.com $(lsb_release -cs) main" sudo apt-get -qq update && sudo apt-get install terraform && terraform -v
Ref: https://learn.hashicorp.com/tutorials/terraform/install-cli
Terraform commands
Common Terraform commands[1]
Activities
- Read Terraform blog: https://www.hashicorp.com/blog/category/terraform/
- Read Terraform: Up & Running, 2nd edition Early Release is now available! https://blog.gruntwork.io/terraform-up-running-2nd-edition-early-release-is-now-available-b104fc29783f
- Terraform: Hello_world.tf
- Terraform, read files
Related
- HCL, HCL2
terraform_remote_state
count
parameter for iterations- Remote state backends to manage Terraform state
- Terragrunt
- Releases: https://github.com/hashicorp/terraform/releases
- Terraform libvirt provider
- Heredocs
- artifacts:reports:terraform
- Terraform Cloud Operator
See also
terraform
[untaint | fmt
|apply
|show
|state
|init | plan | console | output
|validate
|destroy
|debug
|import
|providers
|get
|graph
|workspaces
|resource
|login
|-var-file
|state mv
|state pull
|state push
|state replace-provider
|state rm
|force-unlock
|env
|tfe
|--version
|remote-exec
|delete on termination
| deprecated commands |terraform --help
]- Terraform, OpenTofu, Terrakube.org, Installation, Terraform AWS, Terraform GCP, Terraform commands, Terraform Cloud, Terraform Enterprise (TFE), HCL, HIL, meta-arguments, providers, modules, resource, provisioners, data sources, backends: remote backends, examples, configuration files, state files, variables, types, Terraform Registry, conditionals:
depends_on
, functions, Blocks, dynamic blocks, errors, Terragrunt, Terraformer, Terratest, Terraform certifications, Terraform map type, Terraform Associate, Terraform: list type,TF_VAR_, TF_LOG
, Terraform provider versioning, Terraform Style Conventions, Required version, Terraform plugin, Terraform Named Values, tags, Changelog,tfsec, tflint
, Operators, Expressions:for, splat
, Debugging, Namespaces, Terraform Landing Zones, CDKTF, Atmos - IaC: Terraform, Chef, cdist, capistrano, Harrow, puppet, Ansible, CFEngine, Cloud Deployment Manager, pulumi, juju, SaltStack, Azure Resource Manager (ARM), Google Deployment Manager, AWS CloudFormation, Pulumi, Heat, Spacelift, Oracle Cloud Resource Manager, KICS, Troposphere, CaC, IaC scanning
- Cloud: cloud providers, cloud timeline, serverless computing, AWS, Azure, Google Cloud, DigitalOcean, IBM Cloud, Alibaba CloudAlibaba, Tencent, Baidu, VPC, Cloud Foundry, Snowflake, Huawei Cloud, Oracle Cloud, CISPE, CIPS, Free trial, Cloudera, Vantage.sh, Render
Advertising: