Skip to content

RHEL onedir install of "3008.0" fails when only RC/pre-release packages are available — exact version pinning mismatch #2113

@jeff350

Description

@jeff350

Description

Installing Salt via bootstrap-salt.sh using the onedir method on RHEL-based distributions fails when only RC/pre-release packages exist in the repo. The same install succeeds on Debian/Ubuntu.

Command: bootstrap-salt.sh -XUdfPD -x python3 onedir 3008.0

On RHEL, install_centos_onedir() pins the exact version to the package spec (e.g. yum install salt-minion-3008.0). When the repo only has the RC version 3008.0~rc4-0, yum finds no match because RPM treats 3008.0 and 3008.0~rc4 as different versions.

On Debian/Ubuntu, install_debian_onedir() and install_ubuntu_onedir() install packages by name only (apt-get install salt-minion) without pinning a version, so they install whatever the repo provides — including RC packages.

Error Output (AlmaLinux 9)

Available Packages
salt-minion.x86_64               3008.0~rc4-0               salt-repo-3008.0-lts
No match for argument: salt-minion-3008.0
Error: Unable to find a match: salt-minion-3008.0
 * ERROR: Failed to run install_almalinux_onedir()!!!

Root Cause

In install_centos_onedir(), the version string is constructed as:

MINOR_VER_STRG="-$ONEDIR_REV_DOT"   # produces "-3008.0"

This becomes yum install salt-minion-3008.0, which requires an exact RPM version match. The available version 3008.0~rc4-0 does not match.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions