cwd=$(pwd)
current_user=$(whoami)
is_optional="false"
+pull="false"
info () {
logger -s -t "run_blu_val.info" "$*"
verify_connectivity() {
local ip=$1
info "Verifying connectivity to $ip..."
+ # shellcheck disable=SC2034
for i in $(seq 0 10); do
if ping -c 1 -W 1 "$ip" > /dev/null; then
info "$ip is reachable!"
}
# Get options from shell
-while getopts "j:k:u:s:b:l:r:n:ov:" optchar; do
+while getopts "j:k:u:s:b:l:r:n:opv:" optchar; do
case "${optchar}" in
j) cluster_master_ip=${OPTARG} ;;
k) k8s_config_dir=${OPTARG} ;;
n) blueprint_name=${OPTARG} ;;
u) sh_user=${OPTARG} ;;
o) is_optional="true" ;;
+ p) pull="true" ;;
v) version=${OPTARG} ;;
*) echo "Non-option argument: '-${OPTARG}'" >&2
usage
ssh_user=${sh_user:-$CLUSTER_SSH_USER}
blueprint_layer=${blueprint_layer:-$LAYER}
-if [ "$blueprint_layer" == "k8s" ]
+if [ "$blueprint_layer" == "k8s" ] || [ -z "$blueprint_layer" ]
then
if [ -z "$cluster_master_ip" ]
then
"$volumes_path"
# create ssh_key_dir
-mkdir -p $cwd/ssh_key_dir
+mkdir -p "$cwd/ssh_key_dir"
# copy ssh_key in ssh_key_dir
-cp $ssh_key $cwd/ssh_key_dir/id_rsa
+cp "$ssh_key" "$cwd/ssh_key_dir/id_rsa"
variables_path="$cwd/tests/variables.yaml"
# update information in variables yaml
then
options+=" -o"
fi
-
-printf 'ok / PASS /\nerror / FAIL /\n' > ./bluval/rules.txt
+if [ "$pull" == "true" ] || [ "$PULL" == "yes" ]
+then
+ options+=" -p"
+fi
set +e
-# even if the script fails we need to change the owner of results
-# shellcheck disable=SC2086
-python3 bluval/blucon.py $options "$blueprint_name"
+if python3 --version > /dev/null; then
+ # shellcheck disable=SC2086
+ python3 bluval/blucon.py $options "$blueprint_name"
+else
+ # shellcheck disable=SC2086
+ VALIDATION_DIR="$WORKSPACE" RESULTS_DIR="$WORKSPACE/results" \
+ bluval/blucon.sh $options "$blueprint_name"
+fi
+# even if the script fails we need to change the owner of results
+# shellcheck disable=SC2181
if [ $? -ne 0 ]; then
change_res_owner
error "Bluval validation FAIL "
TIMESTAMP=$(date +'%Y%m%d-%H%M%S')
NEXUS_URL=https://nexus.akraino.org/
NEXUS_PATH="${LAB_SILO}/bluval_results/${blueprint_name}/${VERSION}/${TIMESTAMP}"
- BUILD_URL="${JENKINS_HOSTNAME}/job/${JOB_NAME}/${BUILD_NUMBER}/"
zip -r results.zip ./results
lftools deploy nexus-zip "$NEXUS_URL" logs "$NEXUS_PATH" results.zip
rm results.zip
fi
rm -f ~/.netrc
-