Difference between revisions of "Terraform modules: source"

From wikieduonline
Jump to navigation Jump to search
 
(23 intermediate revisions by 3 users not shown)
Line 1: Line 1:
{{lowercase}}
 
 
* https://www.terraform.io/docs/language/modules/sources.html
 
* https://www.terraform.io/docs/language/modules/sources.html
  
Line 8: Line 7:
 
Terraform uses this during the module installation step of <code>[[terraform init]]</code> to download the source code to a directory on local disk so that it can be used by other Terraform commands.
 
Terraform uses this during the module installation step of <code>[[terraform init]]</code> to download the source code to a directory on local disk so that it can be used by other Terraform commands.
  
 +
== Examples in [[main.tf]] ==
 +
[[Terraform module keyword|module]] "[[consul]]" {
 +
  source = "./path/to/you/module"
 +
}
 +
 +
module "yourmodule" {
 +
  source = "[[github.com]]/your-project/terraform-your-templates/modules/yourmodule"
 +
}
  
  module "consul" {
+
  module "vpc" {
   source = "./path/to/you/module"
+
   source = "git::https://example.com/vpc.git?[[ref=]]v1.2.0"
 
  }
 
  }
  
 +
module "db" {
 +
  source  = "terraform-aws-modules/rds/aws"
 +
}
  
== Source types ==
+
== Terraform source types ==
* Local paths
+
https://www.terraform.io/docs/language/modules/sources.html
* Terraform Registry
+
* [[Local paths]]
* GitHub
+
* [[Terraform Registry]]
* Bitbucket
+
* [[GitHub]]
* Generic Git, Mercurial repositories
+
* [[Bitbucket]]
* HTTP URLs
+
* [[Generic Git]], [[Mercurial repositories]]
* S3 buckets
+
* [[HTTP URLs]]
 +
* [[S3 buckets]]
 
* [[GCS]] buckets
 
* [[GCS]] buckets
  
 +
== Errors ==
 +
* <code>[[Error: Module not found]]: Address could not be resolved</code>
  
 
== Related terms ==
 
== Related terms ==
 
* <code>[[terraform init]]</code>
 
* <code>[[terraform init]]</code>
 +
* [[Terraform Associate]]: Contrast module source options
 +
* [[Terraform public module registry]]
 +
* [[Terraform module keyword]]
  
 
== See also ==
 
== See also ==
 
* {{Terraform modules}}
 
* {{Terraform modules}}
* {{Terraform}}
 
  
[[Category:Iac]]
+
[[Category:Terraform]]

Latest revision as of 12:42, 16 August 2023

The source argument in a module block tells Terraform where to find the source code for the desired child module.

  • source = "terraform-aws-modules/ec2-instance/aws"

Terraform uses this during the module installation step of terraform init to download the source code to a directory on local disk so that it can be used by other Terraform commands.

Examples in main.tf[edit]

module "consul" {
  source = "./path/to/you/module"
}
module "yourmodule" {
  source = "github.com/your-project/terraform-your-templates/modules/yourmodule"
}
module "vpc" {
  source = "git::https://example.com/vpc.git?ref=v1.2.0"
}
module "db" {
 source  = "terraform-aws-modules/rds/aws"
}

Terraform source types[edit]

https://www.terraform.io/docs/language/modules/sources.html

Errors[edit]

Related terms[edit]

See also[edit]

Advertising: