This directory contains GitHub Actions workflows for automated data processing.
Schedule: Every 6 hours (00:00, 06:00, 12:00, 18:00 UTC)
What it does:
- Runs
process_bridge_data.py
to fetch and process bridge transaction data - Runs
process_musd_data.py
to fetch and process MUSD loan data - Uploads data to Supabase database
- Creates processing artifacts for debugging
Features:
- ✅ Automatic table creation with dynamic schema detection
- 🔄 Retry logic with visual progress indicators
- 📊 Processing summaries and status reports
- 🚨 Failure notifications
- 📁 Artifact uploads for debugging
Trigger: Manual workflow dispatch
Options:
- Choose specific script to run (both, bridge_only, musd_only)
- Enable debug mode for detailed output
- Upload processing artifacts
Configure these secrets in your GitHub repository settings:
SUPABASE_URL_PROD # Production Supabase project URL
SUPABASE_KEY_PROD # Production Supabase API key
SUPABASE_DATA_URL # Data warehouse Supabase project URL
SUPABASE_DATA_KEY # Data warehouse Supabase API key
COINGECKO_KEY # CoinGecko API key for price data
- ✅ All jobs complete with
success
status - 🎉 Summary shows successful processing
- 📊 Artifacts contain generated CSV files
- ❌ Failed jobs are reported in the summary
- 🔔 Workflow fails if any job fails
- 📋 Detailed logs available in job outputs
- 📁 Artifacts uploaded even on failure for debugging
The workflows run automatically every 6 hours. No action required.
- Go to Actions tab in GitHub
- Select Manual Data Processing
- Click Run workflow
- Choose options and run
- Check the Actions tab for workflow status
- View the summary in the workflow run
- Download artifacts if needed for debugging
- Python 3.11
- Requirements from
requirements.txt
- Access to Supabase and CoinGecko APIs
GitHub Actions → Python Scripts → Supabase Database
↓ ↓ ↓
Artifacts Processing Live Data
Logs
- API Rate Limits: Scripts include retry logic
- Table Schema: Dynamic table creation handles structure changes
- Network Issues: Workflows have timeout protection
Enable debug mode in manual workflows for detailed output:
- Verbose Python execution (
python -v
) - Detailed error tracebacks
- Extended logging output