feat(examples/templates/gcp-windows): add GCP region module (#15552)

This commit is contained in:
Phorcys
2024-11-28 14:12:36 +05:00
committed by GitHub
parent 56eb72236e
commit 7a7db9f4ad
+15 -43
View File
@@ -9,64 +9,37 @@ terraform {
}
}
provider "coder" {
}
provider "coder" {}
variable "project_id" {
description = "Which Google Compute Project should your workspace live in?"
}
data "coder_parameter" "zone" {
name = "zone"
display_name = "Zone"
description = "Which zone should your workspace live in?"
type = "string"
default = "us-central1-a"
icon = "/emojis/1f30e.png"
mutable = false
option {
name = "North America (Northeast)"
value = "northamerica-northeast1-a"
icon = "/emojis/1f1fa-1f1f8.png"
}
option {
name = "North America (Central)"
value = "us-central1-a"
icon = "/emojis/1f1fa-1f1f8.png"
}
option {
name = "North America (West)"
value = "us-west2-c"
icon = "/emojis/1f1fa-1f1f8.png"
}
option {
name = "Europe (West)"
value = "europe-west4-b"
icon = "/emojis/1f1ea-1f1fa.png"
}
option {
name = "South America (East)"
value = "southamerica-east1-a"
icon = "/emojis/1f1e7-1f1f7.png"
}
# See https://registry.coder.com/modules/gcp-region
module "gcp_region" {
source = "registry.coder.com/modules/gcp-region/coder"
# This ensures that the latest version of the module gets downloaded, you can also pin the module version to prevent breaking changes in production.
version = ">= 1.0.0"
regions = ["us", "europe"]
default = "us-central1-a"
}
provider "google" {
zone = data.coder_parameter.zone.value
zone = module.gcp_region.value
project = var.project_id
}
data "coder_workspace" "me" {
}
data "coder_workspace" "me" {}
data "coder_workspace_owner" "me" {}
data "google_compute_default_service_account" "default" {
}
data "google_compute_default_service_account" "default" {}
resource "google_compute_disk" "root" {
name = "coder-${data.coder_workspace.me.id}-root"
type = "pd-ssd"
zone = data.coder_parameter.zone.value
zone = module.gcp_region.value
image = "projects/windows-cloud/global/images/windows-server-2022-dc-core-v20220215"
lifecycle {
ignore_changes = [name, image]
@@ -77,11 +50,10 @@ resource "coder_agent" "main" {
auth = "google-instance-identity"
arch = "amd64"
os = "windows"
}
resource "google_compute_instance" "dev" {
zone = data.coder_parameter.zone.value
zone = module.gcp_region.value
count = data.coder_workspace.me.start_count
name = "coder-${lower(data.coder_workspace_owner.me.name)}-${lower(data.coder_workspace.me.name)}"
machine_type = "e2-medium"