function ksec set -l context (kubectl config current-context) set -l namespace apps set -l secret "" set -l subkey "" set -l debug false getopts $argv | while read -l key value switch $key case c set context $value case n set namespace $value case d set debug $value case _ if test -z "$secret" set secret $value continue end set subkey $value end end if $debug == true echo "Context: $context" echo "Namespace: $namespace" echo "Secret: $secret" echo "Key: $subkey" end if test -z $subkey echo "Available subkeys:" kubectl --context="$context" --namespace="$namespace" get secret "$secret" -o jsonpath="{.data}" | jq -r 'keys | .[]' else kubectl --context="$context" --namespace="$namespace" get secret "$secret" -o jsonpath="{.data.$subkey}" | base64 --decode end end