fuckeduppdp/k8s/configure-metallb.sh

24 lines
527 B
Bash
Executable File

#!/bin/bash
set -e
usage () {
echo "usage: $0 ip"
exit 1
}
[[ $# -eq 1 ]] || usage
ip="$1"
cd "$(dirname $0)"
sed "s!<IP>!${ip}!" ./metallb.yaml.template > ./metallb.yaml
echo "Configuring metallb..."
kubectl apply -f ./metallb.yaml
echo "Configuring services..."
for i in ./svc-*.yaml; do
svc="$(grep -Po "name: \Kpdp-.*$" "$i")"
kubectl patch svc "$svc" -p '{"metadata":{"annotations":{"metallb.universe.tf/allow-shared-ip":"'"$ip"'"}},"spec":{"type": "LoadBalancer","loadBalancerIP":"'"$ip"'"}}'
done
echo "Done!"