diff options
author | Alexandru Avadanii <Alexandru.Avadanii@enea.com> | 2017-09-26 18:22:06 +0200 |
---|---|---|
committer | Alexandru Avadanii <Alexandru.Avadanii@enea.com> | 2017-09-26 18:32:50 +0200 |
commit | 62d2ed716e79f9ee75d63543249bb21b9115b032 (patch) | |
tree | 1858f8f17f308a94ab6fbdce65858eb314aee01d /patches/opnfv-fuel/0012-lib.sh-rm-Ubuntu-boot-entry-on-EFI-systems.patch | |
parent | 6dcb09998dae3c3f2a55fc5169fe7dc9010f8a0f (diff) |
u/fuel: Bump & rebase for full PDF support
Change-Id: I7ae833b429c018345d0ab061877d27e3183b3dc7
Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com>
Diffstat (limited to 'patches/opnfv-fuel/0012-lib.sh-rm-Ubuntu-boot-entry-on-EFI-systems.patch')
-rw-r--r-- | patches/opnfv-fuel/0012-lib.sh-rm-Ubuntu-boot-entry-on-EFI-systems.patch | 60 |
1 files changed, 60 insertions, 0 deletions
diff --git a/patches/opnfv-fuel/0012-lib.sh-rm-Ubuntu-boot-entry-on-EFI-systems.patch b/patches/opnfv-fuel/0012-lib.sh-rm-Ubuntu-boot-entry-on-EFI-systems.patch new file mode 100644 index 00000000..d6c0b9d1 --- /dev/null +++ b/patches/opnfv-fuel/0012-lib.sh-rm-Ubuntu-boot-entry-on-EFI-systems.patch @@ -0,0 +1,60 @@ +:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: +: Copyright (c) 2017 Enea AB and others. +: +: All rights reserved. This program and the accompanying materials +: are made available under the terms of the Apache License, Version 2.0 +: which accompanies this distribution, and is available at +: http://www.apache.org/licenses/LICENSE-2.0 +:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::: +From: Alexandru Avadanii <Alexandru.Avadanii@enea.com> +Date: Thu, 24 Aug 2017 04:09:59 +0200 +Subject: [PATCH] lib.sh: rm Ubuntu boot entry on EFI systems + +On EFI-enabled systems, grub-install from grub-efi-* package +installs a boot entry named "ubuntu". + +MaaS relies on IPMI to set boot order to PXE first; however +on systems with buggy firmware or without full IPMI support, +that fails, leading to booting Ubuntu from hard disk instead. + +Work around this by clearing any previous Ubuntu boot entry +from board flash, before starting a new baremetal deploy. + +NOTE: This only runs against nodes that are online from a +previous deploy. + +Closes: ARMBAND-47 + +Signed-off-by: Alexandru Avadanii <Alexandru.Avadanii@enea.com> +--- + mcp/scripts/lib.sh | 10 ++++++++++ + 1 file changed, 10 insertions(+) + +diff --git a/mcp/scripts/lib.sh b/mcp/scripts/lib.sh +index 4b88ab7..90ab8c5 100644 +--- a/mcp/scripts/lib.sh ++++ b/mcp/scripts/lib.sh +@@ -28,6 +28,15 @@ get_base_image() { + wget -P "${image_dir}" -N "${base_image}" + } + ++cleanup_uefi() { ++ # Clean up Ubuntu boot entry if cfg01, kvm nodes online from previous deploy ++ # shellcheck disable=SC2086 ++ ssh ${SSH_OPTS} "ubuntu@${SALT_MASTER}" "sudo salt -C 'kvm* or cmp*' cmd.run \ ++ \"which efibootmgr > /dev/null 2>&1 && \ ++ efibootmgr | grep -oP '(?<=Boot)[0-9]+(?=.*ubuntu)' | \ ++ xargs -I{} efibootmgr --delete-bootnum --bootnum {}\"" || true ++} ++ + cleanup_vms() { + # clean up existing nodes + for node in $(virsh list --name | grep -P '\w{3}\d{2}'); do +@@ -45,6 +54,7 @@ prepare_vms() { + local base_image=$2 + local image_dir=$3 + ++ cleanup_uefi + cleanup_vms + get_base_image "${base_image}" "${image_dir}" + # shellcheck disable=SC2016 |