Guest User

Untitled

a guest
May 24th, 2018
79
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.68 KB | None | 0 0
  1. #!/usr/bin/env bash
  2. set -o pipefail
  3. set -o errexit
  4. set -o nounset
  5. # set -o xtrace
  6.  
  7.  
  8.  
  9. IFS=$'\n\t'
  10.  
  11. if [[ "$#" -ne 2 || "${1}" == '-h' || "${1}" == '--help' ]]; then
  12. cat >&2 <<"EOF"
  13. ktravi8s.sh extracts user credentials for you based on username and namespace.
  14. USAGE:
  15. ktravi8s.sh USER NAMESPACE
  16. EXAMPLE
  17. ktravi8s.sh travis-echo echo
  18. EOF
  19. exit 1
  20. fi
  21.  
  22.  
  23. main(){
  24.  
  25. USERNAME="${1}"
  26.  
  27. NAMESPACE="${2}"
  28.  
  29. SECRET_NAME=$(kubectl get sa ${USERNAME} --namespace ${NAMESPACE} -o json | jq -r .secrets[].name)
  30.  
  31. CA_CRT=$(kubectl get secret $SECRET_NAME --namespace ${NAMESPACE} -o json | jq -r '.data["ca.crt"]')
  32.  
  33. USER_TOKEN=$(kubectl get secret $SECRET_NAME --namespace ${NAMESPACE} -o json | jq -r '.data["token"]')
  34.  
  35. CONTEXT=`kubectl config current-context`
  36.  
  37. CLUSTER_NAME=`kubectl config get-contexts $CONTEXT | awk '{print $3}' | tail -n 1`
  38.  
  39. CLUSTER_ENDPOINT=`kubectl config view -o jsonpath="{.clusters[?(@.name == \"$CLUSTER_NAME\")].cluster.server}"`
  40.  
  41.  
  42. echo "The cluster endpoint is: ${CLUSTER_ENDPOINT}"
  43. echo "The CA_CRT is: ${CA_CRT}"
  44. echo "The USER_TOKEN is: ${USER_TOKEN}"
  45.  
  46.  
  47. }
  48.  
  49.  
  50.  
  51. main "${1}" "${2}"
Add Comment
Please, Sign In to add comment