You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Add global-theme, navbar-links, two-stage PR preview, and fern broken-links
- Add `global-theme: nvidia` to docs.yml (mandatory for NVIDIA Fern branding)
- Add GitHub navbar link to docs.yml header
- Fix accentPrimary light color to match NVIDIA green (#76B900)
- CI: split PR preview into two stages so FERN_TOKEN is never exposed to
fork PRs; stage 2 runs via workflow_run in base-branch context
- CI: add `fern docs broken-links` step for internal link checking
- CI: stage 1 saves PR metadata artifact so stage 2 can post preview comment
- README: document fern login requirement, how to get FERN_TOKEN, custom
domain requirement, and two-stage PR preview security model
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
const body = `## 📚 Docs preview\n\n${url}\n\n*Preview published from run [#${{ github.run_id }}](${{ github.server_url }}/${{ github.repository }}/actions/runs/${{ github.run_id }})*`;
The live site is at **https://nvidia-cuopt.docs.buildwithfern.com**.
70
+
**Getting `FERN_TOKEN`**: Ping `@aschilling`, `@dkoperda`, `@llane`, `@mmckiernan`, or `@nmckimpson` in the NVIDIA internal `#cdd-fern` Slack channel. Add the token as a `FERN_TOKEN` GitHub Actions secret in the repository settings.
71
+
72
+
The live site is at **https://nvidia-cuopt.docs.buildwithfern.com**. Before going to production, a custom domain (`docs.nvidia.com/cuopt`) must be configured by the Fern team with Akamai fronting — contact `#cdd-fern` when ready.
63
73
64
74
### How CI works
65
75
66
76
| Trigger | What happens |
67
77
|---|---|
68
-
| Any push / PR touching `docs/`, `fern/`, or `python/cuopt/`| RST → MDX conversion + `fern check` + URL link check |
69
-
| Pull request | Fern preview URL published (temporary, doesn't affect live site) |
78
+
| Any push / PR touching `docs/`, `fern/`, or `python/cuopt/`| RST → MDX conversion + `fern check` + internal link check + external URL check |
79
+
| Pull request (stage 1, no secrets) | Converts RST → MDX, uploads `fern/` as artifact |
| Push to `docs-fern-migration`| Publishes to the live site via `fern generate --docs`|
71
82
83
+
PR preview uses a two-stage workflow so that `FERN_TOKEN` is never exposed to fork PRs. Stage 2 runs in the base-branch context via `workflow_run`, where repository secrets are accessible.
84
+
72
85
CI workflow: [`.github/workflows/fern-docs.yml`](.github/workflows/fern-docs.yml)
0 commit comments