airshipctl/manifests/function/phase-helpers/wait_node/kubectl_wait_node.sh
Vladislav Kuzmin 16da661959 Switch gating deployment to phase plan
Add all needed phases for deployment to deploy-gating
phase plan.

Relates-To: #517
Change-Id: I9d5af24b0877d90ab1ba24b31cca6ec7127e0f1d
2021-06-03 19:41:05 +04:00

38 lines
1009 B
Bash

#!/bin/sh
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
set -xe
N=0
MAX_RETRY=30
DELAY=60
until [ "$N" -ge ${MAX_RETRY} ]
do
if [ "$(timeout 20 \
kubectl --context $KCTL_CONTEXT \
get node -o name | wc -l)" -ge "1" ]; then
timeout 20 kubectl --context $KCTL_CONTEXT get node
break
fi
N=$((N+1))
echo "$N: Retrying to reach the apiserver" 1>&2
sleep ${DELAY}
done
if [ "$N" -ge ${MAX_RETRY} ]; then
echo "Could not reach the apiserver" 1>&2
exit 1
fi