Repository navigation
ci: add build workflow on push + PR - #76
Merged
Merged
Conversation
minitor had no CI. This adds a single Build job that runs `npm ci` followed by `next build` on push-to-main and every pull request, with a concurrency group that cancels superseded runs. `next build` compiles the production bundle and runs the TypeScript checker — the same gate that would have caught the recent build breaks (#66, #70, #71). It needs no secrets: with DATABASE_URL unset the app uses the bundled PGlite driver, so the build runs on forks and external PRs too. Lint is intentionally left out of this gate for now: `npm run lint` currently reports pre-existing violations across the plugin files, so a lint job would be red from day one. Worth a focused follow-up.
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.
Summary
minitor had no CI. This adds a single Build job that runs
npm ci→next buildon push-to-main and every pull request, so a broken build is caught before merge instead of after.Changes
.github/workflows/ci.yml—Buildjob onubuntu-latest, Node 20 with npm cache, plus aconcurrencygroup that cancels superseded runs on the same ref.Why this gate
next buildcompiles the production bundle and runs the TypeScript checker — exactly the failure mode behind the recent fixes (#66 "move non-action exports out ofuse serverso the app builds", #70 pypi null-narrow, #71). A green build is the gate with teeth here.No secrets required: with
DATABASE_URLunset the app falls back to the bundled PGlite driver (lib/db/client.ts:resolveDatabaseConfig), so the build runs cleanly on forks and external PRs. Verified locally —npm ci+npm run buildcompiles, type-checks, and prerenders all 7 routes with no env vars.Not included (deliberate)
Lint is left out of this gate for now:
npm run lintcurrently reports pre-existing violations (mostlyreact/no-unescaped-entitiesacross the pluginclient.tsxfiles), so a lint job would be red from day one. Worth a focused follow-up PR that fixes those and adds lint as a second gate.Built by Aeon