docs(build): add canonical build instructions, pyproject.toml, and add more radio presets (#7222)
Co-authored-by: raphaelcoeffic <1050031+raphaelcoeffic@users.noreply.github.com> Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com> Co-authored-by: Peter Feerick <peter.feerick@gmail.com>
This commit is contained in:
co-authored by
raphaelcoeffic
Claude Opus 4.6
Peter Feerick
parent
1ca4e58274
commit
a9f89323a9
@@ -8,7 +8,11 @@ on:
|
||||
- v*
|
||||
paths:
|
||||
- '.github/workflows/companion.yml'
|
||||
- '.github/actions/python_dependencies/**'
|
||||
- '.github/actions/wasi_sdk/**'
|
||||
- '.github/actions/build_companion/**'
|
||||
- 'companion/**'
|
||||
- 'pyproject.toml'
|
||||
- 'tools/build-companion.sh'
|
||||
- 'tools/build-wasm-modules.sh'
|
||||
- 'cmake/wasm/CMakeLists.txt'
|
||||
@@ -16,7 +20,11 @@ on:
|
||||
pull_request:
|
||||
paths:
|
||||
- '.github/workflows/companion.yml'
|
||||
- '.github/actions/python_dependencies/**'
|
||||
- '.github/actions/wasi_sdk/**'
|
||||
- '.github/actions/build_companion/**'
|
||||
- 'companion/**'
|
||||
- 'pyproject.toml'
|
||||
- 'tools/build-companion.sh'
|
||||
- 'tools/build-wasm-modules.sh'
|
||||
- 'cmake/wasm/CMakeLists.txt'
|
||||
|
||||
@@ -7,7 +7,7 @@ on:
|
||||
paths:
|
||||
- 'docs/**'
|
||||
- 'mkdocs.yml'
|
||||
- 'docs-requirements.txt'
|
||||
- 'pyproject.toml'
|
||||
- '.github/workflows/docs.yml'
|
||||
tags:
|
||||
- 'v[0-9]+.[0-9]+.[0-9]+' # release tags only, not -rc
|
||||
@@ -15,7 +15,7 @@ on:
|
||||
paths:
|
||||
- 'docs/**'
|
||||
- 'mkdocs.yml'
|
||||
- 'docs-requirements.txt'
|
||||
- 'pyproject.toml'
|
||||
- '.github/workflows/docs.yml'
|
||||
workflow_dispatch:
|
||||
|
||||
@@ -41,15 +41,15 @@ jobs:
|
||||
|
||||
- name: Build docs (PR check)
|
||||
if: github.event_name == 'pull_request'
|
||||
run: uv run --with-requirements docs-requirements.txt mkdocs build --strict
|
||||
run: uv run --extra docs -- mkdocs build --strict
|
||||
|
||||
- name: Deploy as latest (main branch)
|
||||
if: github.event_name == 'push' && github.ref == 'refs/heads/main'
|
||||
run: uv run --with-requirements docs-requirements.txt mike deploy --push --update-aliases latest
|
||||
run: uv run --extra docs -- mike deploy --push --update-aliases latest
|
||||
|
||||
- name: Deploy release version
|
||||
if: github.event_name == 'push' && startsWith(github.ref, 'refs/tags/')
|
||||
run: |
|
||||
# Extract minor version from tag, e.g. v2.11.2 -> v2.11
|
||||
VERSION=$(echo "${GITHUB_REF_NAME}" | sed 's/\.[0-9]*$//')
|
||||
uv run --with-requirements docs-requirements.txt mike deploy --push --update-aliases "${VERSION}" stable
|
||||
uv run --extra docs -- mike deploy --push --update-aliases "${VERSION}" stable
|
||||
|
||||
@@ -0,0 +1,39 @@
|
||||
---
|
||||
name: Validate CMakePresets.json
|
||||
on:
|
||||
push:
|
||||
branches:
|
||||
- 'main'
|
||||
- '[0-9]+.[0-9]+'
|
||||
paths:
|
||||
- 'CMakePresets.json'
|
||||
- '.prettierrc.json'
|
||||
- '.github/workflows/validate_cmake_presets.yml'
|
||||
pull_request:
|
||||
branches:
|
||||
- 'main'
|
||||
- '[0-9]+.[0-9]+'
|
||||
paths:
|
||||
- 'CMakePresets.json'
|
||||
- '.prettierrc.json'
|
||||
- '.github/workflows/validate_cmake_presets.yml'
|
||||
workflow_dispatch:
|
||||
|
||||
jobs:
|
||||
validate:
|
||||
name: Validate CMakePresets.json
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: actions/checkout@v7
|
||||
|
||||
- name: Install uv
|
||||
uses: astral-sh/setup-uv@v10.0.1
|
||||
|
||||
- name: Validate against CMake's presets schema
|
||||
run: |
|
||||
cmake --version
|
||||
CMAKE_PREFIX="$(dirname "$(dirname "$(command -v cmake)")")"
|
||||
uvx check-jsonschema --schemafile "$CMAKE_PREFIX"/share/cmake-*/Help/manual/presets/schema.json CMakePresets.json
|
||||
|
||||
- name: Check formatting (prettier)
|
||||
run: npx --yes prettier@3.9.6 --check CMakePresets.json
|
||||
@@ -29,7 +29,7 @@ jobs:
|
||||
|
||||
- name: Install Python dependencies
|
||||
working-directory: .
|
||||
run: uv venv && uv pip install -r requirements.txt
|
||||
run: uv sync
|
||||
|
||||
- name: Check Python script syntax
|
||||
run: uv run python3 -m py_compile *.py
|
||||
|
||||
Reference in New Issue
Block a user