Editing Terraform

Jump to navigation Jump to search

Warning: You are not logged in. Your IP address will be publicly visible if you make any edits. If you log in or create an account, your edits will be attributed to your username, along with other benefits.

The edit can be undone. Please check the comparison below to verify that this is what you want to do, and then save the changes below to finish undoing the edit.

Latest revision Your text
Line 1: Line 1:
[[wikipedia:Terraform (software)]] (July [[2014]]) is an open-source [[infrastructure as code]] software.
+
[[wikipedia:Terraform (software)]] (2014) is an open-source [[infrastructure as code]] software.
* [[Google trends]]: https://trends.google.com/trends/explore?date=all&q=Terraform
+
 
* Repo: https://github.com/hashicorp/terraform
+
 
* [[Terraform Registry]] (Jan 2020) <ref>https://www.hashicorp.com/blog/announcing-providers-in-the-new-terraform-registry</ref>
 
 
* [[Terraform Cloud]] (September 2019)
 
* [[Terraform Cloud]] (September 2019)
 
* [[Terraform Enterprise]]
 
* [[Terraform Enterprise]]
* [[Terraform Module Registry]] (2017) <ref>https://www.hashicorp.com/blog/hashicorp-terraform-module-registry</ref>
+
* [[Terraform Registry]]
  
 +
== Technical characteristics ==
 +
* [[HCL]]2 based
 +
* Types: strings, number, bool, list, maps, set, tuple, object, any and null ([[Terraform 0.12]])
  
* [[Terraform Operators]]
 
* [[Terraform Expressions]]
 
  
== Technical characteristics ==
 
* [[Hashicorp Configuration Language (HCL)]]2 based
 
* [[Terraform types]]: <code>strings, number, bool, list, [[maps]], set, [[tuple]], object, any and null</code> ([[Terraform 0.12]])
 
  
 
== Supported platforms/providers ==
 
== 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]]
+
* [[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]]
 +
 
 +
== Installation ==
 +
* [[macOS]]: <code>[[brew]] install terraform</code>.
 +
* [[Ubuntu]]: <code>snap install terraform</code>
 +
 
 +
 
 +
Review version:
 +
terraform -v
 +
Terraform v0.13.5
  
* <code>[[terraform providers]]</code>
+
== Running terraform ==
 +
[[terraform init]]
 +
[[terraform plan]]
 +
[[terraform apply]]
 +
[[terraform remote config]]
  
== [[Terraform installation]] ==
+
[[terraform destroy]]
  
== [[Terraform commands]] ==
+
== Common Terraform commands<ref>https://www.terraform.io/docs/commands/index.html</ref> ==
 +
<pre>
 +
    apply              Builds or changes infrastructure
 +
    console            Interactive console for Terraform interpolations
 +
    destroy            Destroy Terraform-managed infrastructure
 +
    fmt                Rewrites config files to canonical format
 +
    get                Download and install modules for the configuration
 +
    graph              Create a visual graph of Terraform resources
 +
    import            Import existing infrastructure into Terraform
 +
    init              Initialize a new or existing Terraform configuration
 +
    output            Read an output from a state file
 +
    plan              Generate and show an execution plan
 +
    providers          Prints a tree of the providers used in the configuration
 +
    push              Upload this Terraform module to Terraform Enterprise to run
 +
    refresh            Update local state file against real resources
 +
    show              Inspect Terraform state or plan
 +
    taint              Manually mark a resource for recreation
 +
    untaint            Manually unmark a resource as tainted
 +
    validate          Validates the Terraform files
 +
    version            Prints the Terraform version
 +
    workspace          Workspace management
 +
</pre>
  
== [[Terraform changelog|News]] ==
 
* Jan 2023 [[Terraform Dynamic Provider Credentials]]
 
* Aug 2022 [[CDK for Terraform (CDKTF)]]
 
* Dec 2017 [[Terraform Enterprise (TFE)]] [[GA]]
 
  
== [[Terraform activities|Activities]] ==
+
== Activities ==
* [[Create you first AWS instances with Terraform tutorial]]: https://learn.hashicorp.com/tutorials/terraform/aws-build?in=terraform/aws-get-started
+
# Read Terraform blog: https://www.hashicorp.com/blog/category/terraform/
* 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
* Read https://www.terraformupandrunning.com/ book
+
# [[Terraform: Hello_world.tf]]
* Read [[Stackoverflow]] questions: https://stackoverflow.com/questions/tagged/terraform?tab=Votes
+
# [[Terraform, read files]]
* 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
 
* Review some [[Terraform examples]]
 
* Use <code>[[terraform apply -replace]]</code> to recreate a resource
 
  
== Related terms ==
+
== Related ==
* [[HCL]], [[HCL]]2 and [[HashiCorp Interpolation Language (HIL)]]
+
* [[HCL]], [[HCL]]2
* [[Terraform: Meta-Argument]]s: <code>[[count]]</code> parameter for [[iterations]], <code>[[Terraform: depends on|depends_on]]</code>
+
* <code>terraform_remote_state</code>
* [[Terraform conditional expressions]]
+
* <code>count</code> parameter for iterations
* [[Terraform functions]]: <code>[[Terraform functions: templatefile|templatefile]]</code>, <code>[[join]]</code>, <code>[[output]]</code>, [[Splat expression]]
+
* [[Remote state backends to manage Terraform state]]
* [[Terraform data sources]], [[Terraform providers]], [[Terraform modules]], [[Terraform resources]], [[Terraform backends]]
+
* [[Terragrunt]]
* [[Terragrunt]], [[Terraformer]], [[terratest]]
 
 
* Releases: https://github.com/hashicorp/terraform/releases
 
* Releases: https://github.com/hashicorp/terraform/releases
 
+
* [[Terraform libvirt provider]]
* <code>[[artifacts:]]reports:terraform</code>
 
* [[Terraform Cloud Operator]]
 
* [[Terraform examples]]: [[Terraform: Hello world.tf]]
 
* [[Terraform Associate]]: Understand [[secret management]] in [[state files]]
 
* [[Terraform deprecated commands]]
 
* [[Terraform CLI Configuration File]]
 
* [[Terraform VCS connections]]
 
* [[Terraform best practices]]
 
* [[Oracle Cloud Resource Manager]]
 
* [[Terraform AWS]] (<code>[[hashicorp/aws]]</code>), [[Terraform GCP]]
 
* <code>[[tflint]], [[tfsec]]</code>
 
* [[terraform info]]
 
* <code>[[tfswitch]]</code>
 
* [[Atlantis]] [[pull request]] automation
 
* [[AWS Service Catalog]]
 
* [[OpenTofu]]
 
* <code>[[.this]]</code>
 
* [[Crossplane.io]]
 
  
 
== See also ==
 
== See also ==
* {{terraform cmd}}
 
 
* {{terraform}}
 
* {{terraform}}
 +
* {{IaC}}
 +
* {{Cloud}}
  
 
[[Category:Infrastructure as Code]]
 
[[Category:Infrastructure as Code]]
[[Category:IaC]]
 
 
[[Category:Cloud computing]]
 
[[Category:Cloud computing]]

Please note that all contributions to wikieduonline may be edited, altered, or removed by other contributors. If you do not want your writing to be edited mercilessly, then do not submit it here.
You are also promising us that you wrote this yourself, or copied it from a public domain or similar free resource (see Wikieduonline:Copyrights for details). Do not submit copyrighted work without permission!

Cancel Editing help (opens in new window)

Templates used on this page:

Advertising: