Cloudflare deployment
The docs site is a static Docusaurus build published by Cloudflare Pages.
Pages settings
| Setting | Value |
|---|---|
| Production branch | temporal-rust-api-merge |
| Root directory | docs/site |
| Build command | npm ci && npm run build |
| Build output directory | build |
| Custom domain | docs.igdrasil.se |
docs/site/wrangler.toml also declares pages_build_output_dir = "build" so
the Pages output path is visible from the Docusaurus project root.
Access policy
While the site is internal, protect docs.igdrasil.se with Cloudflare Access.
Allow only the team identity provider group or email domain that should read the
docs.
Also enable Access for Pages preview deployments so branch previews are not public by default.
404 after deploy
If the deployment log says this, Cloudflare did not build the Docusaurus site:
No build command specified. Skipping build step.
That deployment uploads repository files instead of the generated build/
directory, so the Pages URL returns 404 because there is no generated
index.html.
Fix the Pages project settings, then retry the deployment:
- Root directory:
docs/site - Build command:
npm ci && npm run build - Build output directory:
build
MkDocs command failure
If the deployment log still runs this command, the Cloudflare Pages dashboard is using the old MkDocs settings:
pip install -r docs/requirements.txt && mkdocs build --strict
That command is stale. docs/requirements.txt was removed when Docusaurus
became the single docs generator. Update the Pages project to the Docusaurus
settings above and retry the deployment.
Public launch
Before making docs.igdrasil.se public:
- Confirm every page under
docs/site/docsis safe for public readers. - Remove internal-only deployment notes or move them outside the Docusaurus source.
- Remove the Cloudflare Access policy from the production hostname.
- Keep preview deployments protected unless public previews are intentional.
Local validation
Run the same build command Cloudflare Pages will run:
npm ci
npm run build