Skip to content

Commit e15759b

Browse files
authored
Update to repo-config v0.13 (#132)
2 parents 571537c + c1cabf2 commit e15759b

File tree

5 files changed

+192
-270
lines changed

5 files changed

+192
-270
lines changed

.github/dependabot.yml

Lines changed: 31 additions & 28 deletions
Original file line numberDiff line numberDiff line change
@@ -13,42 +13,45 @@ 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.
22-
# We exclude the `frequenz-repo-config` package from grouping as this
23-
# dependency is still under development (at branch v0.x.x), so minor
24-
# changes typically introduce breaking changes (and patch updates can
25-
# potentially too according to semver).
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.
2625
groups:
27-
required:
28-
dependency-type: "production"
26+
patch:
2927
update-types:
30-
- "minor"
3128
- "patch"
3229
exclude-patterns:
33-
- "frequenz-repo-config"
34-
- "frequenz-client-base*"
35-
- "frequenz-api-microgrid"
36-
optional:
37-
dependency-type: "development"
30+
# pydoclint has shipped breaking changes in patch updates often
31+
- "pydoclint"
32+
minor:
3833
update-types:
3934
- "minor"
40-
- "patch"
4135
exclude-patterns:
42-
- "frequenz-repo-config"
43-
- "frequenz-client-base*"
44-
- "frequenz-api-microgrid"
45-
in-devel-patch:
36+
- "async-solipsism"
37+
- "frequenz-api-common"
38+
- "frequenz-client-base"
39+
- "frequenz-repo-config*"
40+
- "markdown-callouts"
41+
- "mkdocs-gen-files"
42+
- "mkdocs-literate-nav"
43+
- "mkdocstrings*"
44+
- "pydoclint"
45+
- "pytest-asyncio"
46+
# We group repo-config updates as it uses optional dependencies that are
47+
# considered different dependencies otherwise, and will create one PR for
48+
# each if we don't group them.
49+
repo-config:
4650
patterns:
47-
- "frequenz-client-base*"
48-
- "frequenz-api-microgrid"
49-
dependency-type: "production"
50-
update-types:
51-
- "patch"
51+
- "frequenz-repo-config*"
52+
mkdocstrings:
53+
patterns:
54+
- "mkdocstrings*"
5255

5356
- package-ecosystem: "github-actions"
5457
directory: "/"

.github/workflows/ci-pr.yaml

Lines changed: 55 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,55 @@
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+
25+
test-docs:
26+
name: Test documentation website generation
27+
runs-on: ubuntu-24.04
28+
steps:
29+
- name: Setup Git
30+
uses: frequenz-floss/[email protected]
31+
32+
- name: Fetch sources
33+
uses: actions/checkout@v4
34+
with:
35+
submodules: true
36+
37+
- name: Setup Python
38+
uses: frequenz-floss/[email protected]
39+
with:
40+
python-version: ${{ env.DEFAULT_PYTHON_VERSION }}
41+
dependencies: .[dev-mkdocs]
42+
43+
- name: Generate the documentation
44+
env:
45+
MIKE_VERSION: gh-${{ github.job }}
46+
run: |
47+
mike deploy $MIKE_VERSION
48+
mike set-default $MIKE_VERSION
49+
50+
- name: Upload site
51+
uses: actions/upload-artifact@v4
52+
with:
53+
name: docs-site
54+
path: site/
55+
if-no-files-found: error

0 commit comments

Comments
 (0)