Skip to content

Add server-aware submit/start launchers (cpu partition for data tasks) #104

Add server-aware submit/start launchers (cpu partition for data tasks)

Add server-aware submit/start launchers (cpu partition for data tasks) #104

Workflow file for this run

name: CI
on:
push:
branches: [main]
pull_request:
branches: [main]
jobs:
syntax-check:
name: Syntax check
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Set up Python
uses: actions/setup-python@v5
with:
python-version: "3.11"
- name: Check Python syntax
run: python -m py_compile $(find sage -name '*.py' | tr '\n' ' ')
import-check:
name: Import smoke test
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Set up Python
uses: actions/setup-python@v5
with:
python-version: "3.11"
- name: Install minimal dependencies
run: |
pip install --upgrade pip
pip install torch --index-url https://download.pytorch.org/whl/cpu
pip install numpy scipy
pip install -e . --no-deps
- name: Smoke test core imports
run: |
python -c "
import sage.dsp
from sage.dsp import (
FrequencyBand, FrequencyBandLayout, FrequencyMultibandCompressor,
make_dyadic_frequency_bands, make_prior_informed_frequency_bands,
apply_heterodyne, compute_reference_phase,
)
print('sage.dsp imports: OK')
"
tests:
name: Run tests
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v4
with:
fetch-depth: 2
- name: Set up Python
uses: actions/setup-python@v5
with:
python-version: "3.11"
- name: Install dependencies
run: |
python -m pip install --upgrade pip
pip install torch --index-url https://download.pytorch.org/whl/cpu
pip install numpy scipy tqdm h5py matplotlib scikit-learn pytest pytest-cov ribs astropy
pip install -e . --no-deps
- name: Run tests with coverage
run: |
pytest tests/ -v --tb=short \
--cov=sage --cov-branch --cov-report=xml --cov-report=term-missing \
--junitxml=junit.xml -o junit_family=legacy
- name: Upload coverage to Codecov
uses: codecov/codecov-action@v5
with:
token: ${{ secrets.CODECOV_TOKEN }}
- name: Upload test results to Codecov
if: ${{ !cancelled() }}
uses: codecov/test-results-action@v1
with:
token: ${{ secrets.CODECOV_TOKEN }}