github.com/redhat-appstudio/e2e-tests@v0.0.0-20240520140907-9709f6f59323/tests/load-tests/ci-scripts/stage/collect-results.sh (about) 1 #!/bin/bash 2 3 set -o nounset 4 set -o errexit 5 set -o pipefail 6 7 # construct $PROMETHEUS_HOST by extracting BASE_URL from $STAGE_MEMBER_CLUSTER 8 BASE_URL=$(echo $STAGE_MEMBER_CLUSTER | grep -oP 'https://api\.\K[^:]+') 9 PROMETHEUS_HOST="thanos-querier-openshift-monitoring.apps.$BASE_URL" 10 11 12 # Login to the stage member cluster with the OCP_PROMETHEUS_TOKEN credentials 13 TOKEN=${OCP_PROMETHEUS_TOKEN} 14 oc login --token="$TOKEN" --server="$STAGE_MEMBER_CLUSTER" 15 16 ARTIFACT_DIR=${ARTIFACT_DIR:-.artifacts} 17 mkdir -p ${ARTIFACT_DIR} 18 pushd "${1:-./tests/load-tests}" 19 20 echo "Collecting load test results" 21 cp -vf *.log "${ARTIFACT_DIR}" 22 cp -vf load-tests.json "${ARTIFACT_DIR}" 23 24 monitoring_collection_log=$ARTIFACT_DIR/monitoring-collection.log 25 monitoring_collection_data=$ARTIFACT_DIR/load-tests.json 26 27 ## Monitoring data 28 echo "Setting up tool to collect monitoring data..." 29 python3 -m venv venv 30 set +u 31 source venv/bin/activate 32 set -u 33 python3 -m pip install -U pip 34 python3 -m pip install -e "git+https://github.com/redhat-performance/opl.git#egg=opl-rhcloud-perf-team-core&subdirectory=core" 35 36 echo "Collecting monitoring data..." 37 mstart=$(date --utc --date "$(status_data.py --status-data-file "$monitoring_collection_data" --get timestamp)" --iso-8601=seconds) 38 mend=$(date --utc --date "$(status_data.py --status-data-file "$monitoring_collection_data" --get endTimestamp)" --iso-8601=seconds) 39 mhost=$PROMETHEUS_HOST 40 41 status_data.py \ 42 --status-data-file "$monitoring_collection_data" \ 43 --additional ./ci-scripts/stage/cluster_read_config.yaml \ 44 --monitoring-start "$mstart" \ 45 --monitoring-end "$mend" \ 46 --prometheus-host "https://$mhost" \ 47 --prometheus-port 443 \ 48 --prometheus-token "$TOKEN" \ 49 -d &>$monitoring_collection_log 50 51 if [ $? -ne 0 ]; then 52 echo "Error: status_data.py failed with exit code $?" 53 fi 54 55 set +u 56 deactivate 57 set -u 58 59 popd