Difference between revisions of "Terraform modules: source"

From wikieduonline
Jump to navigation Jump to search
 
(34 intermediate revisions by 3 users not shown)
Line 1: Line 1:
{{Draft}}
+
* https://www.terraform.io/docs/language/modules/sources.html
  
 +
The source argument in a [[Terraform modules|module]] block tells Terraform where to find the source code for the desired child module.
  
  source                = "terraform-aws-modules/ec2-instance/aws"
+
*<code>source                = "terraform-aws-modules/ec2-instance/aws"</code>
 +
 
 +
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 "vpc" {
 +
  source = "git::https://example.com/vpc.git?[[ref=]]v1.2.0"
 +
}
 +
 
 +
module "db" {
 +
  source  = "terraform-aws-modules/rds/aws"
 +
}
 +
 
 +
== Terraform source types ==
 +
https://www.terraform.io/docs/language/modules/sources.html
 +
* [[Local paths]]
 +
* [[Terraform Registry]]
 +
* [[GitHub]]
 +
* [[Bitbucket]]
 +
* [[Generic Git]], [[Mercurial repositories]]
 +
* [[HTTP URLs]]
 +
* [[S3 buckets]]
 +
* [[GCS]] buckets
 +
 
 +
== Errors ==
 +
* <code>[[Error: Module not found]]: Address could not be resolved</code>
 +
 
 +
== Related terms ==
 +
* <code>[[terraform init]]</code>
 +
* [[Terraform Associate]]: Contrast module source options
 +
* [[Terraform public module registry]]
 +
* [[Terraform module keyword]]
  
 
== See also ==
 
== See also ==
* {{Terraform}}
+
* {{Terraform modules}}
 +
 
 +
[[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: