Files
proxmox/scripts/run-operator-tasks-from-lan.sh
defiQUG fbda1b4beb
Some checks failed
Deploy to Phoenix / deploy (push) Has been cancelled
docs: Ledger Live integration, contract deploy learnings, NEXT_STEPS updates
- 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>
2026-02-12 15:46:57 -08:00

48 lines
2.2 KiB
Bash
Executable File

#!/usr/bin/env bash
# Run operator tasks that REQUIRE being on LAN and/or having NPM_PASSWORD, PRIVATE_KEY.
# Run from a host on the same LAN as NPMplus (192.168.11.x) with .env loaded.
# Usage: source .env 2>/dev/null; ./scripts/run-operator-tasks-from-lan.sh [--dry-run] [--skip-backup] [--skip-verify]
set -euo pipefail
SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
PROJECT_ROOT="$(cd "$SCRIPT_DIR/.." && pwd)"
cd "$PROJECT_ROOT"
DRY_RUN=false
SKIP_BACKUP=false
SKIP_VERIFY=false
for a in "$@"; do
[[ "$a" == "--dry-run" ]] && DRY_RUN=true
[[ "$a" == "--skip-backup" ]] && SKIP_BACKUP=true
[[ "$a" == "--skip-verify" ]] && SKIP_VERIFY=true
done
echo "=== Operator tasks (from LAN) ==="
echo ""
# W0-1 + W0-3: NPMplus RPC fix and backup
bash "$SCRIPT_DIR/run-wave0-from-lan.sh" $([[ "$DRY_RUN" == true ]] && echo --dry-run) $([[ "$SKIP_BACKUP" == true ]] && echo --skip-backup)
echo ""
# O-1: Blockscout source verification (from host that can reach Blockscout)
if [[ "$SKIP_VERIFY" != true ]]; then
echo "O-1: Blockscout source verification..."
if [[ "$DRY_RUN" == true ]]; then
echo " [DRY-RUN] source smom-dbis-138/.env 2>/dev/null; ./scripts/verify/run-contract-verification-with-proxy.sh"
else
([[ -f smom-dbis-138/.env ]] && source smom-dbis-138/.env 2>/dev/null; bash "$SCRIPT_DIR/verify/run-contract-verification-with-proxy.sh") || echo " Skip (smom-dbis-138/.env or script failed)"
fi
echo ""
fi
echo "=== Next steps (manual or run separately) ==="
echo " W0-2 sendCrossChain: bash scripts/bridge/run-send-cross-chain.sh <amount> [recipient] (PRIVATE_KEY, LINK in .env)"
echo " W1-1 SSH keys: bash scripts/security/setup-ssh-key-auth.sh [--dry-run|--apply]"
echo " W1-2 Firewall 8006: bash scripts/security/firewall-proxmox-8006.sh [--dry-run|--apply] [CIDR]"
echo " W1-8 Backup cron: bash scripts/maintenance/schedule-npmplus-backup-cron.sh --install"
echo " Cron-2 daily/weekly: bash scripts/maintenance/schedule-daily-weekly-cron.sh --install"
echo " O-1 retry one: ./scripts/verify/run-contract-verification-with-proxy.sh --only ContractName"
echo " CR-1 Config-ready: see docs/07-ccip/CONFIG_READY_CHAINS_COMPLETION_RUNBOOK.md"
echo " API keys: reports/API_KEYS_REQUIRED.md → set in .env"