feat: use preview to compute workspace tags from terraform (#18720)

If using dynamic parameters, workspace tags are extracted using
`coder/preview`.
This commit is contained in:
Steven Masley
2025-07-03 14:35:44 -05:00
committed by GitHub
parent 4607e5113b
commit a099a8a25c
14 changed files with 1185 additions and 78 deletions
@@ -0,0 +1,66 @@
terraform {
required_providers {
coder = {
source = "coder/coder"
}
}
}
variable "stringvar" {
type = string
default = "bar"
}
variable "numvar" {
type = number
default = 42
}
variable "boolvar" {
type = bool
default = true
}
data "coder_parameter" "stringparam" {
name = "stringparam"
type = "string"
default = "foo"
}
data "coder_parameter" "stringparamref" {
name = "stringparamref"
type = "string"
default = data.coder_parameter.stringparam.value
}
data "coder_parameter" "numparam" {
name = "numparam"
type = "number"
default = 7
}
data "coder_parameter" "boolparam" {
name = "boolparam"
type = "bool"
default = true
}
data "coder_parameter" "listparam" {
name = "listparam"
type = "list(string)"
default = jsonencode(["a", "b"])
}
data "coder_workspace_tags" "tags" {
tags = {
"function" = format("param is %s", data.coder_parameter.stringparamref.value)
"stringvar" = var.stringvar
"numvar" = var.numvar
"boolvar" = var.boolvar
"stringparam" = data.coder_parameter.stringparam.value
"numparam" = data.coder_parameter.numparam.value
"boolparam" = data.coder_parameter.boolparam.value
"listparam" = data.coder_parameter.listparam.value
}
}