Skip to content

Commit 6581193

Browse files
authored
auto generate kernel-builder cli docs. (#463)
* auto generate kernel-builder cli docs. * fixes * fix to shas * address review feedback
1 parent f91c9d4 commit 6581193

7 files changed

Lines changed: 404 additions & 1 deletion

File tree

Lines changed: 45 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,45 @@
1+
name: Check CLI docs are up to date
2+
3+
on:
4+
pull_request:
5+
paths:
6+
- "kernel-builder/src/**"
7+
- "kernel-builder/Cargo.toml"
8+
- "docs/source/builder-cli.md"
9+
- "Makefile"
10+
- ".github/workflows/kernel-builder-cli-docs.yaml"
11+
push:
12+
branches:
13+
- main
14+
15+
jobs:
16+
check-cli-docs:
17+
runs-on: ubuntu-latest
18+
steps:
19+
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
20+
21+
- name: Install Rust toolchain
22+
uses: dtolnay/rust-toolchain@29eef336d9b2848a0b548edc03f92a220660cdb8 # stable
23+
24+
- name: Cache cargo registry and build
25+
uses: actions/cache@a7833574556fa59680c1b7cb190c1735db73ebf0 # v5.0.0
26+
with:
27+
path: |
28+
~/.cargo/registry
29+
~/.cargo/git
30+
target
31+
key: ${{ runner.os }}-cargo-cli-docs-${{ hashFiles('**/Cargo.lock') }}
32+
restore-keys: |
33+
${{ runner.os }}-cargo-cli-docs-
34+
35+
- name: Generate CLI docs
36+
run: make kernel-builder-cli-docs
37+
38+
- name: Check docs are up to date
39+
run: |
40+
if ! git diff --quiet docs/source/builder-cli.md; then
41+
echo "::error::builder-cli.md is out of date. Run 'make kernel-builder-cli-docs' to regenerate."
42+
git diff docs/source/builder-cli.md
43+
exit 1
44+
fi
45+
echo "CLI docs are up to date."

Cargo.lock

Lines changed: 10 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

Makefile

Lines changed: 10 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
.PHONY: style
1+
.PHONY: style kernel-builder-cli-docs
22

33
export check_dirs := kernels/src kernels/tests
44

@@ -11,3 +11,12 @@ style:
1111
black ${check_dirs}
1212
isort ${check_dirs}
1313
ruff check ${check_dirs} --fix
14+
15+
kernel-builder-cli-docs:
16+
cargo build -p hf-kernel-builder
17+
./target/debug/kernel-builder generate-docs \
18+
| sed 's/hf-kernel-builder/kernel-builder/g' \
19+
| sed '1s/^# Command-Line Help for `kernel-builder`/# CLI reference for kernel-builder/' \
20+
| sed '/`--backends/,/^\*/{/^ Default value:/d;}' \
21+
> docs/source/builder-cli.md
22+
@echo "Generated docs/source/builder-cli.md"

docs/source/_toctree.yml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -67,4 +67,6 @@
6767
title: kernels download
6868
- local: cli-skills
6969
title: kernel-builder skills
70+
- local: builder-cli
71+
title: Builder CLI Reference
7072
title: CLI Reference

0 commit comments

Comments
 (0)