From 19c263109e50f9548640481cba94d919b466fd67 Mon Sep 17 00:00:00 2001 From: Vladimir Kozhukalov Date: Wed, 26 Feb 2025 14:21:25 -0600 Subject: [PATCH] Cleanup old scripts The env-variables.sh get-values-overrides.sh and wait-for-pods.sh are not needed any more since they are now a part of openstack-helm-plugin. Change-Id: I044ee7e7182822a9d7e5fd3e56c444fbfea9a753 --- tools/deployment/common/env-variables.sh | 17 ---- .../deployment/common/get-values-overrides.sh | 94 ------------------- tools/deployment/common/wait-for-pods.sh | 54 ----------- 3 files changed, 165 deletions(-) delete mode 100755 tools/deployment/common/env-variables.sh delete mode 100755 tools/deployment/common/get-values-overrides.sh delete mode 100755 tools/deployment/common/wait-for-pods.sh diff --git a/tools/deployment/common/env-variables.sh b/tools/deployment/common/env-variables.sh deleted file mode 100755 index f4f407f8c..000000000 --- a/tools/deployment/common/env-variables.sh +++ /dev/null @@ -1,17 +0,0 @@ -#!/bin/bash -# -# 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 -e - -export API_ADDR=$(kubectl get endpoints kubernetes -o json | jq -r '.subsets[0].addresses[0].ip') -export API_PORT=$(kubectl get endpoints kubernetes -o json | jq -r '.subsets[0].ports[0].port') diff --git a/tools/deployment/common/get-values-overrides.sh b/tools/deployment/common/get-values-overrides.sh deleted file mode 100755 index 7c1d35979..000000000 --- a/tools/deployment/common/get-values-overrides.sh +++ /dev/null @@ -1,94 +0,0 @@ -#!/bin/bash - -# 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. - -# This script will generate a matrix of values-override file args to apply to -# charts, in the gate and development environments. It will 1st produce a -# consistenly ordered list of all permuations of filenames to try, and then -# if a file matching this name exists in the `values_overrides` directory within -# each chart, apply it upon install/upgrade. - -set -e -HELM_CHART="$1" -SUBCHART="$2" -: "${HELM_CHART_ROOT_PATH:="../openstack-helm-infra"}" -: "${OPENSTACK_RELEASE:="2023.2"}" -: "${CONTAINER_DISTRO_NAME:="ubuntu"}" -: "${CONTAINER_DISTRO_VERSION:="jammy"}" -: "${FEATURE_GATES:=""}" -FEATURE_MIX="${FEATURE_GATES},${OPENSTACK_RELEASE},${CONTAINER_DISTRO_NAME}_${CONTAINER_DISTRO_VERSION},${CONTAINER_DISTRO_NAME}" - -function echoerr () { - echo "$@" 1>&2; -} - -function generate_awk_exp_from_mask () { - local POSITION=1 - for VALUE in $@; do - [ "${VALUE}" -eq 1 ] && echo -n "print \$${POSITION};" - POSITION=$((POSITION+1)) - done - echo -e "\n" -} - -function combination () { - POWER=$((2**$#)) - BITS="$(awk "BEGIN { while (c++ < $#) printf \"0\" }")" - while [ "${POWER}" -gt 1 ];do - POWER=$((POWER-1)) - BIN="$(bc <<< "obase=2; ${POWER}")" - MASK="$(echo "${BITS}" | sed -e "s/0\{${#BIN}\}$/$BIN/" | grep -o .)" - #NOTE: This line is odd, but written to support both BSD and GNU utils - awk -v ORS="-" "{$(generate_awk_exp_from_mask "$MASK")}" <<< "$@" | awk 1 | sed 's/-$//' - done -} - -function replace_variables() { - for key in $(env); do - local arr=( $(echo $key | awk -F'=' '{ print $1, $2 }') ) - sed -i "s#%%%REPLACE_${arr[0]}%%%#${arr[1]}#g" $@ - done -} - -function override_file_args () { - OVERRIDE_ARGS="" - if [ -z "$SUBCHART" ];then - echoerr "We will attempt to use values-override files with the following paths:" - for FILE in $(combination ${1//,/ } | uniq | tac); do - FILE_PATH="${HELM_CHART_ROOT_PATH}/${HELM_CHART}/values_overrides/${FILE}.yaml" - if [ -f "${FILE_PATH}" ]; then - replace_variables ${FILE_PATH} - OVERRIDE_ARGS+=" --values=${FILE_PATH} " - fi - echoerr "${FILE_PATH}" - done - else - echoerr "running as subchart" - echoerr "We will attempt to use values-override files with the following paths:" - for FILE in $(combination ${1//,/ } | uniq | tac); do - FILE_PATH="${HELM_CHART_ROOT_PATH}/values_overrides/${HELM_CHART}/${FILE}.yaml" - if [ -f "${FILE_PATH}" ]; then - replace_variables ${FILE_PATH} - OVERRIDE_ARGS+=" --values=${FILE_PATH} " - fi - echoerr "${FILE_PATH}" - done - fi - - echo "${OVERRIDE_ARGS}" -} - - -echoerr "We are going to deploy the service ${HELM_CHART} for the OpenStack ${OPENSTACK_RELEASE} release, using ${CONTAINER_DISTRO_NAME} (${CONTAINER_DISTRO_VERSION}) distribution containers." -source ./tools/deployment/common/env-variables.sh -override_file_args "${FEATURE_MIX}" diff --git a/tools/deployment/common/wait-for-pods.sh b/tools/deployment/common/wait-for-pods.sh deleted file mode 100755 index ec228cc62..000000000 --- a/tools/deployment/common/wait-for-pods.sh +++ /dev/null @@ -1,54 +0,0 @@ -#!/bin/bash - -# 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 -e - -# From Kolla-Kubernetes, orginal authors Kevin Fox & Serguei Bezverkhi -# Default wait timeout is 900 seconds -end=$(date +%s) -timeout=${2:-900} -end=$((end + timeout)) -while true; do - kubectl get pods --namespace=$1 -o json | jq -r \ - '.items[].status.phase' | grep Pending > /dev/null && \ - PENDING="True" || PENDING="False" - query='.items[]|select(.status.phase=="Running")' - query="$query|.status.containerStatuses[].ready" - kubectl get pods --namespace=$1 -o json | jq -r "$query" | \ - grep false > /dev/null && READY="False" || READY="True" - kubectl get jobs --namespace=$1 -o json | jq -r \ - '.items[] | .spec.completions == .status.succeeded' | \ - grep false > /dev/null && JOBR="False" || JOBR="True" - [ $PENDING == "False" -a $READY == "True" -a $JOBR == "True" ] && \ - break || true - sleep 5 - now=$(date +%s) - if [ $now -gt $end ] ; then - echo "Containers failed to start after $timeout seconds" - echo - kubectl get pods --namespace $1 -o wide - echo - if [ $PENDING == "True" ] ; then - echo "Some pods are in pending state:" - kubectl get pods --field-selector=status.phase=Pending -n $1 -o wide - fi - - [ $READY == "False" ] && echo "Some pods are not ready" - [ $JOBR == "False" ] && echo "Some jobs have not succeeded" - echo - echo "=== DEBUG ===" - echo - kubectl get pods -n $1 | tail -n +2 | awk '{print $1}' | while read pname; do kubectl describe po $pname -n $1; echo; done - exit -1 - fi -done