
The last of the available variable types is boolean. They give the option to employ simple true or false values. For example, you might wish to have a variable that decides when to generate the root user password on a new deployment.
variable “set_password” {
default = false
}
The above example boolean can be used similarly to a string variable by simply marking down the correct variable.
create_password = “${var.set_password}”
By default, the value is set to false in this example. However, you can overwrite the variable at deployment by assigning a different value in a command line variable.
terraform apply -var set_password=”true”
variable "create_vm" { | |
description = "If set to true, it will create vm" | |
type = bool | |
} | |
variable "create_vmss" { | |
description = "If set to true, it will create vmss" | |
type = bool | |
} | |
and define the resource azurerm_linux_virtual_machine and azurerm_linux_virtual_machine_scale_set in the same VM module. | |
resource "azurerm_linux_virtual_machine" "example" { | |
count = var.create_vm ? 1 : 0 | |
name = "example-machine" | |
resource_group_name = azurerm_resource_group.example.name | |
location = azurerm_resource_group.example.location | |
size = "Standard_F2" | |
... | |
resource "azurerm_linux_virtual_machine_scale_set" "example" { | |
count = var.create_vmss ? 1 : 0 | |
name = "example-vmss" | |
resource_group_name = azurerm_resource_group.example.name | |
location = azurerm_resource_group.example.location | |
sku = "Standard_F2" | |
instances = 1 | |
admin_username = "adminuser" | |
.... | |
Then call the submodule like this, | |
module "vm" { | |
source = "./modules/vm" | |
create_vm = true | |
create_vmss = false | |
... | |
} |










I’m a DevOps/SRE/DevSecOps/Cloud Expert passionate about sharing knowledge and experiences. I am working at Cotocus. I blog tech insights at DevOps School, travel stories at Holiday Landmark, stock market tips at Stocks Mantra, health and fitness guidance at My Medic Plus, product reviews at I reviewed , and SEO strategies at Wizbrand.
Please find my social handles as below;
Rajesh Kumar Personal Website
Rajesh Kumar at YOUTUBE
Rajesh Kumar at INSTAGRAM
Rajesh Kumar at X
Rajesh Kumar at FACEBOOK
Rajesh Kumar at LINKEDIN
Rajesh Kumar at PINTEREST
Rajesh Kumar at QUORA
Rajesh Kumar at WIZBRAND