chore: add metadata to example templates (#3451)

This commit is contained in:
Ben Potter
2022-08-10 16:34:17 -05:00
committed by GitHub
parent 95f26f74b6
commit cee0d1f848
11 changed files with 171 additions and 19 deletions

View File

@@ -2,7 +2,7 @@ terraform {
required_providers {
coder = {
source = "coder/coder"
version = "0.4.3"
version = "0.4.5"
}
}
}
@@ -146,7 +146,7 @@ EOT
resource "aws_instance" "dev" {
ami = data.aws_ami.ubuntu.id
availability_zone = "${var.region}a"
instance_type = "${var.instance_type}"
instance_type = var.instance_type
user_data = data.coder_workspace.me.transition == "start" ? local.user_data_start : local.user_data_end
tags = {
@@ -155,3 +155,19 @@ resource "aws_instance" "dev" {
Coder_Provisioned = "true"
}
}
resource "coder_metadata" "workspace_info" {
resource_id = aws_instance.dev.id
item {
key = "region"
value = var.region
}
item {
key = "instance type"
value = aws_instance.dev.instance_type
}
item {
key = "disk"
value = "${aws_instance.dev.root_block_device[0].volume_size} GiB"
}
}

View File

@@ -2,7 +2,7 @@ terraform {
required_providers {
coder = {
source = "coder/coder"
version = "0.4.3"
version = "0.4.5"
}
}
}
@@ -99,7 +99,7 @@ EOT
resource "aws_instance" "dev" {
ami = data.aws_ami.windows.id
availability_zone = "${var.region}a"
instance_type = "${var.instance_type}"
instance_type = var.instance_type
count = 1
user_data = data.coder_workspace.me.transition == "start" ? local.user_data_start : local.user_data_end
@@ -110,3 +110,19 @@ resource "aws_instance" "dev" {
}
}
resource "coder_metadata" "workspace_info" {
resource_id = aws_instance.dev.id
item {
key = "region"
value = var.region
}
item {
key = "instance type"
value = aws_instance.dev.instance_type
}
item {
key = "disk"
value = "${aws_instance.dev.root_block_device[0].volume_size} GiB"
}
}

View File

@@ -2,7 +2,7 @@ terraform {
required_providers {
coder = {
source = "coder/coder"
version = "0.4.3"
version = "0.4.5"
}
azurerm = {
source = "hashicorp/azurerm"
@@ -89,9 +89,9 @@ locals {
prefix = "coder-${data.coder_workspace.me.owner}-${data.coder_workspace.me.name}"
userdata = templatefile("cloud-config.yaml.tftpl", {
username = lower(substr(data.coder_workspace.me.owner, 0, 32))
init_script = base64encode(coder_agent.main.init_script)
hostname = lower(data.coder_workspace.me.name)
username = lower(substr(data.coder_workspace.me.owner, 0, 32))
init_script = base64encode(coder_agent.main.init_script)
hostname = lower(data.coder_workspace.me.name)
})
}
@@ -173,7 +173,7 @@ resource "azurerm_linux_virtual_machine" "main" {
name = "vm"
resource_group_name = azurerm_resource_group.main.name
location = azurerm_resource_group.main.location
size = var.instance_type
size = var.instance_type
// cloud-init overwrites this, so the value here doesn't matter
admin_username = "adminuser"
admin_ssh_key {
@@ -209,3 +209,22 @@ resource "azurerm_virtual_machine_data_disk_attachment" "home" {
lun = "10"
caching = "ReadWrite"
}
resource "coder_metadata" "workspace_info" {
count = data.coder_workspace.me.start_count
resource_id = azurerm_linux_virtual_machine.main[0].id
item {
key = "type"
value = azurerm_linux_virtual_machine.main[0].size
}
}
resource "coder_metadata" "home_info" {
resource_id = azurerm_managed_disk.home.id
item {
key = "size"
value = "${var.home_size} GiB"
}
}

View File

@@ -2,7 +2,7 @@ terraform {
required_providers {
coder = {
source = "coder/coder"
version = "0.4.3"
version = "0.4.5"
}
digitalocean = {
source = "digitalocean/digitalocean"
@@ -133,3 +133,27 @@ resource "digitalocean_project_resources" "project" {
digitalocean_volume.home_volume.urn
]
}
resource "coder_metadata" "workspace-info" {
count = data.coder_workspace.me.start_count
resource_id = digitalocean_droplet.workspace[0].id
item {
key = "region"
value = digitalocean_droplet.workspace[0].region
}
item {
key = "image"
value = digitalocean_droplet.workspace[0].image
}
}
resource "coder_metadata" "volume-info" {
resource_id = digitalocean_volume.home_volume.id
item {
key = "size"
value = "${digitalocean_volume.home_volume.size} GiB"
}
}

View File

@@ -30,9 +30,9 @@ resource "coder_agent" "main" {
# You can remove this block if you'd prefer to configure Git manually or using
# dotfiles. (see docs/dotfiles.md)
env = {
GIT_AUTHOR_NAME = "${data.coder_workspace.me.owner}"
GIT_COMMITTER_NAME = "${data.coder_workspace.me.owner}"
GIT_AUTHOR_EMAIL = "${data.coder_workspace.me.owner_email}"
GIT_AUTHOR_NAME = "${data.coder_workspace.me.owner}"
GIT_COMMITTER_NAME = "${data.coder_workspace.me.owner}"
GIT_AUTHOR_EMAIL = "${data.coder_workspace.me.owner_email}"
GIT_COMMITTER_EMAIL = "${data.coder_workspace.me.owner_email}"
}
}

View File

@@ -81,3 +81,13 @@ resource "docker_container" "workspace" {
read_only = false
}
}
resource "coder_metadata" "container_info" {
count = data.coder_workspace.me.start_count
resource_id = docker_container.workspace[0].id
item {
key = "image"
value = var.docker_image
}
}

View File

@@ -65,3 +65,13 @@ resource "docker_container" "workspace" {
read_only = false
}
}
resource "coder_metadata" "container_info" {
count = data.coder_workspace.me.start_count
resource_id = docker_container.workspace[0].id
item {
key = "image"
value = var.docker_image
}
}

View File

@@ -35,9 +35,9 @@ resource "coder_agent" "main" {
# You can remove this block if you'd prefer to configure Git manually or using
# dotfiles. (see docs/dotfiles.md)
env = {
GIT_AUTHOR_NAME = "${data.coder_workspace.me.owner}"
GIT_COMMITTER_NAME = "${data.coder_workspace.me.owner}"
GIT_AUTHOR_EMAIL = "${data.coder_workspace.me.owner_email}"
GIT_AUTHOR_NAME = "${data.coder_workspace.me.owner}"
GIT_COMMITTER_NAME = "${data.coder_workspace.me.owner}"
GIT_AUTHOR_EMAIL = "${data.coder_workspace.me.owner_email}"
GIT_COMMITTER_EMAIL = "${data.coder_workspace.me.owner_email}"
}
}
@@ -87,3 +87,13 @@ resource "docker_container" "workspace" {
read_only = false
}
}
resource "coder_metadata" "container_info" {
count = data.coder_workspace.me.start_count
resource_id = docker_container.workspace[0].id
item {
key = "image"
value = var.docker_image
}
}

View File

@@ -2,7 +2,7 @@ terraform {
required_providers {
coder = {
source = "coder/coder"
version = "0.4.3"
version = "0.4.5"
}
google = {
source = "hashicorp/google"
@@ -91,3 +91,22 @@ locals {
# Ensure Coder username is a valid Linux username
linux_user = lower(substr(data.coder_workspace.me.owner, 0, 32))
}
resource "coder_metadata" "workspace_info" {
count = data.coder_workspace.me.start_count
resource_id = google_compute_instance.dev[0].id
item {
key = "type"
value = google_compute_instance.dev[0].machine_type
}
}
resource "coder_metadata" "home_info" {
resource_id = google_compute_disk.root.id
item {
key = "size"
value = "${google_compute_disk.root.size} GiB"
}
}

View File

@@ -2,7 +2,7 @@ terraform {
required_providers {
coder = {
source = "coder/coder"
version = "0.4.3"
version = "0.4.5"
}
google = {
source = "hashicorp/google"
@@ -88,3 +88,13 @@ resource "coder_agent_instance" "dev" {
agent_id = coder_agent.main.id
instance_id = google_compute_instance.dev[0].instance_id
}
resource "coder_metadata" "workspace_info" {
count = data.coder_workspace.me.start_count
resource_id = google_compute_instance.dev[0].id
item {
key = "image"
value = module.gce-container.container.image
}
}

View File

@@ -2,7 +2,7 @@ terraform {
required_providers {
coder = {
source = "coder/coder"
version = "0.4.3"
version = "0.4.5"
}
google = {
source = "hashicorp/google"
@@ -75,3 +75,21 @@ resource "google_compute_instance" "dev" {
serial-port-enable = "TRUE"
}
}
resource "coder_metadata" "workspace_info" {
count = data.coder_workspace.me.start_count
resource_id = google_compute_instance.dev[0].id
item {
key = "type"
value = google_compute_instance.dev[0].machine_type
}
}
resource "coder_metadata" "home_info" {
resource_id = google_compute_disk.root.id
item {
key = "size"
value = "${google_compute_disk.root.size} GiB"
}
}