Skip to content

FOMO detection head #210

FOMO detection head

FOMO detection head #210

Workflow file for this run

name: CI
on:
pull_request:
branches: [ dev, main ]
paths:
- 'luxonis_train/**'
- 'tests/**'
- .github/workflows/ci.yaml
- '!**/*.md'
- '!luxonis_train/__main__.py'
permissions:
pull-requests: write
contents: write
checks: write
jobs:
pre-commit:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v4
with:
ref: ${{ github.head_ref }}
- name: Install pre-commit
run: python -m pip install 'pre-commit<4.0.0'
- name: Run pre-commit
uses: pre-commit/action@v3.0.1
docs:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v4
with:
ref: ${{ github.head_ref }}
- name: Install dependencies
run: pip install pydoctor
- name: Build docs
run: pydoctor --docformat=epytext luxonis_train
type-check:
needs:
- pre-commit
- docs
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v4
with:
ref: ${{ github.head_ref }}
- name: Set up Python
uses: actions/setup-python@v5
with:
python-version: '3.10'
cache: pip
- name: Install dependencies
run: pip install -e .[dev]
- name: Type check
uses: jakebailey/pyright-action@v2
with:
version: '1.1.380'
level: warning
warnings: true
python-version: '3.10'
project: pyproject.toml
tests:
needs:
- type-check
strategy:
fail-fast: false
matrix:
os: [ubuntu-latest, windows-latest]
runs-on: ${{ matrix.os }}
steps:
- name: Checkout
uses: actions/checkout@v4
with:
ref: ${{ github.head_ref }}
- name: Set up Python
uses: actions/setup-python@v5
with:
python-version: '3.10'
cache: pip
- name: Install dependencies
run: pip install -e .[dev]
- name: Authenticate to Google Cloud
id: google-auth
uses: google-github-actions/auth@v2
with:
credentials_json: ${{ secrets.GOOGLE_APPLICATION_CREDENTIALS }}
create_credentials_file: true
export_environment_variables: true
token_format: access_token
- name: Run pytest
env:
LUXONISML_BUCKET: luxonis-test-bucket
run: pytest --cov --junitxml=junit.xml -o junit_family=legacy
- name: Upload test results to Codecov
if: matrix.os == 'ubuntu-latest'
uses: codecov/test-results-action@v1
with:
token: ${{ secrets.CODECOV_TOKEN }}
fail_ci_if_error: false
- name: Upload coverage results to Codecov
if: matrix.os == 'ubuntu-latest'
uses: codecov/codecov-action@v4
with:
token: ${{ secrets.CODECOV_TOKEN }}
fail_ci_if_error: false