From aa3d9b8a7aa8684c8c68823cb88d6b0cff480c40 Mon Sep 17 00:00:00 2001 From: Muhammad Atif Ali Date: Mon, 21 Oct 2024 12:50:48 +0500 Subject: [PATCH] Refactor URL handling in vscode-web module - Consolidates URL and path logic using locals. - Simplifies script syntax, improving maintainability. --- vscode-web/main.tf | 22 +++++++++++++--------- 1 file changed, 13 insertions(+), 9 deletions(-) diff --git a/vscode-web/main.tf b/vscode-web/main.tf index 35be41b..384b938 100644 --- a/vscode-web/main.tf +++ b/vscode-web/main.tf @@ -150,8 +150,7 @@ resource "coder_script" "vscode-web" { EXTENSIONS_DIR : var.extensions_dir, FOLDER : var.folder, AUTO_INSTALL_EXTENSIONS : var.auto_install_extensions, - SERVER_BASE_PATH : var.subdomain ? "" : format("/@%s/%s/apps/vscode-web/", - data.coder_workspace_owner.me.name, data.coder_workspace.me.name), + SERVER_BASE_PATH : local.server_base_path, }) run_on_start = true @@ -172,16 +171,21 @@ resource "coder_app" "vscode-web" { agent_id = var.agent_id slug = var.slug display_name = var.display_name - - url = var.folder == "" ? "http://localhost:${var.port}" : "http://localhost:${var.port}?folder=${var.folder}" - icon = "/icon/code.svg" - subdomain = var.subdomain - share = var.share - order = var.order + url = local.url + icon = "/icon/code.svg" + subdomain = var.subdomain + share = var.share + order = var.order healthcheck { - url = "http://localhost:${var.port}/healthz" + url = local.healthcheck_url interval = 5 threshold = 6 } } + +locals { + server_base_path = var.subdomain ? "" : format("/@%s/%s/apps/%s/", data.coder_workspace_owner.me.name, data.coder_workspace.me.name, var.slug) + url = var.folder == "" ? "http://localhost:${var.port}${local.server_base_path}" : "http://localhost:${var.port}${local.server_base_path}?folder=${var.folder}" + healthcheck_url = var.subdomain ? "http://localhost:${var.port}/healthz" : "http://localhost:${var.port}${local.server_base_path}/healthz" +}