- Update dbis_core, cross-chain-pmm-lps, explorer-monorepo, metamask-integration, pr-workspace/chains - Omit embedded publish git dirs and empty placeholders from index Made-with: Cursor
77 lines
2.3 KiB
Bash
Executable File
77 lines
2.3 KiB
Bash
Executable File
#!/usr/bin/env bash
|
|
# Deploy Chain 138 cross-chain flash infrastructure via Foundry:
|
|
# - UniversalCCIPFlashBridgeAdapter
|
|
# - CrossChainFlashRepayReceiver
|
|
# - CrossChainFlashVaultCreditReceiver
|
|
#
|
|
# Requires:
|
|
# PRIVATE_KEY
|
|
# RPC_URL_138
|
|
# UNIVERSAL_CCIP_BRIDGE or FLASH_UNIVERSAL_CCIP_BRIDGE
|
|
# CCIP_ROUTER / CCIP_ROUTER_ADDRESS / CCIP_ROUTER_CHAIN138 or FLASH_CCIP_ROUTER
|
|
#
|
|
# Optional:
|
|
# FLASH_REPAY_RECEIVER_ROUTER
|
|
# FLASH_VAULT_CREDIT_ROUTER
|
|
#
|
|
# Usage:
|
|
# source scripts/lib/load-project-env.sh
|
|
# ./scripts/deployment/deploy-cross-chain-flash-infra-chain138.sh
|
|
# ./scripts/deployment/deploy-cross-chain-flash-infra-chain138.sh --dry-run
|
|
|
|
set -euo pipefail
|
|
|
|
SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
|
|
PROJECT_ROOT="$(cd "$SCRIPT_DIR/../.." && pwd)"
|
|
SMOM="$PROJECT_ROOT/smom-dbis-138"
|
|
|
|
if [[ -f "$PROJECT_ROOT/scripts/lib/load-project-env.sh" ]]; then
|
|
# shellcheck disable=SC1091
|
|
source "$PROJECT_ROOT/scripts/lib/load-project-env.sh" 2>/dev/null || true
|
|
fi
|
|
|
|
RPC="${RPC_URL_138:-}"
|
|
if [[ -z "$RPC" ]]; then
|
|
echo "ERROR: Set RPC_URL_138 (Core Chain 138 RPC)." >&2
|
|
exit 1
|
|
fi
|
|
|
|
if [[ -z "${PRIVATE_KEY:-}" ]]; then
|
|
echo "ERROR: PRIVATE_KEY must be set." >&2
|
|
exit 1
|
|
fi
|
|
|
|
BRIDGE="${FLASH_UNIVERSAL_CCIP_BRIDGE:-${UNIVERSAL_CCIP_BRIDGE:-}}"
|
|
if [[ -z "$BRIDGE" ]]; then
|
|
echo "ERROR: Set FLASH_UNIVERSAL_CCIP_BRIDGE or UNIVERSAL_CCIP_BRIDGE." >&2
|
|
exit 1
|
|
fi
|
|
|
|
ROUTER="${FLASH_CCIP_ROUTER:-${CCIP_ROUTER:-${CCIP_ROUTER_ADDRESS:-${CCIP_ROUTER_CHAIN138:-}}}}"
|
|
if [[ -z "$ROUTER" ]]; then
|
|
echo "ERROR: Set FLASH_CCIP_ROUTER or one of CCIP_ROUTER / CCIP_ROUTER_ADDRESS / CCIP_ROUTER_CHAIN138." >&2
|
|
exit 1
|
|
fi
|
|
|
|
cd "$SMOM"
|
|
|
|
ARGS=()
|
|
if [[ "${1:-}" == "--dry-run" ]]; then
|
|
ARGS=(-vvvv)
|
|
else
|
|
ARGS=(--broadcast --with-gas-price 1000000000 --gas-estimate-multiplier 150 -vvvv)
|
|
fi
|
|
|
|
echo "RPC_URL_138=$RPC"
|
|
echo "FLASH_UNIVERSAL_CCIP_BRIDGE=$BRIDGE"
|
|
echo "FLASH_CCIP_ROUTER=$ROUTER"
|
|
if [[ -n "${FLASH_REPAY_RECEIVER_ROUTER:-}" ]]; then
|
|
echo "FLASH_REPAY_RECEIVER_ROUTER=${FLASH_REPAY_RECEIVER_ROUTER}"
|
|
fi
|
|
if [[ -n "${FLASH_VAULT_CREDIT_ROUTER:-}" ]]; then
|
|
echo "FLASH_VAULT_CREDIT_ROUTER=${FLASH_VAULT_CREDIT_ROUTER}"
|
|
fi
|
|
|
|
exec forge script script/deploy/DeployCrossChainFlashInfrastructure.s.sol:DeployCrossChainFlashInfrastructure \
|
|
--rpc-url "$RPC" "${ARGS[@]}"
|