#!/usr/bin/env bash # Download Standard Rollup governance TOML from superchain-registry (mainnet validation inputs). # Usage: bash scripts/op-stack/fetch-standard-mainnet-toml.sh [--dry-run] set -euo pipefail SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)" PROJECT_ROOT="$(cd "$SCRIPT_DIR/../.." && pwd)" CACHE="${PROJECT_ROOT}/config/op-stack-superchain/cache" BASE="https://raw.githubusercontent.com/ethereum-optimism/superchain-registry/main/validation/standard" DRY_RUN=false for a in "$@"; do [[ "$a" == "--dry-run" ]] && DRY_RUN=true; done FILES=( "standard-versions-mainnet.toml" "standard-config-params-mainnet.toml" "standard-config-roles-mainnet.toml" ) if $DRY_RUN; then echo "Would fetch into $CACHE:" for f in "${FILES[@]}"; do echo " $BASE/$f"; done exit 0 fi mkdir -p "$CACHE" command -v curl >/dev/null 2>&1 || { echo "ERROR: curl required" >&2; exit 1; } for f in "${FILES[@]}"; do out="${CACHE}/${f}" echo "Fetching $f ..." curl -fsSL -o "$out.new" "$BASE/$f" mv "$out.new" "$out" echo " -> $out" done echo "Done. Compare with prior revisions before updating pinned-versions manifest."