-
Notifications
You must be signed in to change notification settings - Fork 1
Release Process
Releases are promoted via a Pull Request from main to production. Any work that is not ready for production must be hidden behind a feature flag (gated). GitHub Actions automatically builds, generates sitemaps, runs tests and deploys.
main ──▶ (PR) ──▶ production ──▶ deploy
1. Review changes
On main (or a release branch):
- Confirm any incomplete features are behind feature flags.
- Ensure tests pass locally:
yarn test && yarn build
2. Open PR and merge: main → production (or release-branch → production)
3. Github Actions: Build steps
The release pipeline automatically runs the following steps when content is merged into the production branch.
-
yarn generate-footer-contentGenerates release information for portal page footer. -
yarn generate-metadata-completeness-fieldsGenerates metadata completeness score fields based on NDE API specifications. -
yarn generate-dataset-sitemapsGenerates sitemaps for datasets of approved sources. -
yarn build(uses.env.production) Builds the Next.js application. -
yarn testRuns the test suite -
next-sitemap(viapostbuild) Generates portal specific sitemaps
Deployment is then performed via AWS (S3 + CloudFront).
4. Tag the release
After merging the PR and deploying, create a version tag:
git checkout production
yarn release # or release:patch/minor/major
git push --follow-tagsThis updates the CHANGELOG.md and creates a semantic version tag based on commit history.