Releases are published to Maven Central via OSS Repository Hosting
The credentials needed for signing and uploading should be stored in your gradle.properties file in your home directory. The content would look like this:
signing.keyId=YourKey
signing.password=YourKeyPassword
signing.secretKeyRingFile=/path/to/your/key.gpg
ossrhUsername=yourOssrhUsername
ossrhPassword=yourOssrhPassword
If you don't have a public/private key, see the gradle signing documentation for instructions.
If you don't have a OSSRH account, then sign up for one.
git checkout master
git pull
- Change the
version
variable in the rootbuild.gradle
file. Populace uses semantic versioning. - Search for the old version number and replace with new version. This will normally only be found in documentation.
- Check in and push changes.
git checkout master
git pull
git checkout -b release/<new version number>
e.g.git checkout -b release/1.2
git push origin release/<new version number>
Couldn't be easier. Just run:
gradlew uploadArchives
This will build the archives and upload them to the staging area of Sonatype OSS. They then need to be released.
Follow these Sonatype OSS release instructions
Create a release on Github. The release description should include details of all issues resolved, any breaking changes and anything else relevant to the release.
Aside from the javadocs jar released to maven central, the javadocs for the released version should also be made available on the projects website i.e. http://datalorax.github.io/populace. This is currently a manual process.
- Switch to the release branch:
git checkout release/<release-number>
- Build the javadocs:
gradlew clean javadoc
- Copy the contents of
/populace/populace-core/build/docs/javadoc
and/populace/populace-module-jaxb-annotations/build/docs/javadoc
somewhere outside the repository - Switch to the gh-pages branch
git checkout gh-pages
- Copy the contents of the core module's javadoc directory into
javadocs/v<release-number>/populace-core
- Copy the contents of the jaxb module's javadoc directory into
javadocs/v<release-number>/populace-module-jaxb-annotations
- Update the downloads section of
/javadocs/index/html
to include buttons for the new core and jaxb versions. - Add, commit and push your changes.