mirror of
https://github.com/xcat2/xcat-dep.git
synced 2026-09-12 12:36:23 +00:00
2b49e07c28
The forcearch riscv64 profile built grub2-xcat but not elilo-xcat, syslinux-xcat or xnba-undi, and the rocky-10-riscv64-xcat cell did not list them, so a riscv64 management node could not serve the x86 nodes of a mixed cluster, unlike a ppc64le one. Add the three to the profile and the cell, at the pins the EL10 ppc64le cell uses. They are noarch and are built in the native x86_64 chroot, like grub2-xcat. syslinux-xcat is marked noarch in the builder table, as its spec declares, so the forcearch target does not try it in the emulated chroot, where its ExclusiveArch excludes it. The target is now cross-built on x86_64 only, which the mock config states: a native riscv64 host could not build syslinux-xcat either.
195 lines
7.8 KiB
Plaintext
195 lines
7.8 KiB
Plaintext
# Per-target required xcat-dep package manifest.
|
|
#
|
|
# One [section] per mockbuild-all target (matches --target). Each entry is
|
|
# <package>=<pin>
|
|
# where <package> is the builder/package name (the dep builder name, the perl
|
|
# package name, or xCAT-genesis-base) and <pin> is one of:
|
|
# - an exact Version (e.g. 1.8.18) -- the built %{VERSION} must equal it;
|
|
# - a shell-style glob (e.g. 2.*) -- the built %{VERSION} must match it (* and ?);
|
|
# - '*' -- any version is accepted;
|
|
# - an EVR constraint (e.g. >= 2:2.18.0, >= 0.04-5, = 1.8.18) -- an operator
|
|
# (>=, >, <=, <, =) followed by an [epoch:]version[-release]. The built rpm's
|
|
# full EPOCH:VERSION-RELEASE is compared with rpm's own version algorithm
|
|
# (rpm.vercmp; epoch numeric, then version, then release; release ignored when
|
|
# the constraint omits it). Use this to enforce a minimum that a %{VERSION}
|
|
# glob cannot -- e.g. a release floor (perl-IO-Stty >= 0.04-5) or an Epoch.
|
|
# A bare version pin matches %{VERSION} only (Release carries the per-EL dist tag
|
|
# elN and the snap<timestamp>, so it is not pinned there). Bump a pin here when the
|
|
# corresponding in-tree source is bumped.
|
|
#
|
|
# xCAT-genesis-base is pinned as '>= 2:2.18.0' (an EVR floor, not an exact version):
|
|
# its Version is NOT owned by xcat-dep -- it is whatever xcat-core the genesis build
|
|
# compiles against (XCAT_CORE_REF), so it walks with the paired core (2.18.x, 2.19.x,
|
|
# ...). The floor still walks (accepts any 2.18+ genesis) but, unlike the old '2.*'
|
|
# glob, REJECTS a pre-2.18 genesis -- xCAT-genesis-scripts Requires xCAT-genesis-base
|
|
# >= 2:2.18.0 (Epoch 2), which a 2.17.x genesis would violate. genesis-base carries
|
|
# Epoch 2, so the epoch in the constraint is enforced too.
|
|
#
|
|
# The pins that xCAT states as release-sensitive Requires are EVR floors taken VERBATIM from
|
|
# xcat-core's own specs, so the gate rejects a build whose Version is right but whose Release is
|
|
# older than xCAT accepts: goconserver (xCAT.spec), xnba-undi, syslinux-xcat, ipmitool-xcat
|
|
# (xCAT.spec / xCATsn.spec), perl-HTTP-Async, perl-Net-HTTPS-NB and perl-IO-Stty
|
|
# (xCAT-server.spec). Where two specs disagree the STRONGER floor is used.
|
|
#
|
|
# grub2-xcat is deliberately NOT converted. xCAT-server.spec asks for
|
|
# '>= 2.02-0.76.el7.1.snap201905160255', but the grub2-xcat this repository builds -- and that both
|
|
# published channels ship -- is 1.0-2, which cannot satisfy it (1 < 2). Encoding that Requires here
|
|
# would fail every build on a discrepancy that lives in xcat-core, not in this manifest, so the pin
|
|
# stays on the Version actually produced and the discrepancy is reported upstream instead.
|
|
#
|
|
# mockbuild-all.pl reads this file and, per target, builds ONLY the listed
|
|
# packages -- a package not listed for a target is not built for it. Any listed
|
|
# package that fails to build (or builds a mismatched version) fails the whole
|
|
# run (no tolerated failures).
|
|
#
|
|
#
|
|
# Per-EL perl set: a perl module is required from xcat-dep only on the releases
|
|
# where neither the base OS nor EPEL provides it; on the other releases EPEL/OS
|
|
# supplies it (so `dnf install xCAT` pulls the OS/EPEL copy, not xcat-dep's).
|
|
# perl-Sys-Virt omitted on el8 -- provided by EPEL on AlmaLinux 8.
|
|
# perl-HTML-Form only on el8 -- provided by the OS/EPEL on el9/el10.
|
|
# perl-Crypt-SSLeay only on el10 -- provided by the OS/EPEL on el8/el9.
|
|
# perl-Net-Telnet only on el10 -- provided by the OS/EPEL on el8/el9.
|
|
#
|
|
# conserver-xcat is NOT pulled by `dnf install xCAT` (goconserver superseded it),
|
|
# but it is built for every target anyway because some users still deploy it.
|
|
|
|
[alma+epel-8-x86_64]
|
|
conserver-xcat=8.2.1
|
|
elilo-xcat=3.14
|
|
goconserver=>= 0.3.3-snap202011021058
|
|
grub2-xcat=1.0
|
|
ipmitool-xcat=>= 1.8.18-4
|
|
syslinux-xcat=>= 6.03-1
|
|
xnba-undi=>= 1.21.1-1
|
|
perl-HTML-Form=6.07
|
|
perl-HTTP-Async=>= 0.30-3
|
|
perl-IO-Stty=>= 0.04-5
|
|
perl-Net-HTTPS-NB=>= 0.14-3
|
|
xCAT-genesis-base=>= 2:2.18.0
|
|
|
|
[alma+epel-8-ppc64le]
|
|
conserver-xcat=8.2.1
|
|
elilo-xcat=3.14
|
|
goconserver=>= 0.3.3-snap202011021058
|
|
grub2-xcat=1.0
|
|
ipmitool-xcat=>= 1.8.18-4
|
|
syslinux-xcat=>= 6.03-1
|
|
xnba-undi=>= 1.21.1-1
|
|
perl-HTML-Form=6.07
|
|
perl-HTTP-Async=>= 0.30-3
|
|
perl-IO-Stty=>= 0.04-5
|
|
perl-Net-HTTPS-NB=>= 0.14-3
|
|
xCAT-genesis-base=>= 2:2.18.0
|
|
|
|
[alma+epel-9-x86_64]
|
|
conserver-xcat=8.2.1
|
|
elilo-xcat=3.14
|
|
goconserver=>= 0.3.3-snap202011021058
|
|
grub2-xcat=1.0
|
|
ipmitool-xcat=>= 1.8.18-4
|
|
syslinux-xcat=>= 6.03-1
|
|
xnba-undi=>= 1.21.1-1
|
|
perl-HTTP-Async=>= 0.30-3
|
|
perl-IO-Stty=>= 0.04-5
|
|
perl-Net-HTTPS-NB=>= 0.14-3
|
|
perl-Sys-Virt=11.10.0
|
|
xCAT-genesis-base=>= 2:2.18.0
|
|
|
|
[alma+epel-9-ppc64le]
|
|
conserver-xcat=8.2.1
|
|
elilo-xcat=3.14
|
|
goconserver=>= 0.3.3-snap202011021058
|
|
grub2-xcat=1.0
|
|
ipmitool-xcat=>= 1.8.18-4
|
|
syslinux-xcat=>= 6.03-1
|
|
xnba-undi=>= 1.21.1-1
|
|
perl-HTTP-Async=>= 0.30-3
|
|
perl-IO-Stty=>= 0.04-5
|
|
perl-Net-HTTPS-NB=>= 0.14-3
|
|
perl-Sys-Virt=11.10.0
|
|
xCAT-genesis-base=>= 2:2.18.0
|
|
|
|
[alma+epel-10-x86_64]
|
|
conserver-xcat=8.2.1
|
|
elilo-xcat=3.14
|
|
goconserver=>= 0.3.3-snap202011021058
|
|
grub2-xcat=1.0
|
|
ipmitool-xcat=>= 1.8.18-4
|
|
syslinux-xcat=>= 6.03-1
|
|
xnba-undi=>= 1.21.1-1
|
|
perl-Crypt-SSLeay=0.72
|
|
perl-HTTP-Async=>= 0.30-3
|
|
perl-IO-Stty=>= 0.04-5
|
|
perl-Net-HTTPS-NB=>= 0.14-3
|
|
perl-Net-Telnet=3.04
|
|
perl-Sys-Virt=11.10.0
|
|
xCAT-genesis-base=>= 2:2.18.0
|
|
|
|
[alma+epel-10-ppc64le]
|
|
conserver-xcat=8.2.1
|
|
elilo-xcat=3.14
|
|
goconserver=>= 0.3.3-snap202011021058
|
|
grub2-xcat=1.0
|
|
ipmitool-xcat=>= 1.8.18-4
|
|
syslinux-xcat=>= 6.03-1
|
|
xnba-undi=>= 1.21.1-1
|
|
perl-Crypt-SSLeay=0.72
|
|
perl-HTTP-Async=>= 0.30-3
|
|
perl-IO-Stty=>= 0.04-5
|
|
perl-Net-HTTPS-NB=>= 0.14-3
|
|
perl-Net-Telnet=3.04
|
|
perl-Sys-Virt=11.10.0
|
|
xCAT-genesis-base=>= 2:2.18.0
|
|
|
|
# rocky-10-riscv64-xcat is the forcearch (cross-built) EL10 riscv64 target. It differs from the
|
|
# EPEL-fed EL10 sections above in one way (see BUILD.md, "riscv64"): riscv64 has no EPEL, so the
|
|
# perl deps EL10 otherwise takes from EPEL are built here too (perl-Crypt-Blowfish ...
|
|
# perl-Path-Class below). perl-Path-Class is a build dep of perl-Crypt-SSLeay only. The x86 boot
|
|
# loaders (elilo-xcat, syslinux-xcat, xnba-undi) are noarch and are listed like on ppc64le: a
|
|
# riscv64 management node serves the x86 nodes of a mixed cluster.
|
|
# The per-EL perl set is the EL10 one, so perl-HTML-Form is absent here as well.
|
|
# xCAT-genesis-base is deliberately not listed: the riscv64 repo is built with --skip-genesis.
|
|
[rocky-10-riscv64-xcat]
|
|
conserver-xcat=8.2.1
|
|
elilo-xcat=3.14
|
|
goconserver=>= 0.3.3-snap202011021058
|
|
grub2-xcat=1.0
|
|
ipmitool-xcat=>= 1.8.18-4
|
|
syslinux-xcat=>= 6.03-1
|
|
xnba-undi=>= 1.21.1-1
|
|
perl-Crypt-SSLeay=0.72
|
|
perl-HTTP-Async=>= 0.30-3
|
|
perl-IO-Stty=>= 0.04-5
|
|
perl-Net-HTTPS-NB=>= 0.14-3
|
|
perl-Net-Telnet=3.04
|
|
perl-Sys-Virt=11.10.0
|
|
perl-Crypt-Blowfish=2.14
|
|
perl-Crypt-CBC=2.33
|
|
perl-Crypt-Rijndael=1.13
|
|
perl-Digest-SHA1=2.13
|
|
perl-Expect=1.35
|
|
perl-Mail-Sender=0.903
|
|
perl-Net-DNS=0.80
|
|
perl-Net-IP=1.26
|
|
perl-Path-Class=0.37
|
|
|
|
# [common] is NOT a build target. It describes the SHARED repository the OpenEmbedded Genesis
|
|
# release is published into (<repo-dep>/common), which lives beside the per-EL cells and is
|
|
# therefore invisible to every [<target>] section above. Without it nothing asserted the published
|
|
# shared repo was COMPLETE: its packages were checked only as they were copied, against the release
|
|
# checksums, so a repository that lost one afterwards would publish quietly.
|
|
#
|
|
# The floor tracks the paired xcat-core, like xCAT-genesis-base: these are built FROM xcat-core, so
|
|
# the version walks with it (2.18.x, 2.19.x, ...). Epoch 0 -- unlike genesis-base, these packages
|
|
# carry no Epoch. Listing every architecture is the point: the release is only useful if a
|
|
# management node can serve an image for any of them.
|
|
[common]
|
|
xCAT-genesis-openembedded-x86=>= 2.18.0
|
|
xCAT-genesis-openembedded-x86_64=>= 2.18.0
|
|
xCAT-genesis-openembedded-ppc64=>= 2.18.0
|
|
xCAT-genesis-openembedded-ppc64le=>= 2.18.0
|
|
xCAT-genesis-openembedded-armv7hf=>= 2.18.0
|
|
xCAT-genesis-openembedded-aarch64=>= 2.18.0
|
|
xCAT-genesis-openembedded-riscv64=>= 2.18.0
|