mirror of
https://github.com/dredx/prole.git
synced 2026-09-23 11:03:59 +00:00
77 lines
1.6 KiB
Bash
77 lines
1.6 KiB
Bash
#!/usr/bin/env bash
|
|
|
|
set -euo pipefail
|
|
|
|
SCRIPT_DIR=$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)
|
|
KNOE_HOME=$(cd "$SCRIPT_DIR/../.." && pwd)
|
|
|
|
TMP_DIR=$(mktemp -d)
|
|
trap 'rm -rf "$TMP_DIR"' EXIT
|
|
export TMP_DIR
|
|
|
|
BIN_DIR="$TMP_DIR/bin"
|
|
mkdir -p "$BIN_DIR"
|
|
|
|
cat <<'K_EOF' >"$BIN_DIR/kubectl"
|
|
#!/usr/bin/env bash
|
|
set -euo pipefail
|
|
|
|
args="$*"
|
|
|
|
if [[ "$args" == "config current-context"* ]]; then
|
|
echo "k3d-knoe-dev-cluster"
|
|
exit 0
|
|
fi
|
|
|
|
if [[ "$args" == "config get-contexts -o name"* ]]; then
|
|
echo "docker-desktop"
|
|
echo "k3d-knoe-dev-cluster"
|
|
echo "k3d-knoe-system"
|
|
exit 0
|
|
fi
|
|
|
|
if [[ "$args" == "config get-contexts --no-headers"* ]]; then
|
|
# Format: CURRENT NAME CLUSTER AUTHINFO NAMESPACE
|
|
echo "* k3d-knoe-dev-cluster k3d-knoe-dev-cluster user "
|
|
echo " k3d-knoe-system k3d-knoe-system user "
|
|
exit 0
|
|
fi
|
|
|
|
if [[ "$args" == "config use-context "* ]]; then
|
|
# shellcheck disable=SC2129
|
|
echo "${args#config use-context }" >"${TMP_DIR}/used_context"
|
|
exit 0
|
|
fi
|
|
|
|
exit 0
|
|
K_EOF
|
|
chmod +x "$BIN_DIR/kubectl"
|
|
|
|
mkdir -p "$TMP_DIR/conf"
|
|
cat <<C_EOF >"$TMP_DIR/conf/knoe.cfg"
|
|
[Global]
|
|
DEPLOYMENT_MODE = k3d
|
|
KUBECONTEXT = knoe-system
|
|
C_EOF
|
|
|
|
export PATH="$BIN_DIR:$PATH"
|
|
export HOME="$TMP_DIR/home"
|
|
mkdir -p "$HOME"
|
|
|
|
export KNOE_HOME="$KNOE_HOME"
|
|
export KNOE_CONF="$TMP_DIR/conf"
|
|
export KNOE_MODE="k3d"
|
|
export KUBECONTEXT="knoe-system"
|
|
|
|
# shellcheck disable=SC1090
|
|
source "$KNOE_HOME/etc/knoe_cfg.sh"
|
|
|
|
ensure_kube_context
|
|
|
|
if [[ "$(cat "$TMP_DIR/used_context")" != "k3d-knoe-system" ]]; then
|
|
echo "FAILURE: expected context 'k3d-knoe-system' but got '$(cat "$TMP_DIR/used_context")'" >&2
|
|
exit 1
|
|
fi
|
|
|
|
echo "SUCCESS"
|