Skip to content

Commit

Permalink
♻️ Combine Linting & Testing
Browse files Browse the repository at this point in the history
  • Loading branch information
yezz123 committed Jan 2, 2024
1 parent 671aca4 commit cb2640f
Showing 1 changed file with 77 additions and 0 deletions.
77 changes: 77 additions & 0 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,77 @@
name: Continuous Integration

on:
push:
branches:
- main
pull_request: {}

jobs:
lint:
runs-on: ubuntu-latest
strategy:
matrix:
python-version: ["3.11"]
fail-fast: false

steps:
- uses: actions/checkout@v4
- name: Set up Python
uses: actions/setup-python@v5
with:
python-version: ${{ matrix.python-version }}
- name: Install Dependencies
run: pip install -e .[lint]
- uses: pre-commit/[email protected]
with:
extra_args: --all-files --verbose
- name: check Static Analysis
run: bash scripts/lint.sh

tests:

name: test py${{ matrix.python-version }} on ${{ matrix.os }}

runs-on: ${{ matrix.os }}-latest


strategy:

matrix:

python-version: ["3.10", "3.11", "3.12"]

os: [ubuntu, macos, windows]

steps:
- uses: actions/checkout@v4

- name: Set up Python
uses: actions/setup-python@v5
with:
python-version: ${{ matrix.python-version }}

- name: Install Dependencies
run: pip install -e .[test]

- name: Freeze Dependencies
run: pip freeze

- name: Test with pytest
run: bash scripts/test.sh

- name: Upload coverage
env:
CODECOV_TOKEN: ${{ secrets.CODECOV_TOKEN }}
uses: codecov/codecov-action@v3

# https://github.com/marketplace/actions/alls-green#why used for branch protection checks
check:
if: always()
needs: [lint, tests]
runs-on: ubuntu-latest
steps:
- name: Decide whether the needed jobs succeeded or failed
uses: re-actors/alls-green@release/v1
with:
jobs: ${{ toJSON(needs) }}

0 comments on commit cb2640f

Please sign in to comment.