Skip to content

Release process for v4

Mahmoud Ben Hassine edited this page Dec 12, 2023 · 4 revisions

Overview of the release process:

  • Part 1: Pre release tasks
  • Part 2: Stage release on Artifactory
  • Part 3: Promote release to Maven Central
  • Part 4: Post release tasks

Part 1: Pre release tasks

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 Update version in gradle.properties: version=4.3.11-SNAPSHOT -> version=4.3.11

1.4 Run a full build with ./gradlew clean build install -Palltests

1.5 Commit and push to the upstream branch 4.3.x with a message like Release version 4.3.11.

Part 2: Stage release on Artifactory

2.1 Go to Github Actions: https://github.com/spring-projects/spring-batch/actions.

2.2 Run the "Artifactory Staging" workflow from the 4.3.x branch ❗.

2.3 Check uploaded jars in http://repo.spring.io/libs-staging-local/

2.4 Do a smoke test with the staged jars

Part 3: Promote release to Maven Central

3.1 Go to Github Actions: https://github.com/spring-projects/spring-batch/actions.

3.2 Run the "Maven Central Release" workflow from the 4.3.x branch ❗ and provide the version to release

Part 4: Post release tasks

4.1 Tag the release with git tag -a 4.3.11 -m "Release version 4.3.11".

4.2 Push the tag to the upstream repository with git push upstream 4.3.11.

4.3 Update next development version in gradle.properties: version=4.3.11 -> version=4.3.12-SNAPSHOT

4.4 Commit with message Next development version and push to the upstream branch 4.3.x.

4.5 Generate release notes and create a release on Github.

4.6 Update project page on Sagan with latest release/snapshot versions.

4.7 Write release announcement blog post.

4.8 Tweet about the release using the @SpringBatch handle.

4.9 Post a message in the #spring-release slack channel.

4.10 Update build.gradle with next snapshot versions of Spring Projects.