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

@@ -7,18 +7,15 @@ set -e
SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
source "$SCRIPT_DIR/../lib/init.sh"
PROJECT_ROOT="$(cd "$SCRIPT_DIR/../.." && pwd)"
if [[ -f "$SCRIPT_DIR/../lib/deployment/dotenv.sh" ]]; then
# shellcheck disable=SC1090
source "$SCRIPT_DIR/../lib/deployment/dotenv.sh"
load_deployment_env --repo-root "$PROJECT_ROOT"
fi
log_info "=== Ethereum Mainnet Deployment Dry-Run ==="
# Load environment variables
if [ -f "$PROJECT_ROOT/.env" ]; then
source "$PROJECT_ROOT/.env"
else
log_error "Error: .env file not found"
exit 1
fi
ERRORS=0
WARNINGS=0
@@ -64,7 +61,7 @@ log_info "Step 2: Validating environment variables..."
# Required variables
REQUIRED_VARS=("PRIVATE_KEY" "ETHEREUM_MAINNET_RPC")
for var in "${REQUIRED_VARS[@]}"; do
if [ -z "${!var}" ]; then
if [ -z "${!var:-}" ]; then
log_error "❌ Missing required variable: $var"
((ERRORS++))
else
@@ -73,7 +70,7 @@ for var in "${REQUIRED_VARS[@]}"; do
done
# Optional but recommended
if [ -z "$CCIP_ETH_ROUTER" ]; then
if [ -z "${CCIP_ETH_ROUTER:-}" ]; then
CCIP_ETH_ROUTER="0x80226fc0Ee2b096224EeAc085Bb9a8cba1146f7D"
log_warn "⚠️ CCIP_ETH_ROUTER not set, using default: $CCIP_ETH_ROUTER"
((WARNINGS++))
@@ -81,7 +78,7 @@ else
validate_address "$CCIP_ETH_ROUTER" "CCIP_ETH_ROUTER"
fi
if [ -z "$CCIP_FEE_TOKEN" ]; then
if [ -z "${CCIP_FEE_TOKEN:-}" ]; then
CCIP_FEE_TOKEN="0x514910771AF9Ca656af840dff83E8264EcF986CA" # LINK token
log_warn "⚠️ CCIP_FEE_TOKEN not set, using default: $CCIP_FEE_TOKEN"
((WARNINGS++))
@@ -108,16 +105,6 @@ validate_address "$WETH10_ADDRESS" "WETH10"
# Step 4: Compile contracts
log_info "Step 4: Compiling contracts..."
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"
load_deployment_env --repo-root "${PROJECT_ROOT:-$REPO_ROOT}"
elif [[ -n "${PROJECT_ROOT:-}" && -f "$PROJECT_ROOT/.env" ]]; then
set -a
# shellcheck disable=SC1090
source "$PROJECT_ROOT/.env"
set +a
elif [[ -n "${REPO_ROOT:-}" && -f "$REPO_ROOT/.env" ]]; then
set -a
# shellcheck disable=SC1090