Some checks failed
Deploy to Phoenix / deploy (push) Has been cancelled
- ADD_CHAIN138_TO_LEDGER_LIVE: Ledger form done; public code review repo bis-innovations/LedgerLive; init/push commands - CONTRACT_DEPLOYMENT_RUNBOOK: Chain 138 gas price 1 gwei, 36-addr check, TransactionMirror workaround - CONTRACT_*: AddressMapper, MirrorManager deployed 2026-02-12; 36-address on-chain check - NEXT_STEPS_FOR_YOU: Ledger done; steps completable now (no LAN); run-completable-tasks-from-anywhere - MASTER_INDEX, OPERATOR_OPTIONAL, SMART_CONTRACTS_INVENTORY_SIMPLE: updates - LEDGER_BLOCKCHAIN_INTEGRATION_COMPLETE: bis-innovations/LedgerLive reference Co-authored-by: Cursor <cursoragent@cursor.com>
93 lines
2.7 KiB
Bash
Executable File
93 lines
2.7 KiB
Bash
Executable File
#!/usr/bin/env bash
|
|
set -euo pipefail
|
|
|
|
# Load IP configuration
|
|
SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
|
|
PROJECT_ROOT="$(cd "$SCRIPT_DIR/.." && pwd)"
|
|
source "${PROJECT_ROOT}/config/ip-addresses.conf" 2>/dev/null || true
|
|
|
|
|
|
# Update service .env files with deployed contract addresses
|
|
# Usage: ./update-service-configs.sh <contract-addresses-file>
|
|
|
|
set -e
|
|
|
|
SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
|
|
ADDRESSES_FILE="${1:-/home/intlc/projects/smom-dbis-138/deployed-addresses-chain138.txt}"
|
|
|
|
if [ ! -f "$ADDRESSES_FILE" ]; then
|
|
echo "❌ Addresses file not found: $ADDRESSES_FILE"
|
|
exit 1
|
|
fi
|
|
|
|
# Source addresses
|
|
source "$ADDRESSES_FILE" 2>/dev/null || true
|
|
|
|
# Public-facing: VMID 2201 (8545 HTTP, 8546 WS)
|
|
RPC_URL="http://${RPC_PUBLIC_1:-192.168.11.221}:8545"
|
|
WS_URL="ws://${RPC_PUBLIC_1:-192.168.11.221}:8546"
|
|
|
|
# Function to update container .env
|
|
update_container_env() {
|
|
local vmid="$1"
|
|
local service_name="$2"
|
|
local env_content="$3"
|
|
|
|
if ! pct status "$vmid" &>/dev/null; then
|
|
echo "⚠️ Container $vmid not found, skipping $service_name"
|
|
return
|
|
fi
|
|
|
|
echo "Updating $service_name (VMID $vmid)..."
|
|
pct exec "$vmid" -- bash -c "cat > /opt/$service_name/.env <<'ENVEOF'
|
|
$env_content
|
|
ENVEOF" 2>/dev/null && echo "✅ Updated $service_name" || echo "❌ Failed to update $service_name"
|
|
}
|
|
|
|
# Oracle Publisher (VMID 3500)
|
|
if [ -n "$ORACLE_CONTRACT_ADDRESS" ] || [ -n "$AGGREGATOR_ADDRESS" ]; then
|
|
ORACLE_ADDR="${ORACLE_CONTRACT_ADDRESS:-$AGGREGATOR_ADDRESS}"
|
|
update_container_env 3500 "oracle-publisher" "RPC_URL_138=$RPC_URL
|
|
WS_URL_138=$WS_URL
|
|
ORACLE_CONTRACT_ADDRESS=$ORACLE_ADDR
|
|
PRIVATE_KEY=\${PRIVATE_KEY}
|
|
UPDATE_INTERVAL=60
|
|
METRICS_PORT=8000"
|
|
fi
|
|
|
|
# CCIP Monitor (VMID 3501)
|
|
if [ -n "$CCIP_ROUTER_ADDRESS" ] && [ -n "$CCIP_SENDER_ADDRESS" ]; then
|
|
update_container_env 3501 "ccip-monitor" "RPC_URL_138=$RPC_URL
|
|
CCIP_ROUTER_ADDRESS=$CCIP_ROUTER_ADDRESS
|
|
CCIP_SENDER_ADDRESS=$CCIP_SENDER_ADDRESS
|
|
LINK_TOKEN_ADDRESS=\${LINK_TOKEN_ADDRESS}
|
|
METRICS_PORT=8000
|
|
CHECK_INTERVAL=60"
|
|
fi
|
|
|
|
# Keeper (VMID 3502)
|
|
if [ -n "$PRICE_FEED_KEEPER_ADDRESS" ]; then
|
|
update_container_env 3502 "keeper" "RPC_URL_138=$RPC_URL
|
|
PRICE_FEED_KEEPER_ADDRESS=$PRICE_FEED_KEEPER_ADDRESS
|
|
KEEPER_PRIVATE_KEY=\${KEEPER_PRIVATE_KEY}
|
|
UPDATE_INTERVAL=300
|
|
HEALTH_PORT=3000"
|
|
fi
|
|
|
|
# Financial Tokenization (VMID 3503)
|
|
if [ -n "$RESERVE_SYSTEM_ADDRESS" ]; then
|
|
update_container_env 3503 "financial-tokenization" "FIREFLY_API_URL=http://${IP_FIREFLY:-192.168.11.66}:5000
|
|
FIREFLY_API_KEY=\${FIREFLY_API_KEY}
|
|
BESU_RPC_URL=$RPC_URL
|
|
CHAIN_ID=138
|
|
RESERVE_SYSTEM=$RESERVE_SYSTEM_ADDRESS
|
|
FLASK_ENV=production
|
|
FLASK_PORT=5001"
|
|
fi
|
|
|
|
echo ""
|
|
echo "✅ Service configurations updated"
|
|
echo ""
|
|
echo "Note: Private keys and API keys need to be set manually"
|
|
|