2
0
mirror of https://github.com/xcat2/xcat-core.git synced 2026-05-05 16:49:08 +00:00
Commit Graph

26961 Commits

Author SHA1 Message Date
Vinícius Ferrão
f139904c3e fix: invalidate NodeRange caches inherited across fork
xcatd forks child processes to handle plugin requests. The child
inherits NodeRange.pm's module-level caches (@allnodeset, %allgrphash,
@grplist) with their timestamps from the parent. If the parent had
populated these caches within the past 5 seconds, the child reuses
stale data that does not reflect database changes committed by other
requests that completed between cache population and the fork.

This causes non-deterministic failures in group-definition regression
tests (chdef_group, mkdef_group, rmdef_group) where lsdef -s runs
noderange expansion inside the forked plugin process and hits the
inherited stale cache that predates the mkdef -t group commit.

Track the PID at cache-build time and treat any cache built by a
different PID as expired, forcing a fresh database read in children.
2026-05-02 19:27:10 -03:00
Markus Hilger
10c13a3635 Merge pull request #7528 from VersatusHPC/fix/ubuntu-lts-provisioning-clean
fix: improve Ubuntu LTS provisioning support
2026-05-01 01:39:11 +02:00
Markus Hilger
568f1b8a44 Merge pull request #7523 from VersatusHPC/fix/makentp-insecure-config
fix: harden makentp generated ntp.conf
2026-04-30 10:22:50 +02:00
Vinícius Ferrão
1babd7b0e4 fix: improve Ubuntu LTS provisioning support 2026-04-29 18:19:12 -03:00
Markus Hilger
d7748b6e3a Merge pull request #7525 from VersatusHPC/kea-uefi-reservation-policy
Fix Kea UEFI reservation boot policy
2026-04-29 11:30:11 +02:00
Markus Hilger
733d076127 Merge pull request #7527 from VersatusHPC/fix/copycds-strip-alternate-suffix
fix: strip redundant alternate suffix from RHEL distnames in copycds
2026-04-29 11:29:26 +02:00
Markus Hilger
40de13dab8 Merge pull request #7526 from VersatusHPC/bump-actions-checkout-v6
Bump actions/checkout v4 to v6 for Node.js 24 compatibility
2026-04-29 11:28:07 +02:00
Vinícius Ferrão
ee26cf3f8f fix: strip redundant alternate suffix from RHEL distnames in copycds
RHEL 7 shipped ppc64le ISOs under the "alternate" label, causing
copycds to create distro paths like rhels7.6-alternate/ppc64le.
This mismatched osver() which returns rhels7.6 since /etc/os-release
has no knowledge of the alternate designation.

The architecture (ppc64le vs ppc64) already differentiates the
builds, making the alternate suffix redundant. Strip it during
auto-detection so copycds paths match osver() output.

Fixes #5593
2026-04-28 17:06:32 -03:00
Vinícius Ferrão
8d6eb04daf Bump actions/checkout v4 to v6 for Node.js 24 compatibility 2026-04-28 16:02:41 -03:00
Vinícius Ferrão
a716e8ff90 Fix DHCP CI package layout 2026-04-28 15:47:42 -03:00
Vinícius Ferrão
2c7fa228e7 retrigger CI 2026-04-28 11:37:03 -03:00
Vinícius Ferrão
0f606615b3 Fix Kea UEFI reservation boot policy 2026-04-28 03:35:53 -03:00
Markus Hilger
dd7efe5d93 Merge pull request #7524 from VersatusHPC/fix/mkdef-empty-attrs-error
fix: show useful error when mkdef is called without attributes
2026-04-27 13:35:36 +02:00
Vinícius Ferrão
57aa99e64e retrigger CI 2026-04-26 21:18:19 -03:00
Vinícius Ferrão
ec097e9d69 fix: show useful error when mkdef is called without attributes
When mkdef is called with an object name but no attributes (e.g.
mkdef -t node -o mynode), setFINALattrs produces an empty hash
and the OBJ loop has nothing to iterate. The code falls through to
"0 object definitions have been created or modified" with no
explanation of what went wrong.

Add a check after setFINALattrs: if FINALATTRS is empty, tell the
user what's missing. For nodes, mention that 'groups' is required.

