🔢 Mojo Release Versioning

Mojo Release Versioning Guide

Overview

Mojo and all its components follow semantic versioning (MAJOR.MINOR.PATCH). This guide explains how versioning works in the Mojo platform and how to manage component versions.

Key Points:

  • All components within the same major version remain backwards compatible

  • Major version upgrades require careful migration (documentation provided)

  • Component versions can be locked to specific releases or allowed to auto-update

Current Component Versions

The table below shows the latest release version for each Mojo component and their available tags.

Component Location Latest Release Available Tags
Coordinator /mojo/coordinator 3.1.0 3, 3.1, 3.1.0
UI /mojo/yoda-gui 2.1.0 2, 2.1, 2.1.0
Database /mojo/postgres 16.3 16.3
Cache /mojo/redis 7.2.4 7.2.4
Consoler /mojo/consoler 1.0.3 1, 1.0, 1.0.3
Proxy /mojo/tor/traefik 2.11.0 2.11.0
Static Server /mojo/tor/nginx 1.25.3 1.25.3
DHCP /mojo/tor/dhcpd 1.0.1 1, 1.0, 1.0.1
Grub Builder /mojo/tor/grub-builder 1.0.1 1, 1.0, 1.0.1
iPXE Builder* /mojo/tor/ipxe-builder c1834f-1.0.1 c1834f-1, c1834f-1.0, c1834f-1.0.1
PXE Helper /mojo/tor/pxe-helper 1.0.4 1, 1.0, 1.0.4
TFTP /mojo/tor/tftpd 1.0.1 1, 1.0, 1.0.1
Samba** /mojo/tor/samba 1.0.1 1, 1.0, 1.0.1

* iPXE Builder includes multiple iPXE versions for backwards compatibility (see Special Components section)

** Samba is only included in the enterprise distribution

Managing Component Versions

Where Versions Are Configured

Component versions are defined in your Mojo configuration file at configs/mojo.env. Here’s an example of the version configuration:


***Core components***
CONTAINER_COORDINATOR_IMAGE="download.metify.io/mojo/coordinator:3.1"
CONTAINER_COORDINATOR_GUI_IMAGE="download.metify.io/mojo/yoda-gui:2.1"
CONTAINER_COORDINATOR_DB_IMAGE="download.metify.io/mojo/postgres:16.3"
CONTAINER_COORDINATOR_REDIS_IMAGE="download.metify.io/mojo/redis:7.2.4"
CONTAINER_COORDINATOR_MOCK_IMAGE="download.metify.io/mojo/redfish-mock:latest"
CONTAINER_COORDINATOR_CONSOLER_IMAGE="download.metify.io/mojo/consoler:1.0"

**TOR components**
CONTAINER_TOR_GRUB_BUILDER_IMAGE="download.metify.io/mojo/tor/grub-builder:1.0"
CONTAINER_TOR_IPXE_BUILDER_IMAGE="download.metify.io/mojo/tor/ipxe-builder:c1834f-1.0"
CONTAINER_TOR_PROXY_IMAGE="download.metify.io/mojo/tor/traefik:2.11.0"
CONTAINER_TOR_STATIC_SERVER_IMAGE="download.metify.io/mojo/tor/nginx:1.25.3"
CONTAINER_TOR_DHCP_IMAGE="download.metify.io/mojo/tor/dhcpd:1.0"
CONTAINER_TOR_TFTPD_IMAGE="download.metify.io/mojo/tor/tftpd:1.0"
CONTAINER_TOR_PXE_HELPER_IMAGE="download.metify.io/mojo/tor/pxe-helper:1.0"

How Version Tags Work

Mojo uses Docker image tags to manage component versions. When a new version is released, multiple tags are updated:

  1. Specific version tag (e.g., 3.1.4): Points to the exact version

  2. Minor version tag (e.g., 3.1): Updated to point to the latest patch in that minor version

  3. Major version tag (e.g., 3): Updated to point to the latest minor and patch in that major version

Controlling Update Behavior

You can control how components update by choosing which tag format to use:

Tag Format Example Update Behavior
Major version only coordinator:3 Receives all minor and patch updates within major version 3
Minor version coordinator:3.1 Receives only patch updates within 3.1.x
Specific version coordinator:3.1.4 Never updates automatically

Updating Components

Run sudo ./mojo-launcher --update to update all components according to their tag specifications.

Version Compatibility

Platform Versions vs. Component Versions

The Mojo Platform is a collection of components that work together. Your platform version is determined by the Mojo Installer version used for installation.

To check your platform version:

  • Look for the MOJO_INSTALLER_VERSION file in your installation directory

Note for Enterprise Customers: The hardware appliance handles all platform version upgrades automatically.

Compatible Component Versions by Platform Release

When updating components, ensure you use compatible versions from the same platform release. The table below shows component versions for each platform release.

* indicates a change from the previous release

Component v2.5 (Apr 2025) v2.1.x (Sep 2024) v2.0.x (Jul 2024) v1.x.x (Mar 2024)
Coordinator 3.4.15 3.1* 3.0* 2*
UI 2.1.23 2.1* 2.0* 1
Database 16.3 16.3 16.3* 15.6*
Proxy 2.11.0 2.11.0 2.11.0 2.11.0*
Cache 7.2.4 7.2.4 7.2.4 7.2.4
Static Server 1.25.3 1.25.3 1.25.3 1.25.3
Consoler 1.0 1 1 1
DHCP 1.0 1 1 1
Grub Builder 1.0 1 1 1
iPXE Builder 1.0 1 1 1
PXE Helper 1.0 1 1 1
Samba 1.0 1 1 1
TFTP 1.0 1 1 1

Special Components

iPXE Builder

The iPXE Builder component is built with multiple iPXE versions for backwards compatibility with legacy systems. It uses the format [ipxe-hash]-[version] for its tags.

Available iPXE hashes:

  • c1834f (default)

  • f22879

  • e09e11

If you need newer iPXE features, contact Metify support to request additional hash support.

Samba

The Samba component is only included in the enterprise distribution of the Mojo Platform.