From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from gate001.proxmox.com (gate001.proxmox.com [IPv6:2a0f:8001:1:32::40]) by lore.proxmox.com (Postfix) with ESMTPS id 73CCE1FF0E9 for ; Tue, 14 Jul 2026 10:09:52 +0200 (CEST) Received: from gate001.proxmox.com (localhost.localdomain [127.0.0.1]) by gate001.proxmox.com (Proxmox) with ESMTP id A1117213A2; Tue, 14 Jul 2026 10:09:51 +0200 (CEST) Message-ID: Date: Tue, 14 Jul 2026 10:09:13 +0200 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: Re: [PATCH pve-container] setup: openeuler: use network scripts to setup network To: Kaiyang Wu , pve-devel@lists.proxmox.com References: <20260706121458.73398-1-wukaiyang@loongfans.cn> Content-Language: en-US From: David Riley In-Reply-To: <20260706121458.73398-1-wukaiyang@loongfans.cn> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit X-Bm-Milter-Handled: 55990f41-d878-4baa-be0a-ee34c49e34d2 X-Bm-Transport-Timestamp: 1784016537805 X-SPAM-LEVEL: Spam detection results: 0 AWL 0.226 Adjusted score from AWL reputation of From: address DMARC_MISSING 0.1 Missing DMARC policy KAM_DMARC_STATUS 0.01 Test Rule for DKIM or SPF Failure with Strict Alignment (newer systems) RCVD_IN_DNSWL_LOW -0.7 Sender listed at https://www.dnswl.org/, low trust SPF_HELO_NONE 0.001 SPF: HELO does not publish an SPF Record SPF_PASS -0.001 SPF: sender matches SPF record Message-ID-Hash: 5KBHOTDGUAWSX3SFJ43IGGBOIMPSY46E X-Message-ID-Hash: 5KBHOTDGUAWSX3SFJ43IGGBOIMPSY46E X-MailFrom: d.riley@proxmox.com X-Mailman-Rule-Misses: dmarc-mitigation; no-senders; approved; loop; banned-address; emergency; member-moderation; nonmember-moderation; administrivia; implicit-dest; max-recipients; max-size; news-moderation; no-subject; digests; suspicious-header CC: Kaiyang Wu X-Mailman-Version: 3.3.10 Precedence: list List-Id: Proxmox VE development discussion List-Help: List-Owner: List-Post: List-Subscribe: List-Unsubscribe: Thanks for sending in this patch. Some comments inline. On 7/6/26 2:15 PM, Kaiyang Wu wrote: > Fix the error "can't open '/etc/redhat-release' - No such file or > directory". > > Fix the typo "netork" => "network". Please split this up into two commits one focusing on the typo and the other one fixing the issue. > > openEuler does not provide '/etc/redhat-release', which causes an error > during network setup, as the setup script attempts to distinguishes > RedHat releases, whereas openEular never shipped this file. > > openEuler defaults to use network scripts in LXC templates shipped by > linuxcontainers.org. [0] > > [0] https://github.com/lxc/lxc-ci/blob/7a61e7539f0009ab458661628a34267cbfc288a7/images/openeuler.yaml#L239 > > Signed-off-by: Kaiyang Wu > --- > src/PVE/LXC/Setup/CentOS.pm | 4 ++-- > src/PVE/LXC/Setup/OpenEuler.pm | 6 ++++++ > 2 files changed, 8 insertions(+), 2 deletions(-) > > diff --git a/src/PVE/LXC/Setup/CentOS.pm b/src/PVE/LXC/Setup/CentOS.pm > index 2469046..7e8140b 100644 > --- a/src/PVE/LXC/Setup/CentOS.pm > +++ b/src/PVE/LXC/Setup/CentOS.pm > @@ -197,7 +197,7 @@ sub setup_network { > # With CentOS/AlmaLinux/... 10 the support for network scripts got dropped. > setup_network_with_networkmanager($self, $conf); > } else { > - setup_netork_with_network_scripts($self, $conf); > + setup_network_with_network_scripts($self, $conf); > } > } > > @@ -284,7 +284,7 @@ sub setup_network_with_networkmanager { > } > } > > -sub setup_netork_with_network_scripts { > +sub setup_network_with_network_scripts { > my ($self, $conf) = @_; > > my ($gw, $gw6); > diff --git a/src/PVE/LXC/Setup/OpenEuler.pm b/src/PVE/LXC/Setup/OpenEuler.pm > index 9bfd5c4..185ff5a 100644 > --- a/src/PVE/LXC/Setup/OpenEuler.pm > +++ b/src/PVE/LXC/Setup/OpenEuler.pm > @@ -33,4 +33,10 @@ sub setup_init { > $self->setup_systemd_preset(); > } > > +sub setup_network { > + my ($self, $conf) = @_; > + > + $self->setup_network_with_network_scripts($self, $conf); This does not work. It does allow the container to be created, but it won't set a configured static IP address correctly. I tested it with: cat /etc/os-release NAME="openEuler" VERSION="24.03 (LTS-SP4)" I think it should be: $self->setup_network_with_network_scripts($conf); instead. But I think we need to take this fix in a different direction altogether. Overriding setup_network here to force legacy network scripts bypasses the root cause of the issue. The actual bug is that CentOS.pm crashes when /etc/redhat-release is missing, which prevents it from choosing the correct network setup. Hardcoding the legacy fallback here should not be the way to go forward here. OpenEuler already includes and prefers NetworkManager, as listed in the linuxcontainers.org yaml you linked [0]. Forcing legacy network scripts is not a future proof solution, as it already has been deprecated upstream (see: RHEL 8 [1]). So what this patch needs is something similar to the version check in CentOS.pm using the alternative path /etc/os-release instead. [0] https://github.com/lxc/lxc-ci/blob/7a61e7539f0009ab458661628a34267cbfc288a7/images/openeuler.yaml#L250 [1] https://docs.redhat.com/en/documentation/red_hat_enterprise_linux/8/html/8.4_release_notes/deprecated_functionality#deprecated-functionality_networking > +} > + > 1;