wbc-dev-cluster/scripts/apply_master_node_insecure
2026-05-03 10:19:00 +02:00

17 lines
1.1 KiB
Bash
Executable file

#!/bin/bash
MACHINE_IP=$1
export SOPS_AGE_KEY_FILE=wbc-dev-cluster-base.age-key
if expr "${MACHINE_IP}" : '[0-9][0-9]*\.[0-9][0-9]*\.[0-9][0-9]*\.[0-9][0-9]*$' >/dev/null; then
sops exec-file secrets.yaml 'talosctl gen config --with-secrets {} wbc-dev-cluster https://'${MACHINE_IP}':6443 --config-patch @patches/controlplane/controlplane.yaml --output-types controlplane,talosconfig'
shift
talosctl apply -f controlplane.yaml -n ${MACHINE_IP} -e ${MACHINE_IP} --insecure
until talosctl -e ${MACHINE_IP} -n ${MACHINE_IP} --talosconfig talosconfig bootstrap; do echo "sleeping for reboot"; sleep 5; done
until talosctl -e ${MACHINE_IP} -n ${MACHINE_IP} --talosconfig talosconfig health; do echo "sleeping for post-apply"; sleep 5; done
talosctl -e ${MACHINE_IP} -n ${MACHINE_IP} --talosconfig talosconfig kubeconfig --merge=false --force-context-name=wbc-dev kubeconfig
rm talosconfig controlplane.yaml
echo "Cluster created - files in current directory outputted:"
echo " - kubeconfig - config file for kubectl to access the cluster."
else
echo pass machine ip as first arg.
fi