Standardize deployment env and deployer handling

This commit is contained in:
defiQUG
2026-04-22 14:47:28 -07:00
parent 768168de5e
commit c3d4c786fa
51 changed files with 424 additions and 621 deletions

View File

@@ -12,8 +12,12 @@ PROJECT_ROOT="$(cd "$SCRIPT_DIR/../.." && pwd)"
METHOD="${METHOD:-create}"
TOKEN="${TOKEN:-both}" # weth9, weth10, or both
DEPLOY_BRIDGE="${DEPLOY_BRIDGE:-false}"
RPC_URL="${RPC_URL:-http://localhost:8545}"
RPC_URL="${RPC_URL:-}"
PRIVATE_KEY="${PRIVATE_KEY:-}"
rpc_url_override=false
private_key_override=false
CLI_RPC_URL=""
CLI_PRIVATE_KEY=""
usage() {
cat <<EOF
@@ -59,29 +63,27 @@ while [[ $# -gt 0 ]]; do
;;
--rpc-url)
RPC_URL="$2"
CLI_RPC_URL="$2"
rpc_url_override=true
shift 2
;;
--private-key)
PRIVATE_KEY="$2"
CLI_PRIVATE_KEY="$2"
private_key_override=true
shift 2
;;
--help)
usage
;;
*)
echo "Unknown option: $1"
echo "ERROR: Unknown option: $1" >&2
usage
;;
esac
done
if [ -z "$PRIVATE_KEY" ]; then
echo "Error: PRIVATE_KEY environment variable not set"
exit 1
fi
cd "$PROJECT_ROOT"
# Load .env via dotenv (RPC CR/LF trim). Fallback: raw source.
if [[ -f "$SCRIPT_DIR/../lib/deployment/dotenv.sh" ]]; then
# shellcheck disable=SC1090
source "$SCRIPT_DIR/../lib/deployment/dotenv.sh"
@@ -98,6 +100,20 @@ elif [[ -n "${REPO_ROOT:-}" && -f "$REPO_ROOT/.env" ]]; then
set +a
fi
if [[ "$rpc_url_override" == true ]]; then
RPC_URL="$CLI_RPC_URL"
else
RPC_URL="${RPC_URL:-${RPC_URL_138:-${CHAIN138_RPC_URL:-http://localhost:8545}}}"
fi
if [[ "$private_key_override" == true ]]; then
export PRIVATE_KEY="$CLI_PRIVATE_KEY"
fi
if ! require_private_key_env; then
exit 1
fi
echo "━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━"
echo "🚀 Unified WETH Deployment"
echo "━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━"
@@ -136,8 +152,8 @@ case "$METHOD" in
exit 1
;;
*)
echo "Error: Unknown method: $METHOD"
echo "Valid methods: create, create2, genesis"
echo "ERROR: Unknown method: $METHOD" >&2
echo "Valid methods: create, create2, genesis" >&2
exit 1
;;
esac