diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml new file mode 100644 index 0000000..4bcd2e4 --- /dev/null +++ b/.github/workflows/ci.yml @@ -0,0 +1,53 @@ +name: CI +on: + push: + branches: + - "**" + +jobs: + ci: + runs-on: ubuntu-20.04 + steps: + - name: Checkout + uses: actions/checkout@v3 + + - name: Set up Python + uses: actions/setup-python@v5 + with: + python-version: 3.11 + cache: pip + cache-dependency-path: | + requirements.txt + requirements-dev.txt + - name: Install dependencies + run: | + python -m pip install --upgrade pip + pip install -r requirements.txt -r requirements-dev.txt + + - name: Check imports sort order + uses: isort/isort-action@v1 + with: + sort-paths: src, tests + configuration: --profile black --check-only --diff + requirements-files: "requirements.txt requirements-dev.txt" + + - name: Check formatting + uses: psf/black@stable + with: + # Version of Black should match the versions set in `requirements-dev.txt` + version: "~=23.7.0" + options: --check --diff + + - name: Check typing + run: | + python -m mypy + + - name: Test + run: | + pytest --cov antarest --cov-report xml + + - name: Archive code coverage results + uses: actions/upload-artifact@v3 + with: + name: python-code-coverage-report + path: coverage.xml