rlsbl.targets.docs.deploy
Deploy providers for the docs target.
Supports:
- Cloudflare Pages (via wrangler CLI)
- GitHub Pages (via git force-push to gh-pages branch)
Functions
deploy_cloudflare_pages
def deploy_cloudflare_pages(output_dir, project_name, version)
Deploy to Cloudflare Pages using the Wrangler CLI.
Requires wrangler (Cloudflare CLI) to be installed and authenticated (via wrangler login or CLOUDFLARE_API_TOKEN env var).
Args: output_dir: Path to the built HTML output directory. project_name: Cloudflare Pages project name. version: Version string for the commit message.
Raises: DeployError: If wrangler is not installed or the deploy fails.
deploy_github_pages
def deploy_github_pages(output_dir, version)
Deploy to GitHub Pages by force-pushing output to gh-pages branch.
Uses a temporary directory to build a fresh commit without touching the current working tree. Creates a .nojekyll file to prevent Jekyll processing on GitHub.
Args: output_dir: Path to the built HTML output directory. version: Version string for the commit message.
Raises: DeployError: If git operations fail or remote is unreachable.
_run_git
def _run_git(args, cwd)
Run a git command in the given directory, raising DeployError on failure.
Classes
DeployError
Raised when a deploy operation fails.