Skip to content

Commit b2d5d97

Browse files
authored
Merge pull request #1691 from master3395/v2.5.5-dev
AlmaLinux 9: fix 'Cannot find valid baseurl for repo: appstream'
2 parents 2b61c51 + 2b5e153 commit b2d5d97

File tree

1 file changed

+15
-2
lines changed

1 file changed

+15
-2
lines changed

cyberpanel_upgrade.sh

Lines changed: 15 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -441,16 +441,29 @@ if [[ "$Server_OS" = "CentOS" ]] || [[ "$Server_OS" = "AlmaLinux9" ]] ; then
441441
break
442442
fi
443443
done
444-
# For AlmaLinux 9: switch to repo.almalinux.org baseurl to avoid slow mirrors (e.g. ftp.lip6.fr timeout)
444+
# For AlmaLinux 9: switch to repo.almalinux.org baseurl to avoid "Cannot find valid baseurl for repo: appstream"
445445
if [[ "$Server_OS" = "AlmaLinux9" ]] && [[ -d /etc/yum.repos.d ]]; then
446+
echo -e "[$(date +"%Y-%m-%d %H:%M:%S")] Fixing AlmaLinux 9 repos (appstream/baseos) for reliable mirror access" | tee -a /var/log/cyberpanel_upgrade_debug.log
446447
for repo in /etc/yum.repos.d/almalinux*.repo /etc/yum.repos.d/AlmaLinux*.repo; do
447448
[[ ! -f "$repo" ]] && continue
448449
if grep -q '^mirrorlist=' "$repo" 2>/dev/null; then
449-
echo -e "[$(date +"%Y-%m-%d %H:%M:%S")] Switching AlmaLinux repos to repo.almalinux.org to avoid mirror timeouts" | tee -a /var/log/cyberpanel_upgrade_debug.log
450450
sed -i 's|^mirrorlist=|#mirrorlist=|g' "$repo"
451+
sed -i 's|^#\s*baseurl=\(.*repo\.almalinux\.org.*\)|baseurl=\1|' "$repo"
451452
sed -i 's|^#baseurl=\(.*repo\.almalinux\.org.*\)|baseurl=\1|' "$repo"
452453
fi
453454
done
455+
# Fallback: ensure appstream/baseos have explicit baseurl (avoids "Cannot find valid baseurl")
456+
ALMA_VER="${Server_OS_Version:-9}"
457+
ARCH="x86_64"
458+
for repofile in /etc/yum.repos.d/almalinux*.repo /etc/yum.repos.d/AlmaLinux*.repo; do
459+
[[ ! -f "$repofile" ]] && continue
460+
if grep -q '^\[appstream\]' "$repofile" 2>/dev/null; then
461+
sed -i "/^\[appstream\]/,/^\[/ { s|^#\?baseurl=.*|baseurl=https://repo.almalinux.org/almalinux/${ALMA_VER}/AppStream/${ARCH}/os/|; s|^mirrorlist=.*|#mirrorlist=disabled| }" "$repofile"
462+
fi
463+
if grep -q '^\[baseos\]' "$repofile" 2>/dev/null; then
464+
sed -i "/^\[baseos\]/,/^\[/ { s|^#\?baseurl=.*|baseurl=https://repo.almalinux.org/almalinux/${ALMA_VER}/BaseOS/${ARCH}/os/|; s|^mirrorlist=.*|#mirrorlist=disabled| }" "$repofile"
465+
fi
466+
done
454467
fi
455468
echo -e "[$(date +"%Y-%m-%d %H:%M:%S")] Setting up repositories for $Server_OS..." | tee -a /var/log/cyberpanel_upgrade_debug.log
456469
rm -f /etc/yum.repos.d/CyberPanel.repo

0 commit comments

Comments
 (0)