2
0
mirror of https://github.com/xcat2/xcat-core.git synced 2026-07-31 18:19:40 +00:00

fix(genesis-scripts): require genesis-base by version, not exact snap

genesis-base now ships in the per-EL xcat-dep repo while genesis-scripts ships
in the flat xcat-core. The exact "= 2:%{version}-%{release}" dependency forced
core and dep to be republished in lockstep on every core rebuild (a new snap in
core could not be installed until the exact-matching genesis-base snap was also
published to the client's dep channel -- which broke a production client).

Relax to ">= 2:%{version}": epoch 2, version >= 2.18.0, any release/snap. RPM
ignores the release when the dependency omits it, so any same-version (or newer)
genesis-base satisfies it. Routine core snaps no longer require a genesis-base
re-publish; lockstep now only matters on version bumps and the initial publish.

Signed-off-by: Daniel Hilst <392820+dhilst@users.noreply.github.com>
This commit is contained in:
Daniel Hilst
2026-06-29 21:56:22 +00:00
parent 529c821177
commit 23a5877480
@@ -32,7 +32,13 @@ Vendor: IBM Corp.
Summary: xCAT Genesis netboot image - Core content
URL: https://xcat.org/
Source1: xCAT-genesis-scripts.tar.bz2
Requires: xCAT-genesis-base-%{tarch} = 2:%{version}-%{release}
# Require any same-version (or newer) genesis-base, NOT the exact snap. genesis-base
# lives in the per-EL xcat-dep repo while this package ships in the flat xcat-core;
# pinning the exact -%{release} forced the two repos to be republished in lockstep on
# every core rebuild. >= 2:%{version} (epoch 2, version, no release) lets any 2.18.0
# genesis-base snap satisfy it, so routine core snaps no longer require a genesis-base
# re-publish. (RPM ignores release when the dependency omits it.)
Requires: xCAT-genesis-base-%{tarch} >= 2:%{version}
Buildroot: %{_localstatedir}/tmp/xCAT-genesis
Packager: IBM Corp.