-
Notifications
You must be signed in to change notification settings - Fork 2.5k
Release process for v4
- Part 1: Pre release tasks
- Part 2: Release to Artifactory
- Part 3: Promote to Maven Central
- Part 3.1: Stage on Sonatype
- Part 3.2: Release to Maven Central
- Part 4: Post release tasks
- Part 5: Rolling back a release
1.1 Get latest changes from the upstream repository of the branch being released.
1.2 Check if build.gradle refers to any snapshot/milestone dependencies.
1.3 Disable the Gradle build plan in Bamboo:
2.1 Run a build of the Gradle plan in Bamboo.
2.2 Go to Artifactory build info and check artifacts:
2.3 Go to Artifactory Release & Promotion tab:
2.3.1 Fill in the form with release version and VCS configuration then hit Build and Release to Artifactory. NB: Uncheck the Use Release Branch in the previous screenshot.
2.3.2 Check uploaded jars in http://repo.spring.io/libs-staging-local/ and do a smoke test with the staged version (check the integrity of the artifacts to see if jars are not corrupted or empty, etc).
2.4 Promote the release to Artifactory:
NOTE: For "Target promotion repository" field, select:
-
libs-milestone-localfor milestones -
libs-release-localfor releases
2.5 Go to github and check if the release branch/tag are created:
2.6 Check uploaded jars in http://repo.spring.io/libs-milestone-local/ or http://repo.spring.io/libs-release-local/
Note: The process ends here for milestone releases
3.1.1 Go to Github Actions: https://github.com/spring-projects/spring-batch/actions.
3.1.2 Run the "Maven Central Staging" workflow:
Fill in the form with the build name and build number from artifactory:
3.1.3 Check the staging repository ID from the workflow logs:
This staging repository Id is needed for the next step.
3.2.1 Go to https://s01.oss.sonatype.org/ and login with springsource account.
3.2.2 In the Staging Repositories tab, select the staging repository with the ID from previous step and check its content/activity:
If everything looks good, the staging repository can be closed and released from the UI. Otherwise, it should be dropped.
NB: If an extra check should be done from this staging repository, then the repository should be closed to be able to import jars from it and test them. Otherwise the content will not be visible.
4.1 Update the current and current-SNAPSHOT symbolic links on the docs server.
4.2 Reactivate the Gradle build plan in Bamboo.
4.3 Generate release notes and create a release on Github.
4.4 Update project page on Sagan with latest release/snapshot versions.
4.5 Write release announcement blog post.
4.6 Tweet about the release using the @SpringBatch handle.
4.7 Post a message in the #spring-release slack channel.
4.8 Update build.gradle with next snapshot versions of Spring Projects.
If anything goes wrong before promoting to Maven Central:
- Delete version from Artifactory.
- Delete release branch/tag from git locally and remotely.
- Revert the version in
gradle.propertiesand push the change to the upstream repository. - Restart the release process.