summaryrefslogtreecommitdiffstats
path: root/test/parser
diff options
context:
space:
mode:
authorJavier Martinez Canillas <javierm@redhat.com>2018-06-12 12:18:33 +0200
committerSamuel Mendoza-Jonas <sam@mendozajonas.com>2018-06-18 10:56:29 +1000
commit6d06f0dbe1195cd8be7d3c54d02012ff16466d0c (patch)
treefc9231bf3ecf9ddc9f3389f837717d2d129966ad /test/parser
parent761398a5dce21926a68e016627825b9010edff7e (diff)
downloadtalos-petitboot-6d06f0dbe1195cd8be7d3c54d02012ff16466d0c.tar.gz
talos-petitboot-6d06f0dbe1195cd8be7d3c54d02012ff16466d0c.zip
discover/grub: Use different paths to search for the BLS directory
Currenlty the BLS fragments are only searched in the /loader/entries directory, but this assumes that there is a boot partition mounted in /boot. This may not always be the case, /boot may not be a mount point and just a directory inside the root partition. To cover this case, Petitboot tries to find a GRUB 2 config file in different paths. So let's do the same for the BLS files directory. Also change some of the unit tests to use /boot/loader/entries as a BLS directory instead of /loader/entries. Signed-off-by: Javier Martinez Canillas <javierm@redhat.com> Signed-off-by: Samuel Mendoza-Jonas <sam@mendozajonas.com>
Diffstat (limited to 'test/parser')
-rw-r--r--test/parser/test-grub2-blscfg-default-filename.c8
-rw-r--r--test/parser/test-grub2-blscfg-default-index.c14
-rw-r--r--test/parser/test-grub2-blscfg-default-title.c8
-rw-r--r--test/parser/test-grub2-blscfg-multiple-bls.c2
-rw-r--r--test/parser/test-grub2-blscfg-opts-config.c2
-rw-r--r--test/parser/test-grub2-blscfg-opts-grubenv.c2
6 files changed, 24 insertions, 12 deletions
diff --git a/test/parser/test-grub2-blscfg-default-filename.c b/test/parser/test-grub2-blscfg-default-filename.c
index fb74059..80a0e22 100644
--- a/test/parser/test-grub2-blscfg-default-filename.c
+++ b/test/parser/test-grub2-blscfg-default-filename.c
@@ -10,11 +10,13 @@ void run_test(struct parser_test *test)
struct discover_boot_option *opt;
struct discover_context *ctx;
+ test_add_dir(test, test->ctx->device, "/boot/loader/entries");
+
test_add_file_string(test, test->ctx->device,
- "/loader/entries/6c063c8e48904f2684abde8eea303f41-4.15.2-302.fc28.x86_64.conf",
+ "/boot/loader/entries/6c063c8e48904f2684abde8eea303f41-4.15.2-302.fc28.x86_64.conf",
"title Fedora (4.15.2-302.fc28.x86_64) 28 (Twenty Eight)\n"
- "linux /vmlinuz-4.15.2-302.fc28.x86_64\n"
- "initrd /initramfs-4.15.2-302.fc28.x86_64.img\n"
+ "linux /boot/vmlinuz-4.15.2-302.fc28.x86_64\n"
+ "initrd /boot/initramfs-4.15.2-302.fc28.x86_64.img\n"
"options root=/dev/mapper/fedora-root ro rd.lvm.lv=fedora/root\n");
test_read_conf_embedded(test, "/boot/grub2/grub.cfg");
diff --git a/test/parser/test-grub2-blscfg-default-index.c b/test/parser/test-grub2-blscfg-default-index.c
index 4ef3e2e..b792d86 100644
--- a/test/parser/test-grub2-blscfg-default-index.c
+++ b/test/parser/test-grub2-blscfg-default-index.c
@@ -17,18 +17,20 @@ void run_test(struct parser_test *test)
struct discover_boot_option *opt;
struct discover_context *ctx;
+ test_add_dir(test, test->ctx->device, "/boot/loader/entries");
+
test_add_file_string(test, test->ctx->device,
- "/loader/entries/6c063c8e48904f2684abde8eea303f41-4.15.2-300.fc28.x86_64.conf",
+ "/boot/loader/entries/6c063c8e48904f2684abde8eea303f41-4.15.2-300.fc28.x86_64.conf",
"title Fedora (4.15.2-300.fc28.x86_64) 28 (Twenty Eight)\n"
- "linux /vmlinuz-4.15.2-300.fc28.x86_64\n"
- "initrd /initramfs-4.15.2-300.fc28.x86_64.img\n"
+ "linux /boot/vmlinuz-4.15.2-300.fc28.x86_64\n"
+ "initrd /boot/initramfs-4.15.2-300.fc28.x86_64.img\n"
"options root=/dev/mapper/fedora-root ro rd.lvm.lv=fedora/root\n\n");
test_add_file_string(test, test->ctx->device,
- "/loader/entries/6c063c8e48904f2684abde8eea303f41-4.14.18-300.fc28.x86_64.conf",
+ "/boot/loader/entries/6c063c8e48904f2684abde8eea303f41-4.14.18-300.fc28.x86_64.conf",
"title Fedora (4.14.18-300.fc28.x86_64) 28 (Twenty Eight)\n"
- "linux /vmlinuz-4.14.18-300.fc28.x86_64\n"
- "initrd /initramfs-4.14.18-300.fc28.x86_64.img\n"
+ "linux /boot/vmlinuz-4.14.18-300.fc28.x86_64\n"
+ "initrd /boot/initramfs-4.14.18-300.fc28.x86_64.img\n"
"options root=/dev/mapper/fedora-root ro rd.lvm.lv=fedora/root\n");
test_read_conf_embedded(test, "/boot/grub2/grub.cfg");
diff --git a/test/parser/test-grub2-blscfg-default-title.c b/test/parser/test-grub2-blscfg-default-title.c
index 94acf80..778dcc0 100644
--- a/test/parser/test-grub2-blscfg-default-title.c
+++ b/test/parser/test-grub2-blscfg-default-title.c
@@ -11,6 +11,8 @@ void run_test(struct parser_test *test)
struct discover_boot_option *opt;
struct discover_context *ctx;
+ test_add_dir(test, test->ctx->device, "/boot/loader/entries");
+
test_add_file_string(test, test->ctx->device,
"/boot/grub2/grubenv",
"# GRUB Environment Block\n"
@@ -18,10 +20,10 @@ void run_test(struct parser_test *test)
"kernelopts=root=/dev/mapper/fedora-root ro rd.lvm.lv=fedora/root\n");
test_add_file_string(test, test->ctx->device,
- "/loader/entries/6c063c8e48904f2684abde8eea303f41-4.15.2-302.fc28.x86_64.conf",
+ "/boot/loader/entries/6c063c8e48904f2684abde8eea303f41-4.15.2-302.fc28.x86_64.conf",
"title Fedora (4.15.2-302.fc28.x86_64) 28 (Twenty Eight)\n"
- "linux /vmlinuz-4.15.2-302.fc28.x86_64\n"
- "initrd /initramfs-4.15.2-302.fc28.x86_64.img\n"
+ "linux /boot/vmlinuz-4.15.2-302.fc28.x86_64\n"
+ "initrd /boot/initramfs-4.15.2-302.fc28.x86_64.img\n"
"options $kernelopts\n");
test_read_conf_embedded(test, "/boot/grub2/grub.cfg");
diff --git a/test/parser/test-grub2-blscfg-multiple-bls.c b/test/parser/test-grub2-blscfg-multiple-bls.c
index 8fd218c..94f40d1 100644
--- a/test/parser/test-grub2-blscfg-multiple-bls.c
+++ b/test/parser/test-grub2-blscfg-multiple-bls.c
@@ -9,6 +9,8 @@ void run_test(struct parser_test *test)
struct discover_boot_option *opt;
struct discover_context *ctx;
+ test_add_dir(test, test->ctx->device, "/loader/entries");
+
test_add_file_string(test, test->ctx->device,
"/loader/entries/6c063c8e48904f2684abde8eea303f41-4.15.2-302.fc28.x86_64.conf",
"title Fedora (4.15.2-302.fc28.x86_64) 28 (Twenty Eight)\n"
diff --git a/test/parser/test-grub2-blscfg-opts-config.c b/test/parser/test-grub2-blscfg-opts-config.c
index 856aae2..fdce229 100644
--- a/test/parser/test-grub2-blscfg-opts-config.c
+++ b/test/parser/test-grub2-blscfg-opts-config.c
@@ -10,6 +10,8 @@ void run_test(struct parser_test *test)
struct discover_boot_option *opt;
struct discover_context *ctx;
+ test_add_dir(test, test->ctx->device, "/loader/entries");
+
test_add_file_string(test, test->ctx->device,
"/loader/entries/6c063c8e48904f2684abde8eea303f41-4.15.2-302.fc28.x86_64.conf",
"title Fedora (4.15.2-302.fc28.x86_64) 28 (Twenty Eight)\n"
diff --git a/test/parser/test-grub2-blscfg-opts-grubenv.c b/test/parser/test-grub2-blscfg-opts-grubenv.c
index c77c589..544a5de 100644
--- a/test/parser/test-grub2-blscfg-opts-grubenv.c
+++ b/test/parser/test-grub2-blscfg-opts-grubenv.c
@@ -10,6 +10,8 @@ void run_test(struct parser_test *test)
struct discover_boot_option *opt;
struct discover_context *ctx;
+ test_add_dir(test, test->ctx->device, "/loader/entries");
+
test_add_file_string(test, test->ctx->device,
"/boot/grub2/grubenv",
"# GRUB Environment Block\n"
OpenPOWER on IntegriCloud