#!/bin/sh # Создаёт HDD с отдельной матрицей отказов банкового copy-job. set -eu PROJECT_DIR=$(CDPATH= cd -- "$(dirname -- "$0")/.." && pwd) DEFAULT_IMAGE="$PROJECT_DIR/build/hdd/p5_copy_faults.chd" IMAGE=${1:-$DEFAULT_IMAGE} EXECUTABLE=${2:-$PROJECT_DIR/build/tests/cperr.exe} TEMP_DIR=$(mktemp -d "${TMPDIR:-/tmp}/sprcmd-copy-faults.XXXXXX") FIXTURE_ROOT="$TEMP_DIR/P5COPY" cleanup() { rm -rf -- "$TEMP_DIR" } trap cleanup EXIT HUP INT TERM mkdir -p "$(dirname -- "$IMAGE")" python3 "$PROJECT_DIR/tests/p5_copy_faults_fixture.py" create "$FIXTURE_ROOT" "$PROJECT_DIR/../../toolchain/make_hdd.sh" "$IMAGE" \ "$EXECUTABLE" "$FIXTURE_ROOT/SOURCE" "$FIXTURE_ROOT/TARGET" echo "P5 copy-fault HDD ready: $IMAGE"