Sessions 5-7a: 955 tests, deployment ready
This commit is contained in:
@@ -0,0 +1,25 @@
|
||||
name: Dependency Security Scan
|
||||
on:
|
||||
schedule:
|
||||
- cron: '0 12 * * 1' # Weekly Monday noon UTC
|
||||
workflow_dispatch:
|
||||
|
||||
jobs:
|
||||
python-audit:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: actions/checkout@v4
|
||||
- uses: actions/setup-python@v5
|
||||
with:
|
||||
python-version: '3.11'
|
||||
- run: pip install pip-audit
|
||||
- run: pip-audit -r src/services/python/requirements.txt
|
||||
|
||||
node-audit:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: actions/checkout@v4
|
||||
- uses: actions/setup-node@v4
|
||||
with:
|
||||
node-version: '20'
|
||||
- run: npm audit --production
|
||||
@@ -0,0 +1,32 @@
|
||||
name: VYNDR Morning Odds Scan
|
||||
|
||||
on:
|
||||
schedule:
|
||||
- cron: '0 15 * * *' # 10am ET
|
||||
workflow_dispatch:
|
||||
|
||||
jobs:
|
||||
morning-odds:
|
||||
runs-on: ubuntu-latest
|
||||
defaults:
|
||||
run:
|
||||
working-directory: src/services/python
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@v4
|
||||
|
||||
- uses: actions/setup-python@v5
|
||||
with:
|
||||
python-version: '3.11'
|
||||
|
||||
- name: Install dependencies
|
||||
run: pip install -r requirements.txt
|
||||
|
||||
- name: Fetch morning odds
|
||||
env:
|
||||
SUPABASE_URL: ${{ secrets.SUPABASE_URL }}
|
||||
SUPABASE_SERVICE_KEY: ${{ secrets.SUPABASE_SERVICE_KEY }}
|
||||
ODDS_API_KEY: ${{ secrets.ODDS_API_KEY }}
|
||||
SHADOW_MODE: ${{ vars.SHADOW_MODE }}
|
||||
run: |
|
||||
python -c "import sys; sys.path.insert(0, '.'); from blueprints.odds_scanner import fetch_and_store_odds; fetch_and_store_odds('nba', 'morning_open'); fetch_and_store_odds('mlb', 'morning_open')"
|
||||
@@ -0,0 +1,32 @@
|
||||
name: VYNDR Nightly Resolution
|
||||
|
||||
on:
|
||||
schedule:
|
||||
- cron: '0 7 * * *' # 2am ET
|
||||
workflow_dispatch:
|
||||
|
||||
jobs:
|
||||
nightly-resolution:
|
||||
runs-on: ubuntu-latest
|
||||
defaults:
|
||||
run:
|
||||
working-directory: src/services/python
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@v4
|
||||
|
||||
- uses: actions/setup-python@v5
|
||||
with:
|
||||
python-version: '3.11'
|
||||
|
||||
- name: Install dependencies
|
||||
run: pip install -r requirements.txt
|
||||
|
||||
- name: Run nightly resolution
|
||||
env:
|
||||
SUPABASE_URL: ${{ secrets.SUPABASE_URL }}
|
||||
SUPABASE_SERVICE_KEY: ${{ secrets.SUPABASE_SERVICE_KEY }}
|
||||
ODDS_API_KEY: ${{ secrets.ODDS_API_KEY }}
|
||||
SHADOW_MODE: ${{ vars.SHADOW_MODE }}
|
||||
run: |
|
||||
python -c "import sys; sys.path.insert(0, '.'); from blueprints.resolution import nightly_resolution_job; from datetime import date, timedelta; nightly_resolution_job((date.today() - timedelta(days=1)).isoformat())"
|
||||
@@ -0,0 +1,50 @@
|
||||
name: VYNDR Pre-Game Scans
|
||||
|
||||
on:
|
||||
schedule:
|
||||
- cron: '0 20 * * *' # 3pm ET
|
||||
- cron: '0 22 * * *' # 5pm ET
|
||||
- cron: '30 23 * * *' # 6:30pm ET
|
||||
workflow_dispatch:
|
||||
|
||||
jobs:
|
||||
pregame-scan:
|
||||
runs-on: ubuntu-latest
|
||||
defaults:
|
||||
run:
|
||||
working-directory: src/services/python
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@v4
|
||||
|
||||
- uses: actions/setup-python@v5
|
||||
with:
|
||||
python-version: '3.11'
|
||||
|
||||
- name: Install dependencies
|
||||
run: pip install -r requirements.txt
|
||||
|
||||
- name: Fetch pregame odds
|
||||
env:
|
||||
SUPABASE_URL: ${{ secrets.SUPABASE_URL }}
|
||||
SUPABASE_SERVICE_KEY: ${{ secrets.SUPABASE_SERVICE_KEY }}
|
||||
ODDS_API_KEY: ${{ secrets.ODDS_API_KEY }}
|
||||
SHADOW_MODE: ${{ vars.SHADOW_MODE }}
|
||||
run: |
|
||||
python -c "import sys; sys.path.insert(0, '.'); from blueprints.odds_scanner import fetch_and_store_odds; fetch_and_store_odds('nba', 'pregame'); fetch_and_store_odds('mlb', 'pregame')"
|
||||
|
||||
- name: Detect line movement
|
||||
env:
|
||||
SUPABASE_URL: ${{ secrets.SUPABASE_URL }}
|
||||
SUPABASE_SERVICE_KEY: ${{ secrets.SUPABASE_SERVICE_KEY }}
|
||||
SHADOW_MODE: ${{ vars.SHADOW_MODE }}
|
||||
run: |
|
||||
python -c "import sys; sys.path.insert(0, '.'); from blueprints.line_movement import detect_line_movement; detect_line_movement('nba'); detect_line_movement('mlb')"
|
||||
|
||||
- name: Check lineups
|
||||
env:
|
||||
SUPABASE_URL: ${{ secrets.SUPABASE_URL }}
|
||||
SUPABASE_SERVICE_KEY: ${{ secrets.SUPABASE_SERVICE_KEY }}
|
||||
SHADOW_MODE: ${{ vars.SHADOW_MODE }}
|
||||
run: |
|
||||
python -c "import sys; sys.path.insert(0, '.'); from blueprints.lineup_check import check_lineups; check_lineups('nba'); check_lineups('mlb')"
|
||||
@@ -0,0 +1,31 @@
|
||||
name: VYNDR Reporter Monitoring
|
||||
|
||||
on:
|
||||
schedule:
|
||||
- cron: '*/15 19-5 * * *' # Every 15min during game window
|
||||
workflow_dispatch:
|
||||
|
||||
jobs:
|
||||
reporter-poll:
|
||||
runs-on: ubuntu-latest
|
||||
defaults:
|
||||
run:
|
||||
working-directory: src/services/python
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@v4
|
||||
|
||||
- uses: actions/setup-python@v5
|
||||
with:
|
||||
python-version: '3.11'
|
||||
|
||||
- name: Install dependencies
|
||||
run: pip install -r requirements.txt
|
||||
|
||||
- name: Poll reporter feeds
|
||||
env:
|
||||
SUPABASE_URL: ${{ secrets.SUPABASE_URL }}
|
||||
SUPABASE_SERVICE_KEY: ${{ secrets.SUPABASE_SERVICE_KEY }}
|
||||
SHADOW_MODE: ${{ vars.SHADOW_MODE }}
|
||||
run: |
|
||||
python -c "import sys; sys.path.insert(0, '.'); from blueprints.reporter_monitor import poll_reporter_feeds; poll_reporter_feeds('nba'); poll_reporter_feeds('mlb')"
|
||||
@@ -0,0 +1,31 @@
|
||||
name: VYNDR Weather Monitoring
|
||||
|
||||
on:
|
||||
schedule:
|
||||
- cron: '*/30 19-4 * * *' # Every 30min during game window
|
||||
workflow_dispatch:
|
||||
|
||||
jobs:
|
||||
weather-check:
|
||||
runs-on: ubuntu-latest
|
||||
defaults:
|
||||
run:
|
||||
working-directory: src/services/python
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@v4
|
||||
|
||||
- uses: actions/setup-python@v5
|
||||
with:
|
||||
python-version: '3.11'
|
||||
|
||||
- name: Install dependencies
|
||||
run: pip install -r requirements.txt
|
||||
|
||||
- name: Check weather for regrade
|
||||
env:
|
||||
SUPABASE_URL: ${{ secrets.SUPABASE_URL }}
|
||||
SUPABASE_SERVICE_KEY: ${{ secrets.SUPABASE_SERVICE_KEY }}
|
||||
SHADOW_MODE: ${{ vars.SHADOW_MODE }}
|
||||
run: |
|
||||
python -c "import sys; sys.path.insert(0, '.'); from blueprints.weather_monitor import check_weather_for_regrade; check_weather_for_regrade()"
|
||||
Reference in New Issue
Block a user