#!/usr/bin/env bash # file: scripts/devnet/load_elgamal_registry_fixture.sh # version: 1 set -euo pipefail PROFILE="${KB_ELGAMAL_PROFILE:-local_devnet}" FIXTURE_DIR="${KB_ELGAMAL_FIXTURE_DIR:-./wallets/temporary/${PROFILE}/elgamal_registry_validation}" FIXTURE_FILE="${FIXTURE_DIR}/fixture.env" if [[ ! -r "$FIXTURE_FILE" ]]; then printf 'Fixture ElGamal Registry absente: %s\n' "$FIXTURE_FILE" >&2 return 1 2>/dev/null || exit 1 fi # shellcheck disable=SC1090 source "$FIXTURE_FILE" required_variables=( KB_ELGAMAL_CLUSTER_URL TOKEN_2022_PROGRAM ELGAMAL_REGISTRY_PROGRAM ZK_ELGAMAL_PROOF_PROGRAM ELGAMAL_REGISTRY_ADDRESS ELGAMAL_PUBKEY_BASE64 PUBKEY_VALIDITY_PROOF_CONTEXT TOKEN_2022_CONFIDENTIAL_ACCOUNT ) for variable in "${required_variables[@]}"; do if [[ -z "${!variable:-}" ]]; then printf 'Fixture incomplète, variable absente: %s\n' "$variable" >&2 return 1 2>/dev/null || exit 1 fi done printf 'Fixture: %s\n' "$FIXTURE_FILE" printf 'Cluster: %s\n' "$KB_ELGAMAL_CLUSTER_URL" printf 'Registry program: %s\n' "$ELGAMAL_REGISTRY_PROGRAM" printf 'Registry PDA: %s\n' "$ELGAMAL_REGISTRY_ADDRESS" printf 'Proof context: %s\n' "$PUBKEY_VALIDITY_PROOF_CONTEXT" printf 'Token-2022 confidential account: %s\n' "$TOKEN_2022_CONFIDENTIAL_ACCOUNT"