#!/bin/zsh # Waits for the EDGAR backfill (concurrent writer of fund_statements) to stop, then converts # fund_statements.coverage → fund_coverage_blob dictionary (resumable). Run from the deployment dir on the node: # nohup scripts/run_migrate_coverage_when_idle.sh > ~/firstratedata/state/migrate_coverage.log 2>&1 & cd "$(dirname "$0")/.." export HFMD_DATA_ROOT=${HFMD_DATA_ROOT:-$HOME/firstratedata} export HFMD_STATE_DB=${HFMD_STATE_DB:-$HFMD_DATA_ROOT/state/hfmd.db} export HFMD_REDIS_URL=${HFMD_REDIS_URL:-redis://127.0.0.1:6379/0} export HFMD_ENV=${HFMD_ENV:-production} while pm2 jlist 2>/dev/null | python3 -c "import sys,json; sys.exit(0 if any(p['name']=='hfmarketdata-edgar-backfill' and p['pm2_env']['status']=='online' for p in json.load(sys.stdin)) else 1)"; do sleep 120; done echo "$(date) backfill finished, converting coverage" exec venv/bin/python scripts/migrate_coverage.py --sleep 0.05 "$@"