name: Testy # Odpala się przy każdym pushu (dowolna gałąź) oraz dla pull requestów do master. on: push: pull_request: branches: [master] jobs: logic-tests: name: Testy warstwy logicznej (silnik) runs-on: ubuntu-latest steps: - uses: actions/checkout@v4 - name: Python 3.12 (jak w obrazach Dockera) uses: actions/setup-python@v5 with: python-version: "3.12" cache: pip cache-dependency-path: services/logic/requirements-dev.txt # Jądro efemeryd JPL (de421.bsp, ~17 MB) pobiera Skyfield przy pierwszym # użyciu. Cache'ujemy je, żeby nie ściągać przy każdym uruchomieniu. - name: Cache jądra efemeryd uses: actions/cache@v4 with: path: services/logic/.ephemeris key: ephemeris-de421 - name: Instalacja zależności run: pip install -r services/logic/requirements-dev.txt - name: Testy (pytest) working-directory: services/logic env: PYTHONPATH: . run: pytest tests -q compile-all: name: Kontrola składni wszystkich warstw runs-on: ubuntu-latest steps: - uses: actions/checkout@v4 - uses: actions/setup-python@v5 with: python-version: "3.12" # Sam kompilator — bez instalowania zależności warstw (w tym AGPL-owego # silnika swisseph, który nie wchodzi do produktu). - name: py_compile run: python -m compileall -q services