name: Tests and Linting on: push: paths: - '.github/workflows/tests.yml' - 'deepface/**' - 'tests/**' - 'api/**' - 'requirements.txt' - '.gitignore' - 'setup.py' pull_request: paths: - '.github/workflows/tests.yml' - 'deepface/**' - 'tests/**' - 'api/**' - 'requirements.txt' - '.gitignore' - 'setup.py' jobs: unit-tests: runs-on: ubuntu-latest strategy: matrix: python-version: [3.8] steps: - uses: actions/checkout@v4 - name: Set up Python ${{ matrix.python-version }} uses: actions/setup-python@v5 with: python-version: ${{ matrix.python-version }} - name: Install dependencies run: | python -m pip install --upgrade pip pip install pytest pip install Werkzeug==2.0.2 pip install flask==2.0.2 pip install . - name: Test with pytest run: | cd tests python -m pytest . -s --disable-warnings linting: needs: unit-tests runs-on: ubuntu-latest strategy: matrix: python-version: [3.8] steps: - uses: actions/checkout@v4 - name: Set up Python ${{ matrix.python-version }} uses: actions/setup-python@v5 with: python-version: ${{ matrix.python-version }} - name: Install dependencies run: | python -m pip install --upgrade pip pip install pylint==3.0.2 pip install black pip install . - name: Lint with pylint run: | pylint --fail-under=10 deepface/