blob: e06f84b6ebff2cb854efca2fafb1df8feb995a9b (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
|
# AGENTS.md
## Project purpose
VyOS community website (community.vyos.net). A static site built by the [soupault](https://soupault.net) static-site generator from HTML pages plus SASS-built CSS. Deployed via AWS Amplify (`amplify.yml` present).
## Tech stack
- Static-site generator: soupault (OCaml).
- HTML templates under `templates/`, content under `site/`.
- Sass for stylesheets (`sass/main.sass` → `build/main.css`).
- Soupault plugins under `plugins/` (Lua).
- AWS Amplify deploy spec: `amplify.yml`.
- `release-status.toml` for the per-train release banner data.
- `.mergify.yml` present (commands-only; no automated rules).
## Build / test / run
```
# Site
soupault # → build/
# CSS
sass -I sass/ sass/main.sass > build/main.css
# Combined
make all
```
## Repository layout
- `templates/` — page skeletons including `main.html`; soupault inserts page content into `div#content`.
- `site/` — actual page content (Markdown + HTML).
- `sass/` — SASS sources.
- `fonts/` — static assets.
- `plugins/` — soupault Lua plugins.
- `scripts/` — helper scripts.
- `soupault.toml` — site config; markdown extensions, strict mode, etc.
- `amplify.yml` — Amplify build pipeline (calls `make all`; installs soupault 5.3.0, sass 1.32.8, and Python packages pygithub/jinja2 in preBuild).
- `release-status.toml` — release-train metadata feed for the site.
## Cross-repo context
Static site, independent of the VyOS image build. Sibling corporate web properties live under `sentrium/*` (`next-js-vyos` is the main vyos.io site on Next.js + DatoCMS + Vercel; `community.vyos.net` is the older soupault-based community site). May be consumed by `vyos/amplify-build-status` (also in this chunk) for build-status gating.
## Conventions
- Commit / PR title format: `component: T12345: description` (Phorge task ID mandatory). Enforced by `vyos/.github` reusable workflows where consumed.
- **Branch model differs:** `main` is the staging branch (auto-deployed to staging.vyos.net); `production` is the production branch.
- `.mergify.yml` provides Mergify commands (`merge`, `rebase`, `update`, `backport`) but has no automated PR rules.
## Notes for future contributors
- This repo's branch model is `main` (staging) → `production` (live), **not** the `current`/`sagitta`/`circinus` train naming used by VyOS image repos.
- soupault is the build dependency, not Hugo or Jekyll. Install from soupault.app.
- License: see `LICENSE` (none committed; treat as VyOS-default).
|