Skip to content

Release

Nikolai Amelichev edited this page Jun 23, 2025 · 8 revisions

Semi-Automatic Release Process

  1. Ensure you are in the repository root, on the main Git branch, and there are no pending changes:

    cd <project directory>
    git status
    git pull --rebase
  2. Run the Prepare Release script:

    YOJ_VERSION=<release version> ./prepare-release.sh

    (If you have custom path to Maven 3.x, prepend MVN=<path/to/maven> to the command.)

    The script will ensure that new version builds by running mvn clean verify after updating the version to ${YOJ_VERSION} you specified.

    If the script finishes successfully, it will create the v<release version> tag.

  3. GitHub Actions will start building release artifacts for the new tag.

    Wait for "Release YOJ" GitHub action to finish successfully (this takes several minutes).

    The new version will be published to Maven Central automatically.

  4. Check Maven Central (e.g. https://central.sonatype.com/artifact/tech.ydb.yoj/yoj-repository-ydb-v2/versions) in 30m-1h for the new version to appear.

  5. In the meanwhile, you should run the Prepare Snapshot script to prepare for development of the next version:

    cd <project directory>
    YOJ_VERSION=<release version with last component incremented by 1>-SNAPSHOT ./prepare-release.sh

    (If you have custom path to Maven 3.x, prepend MVN=<path/to/maven> to the command.)

Clone this wiki locally