From af4a9ce04c5b500133278415a1f600be1f0f209e Mon Sep 17 00:00:00 2001 From: Marques Johansson Date: Fri, 13 Aug 2021 18:22:46 -0400 Subject: [PATCH 1/4] make terraform config reusable as a module - fix terraform resource paths (use path.module) - use cloud-config (avoiding ssh provisioners) - use templatefile (template_file resource is deprecated) - update metal version Signed-off-by: Marques Johansson --- .gitignore | 10 +++ deploy/terraform/.terraform.lock.hcl | 99 ++++++++++++++++++++++++++++ deploy/terraform/cloud-config.cfg | 11 ++++ deploy/terraform/main.tf | 49 +++++++------- 4 files changed, 144 insertions(+), 25 deletions(-) create mode 100644 deploy/terraform/.terraform.lock.hcl create mode 100644 deploy/terraform/cloud-config.cfg diff --git a/.gitignore b/.gitignore index 376b19b9..091a8317 100644 --- a/.gitignore +++ b/.gitignore @@ -1,3 +1,12 @@ +# Local .terraform directories +**/.terraform/* +.terraform* + +# .tfstate files +*.tfstate +*.tfstate.* + +!.terraform.lock.hcl envrc out !deploy/.env @@ -9,3 +18,4 @@ deploy/compose/state/webroot/workflow/* deploy/compose/state/webroot/*.gz workflow_id.txt compose.tar.gz +compose.zip diff --git a/deploy/terraform/.terraform.lock.hcl b/deploy/terraform/.terraform.lock.hcl new file mode 100644 index 00000000..c655c459 --- /dev/null +++ b/deploy/terraform/.terraform.lock.hcl @@ -0,0 +1,99 @@ +# This file is maintained automatically by "terraform init". +# Manual edits may be lost in future updates. + +provider "registry.terraform.io/equinix/metal" { + version = "3.1.0" + constraints = "3.1.0" + hashes = [ + "h1:9qdLMOS8tATAqb9IDjP7tfaC0hpWU7dJquvha84Basc=", + "zh:070b77456a3de02b623be29f1752b48c17100533a98661b7c6555ad2b60aeb1b", + "zh:140b4bfb72810b2e977e7fe442a5b69096db93fe3daff6e307574a541079eb42", + "zh:1d9bf5ba1e05b55af6f5d3e37fa9c0dd4c9fed02e0d47112945c16561f10fe38", + "zh:2b380fb077bb21296e1560c37efd051a7bb31fa488fbe525f54a166ace8cccc8", + "zh:5120fd9f3164e06473d813206e4f06d3b330a351ef6f59114546e0170a49f542", + "zh:5b131619662a36af7f0691c9505d24462533965391039b5664855e50b64db7c4", + "zh:7d3b2f2e2d1a0073ae54070e5dee37713726f6401f26d046db8a5cf58c80cebc", + "zh:7d40ec64e8a3f77c272c9e0cfc8bb6fc148e11a130ef0f022291947313798ec1", + "zh:7fe35422891a14ed233080303468221d8a9f98cd74b0fe73688569cbfc19ff4c", + "zh:a9bb9bfe0928bbc15c132004b3ef573983bb14cc59af9fb492b4f59f2d159054", + "zh:bd7000a809e2e96f87ac7ef90c953a05a8813feb220f27cccc50232f1ae02a50", + "zh:c0656d79d71b893fabcc8420774b8c2d5e2c77feb2b7fecd5dfb9be24228d392", + "zh:f1c755853d4c988fc616e8b1cf8407ed425a0e9ef35a441c0e9eb37657aa9907", + ] +} + +provider "registry.terraform.io/hashicorp/archive" { + version = "2.2.0" + hashes = [ + "h1:2K5LQkuWRS2YN1/YoNaHn9MAzjuTX8Gaqy6i8Mbfv8Y=", + "zh:06bd875932288f235c16e2237142b493c2c2b6aba0e82e8c85068332a8d2a29e", + "zh:0c681b481372afcaefddacc7ccdf1d3bb3a0c0d4678a526bc8b02d0c331479bc", + "zh:100fc5b3fc01ea463533d7bbfb01cb7113947a969a4ec12e27f5b2be49884d6c", + "zh:55c0d7ddddbd0a46d57c51fcfa9b91f14eed081a45101dbfc7fd9d2278aa1403", + "zh:73a5dd68379119167934c48afa1101b09abad2deb436cd5c446733e705869d6b", + "zh:841fc4ac6dc3479981330974d44ad2341deada8a5ff9e3b1b4510702dfbdbed9", + "zh:91be62c9b41edb137f7f835491183628d484e9d6efa82fcb75cfa538c92791c5", + "zh:acd5f442bd88d67eb948b18dc2ed421c6c3faee62d3a12200e442bfff0aa7d8b", + "zh:ad5720da5524641ad718a565694821be5f61f68f1c3c5d2cfa24426b8e774bef", + "zh:e63f12ea938520b3f83634fc29da28d92eed5cfbc5cc8ca08281a6a9c36cca65", + "zh:f6542918faa115df46474a36aabb4c3899650bea036b5f8a5e296be6f8f25767", + ] +} + +provider "registry.terraform.io/hashicorp/cloudinit" { + version = "2.2.0" + hashes = [ + "h1:siiI0wK6/jUDdA5P8ifTO0yc9YmXHml4hz5K9I9N+MA=", + "zh:76825122171f9ea2287fd27e23e80a7eb482f6491a4f41a096d77b666896ee96", + "zh:795a36dee548e30ca9c9d474af9ad6d29290e0a9816154ad38d55381cd0ab12d", + "zh:9200f02cb917fb99e44b40a68936fd60d338e4d30a718b7e2e48024a795a61b9", + "zh:a33cf255dc670c20678063aa84218e2c1b7a67d557f480d8ec0f68bc428ed472", + "zh:ba3c1b2cd0879286c1f531862c027ec04783ece81de67c9a3b97076f1ce7f58f", + "zh:bd575456394428a1a02191d2e46af0c00e41fd4f28cfe117d57b6aeb5154a0fb", + "zh:c68dd1db83d8437c36c92dc3fc11d71ced9def3483dd28c45f8640cfcd59de9a", + "zh:cbfe34a90852ed03cc074601527bb580a648127255c08589bc3ef4bf4f2e7e0c", + "zh:d6ffd7398c6d1f359b96f5b757e77b99b339fbb91df1b96ac974fe71bc87695c", + "zh:d9c15285f847d7a52df59e044184fb3ba1b7679fd0386291ed183782683d9517", + "zh:f7dd02f6d36844da23c9a27bb084503812c29c1aec4aba97237fec16860fdc8c", + ] +} + +provider "registry.terraform.io/hashicorp/null" { + version = "2.1.2" + constraints = "~> 2.1.2" + hashes = [ + "h1:l0/ASa/TB1exgqdi33sOkFakJL2zAQBu+q5LgO5/SxI=", + "zh:0cc7236c1fbf971b8bad1540a7d0c5ac4579248239fd1034c023b0b660a8d1d5", + "zh:16fc2d9b10cf9e5123bf956e7032c338cc93a03be1ca2e9f3d3b7014c0e866c7", + "zh:1e26465ff40ded59cef1a9e745752eef9744471e69094d12f8bc40a060e8cdb9", + "zh:3c7afd28076245f455d4348af6c124b73409722be4a73680d4e4709a4f25ea91", + "zh:4190a92567efaa444527f19b28d65fac1a01aeba907013b5dceacd9ba2a23709", + "zh:677963437316b088fc1aac70fe7d608d2917c46530c4a25ec86a43e9acaf2811", + "zh:69fe15f6b851ff82700bc749c50a9299770515617e677c18cba2cb697daaff36", + "zh:6b505cc60cc1494e1cab61590bca127b06dd894d0b2a7dcacd23862bce1f492b", + "zh:719aa11ad7be974085af595089478eb24d5a021bc7b08364fa6745d9eb473dac", + "zh:7375b02189e14efbfaab994cd05d81e3ff8e46041fae778598b3903114093a3e", + "zh:c406573b2084a08f8faa0451923fbeb1ca6c5a5598bf039589ec2db13aacc622", + "zh:fb11299a3b20711595713d126abbbe78c554eb5995b02db536e9253686798fb6", + ] +} + +provider "registry.terraform.io/hashicorp/template" { + version = "2.1.2" + constraints = "~> 2.1.2" + hashes = [ + "h1:a61DkglpoCGihJWQDBO0wJovPKXm9K6GLau2l+Q6EdA=", + "zh:149e4bf47ac21b67f6567767afcd29caaf0b0ca43714748093a00a2a98cd17a8", + "zh:2ff61a5eb7550e0df2baefccea78a8b621faef76154aad7ddf9c85c1d69f7ebf", + "zh:3b2d9a9f80754eb0a250a80e0dfdef385501697850a54ead744d1615e60fe648", + "zh:545b93c818035aac59f4a821644276c123a74aa210b1221974d832a6009df201", + "zh:5508512a522152a302591b399512fa736d8f57088c85ca74f7e00014db3a8c26", + "zh:701b56016a6db814ade171877375a2429b45979f97c2d112e4f2103f0433eb08", + "zh:90fc08165958538d8a099f17282c615d5b13f86bb215af33e2ca7551bf81996f", + "zh:affa6d409060c01a610854a395970d76701d0b07696e1ed6776b3f3b58014104", + "zh:b66ffed670bf0ed6714fa4ac26444a8e22f71ec6da134faf0b1f77fb2c13c666", + "zh:bb3d87db22f0ac56717eadde39690e3e27c1c01b10d0ecbe2e6e39f1e5c4d808", + "zh:c54b9693c9f348591432aabc808cbe1786bcda1cb70d312ef62a24545a14f945", + "zh:e7c8f8506cee5fa28f842714857d412a2b09e61127a0efe2a164c2f3d9bf2619", + ] +} diff --git a/deploy/terraform/cloud-config.cfg b/deploy/terraform/cloud-config.cfg new file mode 100644 index 00000000..f7b86275 --- /dev/null +++ b/deploy/terraform/cloud-config.cfg @@ -0,0 +1,11 @@ +packages: +- unzip + +write_files: +- encoding: b64 + content: ${COMPOSE_ZIP} + path: /root/compose.zip + +runcmd: +- cd /root/sandbox/compose && unzip /root/compose.zip +- cd /root/sandbox/compose && TINKERBELL_CLIENT_MAC=${WORKER_MAC} TINKERBELL_TEMPLATE_MANIFEST=/manifests/template/ubuntu-equinix-metal.yaml TINKERBELL_HARDWARE_MANIFEST=/manifests/hardware/hardware-equinix-metal.json docker-compose up -d diff --git a/deploy/terraform/main.tf b/deploy/terraform/main.tf index cd59605a..c7ea7e54 100644 --- a/deploy/terraform/main.tf +++ b/deploy/terraform/main.tf @@ -62,7 +62,7 @@ resource "metal_device" "tink_provisioner" { operating_system = "ubuntu_20_04" billing_cycle = "hourly" project_id = var.project_id - user_data = file("setup.sh") + user_data = data.cloudinit_config.setup.rendered } resource "metal_device_network_type" "tink_provisioner_network_type" { @@ -78,31 +78,30 @@ resource "metal_port_vlan_attachment" "provisioner" { vlan_vnid = metal_vlan.provisioning_vlan.vxlan } +data "archive_file" "compose" { + type = "zip" + source_dir = "${path.module}/../compose" + output_path = "${path.module}/compose.zip" +} - -resource "null_resource" "setup" { - connection { - type = "ssh" - user = "root" - host = metal_device.tink_provisioner.network[0].address - agent = var.use_ssh_agent - private_key = var.use_ssh_agent ? null : file(var.ssh_private_key) - } - - # need to tar the compose directory because the 'provisioner "file"' does not preserve file permissions - provisioner "local-exec" { - command = "cd ../ && tar zcvf compose.tar.gz compose" - } - - provisioner "file" { - source = "../compose.tar.gz" - destination = "/root/compose.tar.gz" +data "cloudinit_config" "setup" { + depends_on = [ + data.archive_file.compose, + // resource.null_resource.setup + ] + gzip = false # not supported on Equinix Metal + base64_encode = false # not supported on Equinix Metal + + part { + content_type = "text/x-shellscript" + content = file("${path.module}/setup.sh") } - - provisioner "remote-exec" { - inline = [ - "cd /root && tar zxvf /root/compose.tar.gz -C /root/sandbox", - "cd /root/sandbox/compose && TINKERBELL_CLIENT_MAC=${metal_device.tink_worker.ports[1].mac} TINKERBELL_TEMPLATE_MANIFEST=/manifests/template/ubuntu-equinix-metal.yaml TINKERBELL_HARDWARE_MANIFEST=/manifests/hardware/hardware-equinix-metal.json docker-compose up -d", - ] + part { + content_type = "text/cloud-config" + content = templatefile("${path.module}/cloud-config.cfg", { + COMPOSE_ZIP = filebase64("${path.module}/compose.zip") + WORKER_MAC = metal_device.tink_worker.ports[1].mac + PROVISIONER_IP = metal_device.tink_provisioner.network[0].address + }) } } From 83ac80a797d0ec0797c4d6ef344065711b3d0a9e Mon Sep 17 00:00:00 2001 From: Marques Johansson Date: Fri, 17 Sep 2021 09:53:02 -0400 Subject: [PATCH 2/4] fix terraform compose.zip creation planning/timing Signed-off-by: Marques Johansson --- deploy/terraform/main.tf | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/deploy/terraform/main.tf b/deploy/terraform/main.tf index c7ea7e54..1e121466 100644 --- a/deploy/terraform/main.tf +++ b/deploy/terraform/main.tf @@ -84,10 +84,13 @@ data "archive_file" "compose" { output_path = "${path.module}/compose.zip" } +locals { + compose_zip = data.archive_file.compose.output_size > 0 ? "" : filebase64("${path.module}/compose.zip") +} + data "cloudinit_config" "setup" { depends_on = [ data.archive_file.compose, - // resource.null_resource.setup ] gzip = false # not supported on Equinix Metal base64_encode = false # not supported on Equinix Metal @@ -99,7 +102,7 @@ data "cloudinit_config" "setup" { part { content_type = "text/cloud-config" content = templatefile("${path.module}/cloud-config.cfg", { - COMPOSE_ZIP = filebase64("${path.module}/compose.zip") + COMPOSE_ZIP = local.compose_zip WORKER_MAC = metal_device.tink_worker.ports[1].mac PROVISIONER_IP = metal_device.tink_provisioner.network[0].address }) From 48b06fa0beb8511b7d49e519f3ae9f1baa46f0e1 Mon Sep 17 00:00:00 2001 From: Marques Johansson Date: Fri, 3 Dec 2021 18:24:10 -0500 Subject: [PATCH 3/4] update terraform configuration to use metal_ports Signed-off-by: Marques Johansson --- deploy/terraform/.terraform.lock.hcl | 32 +++++++-------- deploy/terraform/cloud-config.cfg | 1 + deploy/terraform/main.tf | 58 ++++++++++++++-------------- deploy/terraform/variables.tf | 8 ++-- 4 files changed, 49 insertions(+), 50 deletions(-) diff --git a/deploy/terraform/.terraform.lock.hcl b/deploy/terraform/.terraform.lock.hcl index c655c459..60b41da8 100644 --- a/deploy/terraform/.terraform.lock.hcl +++ b/deploy/terraform/.terraform.lock.hcl @@ -2,23 +2,23 @@ # Manual edits may be lost in future updates. provider "registry.terraform.io/equinix/metal" { - version = "3.1.0" - constraints = "3.1.0" + version = "3.2.0" + constraints = "3.2.0" hashes = [ - "h1:9qdLMOS8tATAqb9IDjP7tfaC0hpWU7dJquvha84Basc=", - "zh:070b77456a3de02b623be29f1752b48c17100533a98661b7c6555ad2b60aeb1b", - "zh:140b4bfb72810b2e977e7fe442a5b69096db93fe3daff6e307574a541079eb42", - "zh:1d9bf5ba1e05b55af6f5d3e37fa9c0dd4c9fed02e0d47112945c16561f10fe38", - "zh:2b380fb077bb21296e1560c37efd051a7bb31fa488fbe525f54a166ace8cccc8", - "zh:5120fd9f3164e06473d813206e4f06d3b330a351ef6f59114546e0170a49f542", - "zh:5b131619662a36af7f0691c9505d24462533965391039b5664855e50b64db7c4", - "zh:7d3b2f2e2d1a0073ae54070e5dee37713726f6401f26d046db8a5cf58c80cebc", - "zh:7d40ec64e8a3f77c272c9e0cfc8bb6fc148e11a130ef0f022291947313798ec1", - "zh:7fe35422891a14ed233080303468221d8a9f98cd74b0fe73688569cbfc19ff4c", - "zh:a9bb9bfe0928bbc15c132004b3ef573983bb14cc59af9fb492b4f59f2d159054", - "zh:bd7000a809e2e96f87ac7ef90c953a05a8813feb220f27cccc50232f1ae02a50", - "zh:c0656d79d71b893fabcc8420774b8c2d5e2c77feb2b7fecd5dfb9be24228d392", - "zh:f1c755853d4c988fc616e8b1cf8407ed425a0e9ef35a441c0e9eb37657aa9907", + "h1:PIotyZNp3/sYe/Zk7yEgHygV5GOtHjAqXr4TJYdtETs=", + "zh:4a53b56d7cab5a75dca16c4a285438f13fe07a37c45967668dae8e4a70b78a85", + "zh:4fa88d43bd2370e420de6238f02f8ad668a0cd9e7f010a24a8bc0a76982ff3bc", + "zh:525b0f6d977437388b7ee7428bccd351e46af39a0883ce08f624b4dd173de8c2", + "zh:5c906ee75fbd1daa63dc40221015bfdcea7cec24ed7aa3687fcc18265556e379", + "zh:6153771a66d1f5058e977a686e706f3ced64cbcb7cd623a9adf7e8ed3f0d08d8", + "zh:79dd26afcc0846864ede59e79ae07fdf6cc084315cd9e50f4e09c700d9d8dfb4", + "zh:992e410067995537565f38ad9f93f4d66fabdc25a8303a1be418aefaf172daae", + "zh:9e52d2d008846cb6db8d0cd0aac7e1c6c635fc65c192b0217b2e673d165def0f", + "zh:c2ca5c36358c03c996d97b8baca6809675f54010c021d5704124bd3815660c86", + "zh:e2d4bfae4489142cfac31fb7939047226335c0fddf59c3544faeb1f3029a36d8", + "zh:e5c6727b6404beb3aa54bbc7eb3145bac29bab8135771f21754e093c178ee23f", + "zh:ecf34c7c8b3eb8cd61b381d8f26ec61b3d8b5d57a87fff97cb24331230286fef", + "zh:fcae7646861ccf3393828ac53d05487ba8547cf9f8a9da13553dcedf8dd2646e", ] } diff --git a/deploy/terraform/cloud-config.cfg b/deploy/terraform/cloud-config.cfg index f7b86275..9ce7a7a1 100644 --- a/deploy/terraform/cloud-config.cfg +++ b/deploy/terraform/cloud-config.cfg @@ -9,3 +9,4 @@ write_files: runcmd: - cd /root/sandbox/compose && unzip /root/compose.zip - cd /root/sandbox/compose && TINKERBELL_CLIENT_MAC=${WORKER_MAC} TINKERBELL_TEMPLATE_MANIFEST=/manifests/template/ubuntu-equinix-metal.yaml TINKERBELL_HARDWARE_MANIFEST=/manifests/hardware/hardware-equinix-metal.json docker-compose up -d + diff --git a/deploy/terraform/main.tf b/deploy/terraform/main.tf index 1e121466..81fc872e 100644 --- a/deploy/terraform/main.tf +++ b/deploy/terraform/main.tf @@ -1,9 +1,9 @@ -# Configure the Packet Provider. +# Configure the Equinix Metal Provider. terraform { required_providers { metal = { source = "equinix/metal" - version = "3.1.0" + version = "3.2.0" } null = { source = "hashicorp/null" @@ -23,7 +23,7 @@ provider "metal" { # Create a new VLAN in datacenter "ewr1" resource "metal_vlan" "provisioning_vlan" { description = "provisioning_vlan" - facility = var.facility + metro = var.metro project_id = var.project_id } @@ -31,7 +31,7 @@ resource "metal_vlan" "provisioning_vlan" { resource "metal_device" "tink_worker" { hostname = "tink-worker" plan = var.device_type - facilities = [var.facility] + metro = var.metro operating_system = "custom_ipxe" ipxe_script_url = "https://boot.netboot.xyz" always_pxe = "true" @@ -39,43 +39,42 @@ resource "metal_device" "tink_worker" { project_id = var.project_id } -resource "metal_device_network_type" "tink_worker_network_type" { - device_id = metal_device.tink_worker.id - type = "layer2-individual" +resource "metal_port" "tink_worker_bond0" { + port_id = [for p in metal_device.tink_worker.ports : p.id if p.name == "bond0"][0] + layer2 = true + bonded = false + # vlan_ids = [metal_vlan.provisioning_vlan.id] + # Can't do this: │ Error: vlan assignment batch could not be created: POST https://api.equinix.com/metal/v1/ports/b0bdf6d8-589e-4988-9000-9f49c97a54e1/vlan-assignments/batches: 422 Can't assign VLANs to port b0bdf6d8-589e-4988-9000-9f49c97a54e1, the port is configured for Layer 3 mode., Port b0bdf6d8-589e-4988-9000-9f49c97a54e1 cannot be assigned to VLANs., Bond disabled } # Attach VLAN to worker -resource "metal_port_vlan_attachment" "worker" { - depends_on = [metal_device_network_type.tink_worker_network_type] - - device_id = metal_device.tink_worker.id - port_name = "eth0" - vlan_vnid = metal_vlan.provisioning_vlan.vxlan +resource "metal_port" "tink_worker_eth0" { + depends_on = [metal_port.tink_worker_bond0] + port_id = [for p in metal_device.tink_worker.ports : p.id if p.name == "eth0"][0] + #layer2 = true + # TODO(displague) the terraform provider is not permitting this, perhaps a bug in the provider validation + # layer2 flag can be set only for bond ports + bonded = false + vlan_ids = [metal_vlan.provisioning_vlan.id] + // vxlan_ids = [1000] } - # Create a device and add it to tf_project_1 resource "metal_device" "tink_provisioner" { hostname = "tink-provisioner" plan = var.device_type - facilities = [var.facility] + metro = var.metro operating_system = "ubuntu_20_04" billing_cycle = "hourly" project_id = var.project_id user_data = data.cloudinit_config.setup.rendered } -resource "metal_device_network_type" "tink_provisioner_network_type" { - device_id = metal_device.tink_provisioner.id - type = "hybrid" -} - -# Attach VLAN to provisioner -resource "metal_port_vlan_attachment" "provisioner" { - depends_on = [metal_device_network_type.tink_provisioner_network_type] - device_id = metal_device.tink_provisioner.id - port_name = "eth1" - vlan_vnid = metal_vlan.provisioning_vlan.vxlan +# Provisioners eth1 (unbonded) is attached to the provisioning VLAN +resource "metal_port" "eth1" { + port_id = [for p in metal_device.tink_provisioner.ports : p.id if p.name == "eth1"][0] + bonded = false + vlan_ids = [metal_vlan.provisioning_vlan.id] } data "archive_file" "compose" { @@ -85,7 +84,7 @@ data "archive_file" "compose" { } locals { - compose_zip = data.archive_file.compose.output_size > 0 ? "" : filebase64("${path.module}/compose.zip") + compose_zip = data.archive_file.compose.output_size > 0 ? filebase64("${path.module}/compose.zip") : "" } data "cloudinit_config" "setup" { @@ -102,9 +101,8 @@ data "cloudinit_config" "setup" { part { content_type = "text/cloud-config" content = templatefile("${path.module}/cloud-config.cfg", { - COMPOSE_ZIP = local.compose_zip - WORKER_MAC = metal_device.tink_worker.ports[1].mac - PROVISIONER_IP = metal_device.tink_provisioner.network[0].address + COMPOSE_ZIP = local.compose_zip + WORKER_MAC = metal_device.tink_worker.ports[1].mac }) } } diff --git a/deploy/terraform/variables.tf b/deploy/terraform/variables.tf index fae5e2a6..b25a036d 100644 --- a/deploy/terraform/variables.tf +++ b/deploy/terraform/variables.tf @@ -8,10 +8,10 @@ variable "project_id" { type = string } -variable "facility" { - description = "Packet facility to provision in" +variable "metro" { + description = "Equinix Metal metr to provision in" type = string - default = "sjc1" + default = "sv" } variable "device_type" { @@ -30,4 +30,4 @@ variable "ssh_private_key" { type = string description = "ssh private key file to use" default = "~/.ssh/id_rsa" -} \ No newline at end of file +} From a1c19d34dd17408d7bbd8fd0a6c69a9ffa265c1b Mon Sep 17 00:00:00 2001 From: Marques Johansson Date: Tue, 22 Mar 2022 14:16:19 -0400 Subject: [PATCH 4/4] update Terraform quickstart guide to reboot correct node Signed-off-by: Marques Johansson --- deploy/terraform/variables.tf | 2 +- docs/quickstarts/TERRAFORMEM.md | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/deploy/terraform/variables.tf b/deploy/terraform/variables.tf index b25a036d..a0b2bb5b 100644 --- a/deploy/terraform/variables.tf +++ b/deploy/terraform/variables.tf @@ -9,7 +9,7 @@ variable "project_id" { } variable "metro" { - description = "Equinix Metal metr to provision in" + description = "Equinix Metal metro to provision in" type = string default = "sv" } diff --git a/docs/quickstarts/TERRAFORMEM.md b/docs/quickstarts/TERRAFORMEM.md index 893b0499..187bbf7d 100644 --- a/docs/quickstarts/TERRAFORMEM.md +++ b/docs/quickstarts/TERRAFORMEM.md @@ -42,7 +42,7 @@ This option will also show you how to create a machine to provision. Or if you have the [Equinix Metal CLI](https://github.com/equinix/metal-cli) installed run the following: ```bash - metal device reboot -i $(terraform show -json | jq -r '.values.root_module.resources[1].values.id') + metal device reboot -i $(terraform show -json | jq -r '.values.root_module.resources[3].values.id') ``` 5. Watch the provision complete @@ -94,7 +94,7 @@ This option will also show you how to create a machine to provision. Now reboot the `tink-worker` via the [Equinix Metal Web UI](https://console.equinix.com), or if you have the [Equinix Metal CLI](https://github.com/equinix/metal-cli) installed run the following: ```bash - metal device reboot -i $(terraform show -json | jq -r '.values.root_module.resources[1].values.id') + metal device reboot -i $(terraform show -json | jq -r '.values.root_module.resources[3].values.id') ``` 7. Login to the machine