REPOMATIC-CLOUDFLARE-PAGES(1) REPOMATIC-CLOUDFLARE-PAGES(1)

repomatic cloudflare-pages - Create, check or update the Cloudflare Pages project

repomatic cloudflare-pages [OPTIONS]

Reconcile the Cloudflare Pages project against the declared state.

A Direct Upload project's live settings (compatibility date, Smart Placement, build image, attached source) exist only server-side, where they drift with nothing watching. This command diffs them against the `[tool.repomatic] site.*` declarations, enforces them, and warns when the API token is within a month of its expiry, which Cloudflare itself never signals.

Credentials come from CLOUDFLARE_API_TOKEN, falling back to the OAuth token a local `wrangler login` stored. The account is derived from the credential at run time, never declared beside it.

Cloudflare Pages project to reconcile. Defaults to [tool.repomatic] site.cloudflare-project, then to the repository name.
Diff the live project against the declared state; exit 1 on drift.
Write the declared values back to the live project.
Print the live project state as JSON, secrets redacted.
Create the Direct Upload project when missing, then apply the declared values: the rebuild-from-nothing verb. An existing project is reused and reconciled, so re-running is safe.
Serve the project at DOMAIN, creating the proxied CNAME it needs. The API attaches a hostname without any DNS, unlike the dashboard, leaving the domain pending forever; this does both.
Show this message and exit.

Cloudflare Pages project to reconcile. Defaults to [tool.repomatic] site.cloudflare-project, then to the repository name.
Diff the live project against the declared state; exit 1 on drift.
Write the declared values back to the live project.
Print the live project state as JSON, secrets redacted.
Create the Direct Upload project when missing, then apply the declared values: the rebuild-from-nothing verb. An existing project is reused and reconciled, so re-running is safe.
Serve the project at DOMAIN, creating the proxied CNAME it needs. The API attaches a hostname without any DNS, unlike the dashboard, leaving the domain pending forever; this does both.
Show this message and exit.

0
Success.
1
A runtime error, or an aborted prompt (Ctrl-C, a declined confirmation).
2
A usage error: unknown option, invalid value, missing operand, or an unparsable configuration file.

In CI: fail the job when the live project drifted

repomatic cloudflare\-pages \-\-check

Write the declared compatibility date and placement back

repomatic cloudflare\-pages \-\-apply

Create the project if missing; an existing one is reconciled, not re-created

repomatic cloudflare\-pages \-\-create \-\-project my\-site

Serve the project at a custom domain, DNS record included

repomatic cloudflare\-pages \-\-attach\-domain example.com

Kevin Deldycke

2026-09-14 7.15.1.dev0