Merge branch 'main' into atif/validate-readme-source

This commit is contained in:
DevCats 2025-10-06 08:46:35 -05:00 committed by GitHub
commit d8c9ad122c
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
5 changed files with 38 additions and 15 deletions

View File

@ -48,7 +48,7 @@ jobs:
- name: Validate formatting - name: Validate formatting
run: bun fmt:ci run: bun fmt:ci
- name: Check for typos - name: Check for typos
uses: crate-ci/typos@v1.36.3 uses: crate-ci/typos@v1.37.2
with: with:
config: .github/typos.toml config: .github/typos.toml
validate-readme-files: validate-readme-files:

View File

@ -42,7 +42,7 @@ run "test_claude_code_with_api_key" {
} }
assert { assert {
condition = coder_env.claude_api_key.value == "test-api-key-123" condition = coder_env.claude_api_key[0].value == "test-api-key-123"
error_message = "Claude API key value should match the input" error_message = "Claude API key value should match the input"
} }
} }

View File

@ -19,7 +19,7 @@ Consult the [JetBrains documentation](https://www.jetbrains.com/help/idea/prereq
module "jetbrains_gateway" { module "jetbrains_gateway" {
count = data.coder_workspace.me.start_count count = data.coder_workspace.me.start_count
source = "registry.coder.com/coder/jetbrains-gateway/coder" source = "registry.coder.com/coder/jetbrains-gateway/coder"
version = "1.2.3" version = "1.2.4"
agent_id = coder_agent.example.id agent_id = coder_agent.example.id
folder = "/home/coder/example" folder = "/home/coder/example"
jetbrains_ides = ["CL", "GO", "IU", "PY", "WS"] jetbrains_ides = ["CL", "GO", "IU", "PY", "WS"]
@ -37,7 +37,7 @@ module "jetbrains_gateway" {
module "jetbrains_gateway" { module "jetbrains_gateway" {
count = data.coder_workspace.me.start_count count = data.coder_workspace.me.start_count
source = "registry.coder.com/coder/jetbrains-gateway/coder" source = "registry.coder.com/coder/jetbrains-gateway/coder"
version = "1.2.3" version = "1.2.4"
agent_id = coder_agent.example.id agent_id = coder_agent.example.id
folder = "/home/coder/example" folder = "/home/coder/example"
jetbrains_ides = ["GO", "WS"] jetbrains_ides = ["GO", "WS"]
@ -51,7 +51,7 @@ module "jetbrains_gateway" {
module "jetbrains_gateway" { module "jetbrains_gateway" {
count = data.coder_workspace.me.start_count count = data.coder_workspace.me.start_count
source = "registry.coder.com/coder/jetbrains-gateway/coder" source = "registry.coder.com/coder/jetbrains-gateway/coder"
version = "1.2.3" version = "1.2.4"
agent_id = coder_agent.example.id agent_id = coder_agent.example.id
folder = "/home/coder/example" folder = "/home/coder/example"
jetbrains_ides = ["IU", "PY"] jetbrains_ides = ["IU", "PY"]
@ -66,7 +66,7 @@ module "jetbrains_gateway" {
module "jetbrains_gateway" { module "jetbrains_gateway" {
count = data.coder_workspace.me.start_count count = data.coder_workspace.me.start_count
source = "registry.coder.com/coder/jetbrains-gateway/coder" source = "registry.coder.com/coder/jetbrains-gateway/coder"
version = "1.2.3" version = "1.2.4"
agent_id = coder_agent.example.id agent_id = coder_agent.example.id
folder = "/home/coder/example" folder = "/home/coder/example"
jetbrains_ides = ["IU", "PY"] jetbrains_ides = ["IU", "PY"]
@ -91,7 +91,7 @@ module "jetbrains_gateway" {
module "jetbrains_gateway" { module "jetbrains_gateway" {
count = data.coder_workspace.me.start_count count = data.coder_workspace.me.start_count
source = "registry.coder.com/coder/jetbrains-gateway/coder" source = "registry.coder.com/coder/jetbrains-gateway/coder"
version = "1.2.3" version = "1.2.4"
agent_id = coder_agent.example.id agent_id = coder_agent.example.id
folder = "/home/coder/example" folder = "/home/coder/example"
jetbrains_ides = ["GO", "WS"] jetbrains_ides = ["GO", "WS"]
@ -109,7 +109,7 @@ Due to the highest priority of the `ide_download_link` parameter in the `(jetbra
module "jetbrains_gateway" { module "jetbrains_gateway" {
count = data.coder_workspace.me.start_count count = data.coder_workspace.me.start_count
source = "registry.coder.com/coder/jetbrains-gateway/coder" source = "registry.coder.com/coder/jetbrains-gateway/coder"
version = "1.2.3" version = "1.2.4"
agent_id = coder_agent.example.id agent_id = coder_agent.example.id
folder = "/home/coder/example" folder = "/home/coder/example"
jetbrains_ides = ["GO", "WS"] jetbrains_ides = ["GO", "WS"]

View File

@ -20,7 +20,7 @@ describe("jetbrains-gateway", async () => {
folder: "/home/coder", folder: "/home/coder",
}); });
expect(state.outputs.url.value).toBe( expect(state.outputs.url.value).toBe(
"jetbrains-gateway://connect#type=coder&workspace=default&owner=default&folder=/home/coder&url=https://mydeployment.coder.com&token=$SESSION_TOKEN&ide_product_code=IU&ide_build_number=243.21565.193&ide_download_link=https://download.jetbrains.com/idea/ideaIU-2024.3.tar.gz&agent_id=foo", "jetbrains-gateway://connect#type=coder&workspace=default&owner=default&folder=/home/coder&url=https://mydeployment.coder.com&token=$SESSION_TOKEN&ide_product_code=IU&ide_build_number=243.21565.193&ide_download_link=https://download.jetbrains.com/idea/ideaIU-2024.3.tar.gz&agent=",
); );
const coder_app = state.resources.find( const coder_app = state.resources.find(
@ -40,4 +40,28 @@ describe("jetbrains-gateway", async () => {
}); });
expect(state.outputs.identifier.value).toBe("IU"); expect(state.outputs.identifier.value).toBe("IU");
}); });
it("optionally includes agent when an agent name is provided", async () => {
const state = await runTerraformApply(import.meta.dir, {
agent_id: "foo",
agent_name: "main",
folder: "/home/coder",
});
expect(state.outputs.url.value).toBe(
"jetbrains-gateway://connect#type=coder&workspace=default&owner=default&folder=/home/coder&url=https://mydeployment.coder.com&token=$SESSION_TOKEN&ide_product_code=IU&ide_build_number=243.21565.193&ide_download_link=https://download.jetbrains.com/idea/ideaIU-2024.3.tar.gz&agent=main",
);
});
it("includes the agent parameter even when the provided value is blank", async () => {
const state = await runTerraformApply(import.meta.dir, {
agent_id: "foo",
agent_name: " ",
folder: "/home/coder",
});
expect(state.outputs.url.value).toBe(
"jetbrains-gateway://connect#type=coder&workspace=default&owner=default&folder=/home/coder&url=https://mydeployment.coder.com&token=$SESSION_TOKEN&ide_product_code=IU&ide_build_number=243.21565.193&ide_download_link=https://download.jetbrains.com/idea/ideaIU-2024.3.tar.gz&agent= ",
);
});
}); });

View File

@ -30,15 +30,14 @@ variable "agent_id" {
variable "slug" { variable "slug" {
type = string type = string
description = "The slug for the coder_app. Allows resuing the module with the same template." description = "The slug for the coder_app. Allows reusing the module with the same template."
default = "gateway" default = "gateway"
} }
variable "agent_name" { variable "agent_name" {
type = string type = string
description = "Agent name. (unused). Will be removed in a future version" description = "Agent name."
default = ""
default = ""
} }
variable "folder" { variable "folder" {
@ -348,8 +347,8 @@ resource "coder_app" "gateway" {
local.build_number, local.build_number,
"&ide_download_link=", "&ide_download_link=",
local.download_link, local.download_link,
"&agent_id=", "&agent=",
var.agent_id, var.agent_name,
]) ])
} }