prepare pyvcell for broader use #228
Workflow file for this run
This file contains hidden or 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: Main | |
| on: | |
| push: | |
| branches: | |
| - main | |
| pull_request: | |
| types: [opened, synchronize, reopened, ready_for_review] | |
| jobs: | |
| colab_compat: | |
| runs-on: ubuntu-22.04 # match Colab's os | |
| steps: | |
| - name: Check out | |
| uses: actions/checkout@v4 | |
| - name: Set up Python | |
| uses: actions/setup-python@v5 | |
| with: | |
| python-version: 3.11 # match Colab's Python version | |
| - name: Install Poetry # don't cache dependencies which may affect test results | |
| run: | | |
| curl -sSL https://install.python-poetry.org | python - -y | |
| echo "$HOME/.local/bin" >> $GITHUB_PATH | |
| poetry config virtualenvs.in-project true | |
| - name: Create virtual environment and install Colab dependencies | |
| run: | | |
| pip install --upgrade pip | |
| python -m venv .venv | |
| source .venv/bin/activate | |
| pip install --only-binary=:all: --use-feature=fast-deps -r colab_dependencies.txt | |
| - name: Install project with Poetry | |
| run: | | |
| source .venv/bin/activate | |
| poetry install --no-interaction --no-root --no-dev | |
| - name: Run Colab tests | |
| run: | | |
| source .venv/bin/activate | |
| pytest tests --cov --cov-config=pyproject.toml --cov-report=xml | |
| # quality: | |
| # runs-on: ubuntu-latest | |
| # steps: | |
| # - name: Check out | |
| # uses: actions/checkout@v4 | |
| # | |
| # - uses: actions/cache@v4 | |
| # with: | |
| # path: ~/.cache/pre-commit | |
| # key: pre-commit-${{ hashFiles('.pre-commit-config.yaml') }} | |
| # | |
| # - name: Set up the environment | |
| # uses: ./.github/actions/setup-poetry-env | |
| # | |
| # - name: Run checks | |
| # run: make check | |
| # | |
| # tests-and-type-check: | |
| # runs-on: ubuntu-latest | |
| # strategy: | |
| # matrix: | |
| # python-version: ["3.9", "3.10", "3.11", "3.12"] | |
| # fail-fast: false | |
| # defaults: | |
| # run: | |
| # shell: bash | |
| # steps: | |
| # - name: Check out | |
| # uses: actions/checkout@v4 | |
| # | |
| # - name: Set up the environment | |
| # uses: ./.github/actions/setup-poetry-env | |
| # with: | |
| # python-version: ${{ matrix.python-version }} | |
| # | |
| # - name: Run tests | |
| # run: poetry run pytest tests --cov --cov-config=pyproject.toml --cov-report=xml | |
| # | |
| # - name: Check typing | |
| # run: poetry run mypy | |
| # | |
| # - name: Upload coverage reports to Codecov with GitHub Action on Python 3.11 | |
| # uses: codecov/codecov-action@v4 | |
| # if: ${{ matrix.python-version == '3.11' }} | |
| # | |
| # check-docs: | |
| # runs-on: ubuntu-latest | |
| # steps: | |
| # - name: Check out | |
| # uses: actions/checkout@v4 | |
| # | |
| # - name: Set up the environment | |
| # uses: ./.github/actions/setup-poetry-env | |
| # | |
| # - name: Check if documentation can be built | |
| # run: poetry run mkdocs build -s |