Files
manifests/vcluster/create-vcluster.sh
T
2024-02-09 15:31:48 +01:00

54 lines
1.4 KiB
Bash
Executable File

#!/usr/bin/env bash
#
if [ ! $# -ge 1 ]; then
echo "usage: $0 cluster [helm args]"
exit 1
fi
if [ ! -d chart ]; then
echo "error: must be run from toplevel directory"
exit 1
fi
k='kubectl --context oceanbox'
name=$1
ns=$name-vcluster
shift
$k get ns $ns >/dev/null 2>&1 || $k create ns $ns
helm template -n $ns $@ $name ./chart | $k apply -f -
# configure_cluster_files () {
# mkdir -p _$name/host _$name/vcluster
# cd templates
# for i in values.yaml host/*.yaml vcluster/*.yaml; do
# sed "s/<x>/$name/g" $i > ../_$name/$i
# done
# cd ..
# }
# configure_cluster_files
# kubectl apply -n $ns -f _$name/host/cnpg.yaml
# echo "Waiting for databases to become ready..."
# kubectl wait -n $ns --for=condition=ready=true cluster $ns-db --timeout=60s
# kubectl apply -n $ns -f _$name/host/generate-cnp-rules.yaml
# kubectl apply -n $ns -f _$name/host/rbac.yaml
# kubectl apply -n $ns -f _$name/host/jaeger.yaml
# vcluster create $name -n $ns --distro k3s --connect=false -f _$name/values.yaml
# # helm template $name -n $ns -f _$name/values.yaml > k11n/_manifest.sh
# # kubectl kustomize k11n > _$name/manifest.yaml
# # kubectl apply -f _$name/manifest.yaml
# vcluster connect $name -- kubectl apply -f _$name/vcluster/rbac.yaml
# vcluster connect $name -- dapr init -k
# vcluster connect $name -- kubectl apply -f _$name/vcluster/tracing.yaml
# ./update-kubeconfig.sh $name