Refactor multiple modules for improved flexibility

- Transition modules to use slug and agent_name variables for custom configurations.
- Update Terraform resources to dynamically generate URLs and paths.
- Enhance form handling logic in Devolutions patch script.
This commit is contained in:
Muhammad Atif Ali
2024-10-22 10:43:37 +05:00
parent ce5a5b383a
commit 0b2bc1de9e
16 changed files with 441 additions and 279 deletions

View File

@@ -16,7 +16,7 @@ Uses the [Coder Remote VS Code Extension](https://github.com/coder/vscode-coder)
```tf
module "vscode" {
source = "registry.coder.com/modules/vscode-desktop/coder"
version = "1.0.15"
version = "1.0.23"
agent_id = coder_agent.example.id
}
```
@@ -28,7 +28,7 @@ module "vscode" {
```tf
module "vscode" {
source = "registry.coder.com/modules/vscode-desktop/coder"
version = "1.0.15"
version = "1.0.23"
agent_id = coder_agent.example.id
folder = "/home/coder/project"
}

View File

@@ -20,6 +20,12 @@ variable "folder" {
default = ""
}
variable "slug" {
type = string
description = "The slug of the coder_app resource."
default = "vscode-desktop"
}
variable "open_recent" {
type = bool
description = "Open the most recent workspace or folder. Falls back to the folder if there is no recent workspace or folder to open."
@@ -39,21 +45,17 @@ resource "coder_app" "vscode" {
agent_id = var.agent_id
external = true
icon = "/icon/code.svg"
slug = "vscode"
slug = var.slug
display_name = "VS Code Desktop"
order = var.order
url = join("", [
"vscode://coder.coder-remote/open",
"?owner=",
url = format(
"vscode://coder.coder-remote/open?owner=%s&workspace=%s%s%s&url=%s&token=$SESSION_TOKEN",
data.coder_workspace_owner.me.name,
"&workspace=",
data.coder_workspace.me.name,
var.folder != "" ? join("", ["&folder=", var.folder]) : "",
var.folder != "" ? format("&folder=%s", var.folder) : "",
var.open_recent ? "&openRecent" : "",
"&url=",
data.coder_workspace.me.access_url,
"&token=$SESSION_TOKEN",
])
data.coder_workspace.me.access_url
)
}
output "vscode_url" {