2
0
mirror of https://github.com/xcat2/xcat-dep.git synced 2026-09-09 22:46:44 +00:00
Files
xcat-dep/grub2-xcat
Daniel Hilst c4c9492e57 fix(xcat-dep): merge master after the riscv64 and Ubuntu builds landed
Master gained the EL10 riscv64 forcearch target (PR #66) and the Perl Ubuntu
build (PR #63). Both touch the files this branch rewrites, so the merge is
resolved per file:

mockbuild-all.pl, mockbuild-perl-packages.pl keep the forcearch target profile,
the noarch chroot and --epel-gap from master, and this branch's manifest gate,
atomic per-cell deploy and per-package chroot scrub. assert_required_deps is
dropped: verify_target_repo replaced it. The post-join bootstrap scrub now reads
the uniqueext and the config recorded when the chroot was made, because the wave
loop of master no longer numbers packages in @packages order.

packages-manifest.conf gains a [rocky-10-riscv64-xcat] section. A target with no
section is fatal, so without it the riscv64 target cannot run.

goconserver/mockbuild.pl builds in the mock chroot for the host arch and cross-
compiles on the host for a foreign --target-arch. A forcearch chroot would run
the Go toolchain under qemu. Both paths overlay the pinned go.mod/go.sum and
ship server.conf as YAML.

The host-install smoke stays removed (it corrupts the build host rpm database).
The checks that do not install on the host are kept: the chroot install of a
cross-built ipmitool-xcat and XS perl module, and the binfmt run of the cross-
built goconserver binaries.

goconserver/gomod/ takes the pin of master, whose `go` directive is the lower of
the two, so both the EL10 chroot and the Ubuntu sbuild toolchain accept it.

t/genesis_openembedded_consumer.t: the skip count of the RPM block is 64, the
number of tests it runs. Both sides carried a stale number.

Signed-off-by: Daniel Hilst <392820+dhilst@users.noreply.github.com>
2026-09-02 09:39:55 -03:00
..
2014-11-06 00:01:14 -08:00

#build steps:
1. 
#cp ./grub2-res.tar.gz /root/rpmbuild/SOURCES/
2.
rpmbuild -bb ./grub2-xcat.spec


#notes:
1.the grub2-res.tar.gz is generated by:
run the following cmd on a RHEL7-PPC64 node:
#grub2-mknetdir  --net-directory=/tftpboot/
#cd /tftpboot/boot/grub2/
#tar -czvf /tmp/grub2-res.tar.gz ./powerpc-ieee1275/




2.Please update the %version or %release when any modification is made for the files 


#riscv64:
riscv64 nodes boot through UEFI firmware and grub2 only. The file
grubriscv64.efi (Source2) is the unmodified grub2 UEFI image from the
Rocky Linux 10 riscv64 BaseOS tree (the copy used for installation media
and network boot, embedded prefix /EFI/BOOT):

  path:       BaseOS/riscv64/os/EFI/BOOT/grubriscv64.efi (Rocky Linux 10.2)
  built from: grub2-2.12-46.el10_2.rocky.0.1.src.rpm (GPL-3.0-or-later),
              the same build as grub2-efi-riscv64-2.12-46.el10_2.rocky.0.1
  sha256:     40baf4e65d20f73e6a5ec4f882d8a50450eaaf8b6688acf871824824ef0bad54

It is installed as /tftpboot/boot/grub2/riscv64-efi/grubriscv64.efi and
copied to /tftpboot/boot/grub2/grub2.riscv64 by the package scripts, which
is the boot file xCAT hands to DHCP client architecture 27 (0x001b). To
refresh it, take EFI/BOOT/grubriscv64.efi from the BaseOS tree of the EL10
release you target and record the release, source rpm and sha256 here.