chore(dogfood): remove unused parameters from coder template (#26668)

Removes the following parameters from the dogfood `coder` template that
no one was using:

- `repo_base_dir` (hardcoded to `/home/coder`)
- `res_mon_memory_threshold` (hardcoded to `80`)
- `res_mon_volume_threshold` (hardcoded to `90`)
- `res_mon_volume_path` (hardcoded to `/home/coder`)
- `enable_ai_gateway` (hardcoded to `true`)
- `vscode_channel` (hardcoded to `stable`)

The underlying values match each parameter's previous default, so
existing workspaces continue to function identically — these just don't
appear as configurable inputs anymore.

`ide_choices` is kept per @Emyrk's review.

`var.anthropic_api_key` and `var.openai_api_key` are left declared
because they're still wired up from `.github/workflows/dogfood.yaml`.
They're effectively unused now (AI Gateway is always on) but removing
them would require coordinated workflow changes.

Requested by @kylecarbs in Slack.

---------

Co-authored-by: blink-so[bot] <211532188+blink-so[bot]@users.noreply.github.com>
This commit is contained in:
blinkagent[bot]
2026-06-24 10:31:14 -06:00
committed by GitHub
co-authored by blink-so[bot]
parent 8bf6f43016
commit 9defdb4af2
+22 -105
View File
@@ -34,7 +34,7 @@ locals {
"za-cpt" = "tcp://schonkopf-cpt-cdr-dev.tailscale.svc.cluster.local:2375"
}
repo_base_dir = data.coder_parameter.repo_base_dir.value == "~" ? "/home/coder" : replace(data.coder_parameter.repo_base_dir.value, "/^~\\//", "/home/coder/")
repo_base_dir = "/home/coder"
repo_dir = replace(try(module.git-clone[0].repo_dir, ""), "/^~\\//", "/home/coder/")
container_name = "coder-${data.coder_workspace_owner.me.name}-${lower(data.coder_workspace.me.name)}"
@@ -50,12 +50,8 @@ data "coder_workspace_preset" "pittsburgh" {
description = "Development workspace hosted in United States with 2 prebuild instances"
icon = "/emojis/1f1fa-1f1f8.png"
parameters = {
(data.coder_parameter.region.name) = "us-pittsburgh"
(data.coder_parameter.image_type.name) = data.coder_parameter.image_type.default
(data.coder_parameter.repo_base_dir.name) = "~"
(data.coder_parameter.res_mon_memory_threshold.name) = 80
(data.coder_parameter.res_mon_volume_threshold.name) = 90
(data.coder_parameter.res_mon_volume_path.name) = "/home/coder"
(data.coder_parameter.region.name) = "us-pittsburgh"
(data.coder_parameter.image_type.name) = data.coder_parameter.image_type.default
}
prebuilds {
instances = 2
@@ -67,12 +63,8 @@ data "coder_workspace_preset" "cpt" {
description = "Development workspace hosted in South Africa with 1 prebuild instance"
icon = "/emojis/1f1ff-1f1e6.png"
parameters = {
(data.coder_parameter.region.name) = "za-cpt"
(data.coder_parameter.image_type.name) = data.coder_parameter.image_type.default
(data.coder_parameter.repo_base_dir.name) = "~"
(data.coder_parameter.res_mon_memory_threshold.name) = 80
(data.coder_parameter.res_mon_volume_threshold.name) = 90
(data.coder_parameter.res_mon_volume_path.name) = "/home/coder"
(data.coder_parameter.region.name) = "za-cpt"
(data.coder_parameter.image_type.name) = data.coder_parameter.image_type.default
}
prebuilds {
instances = 1
@@ -84,12 +76,8 @@ data "coder_workspace_preset" "falkenstein" {
description = "Development workspace hosted in Europe with 1 prebuild instance"
icon = "/emojis/1f1ea-1f1fa.png"
parameters = {
(data.coder_parameter.region.name) = "eu-helsinki"
(data.coder_parameter.image_type.name) = data.coder_parameter.image_type.default
(data.coder_parameter.repo_base_dir.name) = "~"
(data.coder_parameter.res_mon_memory_threshold.name) = 80
(data.coder_parameter.res_mon_volume_threshold.name) = 90
(data.coder_parameter.res_mon_volume_path.name) = "/home/coder"
(data.coder_parameter.region.name) = "eu-helsinki"
(data.coder_parameter.image_type.name) = data.coder_parameter.image_type.default
}
prebuilds {
instances = 1
@@ -101,26 +89,14 @@ data "coder_workspace_preset" "sydney" {
description = "Development workspace hosted in Australia with 1 prebuild instance"
icon = "/emojis/1f1e6-1f1fa.png"
parameters = {
(data.coder_parameter.region.name) = "ap-sydney"
(data.coder_parameter.image_type.name) = data.coder_parameter.image_type.default
(data.coder_parameter.repo_base_dir.name) = "~"
(data.coder_parameter.res_mon_memory_threshold.name) = 80
(data.coder_parameter.res_mon_volume_threshold.name) = 90
(data.coder_parameter.res_mon_volume_path.name) = "/home/coder"
(data.coder_parameter.region.name) = "ap-sydney"
(data.coder_parameter.image_type.name) = data.coder_parameter.image_type.default
}
prebuilds {
instances = 1
}
}
data "coder_parameter" "repo_base_dir" {
type = "string"
name = "Coder Repository Base Directory"
default = "~"
description = "The directory specified will be created (if missing) and [coder/coder](https://github.com/coder/coder) will be automatically cloned into [base directory]/coder 🪄."
mutable = true
}
locals {
image_tags = {
// Older style option values, where the option value was just supposed to
@@ -194,38 +170,6 @@ data "coder_parameter" "region" {
}
}
data "coder_parameter" "res_mon_memory_threshold" {
type = "number"
name = "Memory usage threshold"
default = 80
description = "The memory usage threshold used in resources monitoring to trigger notifications."
mutable = true
validation {
min = 0
max = 100
}
}
data "coder_parameter" "res_mon_volume_threshold" {
type = "number"
name = "Volume usage threshold"
default = 90
description = "The volume usage threshold used in resources monitoring to trigger notifications."
mutable = true
validation {
min = 0
max = 100
}
}
data "coder_parameter" "res_mon_volume_path" {
type = "string"
name = "Volume path"
default = "/home/coder"
description = "The path monitored in resources monitoring to trigger notifications."
mutable = true
}
data "coder_parameter" "devcontainer_autostart" {
type = "bool"
name = "Automatically start devcontainer for coder/coder"
@@ -234,17 +178,9 @@ data "coder_parameter" "devcontainer_autostart" {
mutable = true
}
data "coder_parameter" "enable_ai_gateway" {
type = "bool"
name = "Use AI Gateway"
default = true
description = "If enabled, AI requests will be sent via AI Gateway."
mutable = true
}
# Only used if AI Gateway is disabled.
# dogfood/main.tf injects this value from a GH Actions secret;
# `coderd_template.dogfood` passes the value injected by .github/workflows/dogfood.yaml in `TF_VAR_CODER_DOGFOOD_ANTHROPIC_API_KEY` and `TF_VAR_CODER_DOGFOOD_OPENAI_API_KEY`.
# Currently unused since AI Gateway is always enabled, but kept for emergency fallback.
variable "anthropic_api_key" {
type = string
description = "The API key used to authenticate with the Anthropic API, if AI Bridge is disabled."
@@ -329,25 +265,6 @@ data "coder_parameter" "ide_choices" {
}
}
data "coder_parameter" "vscode_channel" {
count = contains(jsondecode(data.coder_parameter.ide_choices.value), "vscode") ? 1 : 0
type = "string"
name = "VS Code Desktop channel"
description = "Choose the VS Code Desktop channel"
mutable = true
default = "stable"
option {
value = "stable"
name = "Stable"
icon = "/icon/code.svg"
}
option {
value = "insiders"
name = "Insiders"
icon = "/icon/code-insiders.svg"
}
}
module "slackme" {
count = data.coder_workspace.me.start_count
source = "dev.registry.coder.com/coder/slackme/coder"
@@ -517,18 +434,18 @@ resource "coder_agent" "dev" {
# and is recreated with the container on workspace restart.
MISE_DATA_DIR : "/home/coder/.local/share/mise",
},
data.coder_parameter.enable_ai_gateway.value ? {
{
ANTHROPIC_BASE_URL : "https://dev.coder.com/api/v2/aibridge/anthropic",
ANTHROPIC_AUTH_TOKEN : data.coder_workspace_owner.me.session_token,
OPENAI_BASE_URL : "https://dev.coder.com/api/v2/aibridge/openai/v1",
OPENAI_API_KEY : data.coder_workspace_owner.me.session_token,
} : {}
}
)
startup_script_behavior = "blocking"
display_apps {
vscode = contains(jsondecode(data.coder_parameter.ide_choices.value), "vscode") && try(data.coder_parameter.vscode_channel[0].value, "stable") == "stable"
vscode_insiders = contains(jsondecode(data.coder_parameter.ide_choices.value), "vscode") && try(data.coder_parameter.vscode_channel[0].value, "stable") == "insiders"
vscode = contains(jsondecode(data.coder_parameter.ide_choices.value), "vscode")
vscode_insiders = false
}
# The following metadata blocks are optional. They are used to display
@@ -585,16 +502,16 @@ resource "coder_agent" "dev" {
resources_monitoring {
memory {
enabled = true
threshold = data.coder_parameter.res_mon_memory_threshold.value
threshold = 80
}
volume {
enabled = true
threshold = data.coder_parameter.res_mon_volume_threshold.value
path = data.coder_parameter.res_mon_volume_path.value
threshold = 90
path = "/home/coder"
}
volume {
enabled = true
threshold = data.coder_parameter.res_mon_volume_threshold.value
threshold = 90
path = "/var/lib/docker"
}
}
@@ -1007,8 +924,8 @@ module "claude-code" {
count = data.coder_workspace.me.start_count
source = "dev.registry.coder.com/coder/claude-code/coder"
version = "5.2.0"
enable_ai_gateway = data.coder_parameter.enable_ai_gateway.value
anthropic_api_key = data.coder_parameter.enable_ai_gateway.value ? "" : var.anthropic_api_key
enable_ai_gateway = true
anthropic_api_key = ""
agent_id = coder_agent.dev.id
workdir = local.repo_dir
mcp = <<-EOF
@@ -1042,8 +959,8 @@ module "codex" {
version = "5.2.0"
agent_id = coder_agent.dev.id
workdir = local.repo_dir
enable_ai_gateway = data.coder_parameter.enable_ai_gateway.value
openai_api_key = data.coder_parameter.enable_ai_gateway.value ? "" : var.openai_api_key
enable_ai_gateway = true
openai_api_key = ""
mcp = <<-EOT
[mcp_servers.playwright]
command = "npx"