Skip to content

Commit cee0d1f

Browse files
authored
chore: add metadata to example templates (#3451)
1 parent 95f26f7 commit cee0d1f

File tree

11 files changed

+171
-19
lines changed

11 files changed

+171
-19
lines changed

examples/templates/aws-linux/main.tf

Lines changed: 18 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@ terraform {
22
required_providers {
33
coder = {
44
source = "coder/coder"
5-
version = "0.4.3"
5+
version = "0.4.5"
66
}
77
}
88
}
@@ -146,7 +146,7 @@ EOT
146146
resource "aws_instance" "dev" {
147147
ami = data.aws_ami.ubuntu.id
148148
availability_zone = "${var.region}a"
149-
instance_type = "${var.instance_type}"
149+
instance_type = var.instance_type
150150

151151
user_data = data.coder_workspace.me.transition == "start" ? local.user_data_start : local.user_data_end
152152
tags = {
@@ -155,3 +155,19 @@ resource "aws_instance" "dev" {
155155
Coder_Provisioned = "true"
156156
}
157157
}
158+
159+
resource "coder_metadata" "workspace_info" {
160+
resource_id = aws_instance.dev.id
161+
item {
162+
key = "region"
163+
value = var.region
164+
}
165+
item {
166+
key = "instance type"
167+
value = aws_instance.dev.instance_type
168+
}
169+
item {
170+
key = "disk"
171+
value = "${aws_instance.dev.root_block_device[0].volume_size} GiB"
172+
}
173+
}

examples/templates/aws-windows/main.tf

Lines changed: 18 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@ terraform {
22
required_providers {
33
coder = {
44
source = "coder/coder"
5-
version = "0.4.3"
5+
version = "0.4.5"
66
}
77
}
88
}
@@ -99,7 +99,7 @@ EOT
9999
resource "aws_instance" "dev" {
100100
ami = data.aws_ami.windows.id
101101
availability_zone = "${var.region}a"
102-
instance_type = "${var.instance_type}"
102+
instance_type = var.instance_type
103103
count = 1
104104

105105
user_data = data.coder_workspace.me.transition == "start" ? local.user_data_start : local.user_data_end
@@ -110,3 +110,19 @@ resource "aws_instance" "dev" {
110110
}
111111

112112
}
113+
114+
resource "coder_metadata" "workspace_info" {
115+
resource_id = aws_instance.dev.id
116+
item {
117+
key = "region"
118+
value = var.region
119+
}
120+
item {
121+
key = "instance type"
122+
value = aws_instance.dev.instance_type
123+
}
124+
item {
125+
key = "disk"
126+
value = "${aws_instance.dev.root_block_device[0].volume_size} GiB"
127+
}
128+
}

examples/templates/azure-linux/main.tf

Lines changed: 24 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@ terraform {
22
required_providers {
33
coder = {
44
source = "coder/coder"
5-
version = "0.4.3"
5+
version = "0.4.5"
66
}
77
azurerm = {
88
source = "hashicorp/azurerm"
@@ -89,9 +89,9 @@ locals {
8989
prefix = "coder-${data.coder_workspace.me.owner}-${data.coder_workspace.me.name}"
9090

9191
userdata = templatefile("cloud-config.yaml.tftpl", {
92-
username = lower(substr(data.coder_workspace.me.owner, 0, 32))
93-
init_script = base64encode(coder_agent.main.init_script)
94-
hostname = lower(data.coder_workspace.me.name)
92+
username = lower(substr(data.coder_workspace.me.owner, 0, 32))
93+
init_script = base64encode(coder_agent.main.init_script)
94+
hostname = lower(data.coder_workspace.me.name)
9595
})
9696
}
9797

@@ -173,7 +173,7 @@ resource "azurerm_linux_virtual_machine" "main" {
173173
name = "vm"
174174
resource_group_name = azurerm_resource_group.main.name
175175
location = azurerm_resource_group.main.location
176-
size = var.instance_type
176+
size = var.instance_type
177177
// cloud-init overwrites this, so the value here doesn't matter
178178
admin_username = "adminuser"
179179
admin_ssh_key {
@@ -209,3 +209,22 @@ resource "azurerm_virtual_machine_data_disk_attachment" "home" {
209209
lun = "10"
210210
caching = "ReadWrite"
211211
}
212+
213+
resource "coder_metadata" "workspace_info" {
214+
count = data.coder_workspace.me.start_count
215+
resource_id = azurerm_linux_virtual_machine.main[0].id
216+
217+
item {
218+
key = "type"
219+
value = azurerm_linux_virtual_machine.main[0].size
220+
}
221+
}
222+
223+
resource "coder_metadata" "home_info" {
224+
resource_id = azurerm_managed_disk.home.id
225+
226+
item {
227+
key = "size"
228+
value = "${var.home_size} GiB"
229+
}
230+
}

examples/templates/do-linux/main.tf

Lines changed: 25 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@ terraform {
22
required_providers {
33
coder = {
44
source = "coder/coder"
5-
version = "0.4.3"
5+
version = "0.4.5"
66
}
77
digitalocean = {
88
source = "digitalocean/digitalocean"
@@ -133,3 +133,27 @@ resource "digitalocean_project_resources" "project" {
133133
digitalocean_volume.home_volume.urn
134134
]
135135
}
136+
137+
resource "coder_metadata" "workspace-info" {
138+
count = data.coder_workspace.me.start_count
139+
resource_id = digitalocean_droplet.workspace[0].id
140+
141+
item {
142+
key = "region"
143+
value = digitalocean_droplet.workspace[0].region
144+
}
145+
item {
146+
key = "image"
147+
value = digitalocean_droplet.workspace[0].image
148+
}
149+
}
150+
151+
resource "coder_metadata" "volume-info" {
152+
resource_id = digitalocean_volume.home_volume.id
153+
154+
item {
155+
key = "size"
156+
value = "${digitalocean_volume.home_volume.size} GiB"
157+
}
158+
159+
}

examples/templates/docker-code-server/main.tf

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -30,9 +30,9 @@ resource "coder_agent" "main" {
3030
# You can remove this block if you'd prefer to configure Git manually or using
3131
# dotfiles. (see docs/dotfiles.md)
3232
env = {
33-
GIT_AUTHOR_NAME = "${data.coder_workspace.me.owner}"
34-
GIT_COMMITTER_NAME = "${data.coder_workspace.me.owner}"
35-
GIT_AUTHOR_EMAIL = "${data.coder_workspace.me.owner_email}"
33+
GIT_AUTHOR_NAME = "${data.coder_workspace.me.owner}"
34+
GIT_COMMITTER_NAME = "${data.coder_workspace.me.owner}"
35+
GIT_AUTHOR_EMAIL = "${data.coder_workspace.me.owner_email}"
3636
GIT_COMMITTER_EMAIL = "${data.coder_workspace.me.owner_email}"
3737
}
3838
}

examples/templates/docker-image-builds/main.tf

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -81,3 +81,13 @@ resource "docker_container" "workspace" {
8181
read_only = false
8282
}
8383
}
84+
85+
resource "coder_metadata" "container_info" {
86+
count = data.coder_workspace.me.start_count
87+
resource_id = docker_container.workspace[0].id
88+
89+
item {
90+
key = "image"
91+
value = var.docker_image
92+
}
93+
}

examples/templates/docker-with-dotfiles/main.tf

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -65,3 +65,13 @@ resource "docker_container" "workspace" {
6565
read_only = false
6666
}
6767
}
68+
69+
resource "coder_metadata" "container_info" {
70+
count = data.coder_workspace.me.start_count
71+
resource_id = docker_container.workspace[0].id
72+
73+
item {
74+
key = "image"
75+
value = var.docker_image
76+
}
77+
}

examples/templates/docker/main.tf

Lines changed: 13 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -35,9 +35,9 @@ resource "coder_agent" "main" {
3535
# You can remove this block if you'd prefer to configure Git manually or using
3636
# dotfiles. (see docs/dotfiles.md)
3737
env = {
38-
GIT_AUTHOR_NAME = "${data.coder_workspace.me.owner}"
39-
GIT_COMMITTER_NAME = "${data.coder_workspace.me.owner}"
40-
GIT_AUTHOR_EMAIL = "${data.coder_workspace.me.owner_email}"
38+
GIT_AUTHOR_NAME = "${data.coder_workspace.me.owner}"
39+
GIT_COMMITTER_NAME = "${data.coder_workspace.me.owner}"
40+
GIT_AUTHOR_EMAIL = "${data.coder_workspace.me.owner_email}"
4141
GIT_COMMITTER_EMAIL = "${data.coder_workspace.me.owner_email}"
4242
}
4343
}
@@ -87,3 +87,13 @@ resource "docker_container" "workspace" {
8787
read_only = false
8888
}
8989
}
90+
91+
resource "coder_metadata" "container_info" {
92+
count = data.coder_workspace.me.start_count
93+
resource_id = docker_container.workspace[0].id
94+
95+
item {
96+
key = "image"
97+
value = var.docker_image
98+
}
99+
}

examples/templates/gcp-linux/main.tf

Lines changed: 20 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@ terraform {
22
required_providers {
33
coder = {
44
source = "coder/coder"
5-
version = "0.4.3"
5+
version = "0.4.5"
66
}
77
google = {
88
source = "hashicorp/google"
@@ -91,3 +91,22 @@ locals {
9191
# Ensure Coder username is a valid Linux username
9292
linux_user = lower(substr(data.coder_workspace.me.owner, 0, 32))
9393
}
94+
95+
resource "coder_metadata" "workspace_info" {
96+
count = data.coder_workspace.me.start_count
97+
resource_id = google_compute_instance.dev[0].id
98+
99+
item {
100+
key = "type"
101+
value = google_compute_instance.dev[0].machine_type
102+
}
103+
}
104+
105+
resource "coder_metadata" "home_info" {
106+
resource_id = google_compute_disk.root.id
107+
108+
item {
109+
key = "size"
110+
value = "${google_compute_disk.root.size} GiB"
111+
}
112+
}

examples/templates/gcp-vm-container/main.tf

Lines changed: 11 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@ terraform {
22
required_providers {
33
coder = {
44
source = "coder/coder"
5-
version = "0.4.3"
5+
version = "0.4.5"
66
}
77
google = {
88
source = "hashicorp/google"
@@ -88,3 +88,13 @@ resource "coder_agent_instance" "dev" {
8888
agent_id = coder_agent.main.id
8989
instance_id = google_compute_instance.dev[0].instance_id
9090
}
91+
92+
resource "coder_metadata" "workspace_info" {
93+
count = data.coder_workspace.me.start_count
94+
resource_id = google_compute_instance.dev[0].id
95+
96+
item {
97+
key = "image"
98+
value = module.gce-container.container.image
99+
}
100+
}

0 commit comments

Comments
 (0)
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