[pve-devel] [PATCH pve-kernel-meta v2 3/8] proxmox-boot: add helpers to check for bootloader configs
Stoiko Ivanov
s.ivanov at proxmox.com
Thu Mar 3 20:07:52 CET 2022
Signed-off-by: Stoiko Ivanov <s.ivanov at proxmox.com>
---
new in v2 - should reduce code copying in the future
bin/proxmox-boot-tool | 4 ++--
proxmox-boot/functions | 16 ++++++++++++++++
proxmox-boot/zz-proxmox-boot | 4 ++--
3 files changed, 20 insertions(+), 4 deletions(-)
diff --git a/bin/proxmox-boot-tool b/bin/proxmox-boot-tool
index 5197f5b..a499154 100755
--- a/bin/proxmox-boot-tool
+++ b/bin/proxmox-boot-tool
@@ -395,14 +395,14 @@ _status_detail() {
{ warn "mount of ${path} failed - skipping"; return; }
result=""
- if [ -f "${mountpoint}/$PMX_LOADER_CONF" ]; then
+ if mountpoint_has_sd_boot "${mountpoint}"; then
if [ ! -d "${mountpoint}/$PMX_ESP_DIR" ]; then
warn "${path}/$PMX_ESP_DIR does not exist"
fi
versions_uefi=$(ls -1 ${mountpoint}/$PMX_ESP_DIR | awk '{printf (NR>1?", ":"") $0}')
result="uefi (versions: ${versions_uefi})"
fi
- if [ -d "${mountpoint}/grub" ]; then
+ if mountpoint_has_grub "${mountpoint}"; then
versions_grub=$(ls -1 ${mountpoint}/vmlinuz-* | awk '{ gsub(/.*\/vmlinuz-/, ""); printf (NR>1?", ":"") $0 }')
if [ -n "$result" ]; then
result="${result}, grub (versions: ${versions_grub})"
diff --git a/proxmox-boot/functions b/proxmox-boot/functions
index bdab987..3ec1cad 100755
--- a/proxmox-boot/functions
+++ b/proxmox-boot/functions
@@ -154,3 +154,19 @@ set_systemd_boot_default() {
"${mountpoint}/$PMX_LOADER_CONF"
}
+
+mountpoint_has_grub() {
+ mountpoint="$1"
+ if [ -d "${mountpoint}/grub" ]; then
+ return 0;
+ fi
+ return 1;
+}
+
+mountpoint_has_sd_boot() {
+ mountpoint="$1"
+ if [ -f "${mountpoint}/$PMX_LOADER_CONF" ]; then
+ return 0;
+ fi
+ return 1;
+}
diff --git a/proxmox-boot/zz-proxmox-boot b/proxmox-boot/zz-proxmox-boot
index 5fe16a6..a6629aa 100755
--- a/proxmox-boot/zz-proxmox-boot
+++ b/proxmox-boot/zz-proxmox-boot
@@ -76,7 +76,7 @@ update_esp_func() {
mount "${path}" "${mountpoint}" || \
{ warn "mount of ${path} failed - skipping"; return; }
if [ -d /sys/firmware/efi ]; then
- if [ ! -f "${mountpoint}/$PMX_LOADER_CONF" ]; then
+ if ! mountpoint_has_sd_boot "${mountpoint}"; then
warn "${path} contains no loader.conf - skipping"
return
fi
@@ -84,7 +84,7 @@ update_esp_func() {
warn "${path}/$PMX_ESP_DIR does not exist- skipping"
return
fi
- elif [ ! -d "${mountpoint}/grub" ]; then
+ elif ! mountpoint_has_grub "${mountpoint}"; then
warn "${path} contains no grub directory - skipping"
return
fi
--
2.30.2
More information about the pve-devel
mailing list