Difference between revisions of "Terraform"

From wikieduonline
Jump to navigation Jump to search
 
(42 intermediate revisions by 6 users not shown)
Line 1: Line 1:
[[wikipedia:Terraform (software)]] (July 2014) is an open-source [[infrastructure as code]] software.
+
[[wikipedia:Terraform (software)]] (July [[2014]]) is an open-source [[infrastructure as code]] software.
 
* [[Google trends]]: https://trends.google.com/trends/explore?date=all&q=Terraform
 
* [[Google trends]]: https://trends.google.com/trends/explore?date=all&q=Terraform
 
+
* Repo: https://github.com/hashicorp/terraform
* [[Terraform Registry]] (2020) <ref>https://www.hashicorp.com/blog/announcing-providers-in-the-new-terraform-registry</ref>
+
* [[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 Module Registry]] (2017) <ref>https://www.hashicorp.com/blog/hashicorp-terraform-module-registry</ref>
 +
 +
 +
* [[Terraform Operators]]
 +
* [[Terraform Expressions]]
  
 
== Technical characteristics ==
 
== Technical characteristics ==
Line 16: Line 20:
 
* <code>[[terraform providers]]</code>
 
* <code>[[terraform providers]]</code>
  
== Installation ==
+
== [[Terraform installation]] ==
* [[macOS]]: <code>[[brew install]] terraform</code>.
 
* [[Ubuntu]]: <code>[[snap install terraform]]</code> or <code>[[snap install]] terraform-snap</code>
 
 
 
* Linux:
 
**<code>sudo [[apt-get update]] && sudo apt-get install -y [[gnupg]] [[software-properties-common]] [[curl]]</code>
 
**<code>[[curl -fsSL]] https://apt.releases.hashicorp.com/gpg | sudo [[apt-key add]] -</code>
 
**<code>sudo [[apt-add-repository]] "deb [arch=amd64] https://apt.releases.hashicorp.com $([[lsb_release -cs]]) main"</code>
 
**<code>sudo [[apt-get -qq update]] && sudo [[apt-get install terraform]] && [[terraform -v]]</code>
 
 
 
Ref: https://learn.hashicorp.com/tutorials/terraform/install-cli
 
  
 
== [[Terraform commands]] ==
 
== [[Terraform commands]] ==
* <code>[[terraform init]]</code>
 
* <code>[[terraform console]]</code>
 
* <code>[[terraform fmt]]</code>
 
** <code>[[terraform fmt]] -check</code>
 
* <code>[[terraform validate]]</code>
 
* <code>[[terraform import]]</code>
 
* <code>[[terraform plan]]</code>
 
* <code> [[terraform apply]]</code>
 
* <code> [[terraform remote config]]</code>
 
* <code>[[terraform destroy]]</code>
 
* <code>[[terraform show]]</code>
 
* <code>[[terraform login]]</code>
 
* <code>[[terraform add]]</code> (1.1.0, xx/2021)
 
 
* <code>[[terraform graph]]</code>
 
 
== Common Terraform commands<ref>https://www.terraform.io/docs/commands/index.html</ref> ==
 
  
* <code>[[terraform --help]]</code>
+
== [[Terraform changelog|News]] ==
 +
* Jan 2023 [[Terraform Dynamic Provider Credentials]]
 +
* Aug 2022 [[CDK for Terraform (CDKTF)]]
 +
* Dec 2017 [[Terraform Enterprise (TFE)]] [[GA]]
  
 
== [[Terraform activities|Activities]] ==
 
== [[Terraform activities|Activities]] ==
* Create you first AWS instances with Terraform tutorial: https://learn.hashicorp.com/tutorials/terraform/aws-build?in=terraform/aws-get-started
+
* [[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 https://www.terraformupandrunning.com/ book
 
* Read [[Stackoverflow]] questions: https://stackoverflow.com/questions/tagged/terraform?tab=Votes
 
* Read [[Stackoverflow]] questions: https://stackoverflow.com/questions/tagged/terraform?tab=Votes
 
* 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 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, read files]]
+
* Review some [[Terraform examples]]
 +
* Use <code>[[terraform apply -replace]]</code> to recreate a resource
  
 
== Related terms ==
 
== Related terms ==
* [[HCL]] and [[HCL]]2
+
* [[HCL]], [[HCL]]2 and [[HashiCorp Interpolation Language (HIL)]]
 
* [[Terraform: Meta-Argument]]s: <code>[[count]]</code> parameter for [[iterations]], <code>[[Terraform: depends on|depends_on]]</code>
 
* [[Terraform: Meta-Argument]]s: <code>[[count]]</code> parameter for [[iterations]], <code>[[Terraform: depends on|depends_on]]</code>
 
* [[Terraform conditional expressions]]
 
* [[Terraform conditional expressions]]
 
* [[Terraform functions]]: <code>[[Terraform functions: templatefile|templatefile]]</code>, <code>[[join]]</code>, <code>[[output]]</code>, [[Splat expression]]
 
* [[Terraform functions]]: <code>[[Terraform functions: templatefile|templatefile]]</code>, <code>[[join]]</code>, <code>[[output]]</code>, [[Splat expression]]
* [[Terraform data sources]], [[Terraform providers]], [[Terraform modules]]
+
* [[Terraform data sources]], [[Terraform providers]], [[Terraform modules]], [[Terraform resources]], [[Terraform backends]]
* [[Terraform resources]]: https://www.terraform.io/docs/language/resources/index.html
 
* [[Remote state backends to manage Terraform state]]
 
 
* [[Terragrunt]], [[Terraformer]], [[terratest]]
 
* [[Terragrunt]], [[Terraformer]], [[terratest]]
 
* Releases: https://github.com/hashicorp/terraform/releases
 
* Releases: https://github.com/hashicorp/terraform/releases
Line 72: Line 52:
 
* [[Terraform Associate]]: Understand [[secret management]] in [[state files]]
 
* [[Terraform Associate]]: Understand [[secret management]] in [[state files]]
 
* [[Terraform deprecated commands]]
 
* [[Terraform deprecated commands]]
* [[CLI Configuration File]]
+
* [[Terraform CLI Configuration File]]
* [[Terraform VCS]]
+
* [[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 aws resources}}
 
 
* {{terraform cmd}}
 
* {{terraform cmd}}
 
* {{terraform}}
 
* {{terraform}}
* {{IaC}}
 
  
 
[[Category:Infrastructure as Code]]
 
[[Category:Infrastructure as Code]]
 
[[Category:IaC]]
 
[[Category:IaC]]
 
[[Category:Cloud computing]]
 
[[Category:Cloud computing]]

Latest revision as of 11:11, 25 March 2024

wikipedia:Terraform (software) (July 2014) is an open-source infrastructure as code software.


Technical characteristics[edit]

Supported platforms/providers[edit]

Terraform installation[edit]

Terraform commands[edit]

News[edit]

Activities[edit]

Related terms[edit]

See also[edit]

  • https://www.hashicorp.com/blog/announcing-providers-in-the-new-terraform-registry
  • https://www.hashicorp.com/blog/hashicorp-terraform-module-registry
  • Advertising: