Skip to content

Commit 254f459

Browse files
authored
chore(dogfood): add a coder_app for JetBrains gateway IDEs (#9644)
1 parent a229855 commit 254f459

File tree

2 files changed

+104
-1
lines changed

2 files changed

+104
-1
lines changed

dogfood/main.tf

Lines changed: 40 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -71,6 +71,37 @@ data "coder_parameter" "region" {
7171
# }
7272
}
7373

74+
data "coder_parameter" "jetbrains_ide" {
75+
type = "list(string)"
76+
name = "jetbrains_ide"
77+
display_name = "JetBrains IDE"
78+
icon = "/icon/gateway.svg"
79+
mutable = true
80+
default = jsonencode([
81+
"GO",
82+
"232.9559.64",
83+
"https://download.jetbrains.com/go/goland-2023.2.1.tar.gz"
84+
])
85+
option {
86+
icon = "/icon/goland.svg"
87+
name = "GoLand"
88+
value = jsonencode([
89+
"GO",
90+
"232.9559.64",
91+
"https://download.jetbrains.com/go/goland-2023.2.1.tar.gz"
92+
])
93+
}
94+
option {
95+
icon = "/icon/webstorm.svg"
96+
name = "WebStorm"
97+
value = jsonencode([
98+
"WS",
99+
"232.9559.54",
100+
"https://download.jetbrains.com/webstorm/WebStorm-2023.2.1.tar.gz"
101+
])
102+
}
103+
}
104+
74105
provider "docker" {
75106
host = lookup(local.docker_host, data.coder_parameter.region.value)
76107
}
@@ -189,7 +220,6 @@ resource "coder_agent" "dev" {
189220
repo_dir="$${repo_dir/#~\//$HOME\/}"
190221
if [ ! -d "$repo_dir" ]; then
191222
mkdir -p "$repo_dir"
192-
193223
git clone https://github.com/coder/coder "$repo_dir"
194224
fi
195225
@@ -242,6 +272,15 @@ resource "coder_app" "filebrowser" {
242272
share = "owner"
243273
}
244274

275+
resource "coder_app" "gateway" {
276+
agent_id = coder_agent.dev.id
277+
display_name = data.coder_parameter.jetbrains_ide.option[index(data.coder_parameter.jetbrains_ide.option.*.value, data.coder_parameter.jetbrains_ide.value)].name
278+
slug = "gateway"
279+
url = "jetbrains-gateway://connect#type=coder&workspace=${data.coder_workspace.me.name}&agent=dev&folder=${replace(data.coder_parameter.repo_dir.value, "/^~\\//", "/home/coder/")}&url=${data.coder_workspace.me.access_url}&token=${data.coder_workspace.me.owner_session_token}&ide_product_code=${jsondecode(data.coder_parameter.jetbrains_ide.value)[0]}&ide_build_number=${jsondecode(data.coder_parameter.jetbrains_ide.value)[1]}&ide_download_link=${jsondecode(data.coder_parameter.jetbrains_ide.value)[2]}"
280+
icon = data.coder_parameter.jetbrains_ide.option[index(data.coder_parameter.jetbrains_ide.option.*.value, data.coder_parameter.jetbrains_ide.value)].icon
281+
external = true
282+
}
283+
245284
resource "docker_volume" "home_volume" {
246285
name = "coder-${data.coder_workspace.me.id}-home"
247286
# Protect the volume from being deleted due to changes in attributes.

site/static/icon/gateway.svg

Lines changed: 64 additions & 0 deletions
Loading

0 commit comments

Comments
 (0)
pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy