Add a documentation website, built with Zola
The documentation moves from READMEs into a site in docs/: getting started, a user guide, operations, a reference, and development pages, written in the style of network vendors' documentation (docs/STYLE.md). bin/bgp/README.md and docs/RFCs.md are folded into it. - A theme of its own in the International Typographic Style, in blues, with self-hosted Inter and JetBrains Mono, search over Zola's index, dark mode, and no resources loaded from other hosts. - Example configurations in docs/examples/, shown on the pages and checked with `bgp --check` in CI. - A test that fails when a field of config.proto is missing from the configuration reference. - A CI job that builds the site; Zola fails on broken links and anchors. - A hardened systemd unit, tried under systemd with kernel routes on. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
1 parent
9820a5d3bc
commit
dc275f99d7
61 files changed
+5632
-623
No files matched your search
@@ -31,15 +31,35 @@ jobs:
|
||||
env:
|
||||
RUSTDOCFLAGS: -D warnings
|
||||
run: cargo doc --locked --workspace --no-deps --document-private-items
|
||||
# The example operators start from, through the daemon itself.
|
||||
- name: Example configuration
|
||||
run: cargo run --locked -p bgp -- --check testdata/server.textpb
|
||||
# The examples operators start from, here and in the documentation,
|
||||
# through the daemon itself.
|
||||
- name: Example configurations
|
||||
run: |
|
||||
for config in testdata/server.textpb docs/examples/*.textpb; do
|
||||
cargo run --locked -p bgp -- --check "$config"
|
||||
done
|
||||
# The tests that change a kernel's routes, in a network namespace of
|
||||
# their own; and two daemons that route for each other.
|
||||
- name: Kernel tests
|
||||
run: scripts/kernel-tests.sh
|
||||
|
||||
# The daemon against FRR, BIRD and Routinator; see bin/bgp/README.md.
|
||||
# The documentation site. Zola fails the build on a link to a page or an
|
||||
# anchor that is not there.
|
||||
docs:
|
||||
runs-on: ubuntu-latest
|
||||
env:
|
||||
ZOLA_VERSION: "0.22.1"
|
||||
steps:
|
||||
- uses: actions/checkout@v4
|
||||
- name: Install Zola
|
||||
run: |
|
||||
curl -sSfL "https://github.com/getzola/zola/releases/download/v${ZOLA_VERSION}/zola-v${ZOLA_VERSION}-x86_64-unknown-linux-gnu.tar.gz" \
|
||||
| sudo tar -xz -C /usr/local/bin zola
|
||||
- name: Build
|
||||
run: zola --root docs build
|
||||
|
||||
# The daemon against FRR, BIRD and Routinator; see
|
||||
# docs/content/docs/development/testing.md.
|
||||
interop:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
|
||||
Reference in new issue
Block a user