Skip to content

Commit 5efe660

Browse files
Update to repo config v0.13.0
Signed-off-by: Flora <[email protected]>
1 parent e58df84 commit 5efe660

File tree

4 files changed

+174
-236
lines changed

4 files changed

+174
-236
lines changed

.github/dependabot.yml

Lines changed: 32 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -13,23 +13,43 @@ updates:
1313
versioning-strategy: auto
1414
# Allow up to 10 open pull requests for updates to dependency versions
1515
open-pull-requests-limit: 10
16-
# We group production and development ("optional" in the context of
17-
# pyproject.toml) dependency updates when they are patch and minor updates,
18-
# so we end up with less PRs being generated.
19-
# Major updates are still managed, but they'll create one PR per
20-
# dependency, as major updates are expected to be breaking, it is better to
21-
# manage them individually.
16+
# We group patch updates as they should always work.
17+
# We also group minor updates, as it works too for most libraries,
18+
# typically except libraries that don't have a stable release yet (v0.x.x
19+
# branch), so we make some exceptions for them.
20+
# Major updates and dependencies excluded by the above groups are still
21+
# managed, but they'll create one PR per dependency, as breakage is
22+
# expected, so it might need manual intervention.
23+
# Finally, we group some dependencies that are related to each other, and
24+
# usually need to be updated together.
2225
groups:
23-
required:
24-
dependency-type: "production"
26+
patch:
2527
update-types:
26-
- "minor"
2728
- "patch"
28-
optional:
29-
dependency-type: "development"
29+
exclude-patterns:
30+
# pydoclint has shipped breaking changes in patch updates often
31+
- "pydoclint"
32+
minor:
3033
update-types:
3134
- "minor"
32-
- "patch"
35+
exclude-patterns:
36+
- "async-solipsism"
37+
- "frequenz-repo-config*"
38+
- "markdown-callouts"
39+
- "mkdocs-gen-files"
40+
- "mkdocs-literate-nav"
41+
- "mkdocstrings*"
42+
- "pydoclint"
43+
- "pytest-asyncio"
44+
# We group repo-config updates as it uses optional dependencies that are
45+
# considered different dependencies otherwise, and will create one PR for
46+
# each if we don't group them.
47+
repo-config:
48+
patterns:
49+
- "frequenz-repo-config*"
50+
mkdocstrings:
51+
patterns:
52+
- "mkdocstrings*"
3353

3454
- package-ecosystem: "github-actions"
3555
directory: "/"

.github/workflows/ci-pr.yaml

Lines changed: 54 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,54 @@
1+
name: Test PR
2+
3+
on:
4+
pull_request:
5+
6+
env:
7+
# Please make sure this version is included in the `matrix`, as the
8+
# `matrix` section can't use `env`, so it must be entered manually
9+
DEFAULT_PYTHON_VERSION: '3.11'
10+
# It would be nice to be able to also define a DEFAULT_UBUNTU_VERSION
11+
# but sadly `env` can't be used either in `runs-on`.
12+
13+
jobs:
14+
nox:
15+
name: Test with nox
16+
runs-on: ubuntu-24.04
17+
18+
steps:
19+
- name: Run nox
20+
uses: frequenz-floss/[email protected]
21+
with:
22+
python-version: "3.11"
23+
nox-session: ci_checks_max
24+
test-docs:
25+
name: Test documentation website generation
26+
runs-on: ubuntu-24.04
27+
steps:
28+
- name: Setup Git
29+
uses: frequenz-floss/[email protected]
30+
31+
- name: Fetch sources
32+
uses: actions/checkout@v4
33+
with:
34+
submodules: true
35+
36+
- name: Setup Python
37+
uses: frequenz-floss/[email protected]
38+
with:
39+
python-version: ${{ env.DEFAULT_PYTHON_VERSION }}
40+
dependencies: .[dev-mkdocs]
41+
42+
- name: Generate the documentation
43+
env:
44+
MIKE_VERSION: gh-${{ github.job }}
45+
run: |
46+
mike deploy $MIKE_VERSION
47+
mike set-default $MIKE_VERSION
48+
49+
- name: Upload site
50+
uses: actions/upload-artifact@v4
51+
with:
52+
name: docs-site
53+
path: site/
54+
if-no-files-found: error

0 commit comments

Comments
 (0)