This package is released to Maven Central Repository by using Maven with the central-publishing-maven-plugin.
This process has been tested with OpenJDK 17.0.17 and Maven 3.9.12.
This is released under the org.fanout group ID, which is maintained by Fastly.
This package is published to Maven Central using a User Token under a Maven Central Repository account.
Publishing requires you to prove your identity using GPG. Create a GPG keypair for the email associated with your Maven Central Repository account.
Once you have published your GPG public key, note its key name and passphrase.
You will need copy ./.mvn/settings.example.xml to ./.mvn/settings.xml, and fill in the following using the User Token credentials and your GPG keyname and passphrase. Do not commit this file to source control.
<settings>
<servers>
<server>
<id>central</id>
<!-- Note: these are for the User Token, not the Maven Central Repository login -->
<username>**USERNAME**</username>
<password>**PASSWORD**</password>
</server>
</servers>
<profiles>
<profile>
<id>central</id>
<activation>
<activeByDefault>true</activeByDefault>
</activation>
<properties>
<gpg.keyName>**KEYNAME**</gpg.keyName>
<gpg.passphrase>**PASSPHRASE**</gpg.passphrase>
</properties>
</profile>
</profiles>
</settings>The following steps should be taken on each release.
- Update docs + version
- Update
README.md/CHANGELOG.md - Bump
<version>inpom.xml - Commit (replace 1.0.0 below with the version you're releasing)
git commit -m "Release 1.0.0"
- Update
- Tag the release
- Create a tag
git tag v1.0.0
- Create a tag
- Push commit + tag
git push git push --tags
- Validate that tests pass, everything builds, sources/javadoc are valid, and GPG signing works.
mvn clean verify
- Release to Maven using the commands:
mvn clean deploy
- Complete publishing.
- Visit https://central.sonatype.com/publishing/deployments. You should see:
- Deployment ID, matching the deployment ID in the output above
- Status: Validated
- Click the Publish button.
- Visit https://central.sonatype.com/publishing/deployments. You should see: