NOTE: this process requires you to have a git remote named upstream
pointing to the main repo (https://github.com/spotify/mobius).
You also need to have a GPG key set up locally and made available to the Gradle
signing plugin as per https://docs.gradle.org/current/userguide/signing_plugin.html#sec:signatory_credentials,
and to configure Nexus server credentials in ~/.gradle/gradle.properties?
as per
https://github.com/Codearte/gradle-nexus-staging-plugin#server-credentials.
- Checkout latest master
- Make sure you are on a clean master and everything is pushed to upstream.
- Run
./gradlew clean test
and make sure everything passes. - Run
./gradlew release -PSONATYPE_NEXUS_USERNAME=<user> -PSONATYPE_NEXUS_PASSWORD=<password>
and follow the instructions. - Enter the release version when prompted or press Enter for default (Please double check the version if you do so).
- Enter the next development version when prompted or press Enter for default (Please double check the version if you do so).
- When the build has successfully completed, run
./gradlew closeAndReleaseRepo
. If this times out or fails some other way, log in manually to https://oss.sonatype.org/ and either complete the release through closing and releasing the staging repository, or by cleaning up and rerunning. - Add a description of the new release at https://github.com/spotify/mobius/releases.
- Once the new set of artifacts is available on https://repo.maven.apache.org/maven2/com/spotify/mobius/, update the
baselineVersion
property in binary_compatibility.gradle to the version that was just released.