Repository navigation
Conversation
…for patchling.app
….json and the build log
Deploying patchling with
|
| Latest commit: |
806c0fa
|
| Status: | ✅ Deploy successful! |
| Preview URL: | https://9259b6ca.patchling.pages.dev |
| Branch Preview URL: | https://build-docs-from-patchling-py.patchling.pages.dev |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
What
patchling.app now gets a build step.
bash scripts/build-site.shwritesdist/:/landing/unchanged (demo page)/py/255BITS/patchling-pymain(no token) is built withmkdocs build --strict, from the samemkdocs.ymland nav as gptdiff.255labs.xyz. Onlysite_urlis overridden, tohttps://patchling.app/py/./js/README.md,CHANGELOG.mdanddocs/deploy.md, rendered with the same mkdocs-material (scripts/site/mkdocs.js.yml,--strict)./docs,/docs/*/py/,/py/:splat(dist/_redirects, Cloudflare Pages syntax)The landing page's Python "Docs" link was stale (
255bits.github.io/patchling-py); it now goes to/py/. The JavaScript card gains a "Docs" link to/js/, and the top nav gains "JS docs" and "Py docs".Zero-dependency library:
mkdocs-material==9.6.22(the same pin as patchling-py's Deploy Documentation workflow), installed into a throwaway venv under.site-build/.package.jsonis untouched,filesis still["src"], anddist/and.site-build/are gitignored.npm pack --dry-runis identical tomain: 19 entries, 202,017 bytes.The expected Pages settings in
scripts/check-pages-settings.mjs(EXPECTED),docs/deploy.mdand the fixture now saybash scripts/build-site.sh/dist. Until the dashboard is changed, a livenode scripts/check-pages-settings.mjswill report that drift on purpose.One-time setup (Mikkel). Nothing has been changed in Cloudflare.
Cloudflare dashboard → Workers & Pages →
patchling→ Settings:bash scripts/build-site.shdistPYTHON_VERSION=3.12. No secrets are needed: the clone is public.main(this merge) is the first build with them.mainlacks the script and the build would fail, though the current deployment stays live.patchling-py, branchmain. Store the URL as the patchling-py repo secretCF_PAGES_DEPLOY_HOOK_PATCHLING_APP.How #28's hook fits
Every Pages build of this repo clones patchling-py
mainfresh. patchling-py #28 calls the deploy hook whenever docs or package files change on itsmain. That makes Pages rebuildmainhere, so/py/picks up the new docs within one build, with no push to this repo. #28 needs no code change.Tests (local)
bash scripts/build-site.shbuilt patchling-py@9555eb88 in about 15 s, 120 files indist/, with--strictclean for both/py/and/js/.dist/with a small static server that appliesdist/_redirects, checked with Playwright:/,/py/,/py/cli/,/py/api/,/py/examples/basic/,/js/,/js/CHANGELOG/and/js/deploy/./docs/quickstart/#install→/py/quickstart/#install.npm test: 251 tests, 247 pass, 4 skipped (live), 0 failed. This includes new checks:/py/and/js/;landing/has nopy/js/docsthat would collide with the build output;_redirectsrules;filesis["src"]with no dependencies;node scripts/check-release-version.mjs --mainpasses.npm pack --dry-runis identical toorigin/main.Note: previews of this PR use the current settings (no build), so the
/py/and/js/links 404 there until step 1 is done.Deployment sequencing
bash scripts/build-site.sh/ outputdistat the same moment site: serve patchling-py docs at /py/ and JS docs at /js/ on patchling.app #13 merges to main, so there is no Pages build from the old main with the new settings (or the new main with the old settings) in between. Don't trigger a retry/redeploy in the gap.GPTDIFF_REDIRECT_TO_PATCHLING_APPon patchling-py.GPTDIFF_REDIRECT_TO_PATCHLING_APPand rerun Deploy Documentation to restore gptdiff.255labs.xyz; in Cloudflare Pages, roll back to the previous production deployment (Deployments → ⋯ → Rollback) and restore the old build command/output; revert site: serve patchling-py docs at /py/ and JS docs at /js/ on patchling.app #13 (and #28 if needed) on main with a normal revert commit.