mirror of
https://github.com/xcat2/xcat-core.git
synced 2026-09-21 16:39:30 +00:00
2b150830c9
genimage stops with "Failed to find usr/bin/dig in /install/netboot/ubuntu24.04.4/ppc64el/compute/rootimg" and returns 2, so packimage writes no initrd.gz and nodeset reports "Did you run genimage before running packimg?". The diskless compute node never boots. xCAT-server/share/xcat/netboot/ubuntu ships a package list for ppc64el on 20.04 and on 26.04 only. imgutils::get_profile_def_filename finds no ppc64el list for 22.04 or 24.04 and falls back to compute.pkglist, which installs no dig. mkinitrd copies usr/bin/dig into the initrd and find_rootimg_file calls xdie when the file is absent. The test reads the four ppc64el package lists the pipeline provisions and asserts each one installs dig, a kernel and nfs-common. It fails on 22.04 and 24.04 and passes on 20.04 and 26.04. Evidence: reg_linux_diskless_installation_flat on ubuntu-24-ppc64le-devel in xcat-core-devel-ubuntu-cd build 120, xcattest.log.20260911175800 on xcat25-mn. Signed-off-by: Daniel Hilst <392820+dhilst@users.noreply.github.com>
xCAT-test
Unit tests that run from the source checkout are split by implementation language:
| Test type | Location | Runner |
|---|---|---|
| Perl unit tests | xCAT-test/unit/*.t |
prove -r xCAT-test/unit |
| Shell unit tests | xCAT-test/bats/*.bats |
bats -r xCAT-test/bats |
| CLI functional tests | xCAT-test/autotest/testcase/ and xCAT-test/autotest/bundle/ |
xcattest -f <cluster.conf> -t <case> or xcattest -f <cluster.conf> -b <bundle> |
Use Perl .t tests for Perl modules, Perl scripts, templates, and repository
artifacts. Use BATS tests for shell-script behavior that can be exercised from
the checkout by sourcing a shell library or script and shadowing external
commands.
Shell behavior should not be tested by Perl tests that grep shell source. Put
those tests under xCAT-test/bats instead.
See unit/README.md and bats/README.md for the detailed rules for
each unit-test suite.