#!/bin/sh # Создаёт HDD для P5: 20 копирований, 100 refresh и cleanup-циклы. set -eu : "${SPRINTER_ROOT:?задайте SPRINTER_ROOT для упаковки HDD}" PROJECT_DIR=$(CDPATH= cd -- "$(dirname -- "$0")/.." && pwd) DEFAULT_IMAGE="$PROJECT_DIR/build/hdd/p5_stability.chd" IMAGE=${1:-$DEFAULT_IMAGE} EXECUTABLE=${2:-$PROJECT_DIR/build/sprcmd.exe} TEMP_DIR=$(mktemp -d "${TMPDIR:-/tmp}/sprcmd-p5.XXXXXX") FIXTURE_ROOT="$TEMP_DIR/P5DATA" cleanup() { rm -rf -- "$TEMP_DIR" } trap cleanup EXIT HUP INT TERM mkdir -p "$(dirname -- "$IMAGE")" python3 "$PROJECT_DIR/tests/p5_fixture.py" create "$FIXTURE_ROOT" python3 "$PROJECT_DIR/tests/p5_fixture.py" verify-initial "$FIXTURE_ROOT" "$SPRINTER_ROOT/toolchain/make_hdd.sh" "$IMAGE" \ "$EXECUTABLE" "$FIXTURE_ROOT/SOURCE" "$FIXTURE_ROOT/TARGET" echo "P5 stability HDD ready: $IMAGE"