From 32993179fee2e7b13aa04da1f1785c717684e030 Mon Sep 17 00:00:00 2001 From: Dylan Wilson Date: Tue, 9 Jan 2024 18:11:46 -0500 Subject: [PATCH 1/3] chore: update Digital Ocean example template (#11528) --- examples/templates/do-linux/main.tf | 157 +++++++++++++--------------- site/static/icon/almalinux.svg | 16 +++ 2 files changed, 87 insertions(+), 86 deletions(-) create mode 100644 site/static/icon/almalinux.svg diff --git a/examples/templates/do-linux/main.tf b/examples/templates/do-linux/main.tf index 22eed81bdb4e1..fbb4e2a5c2861 100644 --- a/examples/templates/do-linux/main.tf +++ b/examples/templates/do-linux/main.tf @@ -56,25 +56,40 @@ data "coder_parameter" "droplet_image" { type = "string" mutable = false option { - name = "Ubuntu 22.04" - value = "ubuntu-22-04-x64" - icon = "/icon/ubuntu.svg" + name = "AlmaLinux 9" + value = "almalinux-9-x64" + icon = "/icon/almalinux.svg" } option { - name = "Ubuntu 20.04" - value = "ubuntu-20-04-x64" - icon = "/icon/ubuntu.svg" + name = "AlmaLinux 8" + value = "almalinux-8-x64" + icon = "/icon/almalinux.svg" } option { - name = "Fedora 36" - value = "fedora-36-x64" + name = "Fedora 39" + value = "fedora-39-x64" icon = "/icon/fedora.svg" } option { - name = "Fedora 35" - value = "fedora-35-x64" + name = "Fedora 38" + value = "fedora-38-x64" icon = "/icon/fedora.svg" } + option { + name = "CentOS Stream 9" + value = "centos-stream-9-x64" + icon = "/icon/centos.svg" + } + option { + name = "CentOS Stream 8" + value = "centos-stream-8-x64" + icon = "/icon/centos.svg" + } + option { + name = "Debian 12" + value = "debian-12-x64" + icon = "/icon/debian.svg" + } option { name = "Debian 11" value = "debian-11-x64" @@ -86,14 +101,9 @@ data "coder_parameter" "droplet_image" { icon = "/icon/debian.svg" } option { - name = "CentOS Stream 9" - value = "centos-stream-9-x64" - icon = "/icon/centos.svg" - } - option { - name = "CentOS Stream 8" - value = "centos-stream-8-x64" - icon = "/icon/centos.svg" + name = "Rocky Linux 9" + value = "rockylinux-9-x64" + icon = "/icon/rockylinux.svg" } option { name = "Rocky Linux 8" @@ -101,9 +111,14 @@ data "coder_parameter" "droplet_image" { icon = "/icon/rockylinux.svg" } option { - name = "Rocky Linux 8.4" - value = "rockylinux-8-4-x64" - icon = "/icon/rockylinux.svg" + name = "Ubuntu 22.04 (LTS)" + value = "ubuntu-22-04-x64" + icon = "/icon/ubuntu.svg" + } + option { + name = "Ubuntu 20.04 (LTS)" + value = "ubuntu-20-04-x64" + icon = "/icon/ubuntu.svg" } } @@ -115,6 +130,8 @@ data "coder_parameter" "droplet_size" { type = "string" icon = "/icon/memory.svg" mutable = false + # s-1vcpu-512mb-10gb is unsupported in tor1, blr1, lon1, sfo2, and nyc3 regions + # s-8vcpu-16gb access requires a support ticket with Digital Ocean option { name = "1 vCPU, 1 GB RAM" value = "s-1vcpu-1gb" @@ -135,13 +152,8 @@ data "coder_parameter" "droplet_size" { name = "4 vCPU, 8 GB RAM" value = "s-4vcpu-8gb" } - option { - name = "8 vCPU, 16 GB RAM" - value = "s-8vcpu-16gb" - } } - data "coder_parameter" "home_volume_size" { name = "home_volume_size" display_name = "Home volume size" @@ -151,7 +163,7 @@ data "coder_parameter" "home_volume_size" { mutable = false validation { min = 1 - max = 999999 + max = 100 # Sizes larger than 100 GB require a support ticket with Digital Ocean } } @@ -163,70 +175,56 @@ data "coder_parameter" "region" { type = "string" default = "ams3" mutable = false + # nyc1, sfo1, and ams2 regions were excluded because they do not support volumes, which are used to persist data while decreasing cost option { - name = "New York 1" - value = "nyc1" - icon = "/emojis/1f1fa-1f1f8.png" - } - option { - name = "New York 2" - value = "nyc2" - icon = "/emojis/1f1fa-1f1f8.png" - } - option { - name = "New York 3" - value = "nyc3" - icon = "/emojis/1f1fa-1f1f8.png" - } - option { - name = "San Francisco 1" - value = "sfo1" - icon = "/emojis/1f1fa-1f1f8.png" - } - option { - name = "San Francisco 2" - value = "sfo2" - icon = "/emojis/1f1fa-1f1f8.png" + name = "Canada (Toronto)" + value = "tor1" + icon = "/emojis/1f1e8-1f1e6.png" } option { - name = "San Francisco 3" - value = "sfo3" - icon = "/emojis/1f1fa-1f1f8.png" + name = "Germany (Frankfurt)" + value = "fra1" + icon = "/emojis/1f1e9-1f1ea.png" } option { - name = "Amsterdam 2" - value = "ams2" - icon = "/emojis/1f1f3-1f1f1.png" + name = "India (Bangalore)" + value = "blr1" + icon = "/emojis/1f1ee-1f1f3.png" } option { - name = "Amsterdam 3" + name = "Netherlands (Amsterdam)" value = "ams3" icon = "/emojis/1f1f3-1f1f1.png" } option { - name = "Singapore 1" + name = "Singapore" value = "sgp1" icon = "/emojis/1f1f8-1f1ec.png" } option { - name = "London 1" + name = "United Kingdom (London)" value = "lon1" icon = "/emojis/1f1ec-1f1e7.png" } option { - name = "Frankfurt 1" - value = "fra1" - icon = "/emojis/1f1e9-1f1ea.png" + name = "United States (California - 2)" + value = "sfo2" + icon = "/emojis/1f1fa-1f1f8.png" } option { - name = "Toronto 1" - value = "tor1" - icon = "/emojis/1f1e8-1f1e6.png" + name = "United States (California - 3)" + value = "sfo3" + icon = "/emojis/1f1fa-1f1f8.png" } option { - name = "Bangalore 1" - value = "blr1" - icon = "/emojis/1f1ee-1f1f3.png" + name = "United States (New York - 1)" + value = "nyc1" + icon = "/emojis/1f1fa-1f1f8.png" + } + option { + name = "United States (New York - 3)" + value = "nyc3" + icon = "/emojis/1f1fa-1f1f8.png" } } @@ -247,35 +245,22 @@ resource "coder_agent" "main" { display_name = "CPU Usage" interval = 5 timeout = 5 - script = <<-EOT - #!/bin/bash - set -e - top -bn1 | grep "Cpu(s)" | awk '{print $2 + $4 "%"}' - EOT + script = "coder stat cpu" } metadata { key = "memory" display_name = "Memory Usage" interval = 5 timeout = 5 - script = <<-EOT - #!/bin/bash - set -e - free -m | awk 'NR==2{printf "%.2f%%\t", $3*100/$2 }' - EOT + script = "coder stat mem" } metadata { - key = "disk" - display_name = "Disk Usage" + key = "home" + display_name = "Home Usage" interval = 600 # every 10 minutes timeout = 30 # df can take a while on large filesystems - script = <<-EOT - #!/bin/bash - set -e - df /home/coder | awk '$NF=="/"{printf "%s", $5}' - EOT + script = "coder stat disk --path /home/${lower(data.coder_workspace.me.owner)}" } - } resource "digitalocean_volume" "home_volume" { diff --git a/site/static/icon/almalinux.svg b/site/static/icon/almalinux.svg new file mode 100644 index 0000000000000..b2e050ae2b83e --- /dev/null +++ b/site/static/icon/almalinux.svg @@ -0,0 +1,16 @@ + + + + + + + + + + + + + + From ec661636baa56bc460c63891e5acf0546c18c9d6 Mon Sep 17 00:00:00 2001 From: Muhammad Atif Ali Date: Thu, 11 Jan 2024 02:47:35 +0300 Subject: [PATCH 2/3] lower workspace and owner name usage --- examples/templates/do-linux/main.tf | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/examples/templates/do-linux/main.tf b/examples/templates/do-linux/main.tf index fbb4e2a5c2861..3afcaebc59806 100644 --- a/examples/templates/do-linux/main.tf +++ b/examples/templates/do-linux/main.tf @@ -278,13 +278,13 @@ resource "digitalocean_volume" "home_volume" { resource "digitalocean_droplet" "workspace" { region = data.coder_parameter.region.value count = data.coder_workspace.me.start_count - name = "coder-${data.coder_workspace.me.owner}-${data.coder_workspace.me.name}" + name = "coder-${lower(data.coder_workspace.me.owner)}-${lower(data.coder_workspace.me.name)}" image = data.coder_parameter.droplet_image.value size = data.coder_parameter.droplet_size.value volume_ids = [digitalocean_volume.home_volume.id] user_data = templatefile("cloud-config.yaml.tftpl", { - username = data.coder_workspace.me.owner + username = lower(data.coder_workspace.me.owner) home_volume_label = digitalocean_volume.home_volume.initial_filesystem_label init_script = base64encode(coder_agent.main.init_script) coder_agent_token = coder_agent.main.token From 15899875225a36f9486edafe456791d5f20c5583 Mon Sep 17 00:00:00 2001 From: Muhammad Atif Ali Date: Wed, 10 Jan 2024 23:53:46 +0000 Subject: [PATCH 3/3] `make gen` --- site/src/theme/icons.json | 1 + 1 file changed, 1 insertion(+) diff --git a/site/src/theme/icons.json b/site/src/theme/icons.json index 374efc29370c3..7ea2f49323b73 100644 --- a/site/src/theme/icons.json +++ b/site/src/theme/icons.json @@ -1,4 +1,5 @@ [ + "almalinux.svg", "android-studio.svg", "apache-guacamole.svg", "apple-black.svg", 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