|
59 | 59 | fi |
60 | 60 | fi |
61 | 61 |
|
62 | | -# Add SERVER_VERSION override and testing capabilities |
63 | | - |
64 | | -if [[ -n "${SERVER_VERSION}" ]]; then |
65 | | - # Dynamically define SERVER_VERSION using kube context |
66 | | - echo "Statically defined version: ${SERVER_VERSION}" |
67 | | - KUBE_CTL=${SERVER_VERSION} |
68 | | -else |
69 | | - # Dynamically define SERVER_VERSION using kube context |
70 | | - SERVER_VERSION=$(kubectl version --short=true --context "${KUBECONTEXT}" | grep -i server | cut -d ':' -f2 | cut -d '.' -f2 | sed 's/[^0-9]*//g') |
71 | | - echo "Dynamically defined version: ${SERVER_VERSION}" |
72 | | -fi |
73 | | - |
74 | | -# Determine appropriate kubectl version if not statically set |
75 | | -if [[ -z "${KUBE_CTL}" ]]; then |
76 | | - if [[ "${SERVER_VERSION}" -eq "15" ]]; then |
77 | | - KUBE_CTL="15" |
78 | | - elif [[ "${SERVER_VERSION}" -eq "14" ]]; then |
79 | | - KUBE_CTL="14" |
80 | | - elif [[ "${SERVER_VERSION}" -le "13" && "${SERVER_VERSION}" -ge "6" ]]; then |
81 | | - KUBE_CTL="6" |
82 | | - else |
83 | | - echo "kubectl version: v1.${SERVER_VERSION}" |
84 | | - fatal "Version Not Supported!!!" |
85 | | - exit 1 |
86 | | - fi |
87 | | -fi |
88 | | - |
89 | | -# Assign kubectl version |
90 | | -echo "Setting kubectl to version 1.${KUBE_CTL}" |
91 | | -cp -f "/usr/local/bin/kubectl1.${KUBE_CTL}" /usr/local/bin/kubectl |
92 | | - |
93 | | -# Simple testing logic for making sure versions are set |
94 | | -if [[ -n "${KUBE_CTL_TEST_VERSION}" ]]; then |
95 | | - KUBE_CTL_VERSION=`kubectl version --client --short` |
96 | | - echo "Testing kubectl version is set..." |
97 | | - if [[ "${KUBE_CTL_VERSION}" == *"${KUBE_CTL_TEST_VERSION}"* ]]; then |
98 | | - echo "Version correctly set" |
99 | | - echo "Kubectl Version: ${KUBE_CTL_VERSION}" |
100 | | - echo "Test Version: ${KUBE_CTL_TEST_VERSION}" |
101 | | - exit 0 |
102 | | - else |
103 | | - echo "Kubectl Version: ${KUBE_CTL_VERSION}" |
104 | | - echo "Test Version: ${KUBE_CTL_TEST_VERSION}" |
105 | | - fatal "Version Mismatch!!!" |
106 | | - exit 1 |
107 | | - fi |
108 | | -fi |
109 | | - |
| 62 | +#check the cluster version and decide which version of kubectl to use: |
| 63 | +SERVER_VERSION=$(kubectl version --short=true --context "${KUBECONTEXT}" | grep -i server | cut -d ':' -f2 | cut -d '.' -f2 | sed 's/[^0-9]*//g') |
| 64 | +echo "Server minor version: $SERVER_VERSION" |
| 65 | +if (( "$SERVER_VERSION" <= "6" )); then cp -f /usr/local/bin/kubectl1.6 /usr/local/bin/kubectl; fi 2>/dev/null |
| 66 | +if (( "$SERVER_VERSION" == "14" )); then cp -f /usr/local/bin/kubectl1.14 /usr/local/bin/kubectl; fi 2>/dev/null |
| 67 | +if (( "$SERVER_VERSION" >= "15" )); then cp -f /usr/local/bin/kubectl1.15 /usr/local/bin/kubectl; fi 2>/dev/null |
110 | 68 | [ ! -f "${deployment_file}" ] && echo "Couldn't find $deployment_file file at $(pwd)" && exit 1; |
111 | 69 |
|
112 | 70 | DEPLOYMENT_FILE=${deployment_file}-$(date '+%y-%m-%d_%H-%M-%S').yml |
|
0 commit comments