Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
25 changes: 10 additions & 15 deletions .github/workflows/pages.yml
Original file line number Diff line number Diff line change
@@ -1,11 +1,11 @@
name: Deploy GitHub Pages

# Builds the fleet landing page (docs/index.html, via the shared Developer-Tools-Directory
# template) AND the local examples gallery (docs/gallery/index.html, generated from
# examples/gallery.json by scripts/build_gallery.py). Both ship in the single docs/ artifact;
# the fleet build only writes docs/index.html + docs/fonts/ + docs/assets/, so it never
# clobbers docs/gallery/. When the fleet template gains examples support, the gallery step is
# retired and the data (examples/gallery.json) migrates onto the shared template.
# Builds the landing page (docs/index.html, via the locally vendored template at
# scripts/site/ — originally scaffolded from Developer-Tools-Directory's site-template,
# now owned and evolved by this repo) AND the local examples gallery
# (docs/gallery/index.html, generated from examples/gallery.json by scripts/build_gallery.py).
# Both ship in the single docs/ artifact; the landing build only writes docs/index.html +
# docs/fonts/ + docs/assets/, so it never clobbers docs/gallery/.

on:
push:
Expand All @@ -20,6 +20,8 @@ on:
- "examples/gallery.json"
- "docs/gallery/**"
- "scripts/build_gallery.py"
- "scripts/site/**"
- "CHANGELOG.md"
workflow_dispatch:

permissions:
Expand All @@ -39,21 +41,14 @@ jobs:
steps:
- uses: actions/checkout@v7

- name: Checkout site template
uses: actions/checkout@v7
with:
repository: TMHSDigital/Developer-Tools-Directory
sparse-checkout: site-template
path: _template

- uses: actions/setup-python@v6
with:
python-version: "3.12"

- run: pip install Jinja2

- name: Build fleet landing page
run: python _template/site-template/build_site.py --repo-root . --out docs
- name: Build landing page (vendored template)
run: python scripts/site/build_site.py --repo-root . --out docs

- name: Build local examples gallery (from examples/gallery.json)
# Stdlib-only; regenerates docs/gallery/index.html so the committed page can never
Expand Down
6 changes: 6 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -33,6 +33,12 @@ ehthumbs.db
# Local planning docs (not published)
docs/site-upgrade-plan.md

# Landing-page build outputs (generated at deploy time by scripts/site/build_site.py;
# docs/gallery/ stays committed)
docs/index.html
docs/fonts/
docs/assets/

# Build artifacts
dist/
build/
Expand Down
6 changes: 6 additions & 0 deletions AGENTS.md
Original file line number Diff line number Diff line change
Expand Up @@ -125,6 +125,12 @@ way, and a one-paragraph rationale. 30 to 80 lines is the right size.
each release. Triggered on push to `main` for content-changing paths only.
- `label-sync.yml` self-heals labels via `gh label create --force` per
label, then applies them to the PR.
- `pages.yml` builds the landing page from the **locally vendored** template
at `scripts/site/` (originally scaffolded from Developer-Tools-Directory's
site-template, now owned by this repo — the fleet template only scaffolds
new tools) plus the examples gallery via `scripts/build_gallery.py`, then
deploys `docs/`. `docs/index.html`, `docs/fonts/`, and `docs/assets/` are
build outputs and gitignored; `docs/gallery/` is committed.

## Where to look for canonical references

Expand Down
Loading
Loading