2
0
mirror of https://github.com/xcat2/xcat-core.git synced 2026-08-28 17:46:40 +00:00
Commit Graph

2553 Commits

Author SHA1 Message Date
Vinícius Ferrão d3d0f86abf test(network): cover shared netmask behavior 2026-08-23 13:51:39 -03:00
Vinícius Ferrão 7afa152f8d test(dhcp): prepare shared network helper stubs 2026-08-23 13:49:15 -03:00
Daniel Hilst 7733d16f8d Merge pull request #7721 from VersatusHPC/feature/genesis-openembedded
feat(genesis): build images with OpenEmbedded
2026-08-21 20:36:20 -03:00
Vinícius Ferrão 9da2d71b90 test(genesis): cover legacy destiny retries 2026-08-21 20:11:31 -03:00
Vinícius Ferrão c6c11d70a1 test(genesis): cover the action boot gate 2026-08-21 02:13:19 -03:00
Vinícius Ferrão 4c50b4da50 test(genesis): cover disappearing devices 2026-08-21 02:12:56 -03:00
Vinícius Ferrão 53c8538e4a test(genesis): cover logging failures 2026-08-21 02:12:22 -03:00
Vinícius Ferrão a47c7f8e7c test(genesis): cover long kernel command lines 2026-08-21 02:10:23 -03:00
Vinícius Ferrão 9fc3d52b81 test(getinstdisk): follow the log lines of the new selection
The install disk autotests read the log of a provisioned node. The
choice files no longer carry the identifier in their name, and the
selection message names the driver group and the identifier instead of
the previous wording, so read the new lines. The reinstall case reads
the record of its disk without naming a group, as it did before.
2026-08-21 01:13:50 -03:00
Vinícius Ferrão 492f9171a2 test(getinstdisk): cover the driver group against the identifier
Cover a RAID volume that reports a WWN against a direct attached disk
that reports none, in both scan orders, which the previous readback
decided by identifier. Keep the identifier rules of one group under
test as well: the disk that reports a WWN wins, the lower WWN wins
between two, and a path wins over no identifier at all.
2026-08-21 01:13:16 -03:00
Vinícius Ferrão bbd1a7e9d3 test(getinstdisk): cover the Xen disk scan
Cover a guest whose only disk is a Xen disk, which the scan has to
select rather than leave to the fallback, and a guest with two Xen
disks, where the driver group decides. Against the previous filter both
cases fail.
2026-08-21 01:13:15 -03:00
Vinícius Ferrão 7e8994e1b9 test(getinstdisk): pin the single script layout
Assert that the RHEL 10 copy is gone, that the RHEL 10 installer
includes the common script, and that the common script keeps the VROC
fallback, the Xen fallback and the guarded failure log.
2026-08-21 01:13:15 -03:00
Vinícius Ferrão 046c97ba2a test(getinstdisk): target the common script only
The RHEL 10 copy of the script is about to go away, so stop naming it
here first. The cases keep running against the common script, so the
coverage does not change.
2026-08-21 01:13:15 -03:00
Vinícius Ferrão 549034d758 test(getinstdisk): follow the SAS host adapters to the third group
The install disk autotest reads the log of a node whose disks sit
behind a SAS host adapter, and that driver group moved from the second
choice to the third. Read the third group instead.
2026-08-21 01:13:14 -03:00
Vinícius Ferrão 59219181c9 test(genesis): use Yocto extension filenames 2026-08-20 23:23:19 -03:00
Vinícius Ferrão baa68945cc test(genesis): use Yocto release filenames 2026-08-20 23:21:39 -03:00
Vinícius Ferrão cba24cc4c0 test(genesis): reject unsafe network state 2026-08-20 23:07:31 -03:00
Vinícius Ferrão cef35ba5e1 test(genesis): cover signed extension bundles 2026-08-20 23:03:53 -03:00
Vinícius Ferrão 56040cb4f0 test(genesis): cover release compliance output 2026-08-20 23:00:15 -03:00
Vinícius Ferrão 321595fb62 test(getinstdisk): cover the install disk selection order
Run the real scripts in a sandbox. A stub udevadm serves the device
properties from fixture files, and the partition list and the output
paths move into the sandbox. Every case runs against the common script
and against the copy the RHEL 10 installer includes.

