Web Docs Client CI/CD Production
Overview
Dedicated production workflow: validates the package, generates the LLM bundle, builds the VitePress site, copies the bundle into the built output, and deploys to GitHub Pages. It runs only on push to main (when relevant paths change) or when manually dispatched. There are no branch conditionals inside the workflow—production is separate from staging; staging is handled by the Staging Orchestrator.
Workflow file: .github/workflows/production-w-tool-web-docs-client.yml
Triggers
- Push to
mainwhen any of these paths change:docs/**tools/web-docs-client/**pnpm-lock.yaml,pnpm-workspace.yaml,package.json.github/workflows/production-w-tool-web-docs-client.yml
- workflow_dispatch (manual run)
Pull requests do not run this workflow; they go through staging via the orchestrator.
Pipeline Steps
build (runs on
mainonly)- Checkout repository
- CI setup Node (
.github/actions/ci-setup-node) - Validate monorepo package for
web-docs-client(.github/actions/ci-validate-monorepo-package) - Generate LLM bundle:
node tools/web-docs-client/scripts/generate-llm-bundle.js - Build docs:
pnpm run c:build:web-docs-client - Copy LLM bundle into built assets:
node tools/web-docs-client/scripts/copy-llm-bundle.js - Configure GitHub Pages (enablement)
- Upload artifact:
tools/web-docs-client/.vitepress/distas the Pages artifact
deploy (depends on
build, runs onmainonly)- Deploy the uploaded artifact to GitHub Pages (environment:
github-pages)
- Deploy the uploaded artifact to GitHub Pages (environment:
Concurrency
- Group name includes the workflow name and the current Git ref (e.g.
refs/heads/main). See the workflow file for the exact expression. - New runs cancel in-progress runs for the same ref.
Failure Handling
- Inspect the failing job (build or deploy) in GitHub Actions.
- Fix the failing step (e.g. docs, scripts, lockfile) and push to
mainor re-run the workflow. - If deploy fails after build succeeded, check permissions and GitHub Pages configuration, then retry or re-run.