75 lines
1.7 KiB
Bash
75 lines
1.7 KiB
Bash
|
|
#!/bin/bash
|
||
|
|
|
||
|
|
# Phase 6: Provide Initial Liquidity
|
||
|
|
# This script provides initial liquidity to the bridge system
|
||
|
|
|
||
|
|
set -e
|
||
|
|
|
||
|
|
echo "=== Phase 6: Provide Initial Liquidity ==="
|
||
|
|
|
||
|
|
# Load environment variables
|
||
|
|
if [ -f .env ]; then
|
||
|
|
export $(cat .env | grep -v '^#' | grep -v '^$' | xargs)
|
||
|
|
fi
|
||
|
|
|
||
|
|
# Check required variables
|
||
|
|
REQUIRED_VARS=(
|
||
|
|
"PRIVATE_KEY"
|
||
|
|
"ETHEREUM_MAINNET_RPC"
|
||
|
|
"LIQUIDITY_POOL"
|
||
|
|
"RESERVE_SYSTEM"
|
||
|
|
)
|
||
|
|
|
||
|
|
for var in "${REQUIRED_VARS[@]}"; do
|
||
|
|
if [ -z "${!var}" ] || [ "${!var}" == "0x..." ]; then
|
||
|
|
echo "Error: $var is not set in .env"
|
||
|
|
exit 1
|
||
|
|
fi
|
||
|
|
done
|
||
|
|
|
||
|
|
LIQUIDITY_AMOUNT=${LIQUIDITY_AMOUNT:-100} # Default 100 ETH
|
||
|
|
RESERVE_AMOUNT=${RESERVE_AMOUNT:-100000} # Default 100k USDT
|
||
|
|
|
||
|
|
echo ""
|
||
|
|
echo "--- Providing Liquidity to LiquidityPoolETH ---"
|
||
|
|
echo "Amount: $LIQUIDITY_AMOUNT ETH"
|
||
|
|
|
||
|
|
cast send "$LIQUIDITY_POOL" \
|
||
|
|
"provideLiquidity(uint8)" \
|
||
|
|
0 \
|
||
|
|
--value "${LIQUIDITY_AMOUNT}ether" \
|
||
|
|
--rpc-url "$ETHEREUM_MAINNET_RPC" \
|
||
|
|
--private-key "$PRIVATE_KEY"
|
||
|
|
|
||
|
|
echo "✓ Liquidity provided"
|
||
|
|
|
||
|
|
echo ""
|
||
|
|
echo "--- Funding ReserveSystem ---"
|
||
|
|
echo "Amount: $RESERVE_AMOUNT USDT"
|
||
|
|
|
||
|
|
# Approve USDT
|
||
|
|
USDT=${USDT:-0xdAC17F958D2ee523a2206206994597C13D831ec7}
|
||
|
|
cast send "$USDT" \
|
||
|
|
"approve(address,uint256)" \
|
||
|
|
"$RESERVE_SYSTEM" \
|
||
|
|
"$(cast --to-wei $RESERVE_AMOUNT 6)" \
|
||
|
|
--rpc-url "$ETHEREUM_MAINNET_RPC" \
|
||
|
|
--private-key "$PRIVATE_KEY"
|
||
|
|
|
||
|
|
echo "✓ USDT approved"
|
||
|
|
|
||
|
|
# Deposit to ReserveSystem
|
||
|
|
cast send "$RESERVE_SYSTEM" \
|
||
|
|
"depositReserve(address,uint256)" \
|
||
|
|
"$USDT" \
|
||
|
|
"$(cast --to-wei $RESERVE_AMOUNT 6)" \
|
||
|
|
--rpc-url "$ETHEREUM_MAINNET_RPC" \
|
||
|
|
--private-key "$PRIVATE_KEY"
|
||
|
|
|
||
|
|
echo "✓ Reserves deposited"
|
||
|
|
|
||
|
|
echo ""
|
||
|
|
echo "=== Phase 6 Complete ==="
|
||
|
|
echo "Initial liquidity and reserves provided"
|
||
|
|
|