Make the ICU4J release easier (more predictable / consistent, less dependent on human actions)

Description

With the move to maven we are now able to publish to Maven Central using the same mechanism we use for day to day building and testing of ICU4J.

We already have a GitHub workflow to publish shared libraries (cldr / icu) to the GitHub maven repo.

We can do something similar for Maven Central (it is a bit trickier because we need authentication and gpg keys to sign the artifacts).

Ideas:

  • create a Nexus account (the Maven Central admin) for “ICU” (non personal) that can be used to publish automatically

  • create a non-personal gpg key (if we don’t already have on

  • create a workflow that builds and publishes to Maven Central.
    Needs proper secrets management (auth and gpg)

Activity

Show:

Markus Scherer 
February 15, 2024 at 5:16 PM

sounds great!

Mihai Nita 
December 14, 2023 at 4:45 PM

More:

  • have the above workflow also create downloadable artifacts

  • script to download said artifacts, add checksums (md5) and add them to the GitHub release (if not possible from workflow)
    Managing artifacts can be done with the GitHub CLI tool (gh)
    The goal is that the .jar files from Maven Central and GitHub release are the same (name, and content byte-to-byte identical)

  • consider Maven Reproducible Builds

Fixed

Details

Assignee

Reporter

Components

Labels

Priority

Fix versions

Created December 14, 2023 at 4:41 PM
Updated October 21, 2024 at 9:45 PM
Resolved October 21, 2024 at 9:45 PM