Skip to content

Instantly share code, notes, and snippets.

@w3bward
Last active March 19, 2022 17:19
Show Gist options
  • Save w3bward/c1358fbad2994cdda17ef0597b5e56cb to your computer and use it in GitHub Desktop.
Save w3bward/c1358fbad2994cdda17ef0597b5e56cb to your computer and use it in GitHub Desktop.
You can use jsonencode to pass complex types to your local-exec commands
terraform {
required_version = ">= 1.1.6"
}
locals {
my_var = "12\" = 1'"
my_var2 = [
"Cat",
"Dog",
"Cow",
"Chicken"
]
}
resource "null_resource" "complex_example" {
triggers = {
always_run = "${timestamp()}"
}
provisioner "local-exec" {
interpreter = ["Powershell", "-Command"]
environment = {
MyVar = local.my_var
MyVar2 = jsonencode(local.my_var2)
}
command = <<EOC
write-host "my_var value: $Env:MyVar"
$MyList = $Env:MyVar2 | ConvertFrom-Json
foreach ($Item in $MyList) {
Write-Host "The current list item is: $Item"
}
EOC
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment