Release Process of Providence
The stages done to make a release.
Making a SNAPSHOT release
Snapshot releases can be made directly from the master
branch.
- Run
# mvn clean deploy
from master at the desired commit.
Making a version release
Proper releases are done with a branch cut.
Check for dependency updates
Run the maven versions plugin to see what has been updated of dependencies and plugins. See if updates should be done. Usually it's better to depend on newer versions, as you may drag in older versions into other projects that misses features or has specific bugs.
mvn -Pall versions:display-dependency-updates
mvn -Pall versions:display-plugin-updates
Making the release cut.
# Do the maven release:
mvn -Pall -DskipTests=true -Darguments="-DskipTests=true -T 1C" release:prepare
mvn -Plib -DskipTests=true -Darguments="-DskipTests=true -T 1C" release:perform
mvn -Pall release:clean
git fetch origin
If the artifacts found at the Nexus Repository Manager are correct, you're ready to make the release. If not a git hard rollback is needed (to remove release version, tag and commits). First make the actual binary release:
# And upload these files to github release, then upload to bintray with:
./upload-bintray.sh
# And follow links to publish new artifacts.
Then update and release the gradle plugin. You may need to wait 20+ minutes for the maven indices to be updates with the providence release before you can do this step:
- Go to
providence-gradle-plugin
repository. - Update version in
gradle.properties
and in theREADME.md
file.
# in the providence-gradle-plugin repository:
./gradlew clean test publishPlugins
Now the release is complete.