Releasing
- Update the version in the root
package.json(and the workspace packages) and add a section toCHANGELOG.md. - Commit, then tag and push:
git tag v0.2.0
git push origin main --tags
The Release workflow then checks everything, publishes gridcity to npm with provenance,
pushes ghcr.io/chapeee/gridcity:<version> and :latest for amd64 and arm64, and creates the
GitHub release from the changelog.
It needs one repository secret, NPM_TOKEN (an npm automation token). Users never need a token:
it only lets npm accept new versions from the owner. To publish by hand instead:
npm login
npm run pack:npm
cd release/npm && npm publish --access public
The documentation site
The Docs workflow builds website/ and deploys it to GitHub Pages on every push to main that
touches it (enable Pages with "GitHub Actions" as the source in the repository settings). For a
custom domain, set DOCS_URL and DOCS_BASE_URL in the workflow and add a CNAME file to
website/static/.