Fixes #2765
2026-04-26 20:48:09 -03:00
Vinícius Ferrão
bd260c9feb fix: harden makentp generated ntp.conf
The ntpd config generated by makentp had no access restrictions,
explicitly disabled authentication, and was vulnerable to CVE-2013-5211
amplification attacks.

Add restrict lines to block unauthorized access, add iburst for faster
initial sync, replace "disable auth" with "disable monitor". Security
hardening applies to all platforms including AIX (xntpd supports the
same restrict directives).

The chrony path (EL8+) is unaffected — it delegates to setupntp.

Fixes #2435
2026-04-26 16:19:32 -03:00
Markus Hilger
4bed32987e Merge pull request #7522 from VersatusHPC/fix/xcattest-newcmdstart-upstream
fix: reset newcmdstart between files in xcattest load_case
2026-04-26 20:52:09 +02:00
Vinícius Ferrão
01150ac34b fix: reset newcmdstart between files in xcattest load_case
When a test case file is missing the end marker and the last line is a
cmd: directive, $newcmdstart stays set. The parser then appends lines
from the next file into the current command. If that next file is a
shell script (like simulatorctl.sh in the testcase tree), thousands of
lines of Perl/bash get concatenated and executed.

Reset $newcmdstart after closing each file to prevent state leaking
between files.

Fixes #5255
2026-04-26 15:28:11 -03:00
Markus Hilger
d017a941ca Merge pull request #7521 from VersatusHPC/fix/rspconfig-same-ip-verification
Fix/rspconfig same ip verification
2026-04-26 20:18:50 +02:00
Vinícius Ferrão
05a23be37a retrigger CI 2026-04-26 14:35:45 -03:00
Vinícius Ferrão
dd53d1bff7 fix: rspconfig verification fails when setting BMC IP to current value
The verification logic in rspconfig_response uses a mutually exclusive
if/else to check for the old IP (origin_type) and new IP (check_result).
When setting the same IP, both match the same entry but only origin_type
gets set — check_result stays 0 and the command reports "Config IP failed".

Make the two checks independent so both can match the same IP object.

Fixes #5121
2026-04-26 04:36:07 -03:00
Vinícius Ferrão
ca8baff388 Merge branch 'xcat2:master' into master 2026-04-26 04:35:05 -03:00
Markus Hilger
a0117699f4 Merge pull request #7519 from VersatusHPC/fix/vm-only-if-guard
fix: remove only_if mgt=kvm guard from vm table attributes
2026-04-26 03:08:50 +02:00
Markus Hilger
e448d0ac70 Merge pull request #7520 from VersatusHPC/fix/nodeset-empty-repo-template
fix: skip empty local-repository.tmpl in nodeset
2026-04-26 03:06:31 +02:00
Vinícius Ferrão
893769e7e8 Merge pull request #2 from VersatusHPC/fix/nodeset-empty-repo-template
fix: skip empty local-repository.tmpl in nodeset
2026-04-25 19:10:57 -03:00
Vinícius Ferrão
2d07295d8c fix: skip empty local-repository.tmpl in nodeset
When a pkgdir has no valid repodata, Yum.pm creates an empty
local-repository.tmpl file. Template.pm then reads it and generates
an empty yum repo config block in the kickstart. Adding a -s check
skips empty template files instead of silently including them.

Revives the fix from PR #4769 which was closed without merging.

Fixes #3572
2026-04-25 19:04:20 -03:00
Vinícius Ferrão
c5f4ac1a59 fix: remove only_if mgt=kvm guard from vm table attributes
Five vm attributes (vmhost, vmothersetting, vmmemory, vmcpus, vmnics)
had an only_if => 'mgt=kvm' guard in Schema.pm that silently hid them
from lsdef output unless mgt=kvm was set. The other 16 vm attributes
had no such guard. This inconsistency caused the documented regex
example in "Groups and Regular Expressions in Tables" to produce
incomplete output.

