From c6753d4585e876783b536f5512e5ab9f4d2d2563 Mon Sep 17 00:00:00 2001 From: Duan Pengjie Date: Thu, 26 Mar 2026 19:32:38 +0800 Subject: [PATCH] Add openEuler OS support for RPM-based distributions - Added /etc/openEuler-release file check in RPM detection logic - Modified all RPM setup scripts (setup_*.x) and base_script.sh - Added openEuler to GitHub Actions CI workflow (rpm job only): - openeuler/openeuler:22.03-lts-sp4 - openeuler/openeuler:24.03-lts-sp3 - Note: openEuler has no minimal variant, so not added to rpm-minimal job --- .github/workflows/ci.yaml | 2 +- scripts/rpm/script_generator/base_script.sh | 2 +- scripts/rpm/setup_16.x | 2 +- scripts/rpm/setup_18.x | 2 +- scripts/rpm/setup_20.x | 2 +- scripts/rpm/setup_21.x | 2 +- scripts/rpm/setup_22.x | 2 +- scripts/rpm/setup_23.x | 2 +- scripts/rpm/setup_24.x | 2 +- scripts/rpm/setup_25.x | 2 +- scripts/rpm/setup_current.x | 2 +- scripts/rpm/setup_lts.x | 2 +- 12 files changed, 12 insertions(+), 12 deletions(-) diff --git a/.github/workflows/ci.yaml b/.github/workflows/ci.yaml index 5be73db0..dabf3263 100644 --- a/.github/workflows/ci.yaml +++ b/.github/workflows/ci.yaml @@ -70,7 +70,7 @@ jobs: strategy: matrix: version: [ 20, 22, 24, 25 ] - os: [ "fedora:41", "amazonlinux:2023", "rockylinux:9", "rockylinux:8", "redhat/ubi9:latest" ] + os: [ "fedora:41", "amazonlinux:2023", "rockylinux:9", "rockylinux:8", "redhat/ubi9:latest", "openeuler/openeuler:22.03-lts-sp4", "openeuler/openeuler:24.03-lts-sp3" ] container: image: ${{ matrix.os }} defaults: diff --git a/scripts/rpm/script_generator/base_script.sh b/scripts/rpm/script_generator/base_script.sh index 7971a73d..eaab18c7 100644 --- a/scripts/rpm/script_generator/base_script.sh +++ b/scripts/rpm/script_generator/base_script.sh @@ -32,7 +32,7 @@ command_exists() { } # Check if we are on an RPM-based system -if ! [ -f /etc/redhat-release ] && ! grep -q "Amazon Linux" /etc/system-release 2>/dev/null; then +if ! [ -f /etc/redhat-release ] && ! [ -f /etc/openEuler-release ] && ! grep -q "Amazon Linux" /etc/system-release 2>/dev/null; then handle_error 1 "This script is intended for RPM-based systems. Please run it on an RPM-based system." fi diff --git a/scripts/rpm/setup_16.x b/scripts/rpm/setup_16.x index 82a0817f..ef72abb4 100755 --- a/scripts/rpm/setup_16.x +++ b/scripts/rpm/setup_16.x @@ -104,7 +104,7 @@ command_exists() { } # Check if we are on an RPM-based system -if ! [ -f /etc/redhat-release ] && ! grep -q "Amazon Linux" /etc/system-release 2>/dev/null; then +if ! [ -f /etc/redhat-release ] && ! [ -f /etc/openEuler-release ] && ! grep -q "Amazon Linux" /etc/system-release 2>/dev/null; then handle_error 1 "This script is intended for RPM-based systems. Please run it on an RPM-based system." fi node_deprecation_warning diff --git a/scripts/rpm/setup_18.x b/scripts/rpm/setup_18.x index fe8b3ee5..a3e496c3 100755 --- a/scripts/rpm/setup_18.x +++ b/scripts/rpm/setup_18.x @@ -58,7 +58,7 @@ command_exists() { } # Check if we are on an RPM-based system -if ! [ -f /etc/redhat-release ] && ! grep -q "Amazon Linux" /etc/system-release 2>/dev/null; then +if ! [ -f /etc/redhat-release ] && ! [ -f /etc/openEuler-release ] && ! grep -q "Amazon Linux" /etc/system-release 2>/dev/null; then handle_error 1 "This script is intended for RPM-based systems. Please run it on an RPM-based system." fi diff --git a/scripts/rpm/setup_20.x b/scripts/rpm/setup_20.x index 55c7a438..8c6e4034 100755 --- a/scripts/rpm/setup_20.x +++ b/scripts/rpm/setup_20.x @@ -32,7 +32,7 @@ command_exists() { } # Check if we are on an RPM-based system -if ! [ -f /etc/redhat-release ] && ! grep -q "Amazon Linux" /etc/system-release 2>/dev/null; then +if ! [ -f /etc/redhat-release ] && ! [ -f /etc/openEuler-release ] && ! grep -q "Amazon Linux" /etc/system-release 2>/dev/null; then handle_error 1 "This script is intended for RPM-based systems. Please run it on an RPM-based system." fi diff --git a/scripts/rpm/setup_21.x b/scripts/rpm/setup_21.x index 1b759296..794a8336 100755 --- a/scripts/rpm/setup_21.x +++ b/scripts/rpm/setup_21.x @@ -32,7 +32,7 @@ command_exists() { } # Check if we are on an RPM-based system -if ! [ -f /etc/redhat-release ] && ! grep -q "Amazon Linux" /etc/system-release 2>/dev/null; then +if ! [ -f /etc/redhat-release ] && ! [ -f /etc/openEuler-release ] && ! grep -q "Amazon Linux" /etc/system-release 2>/dev/null; then handle_error 1 "This script is intended for RPM-based systems. Please run it on an RPM-based system." fi diff --git a/scripts/rpm/setup_22.x b/scripts/rpm/setup_22.x index dc3fe43e..a5000e2e 100755 --- a/scripts/rpm/setup_22.x +++ b/scripts/rpm/setup_22.x @@ -32,7 +32,7 @@ command_exists() { } # Check if we are on an RPM-based system -if ! [ -f /etc/redhat-release ] && ! grep -q "Amazon Linux" /etc/system-release 2>/dev/null; then +if ! [ -f /etc/redhat-release ] && ! [ -f /etc/openEuler-release ] && ! grep -q "Amazon Linux" /etc/system-release 2>/dev/null; then handle_error 1 "This script is intended for RPM-based systems. Please run it on an RPM-based system." fi diff --git a/scripts/rpm/setup_23.x b/scripts/rpm/setup_23.x index f30fa5da..9a5728b6 100755 --- a/scripts/rpm/setup_23.x +++ b/scripts/rpm/setup_23.x @@ -32,7 +32,7 @@ command_exists() { } # Check if we are on an RPM-based system -if ! [ -f /etc/redhat-release ] && ! grep -q "Amazon Linux" /etc/system-release 2>/dev/null; then +if ! [ -f /etc/redhat-release ] && ! [ -f /etc/openEuler-release ] && ! grep -q "Amazon Linux" /etc/system-release 2>/dev/null; then handle_error 1 "This script is intended for RPM-based systems. Please run it on an RPM-based system." fi diff --git a/scripts/rpm/setup_24.x b/scripts/rpm/setup_24.x index 98112b59..95f1a050 100755 --- a/scripts/rpm/setup_24.x +++ b/scripts/rpm/setup_24.x @@ -32,7 +32,7 @@ command_exists() { } # Check if we are on an RPM-based system -if ! [ -f /etc/redhat-release ] && ! grep -q "Amazon Linux" /etc/system-release 2>/dev/null; then +if ! [ -f /etc/redhat-release ] && ! [ -f /etc/openEuler-release ] && ! grep -q "Amazon Linux" /etc/system-release 2>/dev/null; then handle_error 1 "This script is intended for RPM-based systems. Please run it on an RPM-based system." fi diff --git a/scripts/rpm/setup_25.x b/scripts/rpm/setup_25.x index 95bc3bd8..a5073525 100755 --- a/scripts/rpm/setup_25.x +++ b/scripts/rpm/setup_25.x @@ -32,7 +32,7 @@ command_exists() { } # Check if we are on an RPM-based system -if ! [ -f /etc/redhat-release ] && ! grep -q "Amazon Linux" /etc/system-release 2>/dev/null; then +if ! [ -f /etc/redhat-release ] && ! [ -f /etc/openEuler-release ] && ! grep -q "Amazon Linux" /etc/system-release 2>/dev/null; then handle_error 1 "This script is intended for RPM-based systems. Please run it on an RPM-based system." fi diff --git a/scripts/rpm/setup_current.x b/scripts/rpm/setup_current.x index 95bc3bd8..a5073525 100755 --- a/scripts/rpm/setup_current.x +++ b/scripts/rpm/setup_current.x @@ -32,7 +32,7 @@ command_exists() { } # Check if we are on an RPM-based system -if ! [ -f /etc/redhat-release ] && ! grep -q "Amazon Linux" /etc/system-release 2>/dev/null; then +if ! [ -f /etc/redhat-release ] && ! [ -f /etc/openEuler-release ] && ! grep -q "Amazon Linux" /etc/system-release 2>/dev/null; then handle_error 1 "This script is intended for RPM-based systems. Please run it on an RPM-based system." fi diff --git a/scripts/rpm/setup_lts.x b/scripts/rpm/setup_lts.x index 98112b59..95f1a050 100755 --- a/scripts/rpm/setup_lts.x +++ b/scripts/rpm/setup_lts.x @@ -32,7 +32,7 @@ command_exists() { } # Check if we are on an RPM-based system -if ! [ -f /etc/redhat-release ] && ! grep -q "Amazon Linux" /etc/system-release 2>/dev/null; then +if ! [ -f /etc/redhat-release ] && ! [ -f /etc/openEuler-release ] && ! grep -q "Amazon Linux" /etc/system-release 2>/dev/null; then handle_error 1 "This script is intended for RPM-based systems. Please run it on an RPM-based system." fi