You only need to perform these steps if this is your first time being a release manager.
brew install openjdk@11 or brew install openjdk@17mvn --versionIf your Maven (mvn --version) points to other JDK versions, you must change it to JDK 11 or 17. Steps are as follows:
/usr/libexec/java_home -V. You should see multiple JDK versions including JDK 11 and 17.whereis mvn to get the installation location of your Maven. The result is a symlink to the actual location.sudo if needed). It will be like this#!/bin/bash
JAVA_HOME="${JAVA_HOME:-$(/usr/libexec/java_home)}" exec "/usr/local/Cellar/maven/3.6.3/libexec/bin/mvn" "$@"
JAVA_HOME:-$(/usr/libexec/java_home)} to JAVA_HOME:-$(/usr/libexec/java_home -v 11)} or JAVA_HOME:-$(/usr/libexec/java_home -v 17)}. The resulting content will be like this:#!/bin/bash
JAVA_HOME="${JAVA_HOME:-$(/usr/libexec/java_home -v 11)}" exec "/usr/local/Cellar/maven/3.6.3/libexec/bin/mvn" "$@"
mvn --version again. It should now point to JDK 11 or 17.brew install gnupg gnupg2gpg --full-generate-key. If not work, run gpg --default-new-key-algo rsa4096 --gen-keyRSA, then press enter4096enter to make the key never expire.gpg --list-secret-keys --keyid-format=long command to list the long form of the GPG keys.3AA5C34371567BD2)gpg --export --armor 3AA5C34371567BD2, substituting in the GPG key ID you'd like to use.-----BEGIN PGP PUBLIC KEY BLOCK----- and ending with -----END PGP PUBLIC KEY BLOCK-----.-----BEGIN PGP PUBLIC KEY BLOCK----- and the actual key.Use SVN to append your armored PGP public key to the KEYS files
svn checkout https://dist.apache.org/repos/dist/dev/sedona/ sedona-dev --depth files svn checkout https://dist.apache.org/repos/dist/release/sedona/ sedona-release --depth files
sedona-dev/KEYS and sedona-release/KEYS.-----BEGIN PGP PUBLIC KEY BLOCK----- and the actual key.svn commit -m "Update KEYS" sedona-dev/KEYS svn commit -m "Update KEYS" sedona-release/KEYS
rm -rf sedona-dev rm -rf sedona-release
In your ~/.bashrc file, add the following content. Then restart your terminal.
GPG_TTY=$(tty) export GPG_TTY
You need to create a GitHub personal access token (classic). You can follow the instruction on GitHub.
In short:
Expiration to No expiration.repo and admin:org.Generate token.In your ~/.m2/settings.xml file, add the following content. Please create this file or .m2 folder if it does not exist.
Please replace all capitalized text with your own ID and password.
<settings>
<servers>
<server>
<id>github</id>
<username>YOUR_GITHUB_USERNAME</username>
<password>YOUR_GITHUB_TOKEN</password>
</server>
<server>
<id>apache.snapshots.https</id>
<username>YOUR_ASF_ID</username>
<password>YOUR_ASF_PASSWORD</password>
</server>
<server>
<id>apache.releases.https</id>
<username>YOUR_ASF_ID</username>
<password>YOUR_ASF_PASSWORD</password>
</server>
</servers>
<profiles>
<profile>
<id>gpg</id>
<properties>
<gpg.passphrase>YOUR_GPG_PASSPHRASE</gpg.passphrase>
</properties>
</profile>
</profiles>
<activeProfiles>
<activeProfile>gpg</activeProfile>
</activeProfiles>
</settings>