feat: add CodSpeed to the project #5
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: Check Generated Files | |
on: | |
push: | |
paths: | |
- README.md | |
- poetry.lock | |
- pyproject.toml | |
- requirements-dev.txt | |
pull_request: | |
paths: | |
- README.md | |
- poetry.lock | |
- pyproject.toml | |
- requirements-dev.txt | |
concurrency: | |
group: ${{ github.repository }}-${{ github.head_ref || github.sha }}-${{ github.workflow }} | |
cancel-in-progress: true | |
env: | |
FORCE_COLOR: "1" | |
SQLALCHEMY_WARN_20: "1" | |
HYPOTHESIS_PROFILE: "ci" | |
jobs: | |
check_setuptools_install: | |
runs-on: ubuntu-latest | |
steps: | |
- name: checkout | |
uses: actions/checkout@v4 | |
- name: install python | |
uses: actions/setup-python@v5 | |
id: install_python | |
with: | |
python-version: "3.12" | |
cache: pip | |
cache-dependency-path: requirements-dev.txt | |
- name: install poetry | |
run: pip install 'poetry==1.8.2' | |
- name: update apt-get | |
run: sudo apt-get update -y -q | |
- name: install system dependencies | |
run: sudo apt-get install -y -q build-essential graphviz libgeos-dev freetds-dev unixodbc-dev | |
- name: check consistency with pyproject.toml | |
run: poetry check --lock | |
- name: generate requirements-dev.txt | |
run: poetry export --all-extras --with dev --with test --with docs --without-hashes --no-ansi > requirements-dev.txt | |
- name: check requirements-dev.txt | |
run: git diff --exit-code requirements-dev.txt | |
- name: install using requirements-dev.txt | |
run: pip install -r requirements-dev.txt | |
- name: install ibis in development mode | |
run: pip install -e . | |
- name: run tests | |
run: pytest -m core -n auto --cov-report=xml:coverage.xml --cov=ibis | |
- name: upload code coverage | |
if: success() | |
continue-on-error: true | |
uses: codecov/codecov-action@v4 | |
with: | |
flags: core,${{ runner.os }},python-${{ steps.install_python.outputs.python-version }} | |
token: ${{ secrets.CODECOV_TOKEN }} |