fixing kubeadm create

This commit is contained in:
juvdiaz 2026-07-02 11:24:13 -06:00
parent 77e31bba0b
commit 364c028315
1 changed files with 17 additions and 1 deletions

View File

@ -407,6 +407,7 @@ resource "null_resource" "kubeadm_worker" {
host = each.value.host host = each.value.host
user = each.value.user user = each.value.user
ssh_key_path = each.value.ssh_key_path ssh_key_path = each.value.ssh_key_path
kubeconfig_path = var.kubeconfig_path
registry_endpoint = var.registry_endpoint registry_endpoint = var.registry_endpoint
registry_config_version = "8" registry_config_version = "8"
containerd_runtime = "docker-containerd-io" containerd_runtime = "docker-containerd-io"
@ -1035,6 +1036,7 @@ set -euo pipefail
ssh_target='${self.triggers.user}@${self.triggers.host}' ssh_target='${self.triggers.user}@${self.triggers.host}'
ssh_key='${self.triggers.ssh_key_path}' ssh_key='${self.triggers.ssh_key_path}'
node_name='${self.triggers.node_name}' node_name='${self.triggers.node_name}'
kubeconfig_path='${self.triggers.kubeconfig_path}'
ssh_host="$${ssh_target#*@}" ssh_host="$${ssh_target#*@}"
known_hosts_file="$${TF_DATA_DIR:-.terraform}/homelab-worker-known_hosts" known_hosts_file="$${TF_DATA_DIR:-.terraform}/homelab-worker-known_hosts"
@ -1052,7 +1054,21 @@ if worker_ssh \
exit 0 exit 0
fi fi
join_cmd="$(sudo env KUBECONFIG=/etc/kubernetes/admin.conf kubeadm token create --print-join-command)" token_kubeconfig=""
if [ -s "$kubeconfig_path" ]; then
token_kubeconfig="$kubeconfig_path"
elif [ -s /etc/kubernetes/admin.conf ]; then
token_kubeconfig=/etc/kubernetes/admin.conf
elif [ -n "$${KUBECONFIG:-}" ] && [ -s "$${KUBECONFIG}" ]; then
token_kubeconfig="$${KUBECONFIG}"
fi
if [ -z "$token_kubeconfig" ]; then
echo "No kubeconfig available to create a kubeadm join token." >&2
echo "Checked: $kubeconfig_path, /etc/kubernetes/admin.conf, and KUBECONFIG." >&2
exit 1
fi
join_cmd="$(sudo env KUBECONFIG="$token_kubeconfig" kubeadm token create --print-join-command)"
remote_join_script="$(mktemp)" remote_join_script="$(mktemp)"
trap 'rm -f "$remote_join_script"' EXIT trap 'rm -f "$remote_join_script"' EXIT