From bfbc6cc9120c987364b53f34c24ebd1cdcb0dadb Mon Sep 17 00:00:00 2001 From: Matthew Barnes Date: Sun, 6 Apr 2025 00:41:41 -0600 Subject: [PATCH 01/10] update image --- files.tf | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/files.tf b/files.tf index 7d3eaab..4d5d05d 100644 --- a/files.tf +++ b/files.tf @@ -1,7 +1,7 @@ locals { talos = { - version = "v1.8.0" + version = "v1.9.5" } } From 8afbd681876b45825874002c05b5ffc79b233d5a Mon Sep 17 00:00:00 2001 From: Matthew Barnes Date: Sun, 6 Apr 2025 00:53:48 -0600 Subject: [PATCH 02/10] use bash instead of sh --- cluster.tf | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/cluster.tf b/cluster.tf index 096de97..717577d 100644 --- a/cluster.tf +++ b/cluster.tf @@ -169,7 +169,7 @@ output "kubeconfig" { # Run custom script for further configuration. resource "null_resource" "run_custom_script" { provisioner "local-exec" { - command = "mkdir -p ~/.kube ~/.talos && terraform output -raw kubeconfig > ~/.kube/config && terraform output -raw talosconfig > ~/.talos/config && chmod 600 ~/.kube/config ~/.talos/config" + command = "bash -c 'mkdir -p ~/.kube ~/.talos && terraform output -raw kubeconfig > ~/.kube/config && terraform output -raw talosconfig > ~/.talos/config && chmod 600 ~/.kube/config ~/.talos/config'" } triggers = { kubeconfig = talos_cluster_kubeconfig.kubeconfig.kubeconfig_raw From 610191064d639139db91e97330363217c58660cb Mon Sep 17 00:00:00 2001 From: Matthew Barnes Date: Sun, 6 Apr 2025 01:00:24 -0600 Subject: [PATCH 03/10] fix --- cluster.tf | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/cluster.tf b/cluster.tf index 717577d..294be31 100644 --- a/cluster.tf +++ b/cluster.tf @@ -169,7 +169,7 @@ output "kubeconfig" { # Run custom script for further configuration. resource "null_resource" "run_custom_script" { provisioner "local-exec" { - command = "bash -c 'mkdir -p ~/.kube ~/.talos && terraform output -raw kubeconfig > ~/.kube/config && terraform output -raw talosconfig > ~/.talos/config && chmod 600 ~/.kube/config ~/.talos/config'" + command = "bash -c 'mkdir ~/.kube && mkdir ~/.talos && terraform output -raw kubeconfig > ~/.kube/config && terraform output -raw talosconfig > ~/.talos/config && chmod 600 ~/.kube/config ~/.talos/config'" } triggers = { kubeconfig = talos_cluster_kubeconfig.kubeconfig.kubeconfig_raw From 6d432a018ab32cf6bfd22ac38a37fca4a21689cc Mon Sep 17 00:00:00 2001 From: Matthew Barnes Date: Sun, 6 Apr 2025 01:06:12 -0600 Subject: [PATCH 04/10] fix --- cluster.tf | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/cluster.tf b/cluster.tf index 294be31..ce8e5d4 100644 --- a/cluster.tf +++ b/cluster.tf @@ -169,7 +169,7 @@ output "kubeconfig" { # Run custom script for further configuration. resource "null_resource" "run_custom_script" { provisioner "local-exec" { - command = "bash -c 'mkdir ~/.kube && mkdir ~/.talos && terraform output -raw kubeconfig > ~/.kube/config && terraform output -raw talosconfig > ~/.talos/config && chmod 600 ~/.kube/config ~/.talos/config'" + command = "mkdir ~/.kube && mkdir ~/.talos && terraform output -raw kubeconfig > ~/.kube/config && terraform output -raw talosconfig > ~/.talos/config && chmod 600 ~/.kube/config ~/.talos/config" } triggers = { kubeconfig = talos_cluster_kubeconfig.kubeconfig.kubeconfig_raw From e0645794d4dc5fe0f31569cfa09a03c016226493 Mon Sep 17 00:00:00 2001 From: Matthew Barnes Date: Sun, 6 Apr 2025 01:08:23 -0600 Subject: [PATCH 05/10] another method --- cluster.tf | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/cluster.tf b/cluster.tf index ce8e5d4..bc1c277 100644 --- a/cluster.tf +++ b/cluster.tf @@ -169,7 +169,12 @@ output "kubeconfig" { # Run custom script for further configuration. resource "null_resource" "run_custom_script" { provisioner "local-exec" { - command = "mkdir ~/.kube && mkdir ~/.talos && terraform output -raw kubeconfig > ~/.kube/config && terraform output -raw talosconfig > ~/.talos/config && chmod 600 ~/.kube/config ~/.talos/config" + command = < ~/.kube/config + echo "$(terraform output -raw talosconfig)" > ~/.talos/config + chmod 600 ~/.kube/config ~/.talos/config + EOT } triggers = { kubeconfig = talos_cluster_kubeconfig.kubeconfig.kubeconfig_raw From cbade42b9a5332f136c6b42ccad526d78f68a5e7 Mon Sep 17 00:00:00 2001 From: Matthew Barnes Date: Sun, 6 Apr 2025 01:10:04 -0600 Subject: [PATCH 06/10] fix --- cluster.tf | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/cluster.tf b/cluster.tf index bc1c277..802e22a 100644 --- a/cluster.tf +++ b/cluster.tf @@ -170,7 +170,7 @@ output "kubeconfig" { resource "null_resource" "run_custom_script" { provisioner "local-exec" { command = < ~/.kube/config echo "$(terraform output -raw talosconfig)" > ~/.talos/config chmod 600 ~/.kube/config ~/.talos/config From 85b4945a305055e7154f19ff991d4579b4ed8b57 Mon Sep 17 00:00:00 2001 From: Matthew Barnes Date: Sun, 6 Apr 2025 01:14:34 -0600 Subject: [PATCH 07/10] change to fix --- cluster.tf | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/cluster.tf b/cluster.tf index 802e22a..c38a683 100644 --- a/cluster.tf +++ b/cluster.tf @@ -170,7 +170,7 @@ output "kubeconfig" { resource "null_resource" "run_custom_script" { provisioner "local-exec" { command = < ~/.kube/config echo "$(terraform output -raw talosconfig)" > ~/.talos/config chmod 600 ~/.kube/config ~/.talos/config From aa37839d029260950dabcf7d9652a9c9e7fb5368 Mon Sep 17 00:00:00 2001 From: Matthew Barnes Date: Sun, 6 Apr 2025 01:19:30 -0600 Subject: [PATCH 08/10] trying something else --- cluster.tf | 11 +++++------ 1 file changed, 5 insertions(+), 6 deletions(-) diff --git a/cluster.tf b/cluster.tf index c38a683..7585a9d 100644 --- a/cluster.tf +++ b/cluster.tf @@ -166,18 +166,17 @@ output "kubeconfig" { sensitive = true } -# Run custom script for further configuration. resource "null_resource" "run_custom_script" { provisioner "local-exec" { command = < ~/.kube/config - echo "$(terraform output -raw talosconfig)" > ~/.talos/config - chmod 600 ~/.kube/config ~/.talos/config + mkdir -p ~/.kube ~/.talos + terraform output -raw kubeconfig > ~/.kube/config + terraform output -raw talosconfig > ~/.talos/config + chmod 600 ~/.kube/config ~/.talos/config EOT } triggers = { - kubeconfig = talos_cluster_kubeconfig.kubeconfig.kubeconfig_raw + kubeconfig = talos_cluster_kubeconfig.kubeconfig.kubeconfig_raw talosconfig = data.talos_client_configuration.talosconfig.talos_config } depends_on = [ From dbba1c8c991c6e087c2300133c8adc4c84e509b5 Mon Sep 17 00:00:00 2001 From: Matthew Barnes Date: Sun, 6 Apr 2025 01:24:07 -0600 Subject: [PATCH 09/10] check for changes --- cluster.tf | 11 ++++------- 1 file changed, 4 insertions(+), 7 deletions(-) diff --git a/cluster.tf b/cluster.tf index 7585a9d..8358d35 100644 --- a/cluster.tf +++ b/cluster.tf @@ -166,18 +166,15 @@ output "kubeconfig" { sensitive = true } +# Run custom script for further configuration. resource "null_resource" "run_custom_script" { provisioner "local-exec" { - command = < ~/.kube/config - terraform output -raw talosconfig > ~/.talos/config - chmod 600 ~/.kube/config ~/.talos/config - EOT + command = "mkdir ~/.kube && mkdir ~/.talos && terraform output -raw kubeconfig > ~/.kube/config && terraform output -raw talosconfig > ~/.talos/config && chmod 600 ~/.kube/config ~/.talos/config" } triggers = { - kubeconfig = talos_cluster_kubeconfig.kubeconfig.kubeconfig_raw + kubeconfig = talos_cluster_kubeconfig.kubeconfig.kubeconfig_raw talosconfig = data.talos_client_configuration.talosconfig.talos_config + timestamp = timestamp() # Ensure the resource always detects changes } depends_on = [ talos_cluster_kubeconfig.kubeconfig, From 4adafc6f4f30286fc94875a3a1e2076bca7b9af1 Mon Sep 17 00:00:00 2001 From: Matthew Barnes Date: Sun, 6 Apr 2025 01:25:56 -0600 Subject: [PATCH 10/10] -p option added back --- cluster.tf | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/cluster.tf b/cluster.tf index 8358d35..111ef08 100644 --- a/cluster.tf +++ b/cluster.tf @@ -169,7 +169,7 @@ output "kubeconfig" { # Run custom script for further configuration. resource "null_resource" "run_custom_script" { provisioner "local-exec" { - command = "mkdir ~/.kube && mkdir ~/.talos && terraform output -raw kubeconfig > ~/.kube/config && terraform output -raw talosconfig > ~/.talos/config && chmod 600 ~/.kube/config ~/.talos/config" + command = "mkdir -p ~/.kube && mkdir -p ~/.talos && terraform output -raw kubeconfig > ~/.kube/config && terraform output -raw talosconfig > ~/.talos/config && chmod 600 ~/.kube/config ~/.talos/config" } triggers = { kubeconfig = talos_cluster_kubeconfig.kubeconfig.kubeconfig_raw