Skip to content

feat: bring the landing page into the repo and deploy it from CI - #6

Merged
cococool13 merged 1 commit into
mainfrom
CC/landing-site
Aug 15, 2026
Merged

feat: bring the landing page into the repo and deploy it from CI#6
cococool13 merged 1 commit into
mainfrom
CC/landing-site

Conversation

@cococool13

Copy link
Copy Markdown
Owner

The landing page at tweakeazy.pages.dev was hosted on Netlify and lived in no repository at all. When that host was retired the files were recovered from the deployment itself. This puts them under source control, next to the toolkit they advertise.

What's here

  • site/ — the page as recovered: hand-written HTML/CSS/JS, no build step, no dependencies. What's in the folder is exactly what gets served.
  • site/_headers — cache and security headers, reconstructed from the response headers the live site was actually serving (the old host config was not retrievable through its API).
  • .github/workflows/deploy-site.yml — publishes site/ to the Cloudflare Pages project tweakeazy on a push to main.

Why a second workflow

ci.yml is PSScriptAnalyzer and Pester. It has nothing to say about HTML, and running the PowerShell gate on a CSS change would be noise. deploy-site.yml is path-filtered to site/**, so toolkit commits don't redeploy the page and page commits don't wait on the Windows matrix.

It does not touch the existing gate: PSScriptAnalyzer only reads PowerShell files, and the Pester coverage globs only match numbered phase directories (^\d+ ), so site/ is invisible to both.

The one check it runs

Nothing compiles, so the only thing worth proving before a deploy is that every local asset index.html references actually exists. A missing stylesheet is a silent 404 in production, not a build error.

Verified both directions:

  • all four referenced assets present → exit 0
  • script.js moved aside → ::error:: on that line, exit 1
  • restored, back to exit 0

Note on the deploy step

--branch=main is what marks the upload as production. Without it Pages files every deploy as a preview — which succeeds, prints a URL, and never moves the live site.

If CLOUDFLARE_API_TOKEN is missing the run stays green and logs a warning rather than failing, so the repo still works for anyone forking it without the secrets. CLOUDFLARE_ACCOUNT_ID is already set.

The page was hosted on Netlify and lived in no repository at all. When that
host was retired the files were recovered from the deployment; this puts them
under source control next to the toolkit they advertise.

deploy-site.yml is separate from ci.yml because the PowerShell gate has
nothing to say about HTML, and it is path-filtered so toolkit commits do not
redeploy the page. Its one check is that every local asset index.html
references actually exists — a missing stylesheet is a silent 404 in
production rather than a build error.
Copilot AI lite review requested due to automatic review settings August 15, 2026 21:54

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copilot was unable to review this pull request because the user who requested the review has reached their quota limit.

@cococool13
cococool13 merged commit 128d8ff into main Aug 15, 2026
5 checks passed
@cococool13
cococool13 deleted the CC/landing-site branch August 15, 2026 22:06
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants