Foundry DevTools CI #2
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Foundry DevTools CI | |
on: | |
push: | |
branches: | |
- main | |
paths: | |
- '**' | |
- '!docs/**' | |
- '!LICENSE' | |
- '!README.md' | |
- '!.github/**' | |
- '.github/workflows/ci.yml' # include this workflow | |
- '!.gitignore' | |
pull_request: | |
branches: | |
- main | |
paths: | |
- '**' | |
- '!docs/**' | |
- '!LICENSE' | |
- '!README.md' | |
- '!.github/**' | |
- '.github/workflows/ci.yml' # include this workflow | |
- '!.gitignore' | |
workflow_dispatch: # Allow manually triggering the workflow | |
schedule: | |
# Run roughly every 15 days at 00:00 UTC | |
# (useful to check if updates on dependencies break the package) | |
- cron: '0 0 1,16 * *' | |
concurrency: | |
group: check-${{ github.ref }} | |
cancel-in-progress: true | |
jobs: | |
tests: | |
runs-on: ubuntu-latest | |
strategy: | |
fail-fast: false # always test both versions | |
matrix: | |
python: | |
- "3.10" | |
- "3.12" # newest Python that is supported by pyspark | |
steps: | |
- uses: actions/checkout@v3 | |
with: {fetch-depth: 0} # deep clone for git tag | |
- uses: pdm-project/setup-pdm@v4 | |
with: | |
python-version: ${{matrix.python}} | |
cache: true | |
- name: Install dependencies | |
run: pdm install --frozen-lockfile | |
- name: Run static analysis and format checkers | |
run: pdm run lint | |
- name: Run python tests | |
run: pdm run unit |