Fixes: xcat2/xcat-core#3006
2026-04-25 17:47:52 -03:00
Vinícius Ferrão
c881291e4a Merge pull request #1 from VersatusHPC/fix/vm-attributes-only-if-guard
fix: remove only_if mgt=kvm guard from vm table attributes
2026-04-25 17:44:30 -03:00
Vinícius Ferrão
8176947a1c fix: remove only_if mgt=kvm guard from vm table attributes
Five vm attributes (vmhost, vmothersetting, vmmemory, vmcpus, vmnics)
had an only_if => 'mgt=kvm' guard in Schema.pm that silently hid them
from lsdef output unless mgt=kvm was set. The other 16 vm attributes
had no such guard. This inconsistency caused the documented regex
example in "Groups and Regular Expressions in Tables" to produce
incomplete output.

Fixes: xcat2/xcat-core#3006
2026-04-25 16:42:42 -03:00
Markus Hilger
7b5e585dce Merge pull request #7517 from VersatusHPC/kea-dhcp-backend
Add Kea DHCP backend
2026-04-25 17:29:29 +02:00
Vinícius Ferrão
24266c8fa8 Record ppc64le Genesis blocker provenance 2026-04-24 12:19:52 -03:00
Vinícius Ferrão
1412850457 Document DHCP backend validation matrix 2026-04-23 23:19:56 -03:00
Vinícius Ferrão
e0e04f017d Render Kea additional classes by version 2026-04-23 19:39:25 -03:00
Vinícius Ferrão
714c0785b6 Preserve OPAL conf-file handling for Kea 2026-04-23 19:19:29 -03:00
Vinícius Ferrão
c2a90293ea Address DHCP backend review findings 2026-04-23 18:41:42 -03:00
Vinícius Ferrão
88579fbd77 Wire DHCP unit tests into xcattest 2026-04-23 15:10:40 -03:00
Vinícius Ferrão
792b0a07dc Clarify Kea live DHCP operations in makedhcp docs 2026-04-23 14:12:08 -03:00
Vinícius Ferrão
889b4ad254 Document the DHCP backend validation matrix 2026-04-23 11:51:09 -03:00
Vinícius Ferrão
fcd22757d2 Refine Kea xNBA handling and validation notes 2026-04-23 11:14:01 -03:00
Vinícius Ferrão
8399d88509 Address Perl quality findings 2026-04-23 03:04:37 -03:00
Vinícius Ferrão
6f3d9bb9d1 Add Kea DHCP backend 2026-04-23 02:01:33 -03:00
Markus Hilger
cf9a654b45 Merge pull request #7516 from xcat2/sunset-revert
Update sunset notice
2026-04-22 02:06:16 +02:00
Markus Hilger
ff1f1cde9b Update sunset notice 2026-04-22 02:01:41 +02:00
Markus Hilger
b6fd6148c0 Merge pull request #7515 from VersatusHPC/master
README update & Rebuild xCAT-genesis-base inside mock
2026-04-22 01:56:37 +02:00
Daniel Hilst
40a7e4c43d Merge pull request #8 from VersatusHPC/fix/rebuild-genesis-base
Build xCAT-genesis-base in EL10
2026-04-17 11:11:09 -03:00
Vinícius Ferrão
749f9fa9c7 docs: update xCAT status in README 2026-04-17 03:14:04 -03:00
Daniel Hilst Selli
baa2380cd2 fix: Move dracut call to the .spec
This fixes a problem where the dracut image was pulling artifacts from
the build host and not the mock image, e.g. building for EL9 in EL10.

Signed-off-by: Daniel Hilst Selli <392820+dhilst@users.noreply.github.com>
2026-04-14 11:15:56 -03:00
Daniel Hilst Selli
1b0deaf9af fix: Fix dhcp-client dependency failure during genimage
Signed-off-by: Daniel Hilst Selli <392820+dhilst@users.noreply.github.com>
2026-04-01 13:02:35 -03:00
Daniel Hilst Selli
fccdc3ec64 fix: Fix genesis-base package build
Signed-off-by: Daniel Hilst Selli <392820+dhilst@users.noreply.github.com>
2026-03-30 20:46:42 -03:00
Daniel Hilst Selli
3bbdcf5900 Revert "Remove doxcat changes from 4a1905171d0994c2a44e72aa10bcaa05139889bc"
Signed-off-by: Daniel Hilst Selli <392820+dhilst@users.noreply.github.com>
2026-03-27 11:20:29 -03:00