If a module declares a variable with a default value, it is not necessary to define the variable within the module calling the module. The module will automatically use the default value if a value is not explicitly assigned to the variable in the calling module
This question does not make sense in its current form. (Very poor English, sorry)
You declare the variable with variable "my_var" {type=string} and in there you may add a default: variable "my_var" {
type=string
default="a"
}
SETTING a variable in a statement calling a module that contains this variable is not compulsory.
module "my_module" {
source= "./this_module"
my_var = "b" # <-- you can omit this in which case the value will be "a"
}
The variable must be declared aswell, another thing is that you have to assign a value to it. But the declaration is mandatory.
At least this is my understanding of what the question says.
False.
If a module declares a variable with a default value, it does not necessarily need to be defined within the module. The default value will be used if the variable is not set in the calling module.
For example, consider the following module:
```
variable "instance_type" {
description = "The instance type to use"
default = "t2.micro"
}
resource "aws_instance" "example" {
ami = "ami-0c55b159cbfafe1f0"
instance_type = var.instance_type
}
```
In this module, a variable called instance_type is declared with a default value of t2.micro. The default value will be used if the variable is not set in the calling module.
If the calling module does not set the instance_type variable, the default value of t2.micro will be used. If the calling module does set the instance_type variable, the value from the calling module will be used instead of the default.
It is important to note that if a variable is declared without a default value and is not set in the calling module, Terraform will prompt the user to enter a value for that variable.
A module can declare a variable with a default value without defining it within the module. This is because the variable can be used as-is with the default value, or it can be assigned a new value by code that imports the module.
It already had a variable. Worse case it knows where to get if it’s not manually defined
upvoted 1 times
...
...
Log in to ExamTopics
Sign in:
Community vote distribution
A (35%)
C (25%)
B (20%)
Other
Most Voted
A voting comment increases the vote count for the chosen answer by one.
Upvoting a comment with a selected answer will also increase the vote count towards that answer by one.
So if you see a comment that you already agree with, you can upvote it instead of posting a new comment.
govs
Highly Voted 8 months, 3 weeks agoEltooth
Highly Voted 1 year, 6 months agoClapton79
Most Recent 1 month, 2 weeks agoumavaja
2 weeks, 4 days agootakuinside
3 months agoAlex1778
8 months, 3 weeks agoPower123
9 months agoNunyabiznes
9 months, 1 week agoNunyabiznes
9 months, 1 week agoSilentMilli
9 months, 2 weeks agobukake
1 year, 4 months agokopper2019
1 year, 4 months agohello2022
1 year, 3 months agogsx
1 year, 6 months agoMaaran07
1 year, 7 months agotraceme
1 year, 7 months agohabros
1 year, 6 months ago