-
Notifications
You must be signed in to change notification settings - Fork 1.1k
Micronaut Framework Release Checklist
Sergio del Amo edited this page Nov 21, 2024
·
5 revisions
- Guides @autodone(true)
- Verify Github Action Test SNAPSHOT passed @autodone(true) https://github.com/micronaut-projects/micronaut-guides/actions/workflows/snapshot.yml
- Modules Alignment
- To support Kotlin and Maven, every module that ships an annotation processor should be released with the same version of the core in the framework release.
- GitHub Project @autodone(true)
- Create a new patch Project Board.
- Ensure the new GitHub Project is public.
- Review Project Board. Reschedule unfinished issues to the next project board. https://github.com/orgs/micronaut-projects/projects
- Platform
- Merge up any prior branch if applicable in micronaut-platform
- Run
bom-versions
script to make sure platform is up-to-date https://github.com/micronaut-projects/scripts/tree/main/bom-versions For example, assuming you have in your computer the foldergithub/micronaut-projects/micronaut-platform
in the branch of the release andgithub/micronaut-projects/scripts
.And the scripts tells you if there are any necessary module upgrades.cd github/micronaut-projects/scripts/bom-versions % export GITHUB_TOKEN=XXX % java -jar build/libs/bom-versions-0.1-all.jar -p
- Wait until the build passes and it publishes the snapshot
- Starter @autodone(true)
- Merge-up any prior branch
- Ensure
micronaut-starter
branch is publishing snapshots correct. Github actions should use the correct branch name. https://github.com/micronaut-projects/micronaut-starter/pull/1259 - Ensure a micronaut-starter has a branch testing the version to be released. https://github.com/micronaut-projects/micronaut-starter/
- Run
./test-lambda.sh
- Run
./test-lambda-graalvm.sh
- Run
./test-lambda-maven.sh
Prerequisites AWS Account AWS CLI https://aws.amazon.com/cli/ AWS CDK https://aws.amazon.com/cdk/ - Merge up any prior branch if applicable in micronaut-starter https://github.com/micronaut-projects/micronaut-starter
- Trigger a build of micronaut-starter using the core version in platform ensure the latest changes are compatible
- Wait for the starter build to pass.
- Marketing @autodone(true)
- Create a blog post. Share the blog post with the core development team via discussions https://github.com/orgs/micronaut-projects/teams/core-developers
- Release @autodone(true)
- Platform @autodone(true)
- Verify Github Status is Operational https://www.githubstatus.com
- Verify Sonatype is Operational https://status.maven.org
- Verify Gradle Status https://status.gradle.com/
- Trigger the release of micronaut-platform @autodone(true)
https://github.com/micronaut-projects/micronaut-core/releases
- Set the correct tag. Release Tags start with
v
and follow the semantic version. - Select the branch you want to release. For example, If you want to release 3.4.0, select the 3.4.x branch.
- Set the correct tag. Release Tags start with
- Wait for the release to be available in maven central https://repo1.maven.org/maven2/io/micronaut/micronaut-bom/
- Merge up the branch you released into the next minor
- Starter @autodone(true)
- Update
micronautVersion
andmicronautCoreVersion
ingradle.properties
of starter to the release version and push - Wait for the build to pass
- Verify Github Status is Operational https://www.githubstatus.com
- Verify Sonatype is Operational https://status.maven.org
- Verify Gradle Status https://status.gradle.com/
- Trigger the release of micronaut-starter https://github.com/micronaut-projects/micronaut-starter/releases)
- Set the correct tag. Release Tags start with
v
and follow the semantic version. - Select the branch you want to release. For example, If you're going to release
3.4.0
, select the3.4.x
branch.
- Wait for the Release Github Action to pass. https://github.com/micronaut-projects/micronaut-starter/actions/workflows/release.yml
- Merge up the branch you released into the next minor
- Update
- Micronaut Docs
- Add a release to Micronaut Docs Index Example PR: https://github.com/micronaut-projects/micronaut-docs-index/pull/115
- Post Release checklist @autodone(true)
- Verify https://micronaut.io/docs/ shows the latest release.
- Verify the new version appears in SDKMan
sdk list micronaut
. - Clear website cache https://micronaut.io/wp-admin/
- Verify downloads page shows latest version https://micronaut.io/download/
- Verify Launch shows the released version and the next snapshot as options. https://launch.micronaut.io
- Generate an application in Micronaut Launch, unzip it and check build.gradle is not corrupt https://launch.micronaut.io
- Verify the new version is listed at chocolatey https://community.chocolatey.org/packages/micronaut It takes some time.
- Post Release Announcement @autodone(true)
- Publish blog post
- Generate an image for the release using the Pixelmator file and Shortcuts.
- Compose Social Media Message
The Micronaut Foundation is excited to announce the release of Micronaut framework RELEASE_NUMBER Please see our latest blog post for more details. URL_TO_THE_BLOG_POST #micronaut
- Publish Tweet
- Publish to Mastodon
- Announce in the Discord
announcements
room - Announce to LinkedIn
- Announce it to Bsky https://bsky.app/profile/micronautfw.bsky.social
- Announce it in the Micronaut Youtube Community Tab https://www.youtube.com/@MicronautFramework/community
- Platform @autodone(true)
- Guides @autodone(true)
- Create a new PR in micronaut-guides to use released version by updating version.txt. https://github.com/micronaut-projects/micronaut-guides https://github.com/micronaut-projects/micronaut-guides/blob/master/version.txt
- Merge PR, updating every guide to the latest version once the Guides Finish building.
- TechEmpower Benchmarks @autodone(true)
- Update Micronaut Framework version in TechEmpower Benchmarks repository https://github.com/TechEmpower/FrameworkBenchmarks/pull/8778#pullrequestreview-2039293739
- Archive Github Release Project https://github.com/orgs/micronaut-projects/projects/