porthole/tools/run_avt.sh
Markin, Sergiy (sm515x) 1cb2ee3566 [CPID-354] Improve MariaDB Backup/Restore validation process
HTK has been updated to 0.2.48 version that includes local backup verification step before uploading to remote storage.

In mysqlclient-utility chart HTK is used to perform test backup/restore processes. This chart has been updated to match HTK changes.
The main difference that a mariadb verification server has to be running as a side container.

In etcdctl-utility chart .Values.manifests.secret_certificates value was set to False and a condition has been added to deployment-etcdctl-utility.yaml to avoid looking for etcdctl-etcd-secrets secret to mount.

Also in mysqlclient-utility in ensure_ondemand_pod_exists() function of dbutils.sh made the folloging adjustment: number of containers in *-ondemand pod in pod existence verification condition set to 2/2. This is because we added the second container to this pod with verification server.

Additionally, bumping up HTK version to 0.2.48 from a commit id obtained from merge of https://review.opendev.org/c/openstack/openstack-helm-infra/+/853027 and set proper commit id in this file: tools/helm_tk.sh

Change-Id: I9d3796500574da3582cf67d8aeeec8c796dd88dd
2022-09-10 14:55:40 -05:00

62 lines
2.1 KiB
Bash
Executable File

#!/bin/bash
# Copyright 2020 AT&T Intellectual Property. All other rights reserved.
#
# 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 -x
TYPE=$1
VENV=$(mktemp -d)
PLUGINS=kube_utility_container
export KUBECONFIG=${KUBECONFIG:-~/.kube/config}
function setup_venv() {
sudo apt-get install libffi-dev libssl-dev python3-dev python3-setuptools python3-venv gcc make build-essential automake autoconf -y
python3 -m venv ${VENV}
if [[ -f ${VENV}/bin/activate ]] ;then
source $VENV/bin/activate
${VENV}/bin/pip install -r requirements-frozen.txt
${VENV}/bin/python -m pip list --format=columns
kubectl get deployment -n utility
kubectl get nodes -o wide
kubectl get po --all-namespaces -o wide
stestr init
fi
}
function run_avt() {
setup_venv
if [[ ${TYPE} == 'unit_tests' ]] ; then
run_unit_tests
elif [[ ${TYPE} == 'feature_tests' ]] ; then
run_feature_tests
else
echo "No validating tests performed..skip"
fi
}
function run_feature_tests() {
python -m unittest discover -s ${PLUGINS}/tests/utility/compute -v
python -m unittest discover -s ${PLUGINS}/tests/utility/etcd -v
python -m unittest discover -s ${PLUGINS}/tests/utility/calico -v
python -m unittest discover -s ${PLUGINS}/tests/utility/ceph -v
python -m unittest discover -s ${PLUGINS}/tests/utility/mysqlclient -v
python -m unittest discover -s ${PLUGINS}/tests/utility/openstack -v
python -m unittest discover -s ${PLUGINS}/tests/utility/postgresql -v
}
function run_unit_tests() {
python -m unittest discover -s ${PLUGINS}/tests/unit/services -v
}
run_avt