cc-os/plugins/os-adr/eval/bin/sandbox

23 lines
795 B
Plaintext
Raw Permalink Normal View History

#!/usr/bin/env bash
# Create a fresh, git-initialized sandbox copy of the right fixture for a scenario.
# Usage: sandbox <S1|S2|S3|S4|S5|S6> <dest-dir>
set -euo pipefail
SCENARIO="${1:?usage: sandbox <scenario> <dest-dir>}"
DEST="${2:?usage: sandbox <scenario> <dest-dir>}"
EVAL_ROOT="$(cd "$(dirname "$0")/.." && pwd)"
case "$SCENARIO" in
S1|S2|S3|S4) FIXTURE="$EVAL_ROOT/fixture/project" ;;
S5|S6) FIXTURE="$EVAL_ROOT/fixture/legacy-project" ;;
*) echo "unknown scenario: $SCENARIO" >&2; exit 2 ;;
esac
if [ -e "$DEST" ]; then echo "refusing to overwrite existing $DEST" >&2; exit 2; fi
mkdir -p "$DEST"
cp -r "$FIXTURE/." "$DEST/"
git -C "$DEST" init -q
git -C "$DEST" add -A
git -C "$DEST" -c user.email=eval@local -c user.name=eval commit -qm "fixture baseline"
echo "$DEST"