45 lines
1.2 KiB
Bash
Executable File
45 lines
1.2 KiB
Bash
Executable File
#!/usr/bin/env bash
|
|
set -euo pipefail
|
|
|
|
SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
|
|
ROOT_DIR="${ROOT_DIR:-$(cd "${SCRIPT_DIR}/.." && pwd)}"
|
|
SCRIPT="${ROOT_DIR}/devops/01_generate_yamls.sh"
|
|
TOKEN_FILE="${TOKEN_FILE:-}"
|
|
REQUEST_DELAY="${REQUEST_DELAY:-0.2}"
|
|
ATTEMPTS="${ATTEMPTS:-3}"
|
|
RUNS="${RUNS:-10}"
|
|
LOG="${LOG:-/tmp/yaml_gen_runs.log}"
|
|
|
|
export TOKEN_FILE
|
|
|
|
if [[ -z "$TOKEN_FILE" ]]; then
|
|
TOKEN_FILE=$(ls -t "${ROOT_DIR}"/*.token 2>/dev/null | head -n 1 || true)
|
|
fi
|
|
|
|
if [[ -z "$TOKEN_FILE" || ! -f "$TOKEN_FILE" ]]; then
|
|
echo "Error: token file not found in ${ROOT_DIR}" >&2
|
|
exit 2
|
|
fi
|
|
|
|
: > "$LOG"
|
|
|
|
echo "Runs: $RUNS" | tee -a "$LOG"
|
|
echo "Request delay: $REQUEST_DELAY" | tee -a "$LOG"
|
|
echo "Attempts per service: $ATTEMPTS" | tee -a "$LOG"
|
|
echo "Token file: $TOKEN_FILE" | tee -a "$LOG"
|
|
|
|
echo "" | tee -a "$LOG"
|
|
|
|
for i in $(seq 1 "$RUNS"); do
|
|
start=$(date -u +%Y-%m-%dT%H:%M:%SZ)
|
|
echo "RUN $i start $start" | tee -a "$LOG"
|
|
REQUEST_DELAY="$REQUEST_DELAY" ATTEMPTS="$ATTEMPTS" "$SCRIPT" >> "$LOG" 2>&1
|
|
rc=$?
|
|
end=$(date -u +%Y-%m-%dT%H:%M:%SZ)
|
|
echo "RUN $i end $end rc=$rc" | tee -a "$LOG"
|
|
echo "" | tee -a "$LOG"
|
|
sleep 0.5
|
|
done
|
|
|
|
echo "Log: $LOG" | tee -a "$LOG"
|