30 lines
754 B
Bash
30 lines
754 B
Bash
#!/bin/bash
|
|
|
|
# Erstellt ein Token
|
|
TOKEN=$(kubectl -n kube-system create token haproxy-sa)
|
|
|
|
# Get Cluster Info
|
|
CLUSTER_NAME=$(kubectl config view -o jsonpath='{.clusters[0].name}')
|
|
CLUSTER_SERVER=$(kubectl config view -o jsonpath="{.clusters[0].cluster.server}")
|
|
CA_DATA=$(kubectl config view --raw -o jsonpath="{.clusters[0].cluster.certificate-authority-data}")
|
|
|
|
# Erstelle kubeconfig
|
|
cat <<EOF > haproxy-kubeconfig.yaml
|
|
apiVersion: v1
|
|
kind: Config
|
|
clusters:
|
|
- cluster:
|
|
certificate-authority-data: ${CA_DATA}
|
|
server: ${CLUSTER_SERVER}
|
|
name: ${CLUSTER_NAME}
|
|
contexts:
|
|
- context:
|
|
cluster: ${CLUSTER_NAME}
|
|
user: haproxy-sa
|
|
name: haproxy-context
|
|
current-context: haproxy-context
|
|
users:
|
|
- name: haproxy-sa
|
|
user:
|
|
token: ${TOKEN}
|
|
EOF
|