This document describes how to deploy releases and snapshots specifically for Apache Ratis. For general information about Publishing Maven Artifacts at Apache, see http://www.apache.org/dev/publishing-maven-artifacts.html
It requires committer access in order to deploy releases and snapshots.
To publish, use the following settings.xml
file
(placed in ~/.m2/settings.xml
)
<settings>
<servers>
<server>
<id>apache.releases.https</id>
<username> <!-- YOUR APACHE LDAP USERNAME --> </username>
<password> <!-- YOUR APACHE LDAP PASSWORD (encrypted) --> </password>
</server>
<server>
<id>apache.snapshots.https</id>
<username> <!-- YOUR APACHE LDAP USERNAME --> </username>
<password> <!-- YOUR APACHE LDAP PASSWORD (encrypted) --> </password>
</server>
</servers>
</settings>
To use encrypted password, see http://maven.apache.org/guides/mini/guide-encryption.html
For OpenPGP setup, see http://www.apache.org/dev/openpgp.html
We use Apache Maven Deploy Plugin to deploy artifacts.
mvn deploy
(or)
mvn -s /my/path/settings.xml deploy
We also use release profile for building the release.
mvn install -Prelease -Papache-release
-
Test the artifacts locally.
- Clean, shade and compile everything.
- Run all tests.
-
Set snapshot version locally.
- Get the last commit id
<ABBREV_COMMIT_ID>
.git log --abbrev-commit --abbrev=7 --pretty=oneline | head -1
- Set the versions of local artifacts.
mvn versions:set -DnewVersion=<VERSION>-<ABBREV_COMMIT_ID>-SNAPSHOT
- Get the last commit id
-
If everything works fine, run the following command to publish artifacts to Apache repository
mvn deploy -DskipTests -DskipShade
-
Verify the snapshot artifacts published in
Finally, you may delete the pom.xml.versionsBackup
files by
find . -name pom.xml.versionsBackup | xargs rm