Skip to content

Commit 9833ab0

Browse files
authored
Fix and speed up the CI workflow (#63)
- ci: Use the special `ci_checks_max` session - ci: Don't use `env` in `matrix` - ci: Fix dependency on non-existing job - ci: Remove `DEFAULT_UBUNTU_VERSION` Fixes #62.
2 parents 99d050e + 4210214 commit 9833ab0

File tree

1 file changed

+13
-8
lines changed
  • cookiecutter/{{cookiecutter.github_repo_name}}/.github/workflows

1 file changed

+13
-8
lines changed

cookiecutter/{{cookiecutter.github_repo_name}}/.github/workflows/ci.yaml

Lines changed: 13 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -16,8 +16,11 @@ on:
1616
workflow_dispatch:
1717

1818
env:
19+
# Please make sure this version is included in the `matrix`, as the
20+
# `matrix` section can't use `env`, so it must be entered manually
1921
DEFAULT_PYTHON_VERSION: '3.11'
20-
DEFAULT_UBUNTU_VERSION: '20.04'
22+
# It would be nice to be able to also define a DEFAULT_UBUNTU_VERSION
23+
# but sadly `env` can't be used either in `runs-on`.
2124

2225
jobs:
2326
nox:
@@ -26,9 +29,9 @@ jobs:
2629
fail-fast: false
2730
matrix:
2831
os:
29-
- ubuntu-{{'${{ env.DEFAULT_UBUNTU_VERSION }}'}}
32+
- ubuntu-20.04
3033
python:
31-
- "{{'${{ env.DEFAULT_PYTHON_VERSION }}'}}"
34+
- "3.11"
3235
runs-on: {{'${{ matrix.os }}'}}
3336

3437
steps:
@@ -47,12 +50,14 @@ jobs:
4750
python -m pip install -e .[dev-noxfile]
4851
4952
- name: Run nox
50-
run: nox
53+
# To speed things up a bit we use the speciall ci_checks_max session
54+
# that uses the same venv to run multiple linting sessions
55+
run: nox -e ci_checks_max pytest_min
5156
timeout-minutes: 10
5257

5358
build:
5459
name: Build distribution packages
55-
runs-on: ubuntu-{{'${{ env.DEFAULT_UBUNTU_VERSION }}'}}
60+
runs-on: ubuntu-20.04
5661
steps:
5762
- name: Fetch sources
5863
uses: actions/checkout@v3
@@ -80,15 +85,15 @@ jobs:
8085

8186
create-github-release:
8287
name: Create GitHub release
83-
needs: ["publish-docs"]
88+
needs: ["build"]
8489
# Create a release only on tags creation
8590
if: github.event_name == 'push' && startsWith(github.ref, 'refs/tags/v')
8691
permissions:
8792
# We need write permissions on contents to create GitHub releases and on
8893
# discussions to create the release announcement in the discussion forums
8994
contents: write
9095
discussions: write
91-
runs-on: ubuntu-{{'${{ env.DEFAULT_UBUNTU_VERSION }}'}}
96+
runs-on: ubuntu-20.04
9297
steps:
9398
- name: Download distribution files
9499
uses: actions/download-artifact@v3
@@ -130,7 +135,7 @@ jobs:
130135
publish-to-pypi:
131136
name: Publish packages to PyPI
132137
needs: ["create-github-release"]
133-
runs-on: ubuntu-{{'${{ env.DEFAULT_UBUNTU_VERSION }}'}}
138+
runs-on: ubuntu-20.04
134139
permissions:
135140
# For trusted publishing. See:
136141
# https://blog.pypi.org/posts/2023-04-20-introducing-trusted-publishers/

0 commit comments

Comments
 (0)