up
This commit is contained in:
29
scripts/cli/chaos-smoke.sh
Normal file
29
scripts/cli/chaos-smoke.sh
Normal file
@@ -0,0 +1,29 @@
|
||||
#!/usr/bin/env bash
|
||||
set -euo pipefail
|
||||
|
||||
# DEVOPS-CLI-43-002: chaos smoke for Task Pack commands
|
||||
|
||||
CLI=${CLI:-"dotnet run --project src/Cli/StellaOps.Cli/StellaOps.Cli.csproj --no-build --"}
|
||||
RESULTS="out/cli-chaos"
|
||||
mkdir -p "$RESULTS"
|
||||
|
||||
PACK="${PACK:-tests/fixtures/task-packs/sample-pack.yaml}"
|
||||
RANDOM_FAIL=${RANDOM_FAIL:-true}
|
||||
SEALED=${SEALED:-false}
|
||||
|
||||
echo "[chaos] running pack=$PACK random_fail=$RANDOM_FAIL sealed=$SEALED"
|
||||
|
||||
set +e
|
||||
$CLI task-runner run --pack "$PACK" ${SEALED:+--sealed} ${RANDOM_FAIL:+--chaos-random-fail} >"$RESULTS/run.log" 2>&1
|
||||
status=$?
|
||||
set -e
|
||||
|
||||
echo "exit_code=$status" > "$RESULTS/metadata.txt"
|
||||
|
||||
if [[ $status -ne 0 && "$RANDOM_FAIL" == "true" ]]; then
|
||||
echo "[chaos] attempting resume after failure"
|
||||
$CLI task-runner resume --pack "$PACK" >>"$RESULTS/run.log" 2>&1 || true
|
||||
fi
|
||||
|
||||
tar -C "$RESULTS" -czf "$RESULTS/evidence.tgz" .
|
||||
echo "[chaos] evidence archived at $RESULTS/evidence.tgz"
|
||||
Reference in New Issue
Block a user