From b9e8ebc69be4e3d3775bd08b7ec75381eeca5ba1 Mon Sep 17 00:00:00 2001 From: Nicholas Pease Date: Wed, 24 Jan 2024 04:53:53 +0000 Subject: [PATCH] Add module support --- .gitignore | 3 +++ default/.terraform.lock.hcl | 34 +++++++++++++++--------------- default/main.tf | 41 +++++++++++++++++++++++++++++-------- 3 files changed, 53 insertions(+), 25 deletions(-) create mode 100644 .gitignore diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..d6b0cf2 --- /dev/null +++ b/.gitignore @@ -0,0 +1,3 @@ +.terraform +.terraform.lock.hcl +*.hcl diff --git a/default/.terraform.lock.hcl b/default/.terraform.lock.hcl index 8c5fa76..9eda990 100644 --- a/default/.terraform.lock.hcl +++ b/default/.terraform.lock.hcl @@ -2,25 +2,25 @@ # Manual edits may be lost in future updates. provider "registry.terraform.io/coder/coder" { - version = "0.8.3" - constraints = "~> 0.8.2" + version = "0.12.4" + constraints = ">= 0.12.0, ~> 0.12.0" hashes = [ - "h1:TBRniXgio0mnsuF8hmzNcXUOvrK7C9AWIjOb/1JPXv4=", - "zh:18feb05b2d97a101b737795e74065f89a5ada72dac1e82cc02098c48b9789b4c", - "zh:1acc74f9ee2384b1bf9201c826cad95d2a428a67177790dd1c81b7261df45a39", - "zh:1d7639008ee6572d7bc8f11e0d659a425304b0f07b7630790a38d2b4c75bba92", - "zh:3edb46629a506f53b9cc179f14a626a4c467f9669e7e37e727889bb4ac96df78", - "zh:4a7fd665fbe2f6fb3b96109171cd56133e5e0dac710bbaa4d1209fd97559ac0f", - "zh:7336b83e0f7c9cd6eadb7f45eac8049cad917ea8f5682eedfb49ea9bf5a6d8f4", - "zh:8df58ed47b017ea94adc234a0845b676bb2b3e4aba3506b0af8a8a6973aeb647", - "zh:9a220899d4fae5bccae6984c1dfe83d7f336a29b57a189af960d9d070a7c95bb", - "zh:a3bb025a477d8c99fb050d1552c9eedfe92db5756445d6f91850d5b5e0f1db2d", - "zh:c23021f836bfaab6c00e380154490ded47c6afb86779f14ac98dc14102977b0d", - "zh:ef089f56b52823fa726b500420e46a948894b9b52f6700105ac272e65eddf8d3", - "zh:f1cdf01d0890736500273698a7e1c98d81b1c3a810d04cf526a22aeb1fc1c7af", - "zh:f2fe971ceeb4e478fdde73b19bd1c7ceed9b5ab21231beb2c6f1a99a1fac7b98", + "h1:pC/CERBJT01pJX5W9YG+NzbgXejYJYhIBICjt+TRASs=", + "zh:120ba6a0e8252200d67a55540d730e385c915a3feef9fa80c6835dbb48a3f35c", + "zh:16e6247738ee4a237ce8a5fb3c01489a24938959aa097d43954334489f190f33", + "zh:3c27532e66131c3e39e83c1afbf5416e0df4059cc615be81b7339b2752a1a862", + "zh:3e1c0392c0ba4be446ea1342b7228f468be1ca0b3401c886898df28c5a8447dc", + "zh:3fda223b83eaa4fcb339241ab6b823cd221baa29e2bc621e415e950f9d426303", + "zh:5afe3836622a20907869a30bb05fc2b639d9c1275cc9350b4f24751287188db2", + "zh:6013dc8af3c685c88063ec5dead199d41257c6c160d42d840c53d2d221d18765", + "zh:6bf6b3e2e38ca10558d010f24c8f3b4fb93dd108b4ebcdce3b24090473b22bbf", + "zh:70ed7dc8e349e7636be3fce037d84719f79eb5860a38d4f7225450ae1c8f337d", + "zh:71ece7a5490ca01320b356c0b7e86e7d0def8838b79b5f8ee87e3306320f51c5", + "zh:7930ee0e1893f3cd5d47164542a8760f9546e4bbb4290568ba3b190c75556e9b", + "zh:8aa33fc7d85bd6cb569e419ab0ff6c5d636a8a97a657fa650e7b9e03602a2dde", + "zh:a59489ca9ea45fe70b131698c7b7e0de4fe4007e3ef1e4962c193d67e7dc2bc5", + "zh:be0f4f0f2c6e5ba716fe543c5f2f42ab1f278d4e52207dd4f6831b09790d7da9", "zh:f569b65999264a9416862bca5cd2a6177d94ccb0424f3a4ef424428912b9cb3c", - "zh:fa1ec022d97425ccc9f784fde17cbc52b40b715a00604161db10ab98c1161400", ] } diff --git a/default/main.tf b/default/main.tf index 4395911..99c1cff 100644 --- a/default/main.tf +++ b/default/main.tf @@ -2,7 +2,7 @@ terraform { required_providers { coder = { source = "coder/coder" - version = "~> 0.8.2" + version = "~> 0.12.0" } docker = { source = "kreuzwerker/docker" @@ -16,7 +16,7 @@ locals { } provider "coder" { - feature_use_managed_variables = "true" + } data "coder_provisioner" "me" { @@ -109,17 +109,17 @@ data "coder_parameter" "language" { } } -module "filebrowser" { - source = "registry.coder.com/modules/filebrowser/coder" - version = "1.0.0" - agent_id = coder_agent.main -} - resource "coder_agent" "main" { arch = data.coder_provisioner.me.arch os = "linux" startup_script_timeout = 180 startup_script_behavior = "blocking" + display_apps { + vscode = true + vscode_insiders = false + web_terminal = true + ssh_helper = true + } startup_script = <<-EOT set -e # Base Script (to be downloaded) @@ -216,6 +216,31 @@ resource "coder_agent" "main" { } } +module "vscode-web" { + source = "registry.coder.com/modules/vscode-web/coder" + version = "1.0.0" + agent_id = coder_agent.main.id + accept_license = true +} + +module "filebrowser" { + source = "registry.coder.com/modules/filebrowser/coder" + version = "1.0.0" + agent_id = coder_agent.main.id +} + +module "coder-login" { + source = "registry.coder.com/modules/coder-login/coder" + version = "1.0.0" + agent_id = coder_agent.main.id +} + +module "git-commit-signing" { + source = "registry.coder.com/modules/git-commit-signing/coder" + version = "1.0.0" + agent_id = coder_agent.main.id +} + resource "docker_volume" "home_volume" { name = "coder-${data.coder_workspace.me.id}-home" # Protect the volume from being deleted due to changes in attributes.