#!/bin/bash # genereaza.sh: cum s-au facut fixturile Gradle (2026-09-29): un proiect Java mic, rezolvat de Gradle INSUSI, `--offline` (numai din # memoria locala a lui Gradle, nicio descarcare), cu `--write-verification-metadata sha256,sha512` (gradle/verification-metadata.xml, # hash-urile fiecarui artefact verificat) si `--write-locks` (gradle.lockfile: coordonatele fiecarei configuratii). Deci ambele fisiere # sunt scrise de Gradle, nu de noi. Dependinte: bcpkix-jdk18on 1.79 (aduce bcutil si bcprov) si gson 2.10.1. # bash genereaza.sh [gradle] rescrie build.gradle, settings.gradle, gradle.lockfile, gradle/verification-metadata.xml set -eu AICI="$(cd "$(dirname "$0")" && pwd)" GR="${1:-$(ls -d "$HOME"/.gradle/wrapper/dists/gradle-8.14.3-bin/*/gradle-8.14.3 2>/dev/null | head -1)/bin/gradle}" [ -f "$GR" ] || { echo "NEMASURAT: nu gasesc distributia Gradle 8.14.3 in ~/.gradle/wrapper/dists (sau dati calea)"; exit 2; } T="$(mktemp -d)"; trap 'rm -rf "$T"' EXIT cat > "$T/settings.gradle" <<'EOF' rootProject.name = 'pos-fixture' EOF cat > "$T/build.gradle" <<'EOF' plugins { id 'java-library' } group = 'network.aere.fixture' version = '1.0.0' repositories { mavenCentral() } dependencies { implementation 'org.bouncycastle:bcpkix-jdk18on:1.79' implementation 'com.google.code.gson:gson:2.10.1' } dependencyLocking { lockAllConfigurations() } EOF ( cd "$T" && bash "$GR" --offline --no-daemon -q --write-verification-metadata sha256,sha512 dependencies --write-locks < /dev/null > "$T/out.txt" 2>&1 ) || { tail -20 "$T/out.txt"; exit 1; } mkdir -p "$AICI/gradle" cp "$T/settings.gradle" "$T/build.gradle" "$T/gradle.lockfile" "$AICI/" cp "$T/gradle/verification-metadata.xml" "$AICI/gradle/" echo "scris: gradle.lockfile ($(grep -c '=' "$AICI/gradle.lockfile") randuri), gradle/verification-metadata.xml ($(grep -c '