From 1ee6ba2cf9a27da2b51ee7108e8536f655945a44 Mon Sep 17 00:00:00 2001 From: fleaz Date: Sat, 31 May 2025 23:51:43 +0200 Subject: [PATCH] Catch ctrl-c in fzf --- ktx | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) diff --git a/ktx b/ktx index 0facef8..dc03a55 100755 --- a/ktx +++ b/ktx @@ -6,7 +6,7 @@ _create_file_and_switch() { CONTEXT=${1} NAMESPACE=${2} FILENAME="$HOME/.kube/ktx/${CONTEXT}_${NAMESPACE}.conf" - kubectl config view --minify --flatten --context ${CONTEXT} > ${FILENAME} + KUBECONFIG= kubectl config view --minify --flatten --context ${CONTEXT} > ${FILENAME} export KUBECONFIG=${FILENAME} kubectl config set-context --current --namespace=${NAMESPACE} ln -sf ${FILENAME} ${CUR_FILE} @@ -16,7 +16,6 @@ _create_file_and_switch() { # Switch context # Usage: ktx [cluster] [namespace] ktx() { - unset KUBECONFIG CONTEXT=${1:-} NAMESPACE=${2:-} @@ -27,6 +26,11 @@ ktx() { DEFAULT_NS=$(echo $SELECTION | cut -d"|" -f2) fi + if [ -z $SELECTION ]; then + # User pressed ctrl+c in fzf + return + fi + # Take default namespace if user didn't supplied a specific one if [ -z $NAMESPACE ]; then NAMESPACE=${DEFAULT_NS} @@ -43,6 +47,11 @@ kn() { if [ -z $NAMESPACE ]; then NAMESPACE=$(kubectl get namespace --no-headers | awk '{print $1}' | sort -r | fzf) fi + + if [ -z $NAMESPACE ]; then + # User pressed ctrl+c in fzf + return + fi CONTEXT=$(kubectl config get-contexts | grep "*" | awk '{print $2}') _create_file_and_switch ${CONTEXT} ${NAMESPACE}