Cover the direct attached disk against a RAID volume, a RAID only
server, the host adapter against a direct attached disk and against an
unknown driver, an NVMe device from the last group, and the default
fallback. Against the previous scripts the RAID cases fail, so they
discriminate.
2026-08-20 22:59:11 -03:00
Vinícius Ferrão a903a12463 test(genesis): cover sequential BMC setup 2026-08-20 22:56:07 -03:00
Vinícius Ferrão 43ca1c6363 test(genesis): cover fatal action service policy 2026-08-20 22:52:44 -03:00
Vinícius Ferrão c0af2535f8 test(genesis): cover network refresh rollback 2026-08-20 22:48:13 -03:00
Vinícius Ferrão 63f2326b6e test(genesis): cover BMCs without SOL 2026-08-20 22:43:13 -03:00
Vinícius Ferrão 0da0828913 test(genesis): cover narrow console headers 2026-08-20 22:41:53 -03:00
Vinícius Ferrão 8442dba2bf test(genesis): cover destiny client termination 2026-08-20 22:40:37 -03:00
Vinícius Ferrão 6562a4e9d7 test(genesis): cover export manifest 2026-08-20 22:29:57 -03:00
Vinícius Ferrão 1f083299f6 test(genesis): cover image contract 2026-08-20 22:29:57 -03:00
Vinícius Ferrão cc5c2192ce test(genesis): cover hardware providers 2026-08-20 22:29:56 -03:00
Vinícius Ferrão f6acf56ef2 test(genesis): cover signed extensions 2026-08-20 22:29:56 -03:00
Vinícius Ferrão 71cee46751 test(genesis): cover status console 2026-08-20 22:29:56 -03:00
Vinícius Ferrão e1c5d1565c test(genesis): cover provisioning runtime 2026-08-20 22:29:56 -03:00
Vinícius Ferrão bae92ffc47 fix(credentials): audit delegated certificate signing 2026-08-20 17:37:19 -03:00
Vinícius Ferrão 1f68e97f9e test(credentials): cover service node certificate delegation 2026-08-20 16:50:31 -03:00
Daniel Hilst c6549352b9 Merge pull request #7724 from VersatusHPC/feat/mknb-exported-genesis
feat(mknb): install exported Genesis images
2026-08-20 13:00:24 -03:00
Vinícius Ferrão be020834f4 Merge pull request #7736 from VersatusHPC/fix/ci-apt-network-timeout
fix(ci): bound the apt network steps with timeouts and retries
2026-08-19 16:35:50 -03:00
Vinícius Ferrão 32b99b9d64 test(ci): require the bounded noninteractive apt install form
The guard held the exact unbounded apt-get install text, so the new
timeout wrapper failed it. Require the timeout command and allow the
apt transfer options, so an unbounded install now fails the guard.
2026-08-19 16:04:05 -03:00
Daniel Hilst d7d71b2c5e Merge pull request #7735 from VersatusHPC/fix/redact-command-log-arguments
fix(xcatd): redact command-log arguments per element
2026-08-19 15:44:02 -03:00
Vinícius Ferrão 0d8d1e60ff test(xcatd): cover per-element command-log redaction
Extract the secret set, the command maps and the redaction routines from
xcatd.pm. Drive the real routines, because the module needs daemon
dependencies that the test host does not have.

Cover a multi-word value, a quoted value, spaces around the operator,
the "+=", ",=", "^=", "!=", "=~" and "!~" operators, the community
strings, a secret embedded in a compound argument with and without
quotes, each Getopt::Long password option form with bundles, the "?"
help letter, abbreviations, "+" prefixes and two-dash letters, values
that hold another secret letter, non-secret compact values that a value
option absorbs, long names that start with a secret letter, the mkvm
case forms and compact values, the chvm positional passwords, the mkvm
clone pw= operand, the vCenter cluster passwords, the snmpc site value
through chdef and tabch with compound selectors, the authentication
tokens, and the product keys. Assert that validate() redacts the
argument vector, that the joined result runs through redact_password,
and that the dispatch trace builds its text from redacted arguments.
Keep every attribute and column pair from Schema.pm, so a removed
table-qualified mapping fails the test.
2026-08-19 13:43:24 -03:00
Daniel Hilst 73fbf10e6b Merge pull request #7716 from VersatusHPC/fix/syncfiles-explicit-root-identity
fix(syncfiles): name root explicitly on the xdcp subrequest
2026-08-19 07:19:11 -03:00
Daniel Hilst 11c55ae8ad Merge pull request #7717 from VersatusHPC/fix/makedhcp-restrict-sn-dispatch
fix(dhcp): only dispatch makedhcp to the service nodes serving the nodes
2026-08-19 07:05:03 -03:00
Daniel Hilst 33a400d37d Merge pull request #7715 from VersatusHPC/cleanup/deprecated-provisioning-deadcode
fix(xcat-server): remove the unreachable deprecated provisioning paths
2026-08-19 06:58:48 -03:00
Daniel Hilst 4e0c0f384c Merge pull request #7714 from VersatusHPC/fix/confluent-explicit-nodes
fix(confluent): configure nodes named explicitly without a console method
2026-08-19 06:52:16 -03:00
Daniel Hilst a5953cbc3d Merge pull request #7713 from VersatusHPC/fix/destiny-boot-sticky
fix(destiny): keep a node on boot when its destiny is advanced again
2026-08-19 06:49:26 -03:00
Daniel Hilst c913af608f Merge pull request #7711 from VersatusHPC/fix/otherpkgs-upgrade-scope
fix(otherpkgs): restrict the package upgrade to the xCAT repositories
2026-08-19 06:47:33 -03:00
Vinícius Ferrão e9c8aaefbb test(xcatd): cover commands.log response redaction
Extracts the three command-log response subs and drives them. It checks the
request classification, the redaction of a bare passwd value, a secret split
across callbacks in either order, the password-content fallback, that a benign
response is kept, and that the finalizer preserves an earlier command's response
on a shared connection. It fails hard if a sub cannot be extracted.
2026-08-18 17:01:26 -03:00
Daniel Hilst 91505a2141 Merge pull request #7719 from VersatusHPC/fix/redact-password-attributes
fix(xcatd): redact node passwords from the command logs
2026-08-18 16:35:46 -03:00
Vinícius Ferrão dd930681a5 test(xcatd): cover the noderange ^ file operator
The test runs the real NodeRange code. It sends a ^ range that a
two-argument open would run as a command and checks the command does not
run. It also reads a real comment-only file to show the operator still
works.

The command assertion fails against the previous behavior.
2026-08-17 12:24:20 -03:00
Vinícius Ferrão bdfe7a4a2c build(server): cover s390x Digest::SHA 2026-08-11 20:45:20 -03:00
Vinícius Ferrão 8f2c508950 fix(mknb): reject incomplete exports 2026-08-11 20:18:27 -03:00