Files
smom-dbis-138/scripts/automation/prepare-deployment.sh

54 lines
1.4 KiB
Bash
Raw Normal View History

#!/usr/bin/env bash
# Prepare for deployment - check all prerequisites
set -e
cd "$(dirname "$0")/../.."
source scripts/lib/forge-scope.sh
echo "=== Deployment Preparation Check ==="
# Check wallet balance
echo "1. Checking wallet balance..."
./scripts/deployment/get-wallet-address.sh 2>&1 | grep -A 5 "Wallet Address" || true
./scripts/deployment/check-mainnet-balances.sh 2>&1 | grep -E "(Balance|Status|Need)" || true
# Check RPC endpoints
echo ""
echo "2. Checking RPC endpoints..."
./scripts/deployment/check-rpc-status.sh 2>&1 | head -20 || true
# Check contract compilation
echo ""
echo "3. Checking contract compilation..."
if forge build 2>&1 | grep -q "Compiler run successful"; then
echo "✅ Foundry contracts compile successfully"
else
echo "⚠️ Foundry compilation issues detected"
fi
if npx hardhat compile 2>&1 | grep -q "Compiled successfully"; then
echo "✅ Hardhat contracts compile successfully"
else
echo "⚠️ Hardhat compilation issues detected"
fi
# Check environment variables
echo ""
echo "4. Checking environment variables..."
if [ -f .env ]; then
required_vars=("PRIVATE_KEY" "ETHEREUM_MAINNET_RPC" "CHAIN138_RPC_URL")
for var in "${required_vars[@]}"; do
if grep -q "^${var}=" .env; then
echo "$var configured"
else
echo "⚠️ $var not configured"
fi
done
else
echo "⚠️ .env file not found"
fi
echo ""
echo "=== Preparation Check Complete ==="