diskimage-builder/diskimage_builder/elements
Steve Baker 0630b3cb69 Detect boot and EFI partitions in extract-image
RHEL-9 base images are whole-disk images with the /boot/efi partition
correctly set up for EFI Secure Boot. This doesn't work with
extract-image because it only mounts the root partition, leaving
/boot/efi empty even though grub2-efi & shim packages are "installed".

This change mounts discovered partitions to mnt/boot, mnt/boot/efi so
all content can be extracted from the image.

Partition detection is done by reading block device attributes and
matching on Boot Loader Specification[1] UIDs or labels as observed in
supported base images.

[1] https://systemd.io/BOOT_LOADER_SPECIFICATION/
Change-Id: I8487002a18ae6ca98609ab68d92ae9173a2b864f
2022-02-23 15:28:32 +13:00
..
apt-conf
apt-preferences
apt-sources Use local mirror for ubuntu-minimal jobs 2017-06-21 12:01:31 +10:00
baremetal
base
block-device-efi Document EFI elements requirements 2021-11-26 08:46:42 +01:00
block-device-efi-lvm Document EFI elements requirements 2021-11-26 08:46:42 +01:00
block-device-gpt
block-device-mbr
bootloader Futher bootloader cleanups 2022-02-10 15:08:56 +11:00
cache-url
centos Cleanup more CentOS 8 bits 2022-02-01 15:39:24 +11:00
centos-minimal Merge "Cleanup more CentOS 8 bits" 2022-02-09 04:39:00 +00:00
centos7
cleanup-kernel-initrd
cloud-init enable cloud-init by default on systemd 2021-12-18 17:51:18 -06:00
cloud-init-datasources
cloud-init-disable-resizefs
cloud-init-nocloud
containerfile containerfile: handle errors better 2021-11-10 11:42:49 +11:00
debian Fix cron not installed in debian 2021-09-01 23:49:27 +02:00
debian-minimal Futher bootloader cleanups 2022-02-10 15:08:56 +11:00
debian-systemd
debian-upstart
debootstrap
deploy-baremetal
deploy-kexec
deploy-targetcli
deploy-tgtadm
devuser
dhcp-all-interfaces Fallback to persistent netifs names with systemd 2022-02-09 10:17:49 +01:00
dib-init-system
dib-python
dib-run-parts
disable-nouveau
disable-selinux
dkms
docker
dpkg
dracut-network
dracut-ramdisk
dracut-regenerate dracut-regenerate: drop Python 2 packages 2021-10-27 11:11:50 +11:00
dynamic-login
element-manifest
enable-serial-console
ensure-venv
epel Update centos element for 9-stream 2021-10-20 09:39:27 +11:00
fedora Update platform support to describe stable testing 2022-02-16 10:40:09 +11:00
fedora-container fedora-container: pull in glibc-langpack-en 2022-02-04 09:15:17 +11:00
fedora-minimal Update platform support to describe stable testing 2022-02-16 10:40:09 +11:00
gentoo update gentoo source suffix (where it finds the file to download) 2021-11-20 20:18:55 -06:00
growroot
growvols Replace deprecated assertEquals 2021-11-12 09:46:14 +08:00
grub2 Remove centos 9 and rhel 8 block in grub2 pkg-map 2022-01-17 23:40:24 +01:00
hpdsa
hwburnin
hwdiscovery
ibft-interfaces
ilo
install-bin
install-static
install-types
iscsi-boot
iso
journal-to-console
keylime-agent Update keylime-agent and tpm-emulator elements 2021-10-06 15:05:28 -04:00
local-config Merge remote-tracking branch 'origin/master' into merge-branch 2016-11-29 07:43:46 +11:00
lvm
manifests Set manifest permissions in the image 2017-05-24 15:20:55 +10:00
mellanox
modprobe
modprobe-blacklist
no-final-image
oat-client
openeuler-minimal Introduce openEuler distro 2021-08-04 03:06:55 +00:00
openssh-server
openstack-ci-mirrors Update centos element for 9-stream 2021-10-20 09:39:27 +11:00
opensuse Fix openSUSE images and bump them to 15.3 2022-01-28 02:18:47 -03:00
opensuse-minimal
package-installs
pip-and-virtualenv Remove extra if/then/else construct in pip element 2021-12-29 16:43:00 +01:00
pip-cache
pkg-map Add new container element - Rocky Linux 2022-01-31 17:26:16 +00:00
posix
proliant-tools
pypi
python-brickclient Merge branch 'master' into merge-branch 2017-02-09 13:35:53 +11:00
python-stow-versions
ramdisk Mount /sys RO 2021-07-05 11:45:02 +10:00
ramdisk-base
rax-nova-agent
redhat-common Revert "Use rpm -e instead of dnf for cleaning old kernels" 2022-02-09 03:33:34 +00:00
rhel rhel: work around RHEL-9 BLS issues 2022-02-22 13:43:18 +13:00
rhel-common Merge "Disable all repositories after attaching a pool" 2021-12-06 20:19:59 +00:00
rhel7
rocky-container Add new container element - Rocky Linux 2022-01-31 17:26:16 +00:00
rpm-distro Futher bootloader cleanups 2022-02-10 15:08:56 +11:00
runtime-ssh-host-keys Release 1.21.1 2017-02-02 20:36:23 +11:00
select-boot-kernel-initrd
selinux-permissive
simple-init Merge "simple-init: allow disabling DHCP fallback" 2021-09-10 14:54:03 +00:00
source-repositories source-repositories: don't use --git-dir 2021-11-16 19:16:03 +11:00
stable-interface-names
svc-map
sysctl
sysprep Detect boot and EFI partitions in extract-image 2022-02-23 15:28:32 +13:00
tpm-emulator Update keylime-agent and tpm-emulator elements 2021-10-06 15:05:28 -04:00
uboot
ubuntu Trivial: fix whitespace in ubuntu element rst 2021-11-23 07:01:36 -08:00
ubuntu-common Bump Ubuntu release to focal 2021-08-26 23:28:33 -03:00
ubuntu-minimal General improvements to the ubuntu-minimal docs 2022-01-21 19:21:00 -03:00
ubuntu-signed
ubuntu-systemd-container ubuntu-systemd-container: deprecate and remove jobs 2021-10-20 09:39:27 +11:00
vm
yum Add DIB_YUM_REPO_PACKAGE as an alternative to DIB_YUM_REPO_CONF 2021-09-13 09:32:53 +12:00
yum-minimal Merge "Remove contrib/setup-gate-mirrors.sh" 2022-02-09 05:02:40 +00:00
zipl
zypper
zypper-minimal Mount /sys RO 2021-07-05 11:45:02 +10:00
__init__.py