Skip to content

feat(os): support openEuler LTS management, service and compute nodes - #7864

Merged
dhilst merged 59 commits into
masterfrom
feature/openeuler-lts
Sep 30, 2026
Merged

dhilst merged 59 commits into
masterfrom
feature/openeuler-lts

Conversation

@viniciusferrao

Copy link
Copy Markdown
Member

This PR adds support for openEuler 20.03 LTS SP4, 22.03 LTS SP4 and 24.03 LTS SP4 on x86_64. It covers management nodes, installed and diskless service nodes, and stateful and stateless compute nodes.

copycds imports native media, go-xcat installs signed packages, and Genesis uses native kernels and packages. Install and netboot profiles provide compute and service images.

Depends on xcat2/xcat-dep#77.

Reuse NetworkManager for persistent routes, bond setup and connection
properties on openEuler. Preserve ifcfg handling where the connection still
uses it. Propagate route failures to local callers.
Exercise routeop, the local route plugin, bond setup and connection
properties in private Linux namespaces. Cover command failures, ifcfg and
keyfile storage, and existing distribution paths.
Use ISC DHCP for openEuler release packages. Retain the EL and SUSE
dependency choices. Select Apache 2.4, the httpd service and native Perl
build generators.
Evaluate native and legacy package specifications through RPM. Exercise
DHCP rich dependencies in private RPM databases. Check architecture-specific
Apache and Perl build policy.
Use signed, available DNF repositories for openEuler package postscripts.
Scope normal transactions to generated repositories. Preserve explicit
keeprepo behavior. Fail unresolved native packages before direct RPM
fallback.
Run the complete postscripts in private mount namespaces. Verify generated
repository scope, native key import, missing trust and repository failures.
Check keeprepo behavior and existing EL upgrade scope. Register both
integration tests.
List both openEuler package tests and their native prerequisites. Explain
that the integration file count verifies discovery and does not prove
skipped cases ran.
Use the native kernel package and target architecture. Install native
release and timezone files. Require the generated image to retain its
release identity and kernel modules. Keep the existing EL requirements and
module requests.
Evaluate native and EL RPM requirements. Exercise complete dracut module
requests. Run the spec install phase against generated release fixtures.
Cover missing identity fields and timezone failures.
Include the native release file in the existing initial and forced
management setup guard. Retain the current SELinux configuration policy.
Add native compute and service profiles, installer dispatch and partition
defaults. Use strict DNF image creation. Check stateless boot-file and
archive publication. Preserve native image customizations on reimport.
Restore missing image records during reimport.
Exercise native profile registration and interrupted reimport recovery
with SQLite. Render installer templates. Check image command failures and
archive extraction. Retain installed and diskless compute and service
cases and legacy boundaries.
Comment thread xCAT-server/share/xcat/netboot/rh/dracut_047/xcatroot
Comment thread xCAT-test/integration/openeuler_postscript_repositories.t

@dhilst dhilst left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I left some comments

Comment thread xCAT-test/unit/openeuler_genimage_bootfiles.t Outdated
Comment thread xCAT/postscripts/syslog Outdated
dhilst added a commit to VersatusHPC/xcat-core that referenced this pull request Sep 25, 2026
xcat2#7864 adds openEuler 20.03 LTS SP4, 22.03 LTS SP4 and
24.03 LTS SP4 on x86_64, for the management node, service nodes and
stateful and stateless compute nodes. The support matrix does not list
openEuler at all.

Add one row per release, x86_64 only, and say which node roles the
support covers. Widen the Version column to fit the release names.

Signed-off-by: Daniel Hilst <392820+dhilst@users.noreply.github.com>
Comment thread xCAT-test/unit/packimage_openeuler_archive.t Outdated
dhilst
dhilst previously approved these changes Sep 29, 2026
Comment thread xCAT-test/unit/openeuler_pre_partition.t
@dhilst
dhilst enabled auto-merge September 30, 2026 17:07
@dhilst
dhilst merged commit d20071a into master Sep 30, 2026
2 checks passed
@dhilst
dhilst deleted the feature/openeuler-lts branch September 30, 2026 21:54
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants