Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

  1. ignite3-cli — Ignite 3 CLI tool. Used if one wants to manage a remote cluster.
  2. ignite3-db — Ignite 3 core artifacts. Used if one wants to start nodes locally.
  3. ignite3 —  meta package that includes both ignite3-cli and ignite3-db.
  4. ignite3-odbc — package with ignite-odbc libs. 
  5. ignite3-native-libs — 
  6. ignite3-jdbc  — jdbc package 


Every package will be available as a downloadable ZIP file, and as OS-specific packages (RPM, DEB, Brew …).

...

This is a meta package that includes everything listed for the other two packages.

ignite3-odbc

TBD.Currently IEP for odbc not ready.

ignite3-native-libs

TBD.

Open API spec

TBD


Publishing

The issue of publishing assembled packages should be highlighted in a separate paragraph.

...

Zip archive

The file includes:

  1. All ignite artifacts and executables for Linux and Windows and MacOS
  2. LICENSE and NOTICE files per Apache requirements

...

  1. Download the zip file
  2. Cd into the folder with previous version
  3. Run upgrade executable and provide the zip file as an argument

Also standard approach where we have /opt/ignite folder with ignite versions and /opt/ignite/latest as symlink to current used versions. Upgrading will require downloading archive, unzipping it to /opt/ignite/<version>, making new symlink to /opt/ignite/latest

Upgrade process should not remove data files.

...

  1. Run rpm -U <package> / dpkg -i <package>


NOTE:: upgrade  upgrade process should not remove data files.

...

Uninstallation:

  1. Run brew uninstall <package>ignite3


Upgrade:

  1. Run brew upgrade <package>ignite3

SDKMan

SDKman is a multiplatform package manager with supported platforms: 

...

A lot of product publishing in SDKMan java, kotlin, scala, maven, gradle, sbt, Scala CLI, Quarkus CLI, Apache ActiveMQ, Flink, Spark, etc.


InstallInstallation:

    sdk install ignite3 ${version}

UninstallUninstallation:

    sdk uninstall ignite3 ${version} 

...

    sdk upgrade ignite3

List:

    sdk list ignite ignite3-db (or ignite3-cli)


Publishing process is described here and it's not much different from other package managers.

...

As you can see https://github.com/jreleaser/jreleaser can help us with publishing setup infrastructure and cover mostly all cases except WinGet. This is a good reason to try to use it as the only required dependency to unify how different packages are built.

...