Releases and Deploys
Releases
Every merge to main in a .dev repository builds once and makes a GitHub Release with a semantic version. The pull request's label picks the number:
| Label | Bump | Release notes section |
|---|---|---|
breaking | Major (v3.0.0) | Breaking changes |
feature | Minor (v2.4.0) | New features |
fix | Patch (v2.3.1) | Fixes |
ui | Patch | UI changes |
The notes include each pull request's description (Before / After / How).
| Repository | Release file |
|---|---|
| frontend.dev | site.zip (with version.json) |
| database.dev | bundle.zip (the migrations) |
| app.abhyas.design | The design system package (.tgz), also published to GitHub Packages |
Deploying
Every deploy workflow is named ๐ Deploy.
- dev deploys on every merge, automatically.
- prd is deployed by hand: Actions โ ๐ Deploy โ Run workflow in the
.prdrepository. Leave Major, Minor and Patch empty for dev's newest release, or fill them in for a specific one. - Deploy the database before the frontend.
- To roll back the frontend, deploy an older version. The database only moves forward: fix it with a new migration.
- Design and documentation are separate. Design merges deploy
app.abhyas.designatdesign.abhyas.nishko.co. Its package release uses the manual Release design package workflow. Documentation merges deployapp.abhyas.contextatcontext.abhyas.nishko.co, including a checksum-verified compiled design build under/storybook/. Runnpm run design:updatein context and commit the design lock after a design deployment.
The .prd repositories pull releases from .dev; .dev repositories never touch prd.