Artifacts are signed and published to Maven Central. You can see the latest version at the maven central website https://search.maven.org/search?q=g:org.datatransferproject.
The publication process is mostly automated through Gradle plugins as documented below.
We don't have strict rules on versioning just yet, but we are trying to stick to Semantic Versioning. Until the moment we have a clear guidance on versioning, please discuss future releases in the #maintainers chat.
First you must set the necessary properties in gradle.properties. These are:
projectVersion
- this is the new version you wish to publish.ossrhUsername
&ossrhPassword
- These are your Sonatype Jira credentials. Your account must have been granted publishing permissions. These are managed from a JIRA ticket.signing.keyId
- The GPG key being used for signing the artifacts. (More information about setting up GPG keys can be found here)signing.password
- The password for that GPG private key.signing.secretKeyRingFile
- The path to the file containing the GPG private key.
Make sure that the artifacts are building and running correctly. For example run the worker in the Docker container, see Running Locally for instructions.
To sign and publish the artifacts run the following Gradle command:
./gradlew sign uploadArchives --exclude-task :client-rest:uploadArchives
We exclude the client-rest archives as these are not a Java package.
You can then release the deployment to the Central Repository following the steps on the Sonatype website here. We are on the legacy host so make sure to use https://oss.sonatype.org/. Only attempt to Close the staging repository once the upload has finished.
- Go to /releases;
- Click 'Draft a new release';
- Fill in the title and create a tag (the tag must have a
v
prefix, the title mustn't); - Click 'Generate release notes';
- Publish release.
Go to properties.gradle
and update the version, create a PR.