Private GitHub Pages
Status: guarded fallback, not currently deployable from the personal Mobilis-Mobile/00-MobilisArchitectureInfo repo.
Current Decision
Do not publish the private service dashboard to normal GitHub Pages from this personal-account repository. Prefer the Private Cloudflare Pages path when a dedicated Pages project is protected by Cloudflare Access.
GitHub Pages can be built from private repositories, but private site access control is only available for organization-owned private or internal project sites on GitHub Enterprise Cloud. This repository is currently a private personal-account repository, so a normal Pages deployment would not satisfy the "only private" requirement.
Sources:
Guarded Workflow
The repository includes a guarded workflow:
The workflow refuses to deploy unless all of these are true:
- the repository owner is an organization
- the repository is private or internal
- GitHub Pages is already configured
- GitHub Pages visibility is
private - repository variable
ENABLE_PRIVATE_GITHUB_PAGESis set totrue
This prevents a first deploy that accidentally exposes the dashboard publicly.
How To Enable Later
- Move the repository or docs portal source to an organization that uses GitHub Enterprise Cloud.
- In GitHub Pages settings, set the source to GitHub Actions.
- Set the GitHub Pages visibility dropdown to
Private. - Add repository variable
ENABLE_PRIVATE_GITHUB_PAGES=true. - Run the private-github-pages workflow.
Public Build Safety
The normal public docs build must not bundle the private registry.
Public builds use a locked placeholder for /private/third-party-services and must pass:
cd docs-portal
DEPLOY_TARGET=cloudflare-pages MOBILIS_PRIVATE_DASHBOARD_ENABLED=false npm run build
npm run test:third-party-services-public-build
Private/local builds can include the registry and must pass:
cd docs-portal
npm run build
npm run test:third-party-services-browser