From 7098aadb353794cf8b9508d68b1ec5863217fbe7 Mon Sep 17 00:00:00 2001 From: Stephen Kirby Date: Tue, 26 Sep 2023 01:37:32 +0000 Subject: [PATCH 01/33] added regions, need emojis --- fly-region/main.tf | 249 +++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 249 insertions(+) create mode 100644 fly-region/main.tf diff --git a/fly-region/main.tf b/fly-region/main.tf new file mode 100644 index 0000000..4ff90fa --- /dev/null +++ b/fly-region/main.tf @@ -0,0 +1,249 @@ +terraform { + required_version = ">= 1.0" + + required_providers { + coder = { + source = "coder/coder" + version = ">= 0.12" + } + } +} + +variable "display_name" { + default = "Fly.io Region" + description = "The display name of the parameter." + type = string +} + +variable "description" { + default = "The region to deploy workspace infrastructure." + description = "The description of the parameter." + type = string +} + +variable "default" { + default = "us-east-1" + description = "The default region to use if no region is specified." + type = string +} + +variable "mutable" { + default = false + description = "Whether the parameter can be changed after creation." + type = bool +} + +locals { + regions = { + "ams" = { + name = "Amsterdam, Netherlands" + gateway = true + paid_only = false + icon = "/emojis/TODO.png" + } + "arn" = { + name = "Stockholm, Sweden" + gateway = false + paid_only = false + icon = "/emojis/TODO.png" + } + "atl" = { + name = "Atlanta, Georgia (US)" + gateway = false + paid_only = false + icon = "/emojis/1f1fa-1f1f8.png" + } + "bog" = { + name = "Bogotá, Colombia" + gateway = false + paid_only = false + icon = "/emojis/TODO.png" + } + "bom" = { + name = "Mumbai, India" + gateway = true + paid_only = true + icon = "/emojis/TODO.png" + } + "bos" = { + name = "Boston, Massachusetts (US)" + gateway = false + paid_only = false + icon = "/emojis/1f1fa-1f1f8.png" + } + "cdg" = { + name = "Paris, France" + gateway = true + paid_only = false + icon = "/emojis/TODO.png" + } + "den" = { + name = "Denver, Colorado (US)" + gateway = false + paid_only = false + icon = "/emojis/1f1fa-1f1f8.png" + } + "dfw" = { + name = "Dallas, Texas (US)" + gateway = true + paid_only = false + icon = "/emojis/1f1fa-1f1f8.png" + } + "ewr" = { + name = "Secaucus, NJ (US)" + gateway = false + paid_only = false + icon = "/emojis/1f1fa-1f1f8.png" + } + "eze" = { + name = "Ezeiza, Argentina" + gateway = false + paid_only = false + icon = "/emojis/TODO.png" + } + "fra" = { + name = "Frankfurt, Germany" + gateway = true + paid_only = true + icon = "/emojis/TODO.png" + } + "gdl" = { + name = "Guadalajara, Mexico" + gateway = false + paid_only = false + icon = "/emojis/TODO.png" + } + "gig" = { + name = "Rio de Janeiro, Brazil" + gateway = false + paid_only = false + icon = "/emojis/TODO.png" + } + "gru" = { + name = "Sao Paulo, Brazil" + gateway = false + paid_only = false + icon = "/emojis/TODO.png" + } + "hkg" = { + name = "Hong Kong, Hong Kong" + gateway = true + paid_only = false + icon = "/emojis/TODO.png" + } + "iad" = { + name = "Ashburn, Virginia (US)" + gateway = true + paid_only = false + icon = "/emojis/1f1fa-1f1f8.png" + } + "jnb" = { + name = "Johannesburg, South Africa" + gateway = false + paid_only = false + icon = "/emojis/TODO.png" + } + "lax" = { + name = "Los Angeles, California (US)" + gateway = true + paid_only = false + icon = "/emojis/1f1fa-1f1f8.png" + } + "lhr" = { + name = "London, United Kingdom" + gateway = true + paid_only = false + icon = "/emojis/TODO.png" + } + "mad" = { + name = "Madrid, Spain" + gateway = false + paid_only = false + icon = "/emojis/TODO.png" + } + "mia" = { + name = "Miami, Florida (US)" + gateway = false + paid_only = false + icon = "/emojis/1f1fa-1f1f8.png" + } + "nrt" = { + name = "Tokyo, Japan" + gateway = true + paid_only = false + icon = "/emojis/TODO.png" + } + "ord" = { + name = "Chicago, Illinois (US)" + gateway = true + paid_only = false + icon = "/emojis/1f1fa-1f1f8.png" + } + "otp" = { + name = "Bucharest, Romania" + gateway = false + paid_only = false + icon = "/emojis/TODO.png" + } + "phx" = { + name = "Phoenix, Arizona (US)" + gateway = false + paid_only = false + icon = "/emojis/1f1fa-1f1f8.png" + } + "qro" = { + name = "Querétaro, Mexico" + gateway = false + paid_only = false + icon = "/emojis/TODO.png" + } + "scl" = { + name = "Santiago, Chile" + gateway = true + paid_only = false + icon = "/emojis/TODO.png" + } + "sea" = { + name = "Seattle, Washington (US)" + gateway = true + paid_only = false + icon = "/emojis/1f1fa-1f1f8.png" + } + "sin" = { + name = "Singapore, Singapore" + gateway = true + paid_only = false + icon = "/emojis/TODO.png" + } + "sjc" = { + name = "San Jose, California (US)" + gateway = true + paid_only = false + icon = "/emojis/1f1fa-1f1f8.png" + } + "syd" = { + name = "Sydney, Australia" + gateway = true + paid_only = false + icon = "/emojis/TODO.png" + } + "waw" = { + name = "Warsaw, Poland" + gateway = false + paid_only = false + icon = "/emojis/TODO.png" + } + "yul" = { + name = "Montreal, Canada" + gateway = false + paid_only = false + icon = "/emojis/1f1e8-1f1e6.png" + } + "yyz" = { + name = "Toronto, Canada" + gateway = true + paid_only = false + icon = "/emojis/1f1e8-1f1e6.png" + } + } +} \ No newline at end of file From d66de90fed04421880d2c8dc7d67bf61c6687410 Mon Sep 17 00:00:00 2001 From: Stephen Kirby Date: Tue, 26 Sep 2023 02:23:50 +0000 Subject: [PATCH 02/33] added flags --- fly-region/main.tf | 50 ++++++++++++++++++++++++++++++---------------- 1 file changed, 33 insertions(+), 17 deletions(-) diff --git a/fly-region/main.tf b/fly-region/main.tf index 4ff90fa..855d1ab 100644 --- a/fly-region/main.tf +++ b/fly-region/main.tf @@ -39,13 +39,13 @@ locals { name = "Amsterdam, Netherlands" gateway = true paid_only = false - icon = "/emojis/TODO.png" + icon = "/emojis/1f1f3-1f1f1.png" } "arn" = { name = "Stockholm, Sweden" gateway = false paid_only = false - icon = "/emojis/TODO.png" + icon = "/emojis/1f1f8-1f1ea.png" } "atl" = { name = "Atlanta, Georgia (US)" @@ -57,13 +57,13 @@ locals { name = "Bogotá, Colombia" gateway = false paid_only = false - icon = "/emojis/TODO.png" + icon = "/emojis/1f1e8-1f1f4.png" } "bom" = { name = "Mumbai, India" gateway = true paid_only = true - icon = "/emojis/TODO.png" + icon = "/emojis/1f1ee-1f1f3.png" } "bos" = { name = "Boston, Massachusetts (US)" @@ -75,7 +75,7 @@ locals { name = "Paris, France" gateway = true paid_only = false - icon = "/emojis/TODO.png" + icon = "/emojis/1f1eb-1f1f7.png" } "den" = { name = "Denver, Colorado (US)" @@ -99,37 +99,37 @@ locals { name = "Ezeiza, Argentina" gateway = false paid_only = false - icon = "/emojis/TODO.png" + icon = "/emojis/1f1e6-1f1f7.png" } "fra" = { name = "Frankfurt, Germany" gateway = true paid_only = true - icon = "/emojis/TODO.png" + icon = "/emojis/1f1e9-1f1ea.png" } "gdl" = { name = "Guadalajara, Mexico" gateway = false paid_only = false - icon = "/emojis/TODO.png" + icon = "/emojis/1f1f2-1f1fd.png" } "gig" = { name = "Rio de Janeiro, Brazil" gateway = false paid_only = false - icon = "/emojis/TODO.png" + icon = "/emojis/1f1e7-1f1f7.png" } "gru" = { name = "Sao Paulo, Brazil" gateway = false paid_only = false - icon = "/emojis/TODO.png" + icon = "/emojis/1f1e7-1f1f7.png" } "hkg" = { name = "Hong Kong, Hong Kong" gateway = true paid_only = false - icon = "/emojis/TODO.png" + icon = "/emojis/1f1ed-1f1f0.png" } "iad" = { name = "Ashburn, Virginia (US)" @@ -141,7 +141,7 @@ locals { name = "Johannesburg, South Africa" gateway = false paid_only = false - icon = "/emojis/TODO.png" + icon = "/emojis/1f1ff-1f1e6.png" } "lax" = { name = "Los Angeles, California (US)" @@ -153,13 +153,13 @@ locals { name = "London, United Kingdom" gateway = true paid_only = false - icon = "/emojis/TODO.png" + icon = "/emojis/1f1ec-1f1e7.png" } "mad" = { name = "Madrid, Spain" gateway = false paid_only = false - icon = "/emojis/TODO.png" + icon = "/emojis/1f1ea-1f1f8.png" } "mia" = { name = "Miami, Florida (US)" @@ -171,7 +171,7 @@ locals { name = "Tokyo, Japan" gateway = true paid_only = false - icon = "/emojis/TODO.png" + icon = "/emojis/1f1ef-1f1f5.png" } "ord" = { name = "Chicago, Illinois (US)" @@ -183,7 +183,7 @@ locals { name = "Bucharest, Romania" gateway = false paid_only = false - icon = "/emojis/TODO.png" + icon = "/emojis/1f1f7-1f1f4.png" } "phx" = { name = "Phoenix, Arizona (US)" @@ -195,7 +195,7 @@ locals { name = "Querétaro, Mexico" gateway = false paid_only = false - icon = "/emojis/TODO.png" + icon = "/emojis/1f1f2-1f1fd.png" } "scl" = { name = "Santiago, Chile" @@ -246,4 +246,20 @@ locals { icon = "/emojis/1f1e8-1f1e6.png" } } +} + +data "coder_parameter" "region" { + name = "flyio_region" + display_name = var.display_name + description = var.description + default = var.default + mutable = var.mutable + dynamic "option" { + for_each = { for k, v in local.regions : k => v if !(contains(var.exclude, k)) } + content { + name = try(var.custom_names[option.key], option.value.name) + icon = try(var.custom_icons[option.key], option.value.icon) + value = option.key + } + } } \ No newline at end of file From 3ce6eb0858340bdd5af23c6aad307f6bd56aa4a8 Mon Sep 17 00:00:00 2001 From: Stephen Kirby Date: Tue, 26 Sep 2023 02:24:05 +0000 Subject: [PATCH 03/33] added flags --- fly-region/main.tf | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/fly-region/main.tf b/fly-region/main.tf index 855d1ab..9f6e544 100644 --- a/fly-region/main.tf +++ b/fly-region/main.tf @@ -201,7 +201,7 @@ locals { name = "Santiago, Chile" gateway = true paid_only = false - icon = "/emojis/TODO.png" + icon = "/emojis/1f1e8-1f1f1.png" } "sea" = { name = "Seattle, Washington (US)" @@ -213,7 +213,7 @@ locals { name = "Singapore, Singapore" gateway = true paid_only = false - icon = "/emojis/TODO.png" + icon = "/emojis/1f1f8-1f1ec.png" } "sjc" = { name = "San Jose, California (US)" @@ -225,13 +225,13 @@ locals { name = "Sydney, Australia" gateway = true paid_only = false - icon = "/emojis/TODO.png" + icon = "/emojis/1f1e6-1f1fa.png" } "waw" = { name = "Warsaw, Poland" gateway = false paid_only = false - icon = "/emojis/TODO.png" + icon = "/emojis/1f1f5-1f1f1.png" } "yul" = { name = "Montreal, Canada" From 25a207766863a103406cf399050303f677bab49d Mon Sep 17 00:00:00 2001 From: Stephen Kirby Date: Tue, 26 Sep 2023 18:14:20 +0000 Subject: [PATCH 04/33] updated coder_param name --- fly-region/main.tf | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/fly-region/main.tf b/fly-region/main.tf index 9f6e544..423bbb5 100644 --- a/fly-region/main.tf +++ b/fly-region/main.tf @@ -248,7 +248,7 @@ locals { } } -data "coder_parameter" "region" { +data "coder_parameter" "fly_region" { name = "flyio_region" display_name = var.display_name description = var.description From 34ec21cfbc83aea86f86fad1ab5e7ace1682fece Mon Sep 17 00:00:00 2001 From: Stephen Kirby Date: Tue, 26 Sep 2023 18:35:01 +0000 Subject: [PATCH 05/33] added region whitelist --- fly-region/main.tf | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/fly-region/main.tf b/fly-region/main.tf index 423bbb5..137f24b 100644 --- a/fly-region/main.tf +++ b/fly-region/main.tf @@ -33,6 +33,12 @@ variable "mutable" { type = bool } +variable "regions" { + default = [] + description = "List of regions to include for region selection." + type = list(string) +} + locals { regions = { "ams" = { @@ -254,8 +260,8 @@ data "coder_parameter" "fly_region" { description = var.description default = var.default mutable = var.mutable - dynamic "option" { - for_each = { for k, v in local.regions : k => v if !(contains(var.exclude, k)) } + dynamic "option" { # TODO: maybe set var.regions to all possible regions to avoid unessecary checks + for_each = { for k, v in local.regions : k => v if anytrue([for d in var.regions : k == d ]) || length(var.regions) == 0 } content { name = try(var.custom_names[option.key], option.value.name) icon = try(var.custom_icons[option.key], option.value.icon) From 895eca769dad483c6ac93c5475d6308a5a8b46fc Mon Sep 17 00:00:00 2001 From: Stephen Kirby Date: Tue, 26 Sep 2023 18:36:55 +0000 Subject: [PATCH 06/33] readded custom_names, custom_icons --- fly-region/main.tf | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/fly-region/main.tf b/fly-region/main.tf index 137f24b..d778586 100644 --- a/fly-region/main.tf +++ b/fly-region/main.tf @@ -33,6 +33,18 @@ variable "mutable" { type = bool } +variable "custom_names" { + default = {} + description = "A map of custom display names for region IDs." + type = map(string) +} + +variable "custom_icons" { + default = {} + description = "A map of custom icons for region IDs." + type = map(string) +} + variable "regions" { default = [] description = "List of regions to include for region selection." From 071c0fef2814a05df509455700db2e3ee6e565dd Mon Sep 17 00:00:00 2001 From: Stephen Kirby Date: Tue, 26 Sep 2023 18:37:43 +0000 Subject: [PATCH 07/33] fixed default --- fly-region/main.tf | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/fly-region/main.tf b/fly-region/main.tf index d778586..6df6299 100644 --- a/fly-region/main.tf +++ b/fly-region/main.tf @@ -22,7 +22,7 @@ variable "description" { } variable "default" { - default = "us-east-1" + default = "ams" description = "The default region to use if no region is specified." type = string } From 76644e0f1ab3ac60e3101c6277cd23627ff4cdfd Mon Sep 17 00:00:00 2001 From: Stephen Kirby Date: Tue, 26 Sep 2023 18:42:01 +0000 Subject: [PATCH 08/33] complete minus regions --- fly-region/main.tf | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/fly-region/main.tf b/fly-region/main.tf index 6df6299..ceca802 100644 --- a/fly-region/main.tf +++ b/fly-region/main.tf @@ -272,7 +272,7 @@ data "coder_parameter" "fly_region" { description = var.description default = var.default mutable = var.mutable - dynamic "option" { # TODO: maybe set var.regions to all possible regions to avoid unessecary checks + dynamic "option" { for_each = { for k, v in local.regions : k => v if anytrue([for d in var.regions : k == d ]) || length(var.regions) == 0 } content { name = try(var.custom_names[option.key], option.value.name) From 1b51d08d216c6adda70712eb7eef27fef6c4f108 Mon Sep 17 00:00:00 2001 From: Stephen Kirby Date: Tue, 26 Sep 2023 19:04:35 +0000 Subject: [PATCH 09/33] README WIP --- .images/filtered_flyio.png | Bin 0 -> 74480 bytes fly-region/README.md | 45 +++++++++++++++++++++++++++++++++++-- fly-region/main.tf | 2 +- 3 files changed, 44 insertions(+), 3 deletions(-) create mode 100644 .images/filtered_flyio.png diff --git a/.images/filtered_flyio.png b/.images/filtered_flyio.png new file mode 100644 index 0000000000000000000000000000000000000000..f7b07111490b3b88259bbaae97d7a5d59d61cfc0 GIT binary patch literal 74480 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 literal 0 HcmV?d00001 diff --git a/fly-region/README.md b/fly-region/README.md index 96babc3..5e71540 100644 --- a/fly-region/README.md +++ b/fly-region/README.md @@ -9,8 +9,49 @@ tags: [helper, parameter, fly] # Fly.io Region -A parameter with all fly.io regions. This allows developers to select the region closest to them. +This module adds Fly.io regions to your Coder template. Regions can be whitelisted using the `regions` argument and given custom names and custom icons with their respective map arguments (`custom_names`, `custom_icons`). ## Examples -TODO \ No newline at end of file +### Using default settings + +```hcl +module "fly-region" { + source = "https://registry.coder.com/modules/fly-region" +} +``` + +[]() + + +### Using region whitelist + +The regions argument can be used to display only the desired regions in the Coder parameter. + +```hcl +module "fly-region" { + source = "https://registry.coder.com/modules/fly-region" + default = "ams" + regions = ["ams", "arn", "atl"] +} +``` + + TODO: Add screenshot filtered_flyio.png + + +### Using custom icons and names + +Set custom icons and names with their respective maps. + +```hcl +module "fly-region" { + source = "https://registry.coder.com/modules/fly-region" + default = "ams" + custom_icons = { + "ams" = "/emojis/1f90e.png" + } + custom_names = { + "ams" = "We love the Netherlands!" + } +} +``` \ No newline at end of file diff --git a/fly-region/main.tf b/fly-region/main.tf index ceca802..cafb91e 100644 --- a/fly-region/main.tf +++ b/fly-region/main.tf @@ -270,7 +270,7 @@ data "coder_parameter" "fly_region" { name = "flyio_region" display_name = var.display_name description = var.description - default = var.default + default = (var.default != null && var.default != "") && (contains(var.regions, var.default) || length(var.regions) == 0) ? var.default : null mutable = var.mutable dynamic "option" { for_each = { for k, v in local.regions : k => v if anytrue([for d in var.regions : k == d ]) || length(var.regions) == 0 } From 2ab85f0b1729f9fef2b8277183eed750c4d6682e Mon Sep 17 00:00:00 2001 From: Stephen Kirby Date: Tue, 26 Sep 2023 19:20:20 +0000 Subject: [PATCH 10/33] finished testing and readme with screenshots --- .images/filtered_flyio.png | Bin 74480 -> 0 bytes fly-region/README.md | 15 ++++++++++++--- fly-region/main.tf | 4 ++++ 3 files changed, 16 insertions(+), 3 deletions(-) delete mode 100644 .images/filtered_flyio.png diff --git a/.images/filtered_flyio.png b/.images/filtered_flyio.png deleted file mode 100644 index f7b07111490b3b88259bbaae97d7a5d59d61cfc0..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 74480 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 diff --git a/fly-region/README.md b/fly-region/README.md index 5e71540..ba831b4 100644 --- a/fly-region/README.md +++ b/fly-region/README.md @@ -15,13 +15,16 @@ This module adds Fly.io regions to your Coder template. Regions can be whitelist ### Using default settings +We can use the simplest format here, only adding a default selection as the `atl` region. + ```hcl module "fly-region" { source = "https://registry.coder.com/modules/fly-region" + default = "atl" } ``` -[]() +![Fly.io Default](../.images/flyio-basic.png) ### Using region whitelist @@ -36,7 +39,7 @@ module "fly-region" { } ``` - TODO: Add screenshot filtered_flyio.png +![Fly.io Filtered Regions](../.images/flyio-filtered.png) ### Using custom icons and names @@ -54,4 +57,10 @@ module "fly-region" { "ams" = "We love the Netherlands!" } } -``` \ No newline at end of file +``` + +![Fly.io custom icon and name](../.images/flyio-custom.png) + +## Associated template + +For a pre-configured Fly.io template, see the Coder template registry. \ No newline at end of file diff --git a/fly-region/main.tf b/fly-region/main.tf index cafb91e..d37d346 100644 --- a/fly-region/main.tf +++ b/fly-region/main.tf @@ -280,4 +280,8 @@ data "coder_parameter" "fly_region" { value = option.key } } +} + +output "value" { + value = data.coder_parameter.region.value } \ No newline at end of file From 1bd545ecf05d0f4e728362b1b942509e84b41eda Mon Sep 17 00:00:00 2001 From: Stephen Kirby Date: Tue, 26 Sep 2023 19:22:24 +0000 Subject: [PATCH 11/33] prettier satisfied --- fly-region/README.md | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/fly-region/README.md b/fly-region/README.md index ba831b4..6cd1f93 100644 --- a/fly-region/README.md +++ b/fly-region/README.md @@ -9,7 +9,7 @@ tags: [helper, parameter, fly] # Fly.io Region -This module adds Fly.io regions to your Coder template. Regions can be whitelisted using the `regions` argument and given custom names and custom icons with their respective map arguments (`custom_names`, `custom_icons`). +This module adds Fly.io regions to your Coder template. Regions can be whitelisted using the `regions` argument and given custom names and custom icons with their respective map arguments (`custom_names`, `custom_icons`). ## Examples @@ -26,7 +26,6 @@ module "fly-region" { ![Fly.io Default](../.images/flyio-basic.png) - ### Using region whitelist The regions argument can be used to display only the desired regions in the Coder parameter. @@ -41,7 +40,6 @@ module "fly-region" { ![Fly.io Filtered Regions](../.images/flyio-filtered.png) - ### Using custom icons and names Set custom icons and names with their respective maps. @@ -63,4 +61,4 @@ module "fly-region" { ## Associated template -For a pre-configured Fly.io template, see the Coder template registry. \ No newline at end of file +For a pre-configured Fly.io template, see the Coder template registry. From 7508a8f5b7cdc97edc717c4d1fc46604ca32d608 Mon Sep 17 00:00:00 2001 From: Stephen Kirby Date: Tue, 26 Sep 2023 19:34:27 +0000 Subject: [PATCH 12/33] prettier --- .images/flyio-basic.png | Bin 0 -> 87096 bytes .images/flyio-custom.png | Bin 0 -> 102014 bytes .images/flyio-filtered.png | Bin 0 -> 74480 bytes 3 files changed, 0 insertions(+), 0 deletions(-) create mode 100644 .images/flyio-basic.png create mode 100644 .images/flyio-custom.png create mode 100644 .images/flyio-filtered.png diff --git a/.images/flyio-basic.png b/.images/flyio-basic.png new file mode 100644 index 0000000000000000000000000000000000000000..4cd21a2f9b052d727d49a7659b9b5008d7f1a35d GIT binary patch literal 87096 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

      N~k6?9eUkgX&eLX((9YlnI^tx{|#sTfOBb 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ÝKbh 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ℑMp8dKbc^|w*f-ucHoyhe|zjU%3ad%|T= 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 S3AqCPD9ETtmr6c={eJ*%_>L0* literal 0 HcmV?d00001 diff --git a/.images/flyio-custom.png b/.images/flyio-custom.png new file mode 100644 index 0000000000000000000000000000000000000000..4ca25a492324a5daf9e4484815085ae99b08ccf4 GIT binary patch literal 102014 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≦?Ykep?IC+>%1m;0Vh= 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 KNS8>y4ftR8Q*Ffn literal 0 HcmV?d00001 diff --git a/.images/flyio-filtered.png b/.images/flyio-filtered.png new file mode 100644 index 0000000000000000000000000000000000000000..f7b07111490b3b88259bbaae97d7a5d59d61cfc0 GIT binary patch literal 74480 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 literal 0 HcmV?d00001 From 87c00a202edc06aab7a2a60c58aa3d2739b85e09 Mon Sep 17 00:00:00 2001 From: Stephen Kirby Date: Tue, 26 Sep 2023 19:38:58 +0000 Subject: [PATCH 13/33] added test --- fly-region/README.md | 1 - fly-region/main.test.ts | 25 +++++++++++++++++++++++++ 2 files changed, 25 insertions(+), 1 deletion(-) create mode 100644 fly-region/main.test.ts diff --git a/fly-region/README.md b/fly-region/README.md index 03a3502..6013a79 100644 --- a/fly-region/README.md +++ b/fly-region/README.md @@ -63,4 +63,3 @@ module "fly-region" { ## Associated template For a pre-configured Fly.io template, see the Coder template registry. - diff --git a/fly-region/main.test.ts b/fly-region/main.test.ts new file mode 100644 index 0000000..26af776 --- /dev/null +++ b/fly-region/main.test.ts @@ -0,0 +1,25 @@ +import { describe, expect, it } from "bun:test"; +import { + executeScriptInContainer, + runTerraformApply, + runTerraformInit, + testRequiredVariables, +} from "../test"; + +describe("azure-region", async () => { + await runTerraformInit(import.meta.dir); + + testRequiredVariables(import.meta.dir, {}); + + it("default output", async () => { + const state = await runTerraformApply(import.meta.dir, {}); + expect(state.outputs.value.value).toBe("ams"); + }); + + it("customized default", async () => { + const state = await runTerraformApply(import.meta.dir, { + default: "atl", + }); + expect(state.outputs.value.value).toBe("atl"); + }); +}); From 163391f58e2b065be1a9de143da6ff7ab6503098 Mon Sep 17 00:00:00 2001 From: Stephen Kirby Date: Tue, 26 Sep 2023 19:58:16 +0000 Subject: [PATCH 14/33] added template linkg --- fly-region/README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/fly-region/README.md b/fly-region/README.md index 6013a79..f1e7d57 100644 --- a/fly-region/README.md +++ b/fly-region/README.md @@ -62,4 +62,4 @@ module "fly-region" { ## Associated template -For a pre-configured Fly.io template, see the Coder template registry. +Also see the Coder template registry for a [Fly.io template](https://registry.coder.com/templates/fly-docker-image) that provisions workspaces as Fly.io machines. From e71b5e23f0b549dd9f97e8a70db06941297deffe Mon Sep 17 00:00:00 2001 From: Stephen Kirby Date: Tue, 26 Sep 2023 19:58:47 +0000 Subject: [PATCH 15/33] prettier formatted --- fly-region/README.md | 1 - 1 file changed, 1 deletion(-) diff --git a/fly-region/README.md b/fly-region/README.md index f1e7d57..f6ec1e5 100644 --- a/fly-region/README.md +++ b/fly-region/README.md @@ -13,7 +13,6 @@ This module adds Fly.io regions to your Coder template. Regions can be whitelist ## Examples - ### Using default settings We can use the simplest format here, only adding a default selection as the `atl` region. From 154ca74bbcc88eaca404d99ba6c5ef0b42c3923c Mon Sep 17 00:00:00 2001 From: Stephen Kirby Date: Tue, 26 Sep 2023 20:04:21 +0000 Subject: [PATCH 16/33] fixed output in main --- fly-region/main.tf | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/fly-region/main.tf b/fly-region/main.tf index d37d346..16db199 100644 --- a/fly-region/main.tf +++ b/fly-region/main.tf @@ -283,5 +283,5 @@ data "coder_parameter" "fly_region" { } output "value" { - value = data.coder_parameter.region.value + value = data.coder_parameter.fly_region.value } \ No newline at end of file From f9346f4c23a6267c1c6c5ebf9ae45576bc9f59b1 Mon Sep 17 00:00:00 2001 From: Stephen Kirby Date: Tue, 26 Sep 2023 20:07:16 +0000 Subject: [PATCH 17/33] set coder paramter default to null --- fly-region/main.tf | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/fly-region/main.tf b/fly-region/main.tf index 16db199..7c4a077 100644 --- a/fly-region/main.tf +++ b/fly-region/main.tf @@ -22,7 +22,7 @@ variable "description" { } variable "default" { - default = "ams" + default = null description = "The default region to use if no region is specified." type = string } From 6a83fe8793b6d1c377a4808c3fdecc3c02bd15ed Mon Sep 17 00:00:00 2001 From: Stephen Kirby Date: Tue, 26 Sep 2023 20:22:34 +0000 Subject: [PATCH 18/33] udpated default to null, improved default logic, renamed test --- fly-region/main.test.ts | 4 ++-- fly-region/main.tf | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/fly-region/main.test.ts b/fly-region/main.test.ts index 26af776..86f6bfc 100644 --- a/fly-region/main.test.ts +++ b/fly-region/main.test.ts @@ -6,14 +6,14 @@ import { testRequiredVariables, } from "../test"; -describe("azure-region", async () => { +describe("fly-region", async () => { await runTerraformInit(import.meta.dir); testRequiredVariables(import.meta.dir, {}); it("default output", async () => { const state = await runTerraformApply(import.meta.dir, {}); - expect(state.outputs.value.value).toBe("ams"); + expect(state.outputs.value.value).toBe(""); }); it("customized default", async () => { diff --git a/fly-region/main.tf b/fly-region/main.tf index 7c4a077..0267be7 100644 --- a/fly-region/main.tf +++ b/fly-region/main.tf @@ -270,7 +270,7 @@ data "coder_parameter" "fly_region" { name = "flyio_region" display_name = var.display_name description = var.description - default = (var.default != null && var.default != "") && (contains(var.regions, var.default) || length(var.regions) == 0) ? var.default : null + default = (var.default != null && var.default != "") && ((var.default != null ? contains(var.regions, var.default) : false) || length(var.regions) == 0) ? var.default : null mutable = var.mutable dynamic "option" { for_each = { for k, v in local.regions : k => v if anytrue([for d in var.regions : k == d ]) || length(var.regions) == 0 } From 72d5f7622eeda5fbcf19233ee2930ab2f63adbcc Mon Sep 17 00:00:00 2001 From: Stephen Kirby Date: Tue, 26 Sep 2023 20:32:45 +0000 Subject: [PATCH 19/33] bun fmt --- fly-region/main.tf | 266 ++++++++++++++++++++++----------------------- 1 file changed, 133 insertions(+), 133 deletions(-) diff --git a/fly-region/main.tf b/fly-region/main.tf index 0267be7..ff6a9e3 100644 --- a/fly-region/main.tf +++ b/fly-region/main.tf @@ -10,27 +10,27 @@ terraform { } variable "display_name" { - default = "Fly.io Region" - description = "The display name of the parameter." - type = string + default = "Fly.io Region" + description = "The display name of the parameter." + type = string } variable "description" { - default = "The region to deploy workspace infrastructure." - description = "The description of the parameter." - type = string + default = "The region to deploy workspace infrastructure." + description = "The description of the parameter." + type = string } variable "default" { - default = null - description = "The default region to use if no region is specified." - type = string + default = null + description = "The default region to use if no region is specified." + type = string } variable "mutable" { - default = false - description = "Whether the parameter can be changed after creation." - type = bool + default = false + description = "Whether the parameter can be changed after creation." + type = bool } variable "custom_names" { @@ -46,242 +46,242 @@ variable "custom_icons" { } variable "regions" { - default = [] + default = [] description = "List of regions to include for region selection." - type = list(string) + type = list(string) } locals { - regions = { + regions = { "ams" = { - name = "Amsterdam, Netherlands" - gateway = true + name = "Amsterdam, Netherlands" + gateway = true paid_only = false - icon = "/emojis/1f1f3-1f1f1.png" + icon = "/emojis/1f1f3-1f1f1.png" } "arn" = { - name = "Stockholm, Sweden" - gateway = false + name = "Stockholm, Sweden" + gateway = false paid_only = false - icon = "/emojis/1f1f8-1f1ea.png" + icon = "/emojis/1f1f8-1f1ea.png" } "atl" = { - name = "Atlanta, Georgia (US)" - gateway = false + name = "Atlanta, Georgia (US)" + gateway = false paid_only = false - icon = "/emojis/1f1fa-1f1f8.png" + icon = "/emojis/1f1fa-1f1f8.png" } "bog" = { - name = "Bogotá, Colombia" - gateway = false + name = "Bogotá, Colombia" + gateway = false paid_only = false - icon = "/emojis/1f1e8-1f1f4.png" + icon = "/emojis/1f1e8-1f1f4.png" } "bom" = { - name = "Mumbai, India" - gateway = true + name = "Mumbai, India" + gateway = true paid_only = true - icon = "/emojis/1f1ee-1f1f3.png" + icon = "/emojis/1f1ee-1f1f3.png" } "bos" = { - name = "Boston, Massachusetts (US)" - gateway = false + name = "Boston, Massachusetts (US)" + gateway = false paid_only = false - icon = "/emojis/1f1fa-1f1f8.png" + icon = "/emojis/1f1fa-1f1f8.png" } "cdg" = { - name = "Paris, France" - gateway = true + name = "Paris, France" + gateway = true paid_only = false - icon = "/emojis/1f1eb-1f1f7.png" + icon = "/emojis/1f1eb-1f1f7.png" } "den" = { - name = "Denver, Colorado (US)" - gateway = false + name = "Denver, Colorado (US)" + gateway = false paid_only = false - icon = "/emojis/1f1fa-1f1f8.png" + icon = "/emojis/1f1fa-1f1f8.png" } "dfw" = { - name = "Dallas, Texas (US)" - gateway = true + name = "Dallas, Texas (US)" + gateway = true paid_only = false - icon = "/emojis/1f1fa-1f1f8.png" + icon = "/emojis/1f1fa-1f1f8.png" } "ewr" = { - name = "Secaucus, NJ (US)" - gateway = false + name = "Secaucus, NJ (US)" + gateway = false paid_only = false - icon = "/emojis/1f1fa-1f1f8.png" + icon = "/emojis/1f1fa-1f1f8.png" } "eze" = { - name = "Ezeiza, Argentina" - gateway = false + name = "Ezeiza, Argentina" + gateway = false paid_only = false - icon = "/emojis/1f1e6-1f1f7.png" + icon = "/emojis/1f1e6-1f1f7.png" } "fra" = { - name = "Frankfurt, Germany" - gateway = true + name = "Frankfurt, Germany" + gateway = true paid_only = true - icon = "/emojis/1f1e9-1f1ea.png" + icon = "/emojis/1f1e9-1f1ea.png" } "gdl" = { - name = "Guadalajara, Mexico" - gateway = false + name = "Guadalajara, Mexico" + gateway = false paid_only = false - icon = "/emojis/1f1f2-1f1fd.png" + icon = "/emojis/1f1f2-1f1fd.png" } "gig" = { - name = "Rio de Janeiro, Brazil" - gateway = false + name = "Rio de Janeiro, Brazil" + gateway = false paid_only = false - icon = "/emojis/1f1e7-1f1f7.png" + icon = "/emojis/1f1e7-1f1f7.png" } "gru" = { - name = "Sao Paulo, Brazil" - gateway = false + name = "Sao Paulo, Brazil" + gateway = false paid_only = false - icon = "/emojis/1f1e7-1f1f7.png" + icon = "/emojis/1f1e7-1f1f7.png" } "hkg" = { - name = "Hong Kong, Hong Kong" - gateway = true + name = "Hong Kong, Hong Kong" + gateway = true paid_only = false - icon = "/emojis/1f1ed-1f1f0.png" + icon = "/emojis/1f1ed-1f1f0.png" } "iad" = { - name = "Ashburn, Virginia (US)" - gateway = true + name = "Ashburn, Virginia (US)" + gateway = true paid_only = false - icon = "/emojis/1f1fa-1f1f8.png" + icon = "/emojis/1f1fa-1f1f8.png" } "jnb" = { - name = "Johannesburg, South Africa" - gateway = false + name = "Johannesburg, South Africa" + gateway = false paid_only = false - icon = "/emojis/1f1ff-1f1e6.png" + icon = "/emojis/1f1ff-1f1e6.png" } "lax" = { - name = "Los Angeles, California (US)" - gateway = true + name = "Los Angeles, California (US)" + gateway = true paid_only = false - icon = "/emojis/1f1fa-1f1f8.png" + icon = "/emojis/1f1fa-1f1f8.png" } "lhr" = { - name = "London, United Kingdom" - gateway = true + name = "London, United Kingdom" + gateway = true paid_only = false - icon = "/emojis/1f1ec-1f1e7.png" + icon = "/emojis/1f1ec-1f1e7.png" } "mad" = { - name = "Madrid, Spain" - gateway = false + name = "Madrid, Spain" + gateway = false paid_only = false - icon = "/emojis/1f1ea-1f1f8.png" + icon = "/emojis/1f1ea-1f1f8.png" } "mia" = { - name = "Miami, Florida (US)" - gateway = false + name = "Miami, Florida (US)" + gateway = false paid_only = false - icon = "/emojis/1f1fa-1f1f8.png" + icon = "/emojis/1f1fa-1f1f8.png" } "nrt" = { - name = "Tokyo, Japan" - gateway = true + name = "Tokyo, Japan" + gateway = true paid_only = false - icon = "/emojis/1f1ef-1f1f5.png" + icon = "/emojis/1f1ef-1f1f5.png" } "ord" = { - name = "Chicago, Illinois (US)" - gateway = true + name = "Chicago, Illinois (US)" + gateway = true paid_only = false - icon = "/emojis/1f1fa-1f1f8.png" + icon = "/emojis/1f1fa-1f1f8.png" } "otp" = { - name = "Bucharest, Romania" - gateway = false + name = "Bucharest, Romania" + gateway = false paid_only = false - icon = "/emojis/1f1f7-1f1f4.png" + icon = "/emojis/1f1f7-1f1f4.png" } "phx" = { - name = "Phoenix, Arizona (US)" - gateway = false + name = "Phoenix, Arizona (US)" + gateway = false paid_only = false - icon = "/emojis/1f1fa-1f1f8.png" + icon = "/emojis/1f1fa-1f1f8.png" } "qro" = { - name = "Querétaro, Mexico" - gateway = false + name = "Querétaro, Mexico" + gateway = false paid_only = false - icon = "/emojis/1f1f2-1f1fd.png" + icon = "/emojis/1f1f2-1f1fd.png" } "scl" = { - name = "Santiago, Chile" - gateway = true + name = "Santiago, Chile" + gateway = true paid_only = false - icon = "/emojis/1f1e8-1f1f1.png" + icon = "/emojis/1f1e8-1f1f1.png" } "sea" = { - name = "Seattle, Washington (US)" - gateway = true + name = "Seattle, Washington (US)" + gateway = true paid_only = false - icon = "/emojis/1f1fa-1f1f8.png" + icon = "/emojis/1f1fa-1f1f8.png" } "sin" = { - name = "Singapore, Singapore" - gateway = true + name = "Singapore, Singapore" + gateway = true paid_only = false - icon = "/emojis/1f1f8-1f1ec.png" + icon = "/emojis/1f1f8-1f1ec.png" } "sjc" = { - name = "San Jose, California (US)" - gateway = true + name = "San Jose, California (US)" + gateway = true paid_only = false - icon = "/emojis/1f1fa-1f1f8.png" + icon = "/emojis/1f1fa-1f1f8.png" } "syd" = { - name = "Sydney, Australia" - gateway = true + name = "Sydney, Australia" + gateway = true paid_only = false - icon = "/emojis/1f1e6-1f1fa.png" + icon = "/emojis/1f1e6-1f1fa.png" } "waw" = { - name = "Warsaw, Poland" - gateway = false + name = "Warsaw, Poland" + gateway = false paid_only = false - icon = "/emojis/1f1f5-1f1f1.png" + icon = "/emojis/1f1f5-1f1f1.png" } "yul" = { - name = "Montreal, Canada" - gateway = false + name = "Montreal, Canada" + gateway = false paid_only = false - icon = "/emojis/1f1e8-1f1e6.png" + icon = "/emojis/1f1e8-1f1e6.png" } "yyz" = { - name = "Toronto, Canada" - gateway = true + name = "Toronto, Canada" + gateway = true paid_only = false - icon = "/emojis/1f1e8-1f1e6.png" + icon = "/emojis/1f1e8-1f1e6.png" } } } data "coder_parameter" "fly_region" { - name = "flyio_region" - display_name = var.display_name - description = var.description - default = (var.default != null && var.default != "") && ((var.default != null ? contains(var.regions, var.default) : false) || length(var.regions) == 0) ? var.default : null - mutable = var.mutable - dynamic "option" { - for_each = { for k, v in local.regions : k => v if anytrue([for d in var.regions : k == d ]) || length(var.regions) == 0 } - content { - name = try(var.custom_names[option.key], option.value.name) - icon = try(var.custom_icons[option.key], option.value.icon) - value = option.key - } + name = "flyio_region" + display_name = var.display_name + description = var.description + default = (var.default != null && var.default != "") && ((var.default != null ? contains(var.regions, var.default) : false) || length(var.regions) == 0) ? var.default : null + mutable = var.mutable + dynamic "option" { + for_each = { for k, v in local.regions : k => v if anytrue([for d in var.regions : k == d]) || length(var.regions) == 0 } + content { + name = try(var.custom_names[option.key], option.value.name) + icon = try(var.custom_icons[option.key], option.value.icon) + value = option.key } + } } output "value" { - value = data.coder_parameter.fly_region.value + value = data.coder_parameter.fly_region.value } \ No newline at end of file From 0612412c37be6e63bf36f178f519a1f7e0bf5c80 Mon Sep 17 00:00:00 2001 From: Kyle Carberry Date: Tue, 26 Sep 2023 17:59:52 -0500 Subject: [PATCH 20/33] fix: use magical token value for vscode-desktop --- vscode-desktop/main.tf | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/vscode-desktop/main.tf b/vscode-desktop/main.tf index bd7881b..3ef6396 100644 --- a/vscode-desktop/main.tf +++ b/vscode-desktop/main.tf @@ -27,7 +27,6 @@ resource "coder_app" "vscode" { data.coder_workspace.me.owner, "&workspace=", data.coder_workspace.me.name, - "&token=", - data.coder_workspace.me.owner_session_token, + "&token=$SESSION_TOKEN", ]) } From 83a4e40a6dda3e4ab0bd367b17b7f1a924167438 Mon Sep 17 00:00:00 2001 From: Muhammad Atif Ali Date: Wed, 27 Sep 2023 14:06:25 +0300 Subject: [PATCH 21/33] add jfrog integration module (#50) * add jfrog integration module * update RAEDME * cleanup * fixup! * cleanup * fix * fix * fixup! * fixup * use owner_email * fix script * add screenshot * update docs * fix permission * fix install script permission * add tests * fix typo * use new config for npm * Fix JFrog test * add example to use * trim https:// * cleanup! * update README * all test pass * fix README.md * fmt --------- Co-authored-by: Kyle Carberry --- .images/jfrog.png | Bin 0 -> 89629 bytes .sample/main.tf | 2 +- jfrog/README.md | 33 ++++++++++++++++++++- jfrog/main.test.ts | 41 ++++++++++++++++++++++++++ jfrog/main.tf | 71 +++++++++++++++++++++++++++++++++++++++++++++ jfrog/run.sh | 49 +++++++++++++++++++++++++++++++ test.ts | 12 +++++++- 7 files changed, 205 insertions(+), 3 deletions(-) create mode 100644 .images/jfrog.png create mode 100644 jfrog/main.test.ts create mode 100644 jfrog/main.tf create mode 100644 jfrog/run.sh diff --git a/.images/jfrog.png b/.images/jfrog.png new file mode 100644 index 0000000000000000000000000000000000000000..330dad217eeedefcfeb7f7eae713cab8d4125553 GIT binary patch literal 89629 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

        _mTFjaSwIFa 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 { + await runTerraformInit(import.meta.dir); + + // Run a fake JFrog server so the provider can initialize + // correctly. This saves us from having to make remote requests! + const fakeFrogHost = serve({ + fetch: (req) => { + const url = new URL(req.url); + // See https://jfrog.com/help/r/jfrog-rest-apis/license-information + if (url.pathname === "/artifactory/api/system/license") + return createJSONResponse({ + type: "Commercial", + licensedTo: "JFrog inc.", + validThrough: "May 15, 2036", + }); + if (url.pathname === "/access/api/v1/tokens") + return createJSONResponse({ + token_id: "xxx", + access_token: "xxx", + scope: "any", + }); + return createJSONResponse({}); + }, + port: 0, + }); + + testRequiredVariables(import.meta.dir, { + agent_id: "some-agent-id", + jfrog_url: "http://" + fakeFrogHost.hostname + ":" + fakeFrogHost.port, + artifactory_access_token: "XXXX", + package_managers: "{}", + }); +}); diff --git a/jfrog/main.tf b/jfrog/main.tf new file mode 100644 index 0000000..807bdf8 --- /dev/null +++ b/jfrog/main.tf @@ -0,0 +1,71 @@ +terraform { + required_version = ">= 1.0" + + required_providers { + coder = { + source = "coder/coder" + version = ">= 0.12" + } + artifactory = { + source = "registry.terraform.io/jfrog/artifactory" + version = "~> 8.4.0" + } + } +} + +variable "jfrog_url" { + type = string + description = "JFrog instance URL. e.g. https://YYY.jfrog.io" +} + +variable "artifactory_access_token" { + type = string + description = "The admin-level access token to use for JFrog." +} + +# Configure the Artifactory provider +provider "artifactory" { + url = join("/", [var.jfrog_url, "artifactory"]) + access_token = var.artifactory_access_token +} +resource "artifactory_scoped_token" "me" { + # This is hacky, but on terraform plan the data source gives empty strings, + # which fails validation. + username = length(data.coder_workspace.me.owner_email) > 0 ? data.coder_workspace.me.owner_email : "plan" +} + +variable "agent_id" { + type = string + description = "The ID of a Coder agent." +} + +variable "package_managers" { + type = map(string) + description = < ~/.npmrc +email = ${ARTIFACTORY_USERNAME} +registry = ${JFROG_URL}/artifactory/api/npm/${REPOSITORY_NPM} +EOF + jf rt curl /api/npm/auth >> ~/.npmrc +fi + +# Configure the `pip` to use the Artifactory "python" repository. +if [ -z "${REPOSITORY_PYPI}" ]; then + echo "🤔 REPOSITORY_PYPI is not set, skipping pip configuration." +else + echo "🐍 Configuring pip..." + mkdir -p ~/.pip + cat << EOF > ~/.pip/pip.conf +[global] +index-url = https://${ARTIFACTORY_USERNAME}:${ARTIFACTORY_ACCESS_TOKEN}@${JFROG_HOST}/artifactory/api/pypi/${REPOSITORY_PYPI}/simple +EOF +fi + +# Set GOPROXY to use the Artifactory "go" repository. +if [ -z "${REPOSITORY_GO}" ]; then + echo "🤔 REPOSITORY_GO is not set, skipping go configuration." +else + echo "🐹 Configuring go..." + export GOPROXY="https://${ARTIFACTORY_USERNAME}:${ARTIFACTORY_ACCESS_TOKEN}@${JFROG_HOST}/artifactory/api/go/${REPOSITORY_GO}" +fi +echo "🥳 Configuration complete!" \ No newline at end of file diff --git a/test.ts b/test.ts index b4c384f..747601d 100644 --- a/test.ts +++ b/test.ts @@ -153,7 +153,7 @@ export const testRequiredVariables = ( await runTerraformApply(dir, localVars); } catch (ex) { expect(ex.message).toContain( - `input variable \"${varName}\" is not set, and has no default`, + `input variable \"${varName}\" is not set`, ); return; } @@ -180,6 +180,7 @@ export const runTerraformApply = async ( "-input=false", "-auto-approve", "-state", + "-no-color", stateFile, ], { @@ -210,3 +211,12 @@ export const runTerraformInit = async (dir: string) => { throw new Error(text); } }; + +export const createJSONResponse = (obj: object, statusCode = 200): Response => { + return new Response(JSON.stringify(obj), { + headers: { + "Content-Type": "application/json", + }, + status: statusCode, + }) +} \ No newline at end of file From 1b83ae6f92f7f7a90d3f519f68b60ec443445f16 Mon Sep 17 00:00:00 2001 From: Muhammad Atif Ali Date: Wed, 27 Sep 2023 14:07:14 +0300 Subject: [PATCH 22/33] fix(jetbrains-gateway): use magic string for session token (#53) * fix(jetbrains-gateway): use magic string for session token * refactor * improve default logic * fmt --- jetbrains-gateway/README.md | 10 ++++++++++ jetbrains-gateway/main.tf | 33 +++++++++++++++++++++++++++++++-- 2 files changed, 41 insertions(+), 2 deletions(-) diff --git a/jetbrains-gateway/README.md b/jetbrains-gateway/README.md index d7fdfb0..8ac7f41 100644 --- a/jetbrains-gateway/README.md +++ b/jetbrains-gateway/README.md @@ -11,6 +11,16 @@ tags: [ide, jetbrains, helper, parameter] This module adds a JetBrains Gateway Button to open any workspace with a single click. +```hcl +module "jetbrains_gateway" { + source = "https://registry.coder.com/modules/jetbrains-gateway" + agent_id = coder_agent.example.id + agent_name = "example" + project_directory = "/home/coder/example" + jetbrains_ides = ["GO", "WS", "IU", "IC", "PY", "PC", "PS", "CL", "RM", "DB", "RD"] +} +``` + ![JetBrains Gateway IDes list](../.images/jetbrains-gateway.png) ## Examples diff --git a/jetbrains-gateway/main.tf b/jetbrains-gateway/main.tf index 9e01cf0..1b01242 100644 --- a/jetbrains-gateway/main.tf +++ b/jetbrains-gateway/main.tf @@ -25,6 +25,7 @@ variable "project_directory" { } variable "default" { + default = null type = string description = "Default IDE" } @@ -40,6 +41,16 @@ variable "jetbrains_ides" { ) error_message = "The jetbrains_ides must be a list of valid product codes. https://plugins.jetbrains.com/docs/marketplace/product-codes.html" } + # check if the list is empty + validation { + condition = length(var.jetbrains_ides) > 0 + error_message = "The jetbrains_ides must not be empty." + } + #ccheck if the list contains duplicates + validation { + condition = length(var.jetbrains_ides) == length(set(var.jetbrains_ides)) + error_message = "The jetbrains_ides must not contain duplicates." + } } locals { @@ -108,7 +119,8 @@ data "coder_parameter" "jetbrains_ide" { display_name = "JetBrains IDE" icon = "/icon/gateway.svg" mutable = true - default = var.default != null && var.default != "" ? local.jetbrains_ides[var.default].value : null + # check if default is in the jet_brains_ides list and if it is not empty or null otherwise set it to null + default = contains(var.jetbrains_ides.keys, var.default) && var.default != null && var.default != "" ? var.default : null dynamic "option" { for_each = { for key, value in local.jetbrains_ides : key => value if contains(var.jetbrains_ides, key) } @@ -126,9 +138,26 @@ resource "coder_app" "gateway" { agent_id = var.agent_id display_name = data.coder_parameter.jetbrains_ide.option[index(data.coder_parameter.jetbrains_ide.option.*.value, data.coder_parameter.jetbrains_ide.value)].name slug = "gateway" - url = "jetbrains-gateway://connect#type=coder&workspace=${data.coder_workspace.me.name}&agent=${var.agent_name}&folder=${var.project_directory}&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]}" icon = data.coder_parameter.jetbrains_ide.option[index(data.coder_parameter.jetbrains_ide.option.*.value, data.coder_parameter.jetbrains_ide.value)].icon external = true + url = join("", [ + "jetbrains-gateway://connect#type=coder&workspace=", + data.coder_workspace.me.name, + "&agent=", + var.agent_name, + "&folder=", + var.project_directory, + "&url=", + data.coder_workspace.me.access_url, + "&token=", + "$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] + ]) } output "jetbrains_ides" { From 0e35b55a44b7dbc538acd94b5235b27cf22f4846 Mon Sep 17 00:00:00 2001 From: Muhammad Atif Ali Date: Wed, 27 Sep 2023 16:50:15 +0300 Subject: [PATCH 23/33] fix jetbrain-gateway (#57) --- jetbrains-gateway/main.tf | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/jetbrains-gateway/main.tf b/jetbrains-gateway/main.tf index 1b01242..4eb2063 100644 --- a/jetbrains-gateway/main.tf +++ b/jetbrains-gateway/main.tf @@ -39,7 +39,7 @@ variable "jetbrains_ides" { for code in var.jetbrains_ides : contains(["IU", "IC", "PS", "WS", "PY", "PC", "CL", "GO", "DB", "RD", "RM"], code) ]) ) - error_message = "The jetbrains_ides must be a list of valid product codes. https://plugins.jetbrains.com/docs/marketplace/product-codes.html" + error_message = "The jetbrains_ides must be a list of valid product codes. Valid product codes are: IU, IC, PS, WS, PY, PC, CL, GO, DB, RD, RM." } # check if the list is empty validation { @@ -48,7 +48,7 @@ variable "jetbrains_ides" { } #ccheck if the list contains duplicates validation { - condition = length(var.jetbrains_ides) == length(set(var.jetbrains_ides)) + condition = length(var.jetbrains_ides) == length(toset(var.jetbrains_ides)) error_message = "The jetbrains_ides must not contain duplicates." } } @@ -120,7 +120,7 @@ data "coder_parameter" "jetbrains_ide" { icon = "/icon/gateway.svg" mutable = true # check if default is in the jet_brains_ides list and if it is not empty or null otherwise set it to null - default = contains(var.jetbrains_ides.keys, var.default) && var.default != null && var.default != "" ? var.default : null + default = var.default != null && var.default != "" && contains(var.jetbrains_ides, var.default) ? local.jetbrains_ides[var.default].value : null dynamic "option" { for_each = { for key, value in local.jetbrains_ides : key => value if contains(var.jetbrains_ides, key) } From ab527c8ffdf52391d4cae6e53b05f64b9e735dbf Mon Sep 17 00:00:00 2001 From: Kyle Carberry Date: Wed, 27 Sep 2023 09:14:17 -0500 Subject: [PATCH 24/33] fix: add `install_version` to code-server --- code-server/main.tf | 7 +++++++ code-server/run.sh | 13 +++++++++++-- test.ts | 3 ++- 3 files changed, 20 insertions(+), 3 deletions(-) diff --git a/code-server/main.tf b/code-server/main.tf index 87e3036..e9bede3 100644 --- a/code-server/main.tf +++ b/code-server/main.tf @@ -50,11 +50,18 @@ variable "log_path" { default = "/tmp/code-server.log" } +variable "install_version" { + type = string + description = "The version of code-server to install." + default = "" +} + resource "coder_script" "code-server" { agent_id = var.agent_id display_name = "code-server" icon = "/icon/code.svg" script = templatefile("${path.module}/run.sh", { + VERSION : var.install_version, EXTENSIONS : join(",", var.extensions), PORT : var.port, LOG_PATH : var.log_path, diff --git a/code-server/run.sh b/code-server/run.sh index 116af8c..d6218a1 100755 --- a/code-server/run.sh +++ b/code-server/run.sh @@ -1,4 +1,4 @@ -#!/usr/bin/env sh +#!/usr/bin/env bash EXTENSIONS=("${EXTENSIONS}") BOLD='\033[0;1m' @@ -6,7 +6,16 @@ CODE='\033[36;40;1m' RESET='\033[0m' printf "$${BOLD}Installing code-server!\n" -output=$(curl -fsSL https://code-server.dev/install.sh | sh -s -- --method=standalone --prefix=${INSTALL_PREFIX}) + +ARGS=( + "--method=standalone" + "--prefix=${INSTALL_PREFIX}" +) +if [ -n "${VERSION}" ]; then + args+=("--version=${VERSION}") +fi + +output=$(curl -fsSL https://code-server.dev/install.sh | sh -s -- "$${ARGS[@]}") if [ $? -ne 0 ]; then echo "Failed to install code-server: $output" exit 1 diff --git a/test.ts b/test.ts index 747601d..6546490 100644 --- a/test.ts +++ b/test.ts @@ -32,6 +32,7 @@ export const runContainer = async ( export const executeScriptInContainer = async ( state: TerraformState, image: string, + shell: string = "sh", ): Promise<{ exitCode: number; stdout: string[]; @@ -39,7 +40,7 @@ export const executeScriptInContainer = async ( }> => { const instance = findResourceInstance(state, "coder_script"); const id = await runContainer(image); - const resp = await execContainer(id, ["sh", "-c", instance.script]); + const resp = await execContainer(id, [shell, "-c", instance.script]); const stdout = resp.stdout.trim().split("\n"); const stderr = resp.stderr.trim().split("\n"); return { From c3d8a9949cd1ed576fae06890d1b4b2373265462 Mon Sep 17 00:00:00 2001 From: Muhammad Atif Ali Date: Wed, 27 Sep 2023 17:15:48 +0300 Subject: [PATCH 25/33] chore: update metadata (#54) --- aws-region/README.md | 6 +- azure-region/README.md | 6 +- fly-region/README.md | 8 +-- gcp-region/README.md | 85 +++++++++++++++++---------- git-clone/README.md | 12 ++-- jfrog/README.md | 34 +++++++---- vscode-server/README.md | 38 ------------ vscode-web/README.md | 36 ++++++++++++ {vscode-server => vscode-web}/main.tf | 10 ++-- {vscode-server => vscode-web}/run.sh | 0 10 files changed, 132 insertions(+), 103 deletions(-) delete mode 100644 vscode-server/README.md create mode 100644 vscode-web/README.md rename {vscode-server => vscode-web}/main.tf (88%) rename {vscode-server => vscode-web}/run.sh (100%) diff --git a/aws-region/README.md b/aws-region/README.md index 1051cc6..8c766c7 100644 --- a/aws-region/README.md +++ b/aws-region/README.md @@ -14,10 +14,6 @@ the region closest to them. ![AWS Regions](../.images/aws-region.png) -## Examples - -### Default Region - Customize the preselected parameter value: ```hcl @@ -31,6 +27,8 @@ provider "aws" { } ``` +## Examples + ### Customize Regions Change the display name and icon for a region: diff --git a/azure-region/README.md b/azure-region/README.md index cb14303..235f58e 100644 --- a/azure-region/README.md +++ b/azure-region/README.md @@ -11,10 +11,6 @@ tags: [helper, parameter, azure, regions] This module adds a parameter with all Azure regions, allowing developers to select the region closest to them. -## Examples - -### Default region - ```hcl module "azure_region" { source = "https://registry.coder.com/modules/azure-region" @@ -26,6 +22,8 @@ resource "azurem_resource_group" "example" { } ``` +## Examples + ### Customize existing regions Change the display name for a region: diff --git a/fly-region/README.md b/fly-region/README.md index f6ec1e5..cea64f3 100644 --- a/fly-region/README.md +++ b/fly-region/README.md @@ -4,17 +4,13 @@ description: A parameter with human region names and icons icon: ../.icons/fly.svg maintainer_github: coder verified: true -tags: [helper, parameter, fly] +tags: [helper, parameter, fly.io, regions] --- # Fly.io Region This module adds Fly.io regions to your Coder template. Regions can be whitelisted using the `regions` argument and given custom names and custom icons with their respective map arguments (`custom_names`, `custom_icons`). -## Examples - -### Using default settings - We can use the simplest format here, only adding a default selection as the `atl` region. ```hcl @@ -26,6 +22,8 @@ module "fly-region" { ![Fly.io Default](../.images/flyio-basic.png) +## Examples + ### Using region whitelist The regions argument can be used to display only the desired regions in the Coder parameter. diff --git a/gcp-region/README.md b/gcp-region/README.md index cfa1370..0ca76e1 100644 --- a/gcp-region/README.md +++ b/gcp-region/README.md @@ -11,38 +11,61 @@ tags: [gcp, regions, parameter, helper] This module adds Google Cloud Platform regions to your Coder template. +```hcl +module "gcp_region" { + source = "https://registry.coder.com/modules/gcp-region" + regions = ["us", "europe"] +} + +resource "google_compute_instance" "example" { + zone = module.gcp_region.value +} +``` + ![GCP Regions](../.images/gcp-regions.png) ## Examples -1. Add only GPU zones in the US West 1 region: - - ```hcl - module "gcp_region" { - source = "https://registry.coder.com/modules/gcp-region" - default = ["us-west1-a"] - regions = ["us-west1"] - gpu_only = false - } - ``` - -2. Add all zones in the Europe West region: - - ```hcl - module "gcp_region" { - source = "https://registry.coder.com/modules/gcp-region" - regions = ["europe-west"] - single_zone_per_region = false - } - ``` - -3. Add a single zone from each region in US and Europe that laos has GPUs - - ```hcl - module "gcp_region" { - source = "https://registry.coder.com/modules/gcp-region" - regions = ["us", "europe"] - gpu_only = true - single_zone_per_region = true - } - ``` +### Add only GPU zones in the US West 1 region + +```hcl +module "gcp_region" { + source = "https://registry.coder.com/modules/gcp-region" + default = ["us-west1-a"] + regions = ["us-west1"] + gpu_only = false +} + +resource "google_compute_instance" "example" { + zone = module.gcp_region.value +} +``` + +### Add all zones in the Europe West region + +```hcl +module "gcp_region" { + source = "https://registry.coder.com/modules/gcp-region" + regions = ["europe-west"] + single_zone_per_region = false +} + +resource "google_compute_instance" "example" { + zone = module.gcp_region.value +} +``` + +### Add a single zone from each region in US and Europe that laos has GPUs + +```hcl +module "gcp_region" { + source = "https://registry.coder.com/modules/gcp-region" + regions = ["us", "europe"] + gpu_only = true + single_zone_per_region = true +} + +resource "google_compute_instance" "example" { + zone = module.gcp_region.value +} +``` diff --git a/git-clone/README.md b/git-clone/README.md index 40ed231..53e566b 100644 --- a/git-clone/README.md +++ b/git-clone/README.md @@ -13,8 +13,9 @@ This module allows you to automatically clone a repository by URL and skip if it ```hcl module "git-clone" { - source = "https://registry.coder.com/modules/git-clone" - url = "https://github.com/coder/coder" + source = "https://registry.coder.com/modules/git-clone" + agent_id = coder_agent.example.id + url = "https://github.com/coder/coder" } ``` @@ -32,8 +33,9 @@ data "coder_git_auth" "github" { ```hcl module "git-clone" { - source = "https://registry.coder.com/modules/git-clone" - url = "https://github.com/coder/coder" - path = "~/projects/coder/coder" + source = "https://registry.coder.com/modules/git-clone" + agent_id = coder_agent.example.id + url = "https://github.com/coder/coder" + path = "~/projects/coder/coder" } ``` diff --git a/jfrog/README.md b/jfrog/README.md index cba9e06..9ae7cce 100644 --- a/jfrog/README.md +++ b/jfrog/README.md @@ -12,12 +12,6 @@ tags: [integration] Install the JF CLI and authenticate package managers with Artifactory. -![JFrog](../.images/jfrog.png) - -## Examples - -### Configure npm, go, and pypi to use Artifactory - ```hcl module "jfrog" { source = "https://registry.coder.com/modules/jfrog" @@ -25,15 +19,13 @@ module "jfrog" { jfrog_url = "https://YYYY.jfrog.io" artifactory_access_token = var.artifactory_access_token # An admin access token package_managers = { - "npm": "npm-local", - "go": "go-local", - "pypi": "pypi-local" + "npm": "npm-remote", + "go": "go-remote", + "pypi": "pypi-remote" } } ``` -## Authentication - Get a JFrog access token from your Artifactory instance. The token must have admin permissions. It is recommended to store the token in a secret terraform variable. ```hcl @@ -42,3 +34,23 @@ variable "artifactory_access_token" { sensitive = true } ``` + +![JFrog](../.images/jfrog.png) + +## Examples + +### Configure npm, go, and pypi to use Artifactory local repositories + +```hcl +module "jfrog" { + source = "https://registry.coder.com/modules/jfrog" + agent_id = coder_agent.example.id + jfrog_url = "https://YYYY.jfrog.io" + artifactory_access_token = var.artifactory_access_token # An admin access token + package_managers = { + "npm": "npm-local", + "go": "go-local", + "pypi": "pypi-local" + } +} +``` diff --git a/vscode-server/README.md b/vscode-server/README.md deleted file mode 100644 index dfbec39..0000000 --- a/vscode-server/README.md +++ /dev/null @@ -1,38 +0,0 @@ ---- -display_name: vscode-server -description: VS Code Web - Visual Studio Code in the browser -icon: ../.icons/code.svg -maintainer_github: coder -verified: true -tags: [helper, ide, vscode, web] ---- - -# VS Code Web - -Automatically install [Visual Studio Code Server](https://code.visualstudio.com/docs/remote/vscode-server) in a workspace using the [VS Code CLIs](https://code.visualstudio.com/docs/editor/command-line) and create an app to access it via the dashboard. - -![VS Code Server with GitHub Copilot and live-share](../.images/vscode-server.gif) - -## Examples - -1. Install VS Code Server with default settings: - - ```hcl - module "vscode-web" { - source = "https://registry.coder.com/modules/vscode-server" - agent_id = coder_agent.example.id - accept_license = true - } - ``` - -2. Install VS Code Server to a custom folder: - - ```hcl - module "vscode-web" { - source = "https://registry.coder.com/modules/vscode-server" - agent_id = coder_agent.example.id - install_dir = "/home/coder/.vscode-server" - folder = "/home/coder" - accept_license = true - } - ``` diff --git a/vscode-web/README.md b/vscode-web/README.md new file mode 100644 index 0000000..4dcfb8d --- /dev/null +++ b/vscode-web/README.md @@ -0,0 +1,36 @@ +--- +display_name: VS Code Web +description: VS Code Web - Visual Studio Code in the browser +icon: ../.icons/code.svg +maintainer_github: coder +verified: true +tags: [helper, ide, vscode, web] +--- + +# VS Code Web + +Automatically install [Visual Studio Code Server](https://code.visualstudio.com/docs/remote/vscode-server) in a workspace using the [VS Code CLI](https://code.visualstudio.com/docs/editor/command-line) and create an app to access it via the dashboard. + +```hcl +module "vscode-web" { + source = "https://registry.coder.com/modules/vscode-server" + agent_id = coder_agent.example.id + accept_license = true +} +``` + +![VS Code Server with GitHub Copilot and live-share](../.images/vscode-server.gif) + +## Examples + +### Install VS Code Server to a custom folder + +```hcl +module "vscode-web" { + source = "https://registry.coder.com/modules/vscode-server" + agent_id = coder_agent.example.id + install_dir = "/home/coder/.vscode-server" + folder = "/home/coder" + accept_license = true +} +``` diff --git a/vscode-server/main.tf b/vscode-web/main.tf similarity index 88% rename from vscode-server/main.tf rename to vscode-web/main.tf index bd86703..ef72c52 100644 --- a/vscode-server/main.tf +++ b/vscode-web/main.tf @@ -22,14 +22,14 @@ variable "port" { variable "folder" { type = string - description = "The folder to open in vscode-server." + description = "The folder to open in vscode-web." default = "" } variable "log_path" { type = string description = "The path to log." - default = "/tmp/vscode-server.log" + default = "/tmp/vscode-web.log" } variable "install_dir" { @@ -48,7 +48,7 @@ variable "accept_license" { } } -resource "coder_script" "vscode-server" { +resource "coder_script" "vscode-web" { agent_id = var.agent_id display_name = "VS Code Web" icon = "/icon/code.svg" @@ -60,9 +60,9 @@ resource "coder_script" "vscode-server" { run_on_start = true } -resource "coder_app" "vscode-server" { +resource "coder_app" "vscode-web" { agent_id = var.agent_id - slug = "vscode-server" + slug = "vscode-web" display_name = "VS Code Web" url = var.folder == "" ? "http://localhost:${var.port}" : "http://localhost:${var.port}?folder=${var.folder}" icon = "/icon/code.svg" diff --git a/vscode-server/run.sh b/vscode-web/run.sh similarity index 100% rename from vscode-server/run.sh rename to vscode-web/run.sh From 59243bdf2372713a44dda62d1e9cdad0d2c8aaeb Mon Sep 17 00:00:00 2001 From: Muhammad Atif Ali Date: Wed, 27 Sep 2023 17:16:03 +0300 Subject: [PATCH 26/33] add filebrowser (#56) --- .icons/filebrowser.svg | 147 +++++++++++++++++++++++++++++++++++++++++ filebrowser/README.md | 31 +++++++++ filebrowser/main.tf | 57 ++++++++++++++++ filebrowser/run.sh | 21 ++++++ new.sh | 2 +- 5 files changed, 257 insertions(+), 1 deletion(-) create mode 100644 .icons/filebrowser.svg create mode 100644 filebrowser/README.md create mode 100644 filebrowser/main.tf create mode 100644 filebrowser/run.sh diff --git a/.icons/filebrowser.svg b/.icons/filebrowser.svg new file mode 100644 index 0000000..5e78ecc --- /dev/null +++ b/.icons/filebrowser.svg @@ -0,0 +1,147 @@ + +image/svg+xml + + + + + \ No newline at end of file diff --git a/filebrowser/README.md b/filebrowser/README.md new file mode 100644 index 0000000..bd1ba07 --- /dev/null +++ b/filebrowser/README.md @@ -0,0 +1,31 @@ +--- +display_name: File Browser +description: A file browser for your workspace +icon: ../.icons/filebrowser.svg +maintainer_github: coder +verified: true +tags: [helper, filebrowser] +--- + +# File Browser + +A file browser for your workspace. + +```hcl +module "filebrowser" { + source = "https://registry.coder.com/modules/filebrowser" + agent_id = coder_agent.example.id +} +``` + +## Examples + +### Serve a specific directory + +```hcl +module "filebrowser" { + source = "https://registry.coder.com/modules/filebrowser" + agent_id = coder_agent.example.id + folder = "/home/coder/project" +} +``` diff --git a/filebrowser/main.tf b/filebrowser/main.tf new file mode 100644 index 0000000..e624004 --- /dev/null +++ b/filebrowser/main.tf @@ -0,0 +1,57 @@ +terraform { + required_version = ">= 1.0" + + required_providers { + coder = { + source = "coder/coder" + version = ">= 0.12" + } + } +} + +# Add required variables for your modules and remove any unneeded variables +variable "agent_id" { + type = string + description = "The ID of a Coder agent." +} + +variable "log_path" { + type = string + description = "The path to log filebrowser to." + default = "/tmp/filebrowser.log" +} + +variable "port" { + type = number + description = "The port to run filebrowser on." + default = 13339 +} + +variable "folder" { + type = string + description = "--root value for filebrowser." + default = "~" +} + +resource "coder_script" "filebrowser" { + agent_id = var.agent_id + display_name = "File Browser" + icon = "https://raw.githubusercontent.com/filebrowser/logo/master/icon_raw.svg" + script = templatefile("${path.module}/run.sh", { + LOG_PATH : var.log_path, + PORT : var.port, + FOLDER : var.folder, + LOG_PATH : var.log_path, + }) + run_on_start = true +} + +resource "coder_app" "filebrowser" { + agent_id = var.agent_id + slug = "filebrowser" + display_name = "File Browser" + url = "http://localhost:${var.port}" + icon = "https://raw.githubusercontent.com/filebrowser/logo/master/icon_raw.svg" + subdomain = true + share = "owner" +} diff --git a/filebrowser/run.sh b/filebrowser/run.sh new file mode 100644 index 0000000..427c864 --- /dev/null +++ b/filebrowser/run.sh @@ -0,0 +1,21 @@ +#!/usr/bin/env sh + +BOLD='\033[0;1m' +echo "$${BOLD}Installing filebrowser \n\n" + +curl -fsSL https://raw.githubusercontent.com/filebrowser/get/master/get.sh | bash + +echo "🥳 Installation comlete! \n\n" + +echo "👷 Starting filebrowser in background... \n\n" + +ROOT_DIR=${FOLDER} +ROOT_DIR=$${ROOT_DIR/\~/$HOME} + +echo "📂 Serving $${ROOT_DIR} at http://localhost:${PORT} \n\n" + +echo "Running 'filebrowser --noauth --root $ROOT_DIR --port ${PORT}' \n\n" + +filebrowser --noauth --root $ROOT_DIR --port ${PORT} >${LOG_PATH} 2>&1 & + +echo "📝 Logs at ${LOG_PATH} \n\n" diff --git a/new.sh b/new.sh index ea80ffe..29e4f52 100755 --- a/new.sh +++ b/new.sh @@ -1,4 +1,4 @@ -#!/usr/bin/env sh +#!/usr/bin/env bash # This scripts creates a new sample moduledir with requried files # Run it like : ./new.sh my-module From c2486711389c06d98bbbce8a7ffb2391f94a34a4 Mon Sep 17 00:00:00 2001 From: Kyle Carberry Date: Wed, 27 Sep 2023 09:18:59 -0500 Subject: [PATCH 27/33] fix: properly append pinned version to code-server --- code-server/run.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code-server/run.sh b/code-server/run.sh index d6218a1..6dd647b 100755 --- a/code-server/run.sh +++ b/code-server/run.sh @@ -12,7 +12,7 @@ ARGS=( "--prefix=${INSTALL_PREFIX}" ) if [ -n "${VERSION}" ]; then - args+=("--version=${VERSION}") + ARGS+=("--version=${VERSION}") fi output=$(curl -fsSL https://code-server.dev/install.sh | sh -s -- "$${ARGS[@]}") From 8a2da9303cb948e576e2b4b16f5dd26d2a25b65e Mon Sep 17 00:00:00 2001 From: Kyle Carberry Date: Wed, 27 Sep 2023 09:21:08 -0500 Subject: [PATCH 28/33] fix: properly set up default folder --- code-server/main.tf | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code-server/main.tf b/code-server/main.tf index e9bede3..de7dedb 100644 --- a/code-server/main.tf +++ b/code-server/main.tf @@ -76,7 +76,7 @@ resource "coder_app" "code-server" { agent_id = var.agent_id slug = "code-server" display_name = "code-server" - url = "http://localhost:${var.port}/?folder=${var.folder}" + url = "http://localhost:${var.port}/${var.folder != "" ? "?folder=${var.folder}" : ""}" icon = "/icon/code.svg" subdomain = false share = "owner" From 227bc8a2adfde4a84d14b617d5d9582d39a27072 Mon Sep 17 00:00:00 2001 From: Kyle Carberry Date: Wed, 27 Sep 2023 09:23:29 -0500 Subject: [PATCH 29/33] chore: add example for pinning code-server version --- code-server/README.md | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/code-server/README.md b/code-server/README.md index 9f360e1..32f9084 100644 --- a/code-server/README.md +++ b/code-server/README.md @@ -22,6 +22,16 @@ module "code-server" { ## Examples +### Pin Versions + +```hcl +module "code-server" { + source = "https://registry.coder.com/modules/code-server" + agent_id = coder_agent.example.id + install_version = "4.16.1" +} +``` + ### Pre-install Extensions Install the Dracula theme from [OpenVSX](https://open-vsx.org/): From 7af0e4d2cd1d9ed49f05b659c10c78d7b0c10a44 Mon Sep 17 00:00:00 2001 From: Kyle Carberry Date: Wed, 27 Sep 2023 09:40:36 -0500 Subject: [PATCH 30/33] fix: url encode folder for code-server --- code-server/main.tf | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code-server/main.tf b/code-server/main.tf index de7dedb..0a8e4f4 100644 --- a/code-server/main.tf +++ b/code-server/main.tf @@ -76,7 +76,7 @@ resource "coder_app" "code-server" { agent_id = var.agent_id slug = "code-server" display_name = "code-server" - url = "http://localhost:${var.port}/${var.folder != "" ? "?folder=${var.folder}" : ""}" + url = "http://localhost:${var.port}/${var.folder != "" ? "?folder=${urlencode(var.folder)}" : ""}" icon = "/icon/code.svg" subdomain = false share = "owner" From 63e489120e0a7cc350f41622274e9d24cc7547f9 Mon Sep 17 00:00:00 2001 From: Kyle Carberry Date: Wed, 27 Sep 2023 10:23:14 -0500 Subject: [PATCH 31/33] fix: move code-server settings to machine --- code-server/README.md | 2 +- code-server/run.sh | 6 +++--- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/code-server/README.md b/code-server/README.md index 32f9084..302a1ea 100644 --- a/code-server/README.md +++ b/code-server/README.md @@ -28,7 +28,7 @@ module "code-server" { module "code-server" { source = "https://registry.coder.com/modules/code-server" agent_id = coder_agent.example.id - install_version = "4.16.1" + install_version = "4.8.3" } ``` diff --git a/code-server/run.sh b/code-server/run.sh index 6dd647b..3e1a38b 100755 --- a/code-server/run.sh +++ b/code-server/run.sh @@ -38,10 +38,10 @@ for extension in "$${EXTENSIONS[@]}"; do done # Check if the settings file exists... -if [ ! -f ~/.local/share/code-server/User/settings.json ]; then +if [ ! -f ~/.local/share/code-server/Machine/settings.json ]; then echo "⚙️ Creating settings file..." - mkdir -p ~/.local/share/code-server/User - echo "${SETTINGS}" > ~/.local/share/code-server/User/settings.json + mkdir -p ~/.local/share/code-server/Machine + echo "${SETTINGS}" > ~/.local/share/code-server/Machine/settings.json fi echo "👷 Running code-server in the background..." From e066fb733a3c128fb83c6324d464e98f949bae2e Mon Sep 17 00:00:00 2001 From: Muhammad Atif Ali Date: Wed, 27 Sep 2023 19:34:59 +0300 Subject: [PATCH 32/33] fix image in AWS regions Readme (#58) --- aws-region/README.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/aws-region/README.md b/aws-region/README.md index 8c766c7..f23b11f 100644 --- a/aws-region/README.md +++ b/aws-region/README.md @@ -12,8 +12,6 @@ tags: [helper, parameter, regions, aws] A parameter with all AWS regions. This allows developers to select the region closest to them. -![AWS Regions](../.images/aws-region.png) - Customize the preselected parameter value: ```hcl @@ -27,6 +25,8 @@ provider "aws" { } ``` +![AWS Regions](../.images/aws-regions.png) + ## Examples ### Customize Regions From 0516c1b8eaafe76c126813d05572171c8e7bbe64 Mon Sep 17 00:00:00 2001 From: Kyle Carberry Date: Wed, 27 Sep 2023 15:32:35 -0500 Subject: [PATCH 33/33] feat: add linting (#51) Co-authored-by: Muhammad Atif Ali --- .github/workflows/ci.yaml | 7 ++- .sample/README.md | 4 +- bun.lockb | Bin 1269 -> 5351 bytes lint.ts | 96 ++++++++++++++++++++++++++++++++++++++ package.json | 7 ++- tsconfig.json | 2 + 6 files changed, 110 insertions(+), 6 deletions(-) create mode 100644 lint.ts diff --git a/.github/workflows/ci.yaml b/.github/workflows/ci.yaml index 9ee005c..60a760b 100644 --- a/.github/workflows/ci.yaml +++ b/.github/workflows/ci.yaml @@ -21,11 +21,14 @@ jobs: with: bun-version: latest - run: bun test - fmt: + pretty: runs-on: ubuntu-latest steps: - uses: actions/checkout@v4 - uses: oven-sh/setup-bun@v1 with: bun-version: latest - - run: bun fmt:ci + - name: Format + run: bun fmt:ci + - name: Lint + run: bun install && bun lint diff --git a/.sample/README.md b/.sample/README.md index ebc3e49..387d45b 100644 --- a/.sample/README.md +++ b/.sample/README.md @@ -11,14 +11,14 @@ tags: [helper] - - ```hcl module "MODULE_NAME" { source = "https://registry.coder.com/modules/MODULE_NAME" } ``` + + ## Examples ### Example 1 diff --git a/bun.lockb b/bun.lockb index dfed91948022558cca9901420988b9f7b8ce4291..0d30fe9494123fdcff452dfe5aad97c98b945c05 100755 GIT binary patch literal 5351 zcmeHLdsLH07XJdFBITu`C{UX%EiGWe8^vW&5DFd_Q4rXQq5(caNJwH51j4GR7Av4g z7hLec5i9rrbbTODMOQ70Rnco`N)(D|ZlYA4!dG%vyP6nK6y;z{ z+ocC=o89H%nBSMs=TTAN`M{%%QNDN9uB5aTpCFReDt?BcTec|moJ zNAmMKH$E_SNVk6TZJVyM@mJo?$&FO|box)8dqj0GKd(L4;@^9#48AP*;t=1TeZ#=w z!M9Q8yBZ6k_On9DS@oHHf-9RQe)kTTrMCpW$nLGE7#cFNjjN2s8GfE%H`uNzhKw9d z5c~=l=m&T<0~jm*6yQPtKiYgo+C%gk0xHqW!syeqzt-&V!7<4uAmA zkLnRSR{RVgnhAJZcktgaDn0x(S(4~F~d;K%AeK>(Qj z6Y!`U=S=2J>bj8xZ6xzSiF1UQp(!Y_p9C0`*pGXFg-EOuZr%DXuV=twfNTOP`h^OM z((>w3v&**j-umM?+lYqB@U&%%$Nep)C;LKA(WUOB#tQjT-ZXoQjSHKvhjg|VuDZ~_ z$fv>UX;|=;rBjTfobIjfu0F#m2ipiQ@dGrMeS6>--8J4hZL|HV?)PPjVj5fn_Sn!{gdVLGK2~`jPF$?~rtYQ=udW}l>o_$_ zGMj^P&lG-@?%~pB)t=QcKj>0iTN~?QMn%N*uzP0ZmgkLSA7}L)i4;Yg z%5AsL7G2yF{qFZVyu@EL_MU$9bYH>`HamB3d7t%Z$yB?lhEu{-MoE#DnPxU0TNgX- z@0hr8P0xarP3Iko>Scc22iLYZ#NabVlj)q>VE2j z&IMAlKc6?Q?;maN*Er8?DZBBc=x}CT_B#3Ou$tSdqFauC>QG5edmHZ9+B{*0)4A+`FZWa0ffyyX3+;Y}B1S)2d8y!Fh6oV9Z^@5BVkL)U#1dCTAQ z>u!@4D)7D?ueblLb0#Go4>x+Lk^~i1oOMT!C+!cYx|(8tw7jrehnK_$4e#EAuSC;%%9C7wYhmIHTdUXtP+q;PSTR_pfih-2A(#yvOP%#tGd|U80R_X9kDcoL)L- zo~TyMF7dLh6WyzuTU~5kXH%KFZdTMz=OKUkTyQ%2uso0o*{jrM%6VBwu^&erFLdomv`*uzrs1H=y_p7*aI zL?a}gY4V*l9qRb~ghT!p&(Id~?KT}65SP{D45K8^&^|0b=b4sa^#8iCbo9}`j`(#2 z^sGQB^954PNE2U$Jf0_%D3pA$m`Cy}-V!-Y`*GY|ISQeQmL|^Ncyjn+p+F){9ExBA zue1fVVVvk@C@qflIt0xk(xpx9?1p)V`TP0}2ES6-MLp>yqC3z9LGC6+p$*xOgZuv($S(9nw25V8~aN}BWxw)Hw0 zb2M@G+RH1AqiF2ZGgETZ0Y<8tZF6(gco^J*NtB6Py^2wrb`X#ZH8eD%?cCt00_b3U M2&oMm|9}7g18TlX%>V!Z delta 401 zcmaE^`IU2mo@Uch*TB^tkEJ|53V$!%&zb*A{uYC~YNfrjMvc)y({q&VDl!Yvgl8~z{ny9lLaXTv6&`EvX)Gq z%IPip!4qcloXsFv5Qumk_v`}x f.isDirectory() && !f.name.startsWith(".") && f.name !== "node_modules" +); + +let badExit = false; + +// error reports an error to the console and sets badExit to true +// so that the process will exit with a non-zero exit code. +const error = (...data: any[]) => { + console.error(...data); + badExit = true; +} + +// Ensures that each README has the proper format. +// Exits with 0 if all is good! +for (const dir of dirs) { + const readme = path.join(dir.name, "README.md"); + // Ensure exists + try { + await stat(readme); + } catch (ex) { + throw new Error(`Missing README.md in ${dir.name}`); + } + const content = await readFile(readme, "utf8"); + const matter = grayMatter(content); + const data = matter.data as { + display_name?: string; + description?: string; + icon?: string; + maintainer_github?: string; + partner_github?: string; + verified?: boolean; + tags?: string[]; + }; + if (!data.display_name) { + error(dir.name, "missing display_name"); + } + if (!data.description) { + error(dir.name, "missing description"); + } + if (!data.icon) { + error(dir.name, "missing icon"); + } + if (!data.maintainer_github) { + error(dir.name, "missing maintainer_github"); + } + try { + await stat(path.join(".", dir.name, data.icon)); + } catch (ex) { + error(dir.name, "icon does not exist", data.icon); + } + + const tokens = marked.lexer(content); + // Ensure there is an h1 and some text, then a code block + + let h1 = false; + let code = false; + let paragraph = false; + + for (const token of tokens) { + if (token.type === "heading" && token.depth === 1) { + h1 = true; + continue; + } + if (h1 && token.type === "heading") { + break; + } + if (token.type === "paragraph") { + paragraph = true; + continue; + } + if (token.type === "code") { + code = true; + continue; + } + } + if (!h1) { + error(dir.name, "missing h1"); + } + if (!paragraph) { + error(dir.name, "missing paragraph after h1"); + } + if (!code) { + error(dir.name, "missing example code block after paragraph"); + } +} + +if (badExit) { + process.exit(1); +} diff --git a/package.json b/package.json index c42b502..c9d3a81 100644 --- a/package.json +++ b/package.json @@ -3,10 +3,13 @@ "scripts": { "test": "bun test", "fmt": "bun x prettier -w **/*.ts **/*.md *.md && terraform fmt **/*.tf", - "fmt:ci": "bun x prettier --check **/*.ts **/*.md *.md && terraform fmt -check **/*.tf" + "fmt:ci": "bun x prettier --check **/*.ts **/*.md *.md && terraform fmt -check **/*.tf", + "lint": "bun run lint.ts" }, "devDependencies": { - "bun-types": "^1.0.3" + "bun-types": "^1.0.3", + "gray-matter": "^4.0.3", + "marked": "^9.0.3" }, "peerDependencies": { "typescript": "^5.0.0" diff --git a/tsconfig.json b/tsconfig.json index 86140a5..e7b89cd 100644 --- a/tsconfig.json +++ b/tsconfig.json @@ -2,6 +2,8 @@ "compilerOptions": { "target": "esnext", "module": "esnext", + "allowSyntheticDefaultImports": true, + "moduleResolution": "nodenext", "types": ["bun-types"] } }