158 |
|
|
159 |
# generate convenience functions |
# generate convenience functions |
160 |
for b in $(./grubby --help | \ |
for b in $(./grubby --help | \ |
161 |
sed -n 's/^.*--\([^ ]*\) *configure \1 bootloader$/\1/p'); do |
sed -n 's/^.*--\([^ ]*\) *configure \1 bootloader.*/\1/p'); do |
162 |
eval "${b}Test() { [[ \"$b\" == \$opt_bootloader ]] && oneTest --$b \"\$@\"; }" |
eval "${b}Test() { [[ \"$b\" == \$opt_bootloader ]] && oneTest --$b \"\$@\"; }" |
163 |
eval "${b}DisplayTest() { [[ \"$b\" == \$opt_bootloader ]] && oneDisplayTest --$b \"\$@\"; }" |
eval "${b}DisplayTest() { [[ \"$b\" == \$opt_bootloader ]] && oneDisplayTest --$b \"\$@\"; }" |
164 |
done |
done |
316 |
--boot-filesystem=/ --copy-default --add-kernel=/boot/new-kernel \ |
--boot-filesystem=/ --copy-default --add-kernel=/boot/new-kernel \ |
317 |
--title="Some_Title" |
--title="Some_Title" |
318 |
|
|
319 |
|
testing="Extlinux default directive" |
320 |
|
extlinuxTest extlinux.1 default/extlinux1.1 --boot-filesystem=/boot --add-kernel /boot/new-kernel --title Some_Title |
321 |
|
extlinuxTest extlinux.1 default/extlinux1.2 --boot-filesystem=/boot --add-kernel /boot/new-kernel --title Some_Title --make-default |
322 |
|
extlinuxTest extlinux.3 default/extlinux3.1 --boot-filesystem=/boot --set-default=/boot/vmlinuz-3.12.0-2.fc21.i686 |
323 |
|
extlinuxTest extlinux.3 default/extlinux3.2 --boot-filesystem=/boot --set-default=/boot/vmlinuz-3.12.0-2.fc21.i686+PAE |
324 |
|
|
325 |
testing="GRUB new kernel argument handling" |
testing="GRUB new kernel argument handling" |
326 |
grubTest grub.1 args/g1.1 --boot-filesystem=/boot \ |
grubTest grub.1 args/g1.1 --boot-filesystem=/boot \ |
327 |
--add-kernel=/boot/foo --title=some_title --args="1234" --copy-default |
--add-kernel=/boot/foo --title=some_title --args="1234" --copy-default |
328 |
grubTest grub.1 args/g1.2 --boot-filesystem=/boot \ |
grubTest grub.1 args/g1.2 --boot-filesystem=/boot \ |
329 |
--add-kernel=/boot/foo --title=some_title --args="1234" |
--add-kernel=/boot/foo --title=some_title --args="1234" |
330 |
|
|
331 |
|
testing="Extlinux new kernel argument handling" |
332 |
|
extlinuxTest extlinux.1 args/extlinux1.1 --boot-filesystem=/boot \ |
333 |
|
--add-kernel=/boot/foo --title=some_title --args="1234" --copy-default |
334 |
|
extlinuxTest extlinux.1 args/extlinux1.2 --boot-filesystem=/boot \ |
335 |
|
--add-kernel=/boot/foo --title=some_title --args="1234" |
336 |
|
|
337 |
testing="GRUB remove kernel" |
testing="GRUB remove kernel" |
338 |
grubTest grub.7 remove/g7.1 --boot-filesystem=/ \ |
grubTest grub.7 remove/g7.1 --boot-filesystem=/ \ |
339 |
--remove-kernel=/boot/vmlinuz-2.4.7-2.5 |
--remove-kernel=/boot/vmlinuz-2.4.7-2.5 |
351 |
ziplTest zipl.1 remove/z1.1 --remove-kernel=/boot/vmlinuz-2.4.9-38 |
ziplTest zipl.1 remove/z1.1 --remove-kernel=/boot/vmlinuz-2.4.9-38 |
352 |
ziplTest zipl.1 remove/z1.2 --remove-kernel=DEFAULT |
ziplTest zipl.1 remove/z1.2 --remove-kernel=DEFAULT |
353 |
|
|
354 |
|
testing="Extlinux remove kernel" |
355 |
|
extlinuxTest extlinux.4 remove/extlinux4.1 --boot-filesystem=/ \ |
356 |
|
--remove-kernel=/boot/vmlinuz-3.11.7-301.fc20.i686 |
357 |
|
extlinuxTest extlinux.3 remove/extlinux3.1 --boot-filesystem=/ \ |
358 |
|
--remove-kernel=DEFAULT |
359 |
|
|
360 |
testing="GRUB update kernel argument handling" |
testing="GRUB update kernel argument handling" |
361 |
grubTest grub.1 updargs/g1.1 --update-kernel=DEFAULT --args="root=/dev/hda1" |
grubTest grub.1 updargs/g1.1 --update-kernel=DEFAULT --args="root=/dev/hda1" |
362 |
grubTest grub.1 updargs/g1.2 --update-kernel=DEFAULT \ |
grubTest grub.1 updargs/g1.2 --update-kernel=DEFAULT \ |
373 |
--remove-args="hdd root ro" |
--remove-args="hdd root ro" |
374 |
grubTest grub.7 updargs/g7.2 --boot-filesystem=/ \ |
grubTest grub.7 updargs/g7.2 --boot-filesystem=/ \ |
375 |
--update-kernel=ALL --args "hde=ide-scsi" |
--update-kernel=ALL --args "hde=ide-scsi" |
|
grubTest grub.7 updargs/g7.2 --boot-filesystem=/ \ |
|
|
--update-kernel=ALL --args "hde=ide-scsi" |
|
376 |
grubTest grub.7 updargs/g7.3 --boot-filesystem=/ \ |
grubTest grub.7 updargs/g7.3 --boot-filesystem=/ \ |
377 |
--update-kernel=DEFAULT --args "hde=ide-scsi" |
--update-kernel=DEFAULT --args "hde=ide-scsi" |
378 |
grubTest grub.7 updargs/g7.4 --boot-filesystem=/ \ |
grubTest grub.7 updargs/g7.4 --boot-filesystem=/ \ |
407 |
liloTest lilo.3 updargs/l3.2 --update-kernel=ALL \ |
liloTest lilo.3 updargs/l3.2 --update-kernel=ALL \ |
408 |
--remove-args="single" --args "root=/dev/hda2" |
--remove-args="single" --args "root=/dev/hda2" |
409 |
|
|
410 |
|
testing="Extlinux update kernel argument handling" |
411 |
|
extlinuxTest extlinux.1 updargs/extlinux1.1 --update-kernel=DEFAULT --args="root=/dev/hda1" |
412 |
|
extlinuxTest extlinux.1 updargs/extlinux1.2 --update-kernel=DEFAULT \ |
413 |
|
--args="root=/dev/hda1 hda=ide-scsi root=/dev/hda2" |
414 |
|
extlinuxTest extlinux.3 updargs/extlinux3.1 --update-kernel=DEFAULT --args "hdd=notide-scsi" |
415 |
|
extlinuxTest extlinux.3 updargs/extlinux3.2 --update-kernel=DEFAULT \ |
416 |
|
--args "hdd=notide-scsi root=/dev/hdd1" |
417 |
|
extlinuxTest extlinux.3 updargs/extlinux3.2 --update-kernel=DEFAULT \ |
418 |
|
--args "root=/dev/hdd1 hdd=notide-scsi" |
419 |
|
extlinuxTest extlinux.3 updargs/extlinux3.4 --update-kernel=ALL --remove-args="hdd" |
420 |
|
extlinuxTest extlinux.3 updargs/extlinux3.4 --update-kernel=ALL --remove-args="hdd=ide-scsi" |
421 |
|
extlinuxTest extlinux.3 updargs/extlinux3.4 --update-kernel=ALL --remove-args="hdd=foobar" |
422 |
|
extlinuxTest extlinux.3 updargs/extlinux3.7 --update-kernel=ALL \ |
423 |
|
--remove-args="hdd root ro" |
424 |
|
extlinuxTest extlinux.4 updargs/extlinux4.2 --boot-filesystem=/ \ |
425 |
|
--update-kernel=ALL --args "hde=ide-scsi" |
426 |
|
extlinuxTest extlinux.4 updargs/extlinux4.3 --boot-filesystem=/ \ |
427 |
|
--update-kernel=DEFAULT --args "hde=ide-scsi" |
428 |
|
extlinuxTest extlinux.4 updargs/extlinux4.4 --boot-filesystem=/ \ |
429 |
|
--update-kernel=/vmlinuz-3.12.0-2.fc21.i686 \ |
430 |
|
--args "ro root=LABEL=/ console=tty0 console=ttyS1,9600n81 single" |
431 |
|
extlinuxTest extlinux.4 updargs/extlinux4.5 --boot-filesystem=/ \ |
432 |
|
--update-kernel=ALL --args "root=/dev/hda2" |
433 |
|
|
434 |
testing="LILO add kernel" |
testing="LILO add kernel" |
435 |
liloTest lilo.4 add/l4.1 --add-kernel=/boot/new-kernel.img --title="title" \ |
liloTest lilo.4 add/l4.1 --add-kernel=/boot/new-kernel.img --title="title" \ |
436 |
--copy-default --boot-filesystem=/boot |
--copy-default --boot-filesystem=/boot |
483 |
grub2Test grub2.1 add/g2-1.1 --add-kernel=/boot/new-kernel.img \ |
grub2Test grub2.1 add/g2-1.1 --add-kernel=/boot/new-kernel.img \ |
484 |
--title='title' --initrd=/boot/new-initrd --boot-filesystem=/boot/ \ |
--title='title' --initrd=/boot/new-initrd --boot-filesystem=/boot/ \ |
485 |
--copy-default |
--copy-default |
486 |
grub2Test grub2.1 add/g2-1.6 --add-kernel=/boot/new-kernel.img \ |
case $ARCH in |
487 |
--title='title' --initrd=/boot/new-initrd --boot-filesystem=/boot/ \ |
aarch64) |
488 |
--copy-default --efi |
grub2Test grub2.1 add/g2-1.1 --add-kernel=/boot/new-kernel.img \ |
489 |
|
--title='title' \ |
490 |
|
--initrd=/boot/new-initrd --boot-filesystem=/boot/ \ |
491 |
|
--copy-default --efi |
492 |
|
;; |
493 |
|
*) |
494 |
|
grub2Test grub2.1 add/g2-1.6 --add-kernel=/boot/new-kernel.img \ |
495 |
|
--title='title' \ |
496 |
|
--initrd=/boot/new-initrd --boot-filesystem=/boot/ \ |
497 |
|
--copy-default --efi |
498 |
|
;; |
499 |
|
esac |
500 |
grub2Test grub2.6 add/g2-1.7 --add-kernel=/boot/new-kernel.img \ |
grub2Test grub2.6 add/g2-1.7 --add-kernel=/boot/new-kernel.img \ |
501 |
--title='title' --initrd=/boot/new-initrd --boot-filesystem=/boot/ \ |
--title='title' --initrd=/boot/new-initrd --boot-filesystem=/boot/ \ |
502 |
--copy-default --efi |
--copy-default --efi |
511 |
grub2Test grub2.5 add/g2-1.5 --add-kernel=/boot/new-kernel.img \ |
grub2Test grub2.5 add/g2-1.5 --add-kernel=/boot/new-kernel.img \ |
512 |
--title='title' --initrd=/boot/new-initrd --boot-filesystem=/boot/ \ |
--title='title' --initrd=/boot/new-initrd --boot-filesystem=/boot/ \ |
513 |
--copy-default |
--copy-default |
514 |
|
grub2Test grub2.12 add/g2-1.12 \ |
515 |
|
--add-kernel=/boot/vmlinuz-2.6.38.8-32.fc15.x86_64 \ |
516 |
|
--title='Linux, with Fedora 2.6.38.8-32.fc15.x86_64' \ |
517 |
|
--devtree='/boot/dtb-2.6.38.8-32.fc15.x86_64/foobarbaz.dtb' \ |
518 |
|
--initrd=/boot/initramfs-2.6.38.8-32.fc15.x86_64.img \ |
519 |
|
--boot-filesystem=/boot/ --copy-default --efi |
520 |
|
grub2Test grub2.13 add/g2-1.13 \ |
521 |
|
--add-kernel=/boot/vmlinuz-2.6.38.8-32.fc15.x86_64 \ |
522 |
|
--title='Linux, with Fedora 2.6.38.8-32.fc15.x86_64' \ |
523 |
|
--devtree='/boot/dtb-2.6.38.8-32.fc15.x86_64/foobarbaz.dtb' \ |
524 |
|
--initrd=/boot/initramfs-2.6.38.8-32.fc15.x86_64.img \ |
525 |
|
--boot-filesystem=/boot/ --copy-default --efi |
526 |
|
grub2Test grub2.14 add/g2-1.14 \ |
527 |
|
--add-kernel=/boot/vmlinuz-0-rescue-5a94251776a14678911d4ae0949500f5 \ |
528 |
|
--initrd /boot/initramfs-0-rescue-5a94251776a14678911d4ae0949500f5.img \ |
529 |
|
--copy-default --title "Fedora 21 Rescue" --args=root=/fooooo \ |
530 |
|
--remove-kernel=wtf --boot-filesystem=/boot/ |
531 |
|
|
532 |
testing="GRUB2 add initrd" |
testing="GRUB2 add initrd" |
533 |
grub2Test grub2.2 add/g2-1.4 --update-kernel=/boot/new-kernel.img \ |
grub2Test grub2.2 add/g2-1.4 --update-kernel=/boot/new-kernel.img \ |
574 |
"grub2-editenv test/grub2-support_files/env_temp list" \ |
"grub2-editenv test/grub2-support_files/env_temp list" \ |
575 |
"saved_entry=Linux, with Fedora 2.6.38.8-32.fc15.x86_64" |
"saved_entry=Linux, with Fedora 2.6.38.8-32.fc15.x86_64" |
576 |
|
|
577 |
|
testing="GRUB2 add kernel with default=saved_entry and a terrible title" |
578 |
|
grub2Test grub2.7 add/g2-1.9 --env grubenv.1 \ |
579 |
|
--add-kernel=/boot/new-kernel.img \ |
580 |
|
--title='Fedora (3.10.3-300.fc19.x86_64) 19 (Schrödinger’s Cat)' \ |
581 |
|
--initrd=/boot/new-initrd --boot-filesystem=/boot/ \ |
582 |
|
--copy-default |
583 |
|
|
584 |
|
testing="GRUB2 set default with default=saved_entry and a terrible name" |
585 |
|
grub2Test grub2.9 add/g2-1.9 --env grubenv.1 --set-default-index=0 |
586 |
|
commandTest "saved_default output" \ |
587 |
|
"grub2-editenv test/grub2-support_files/env_temp list" \ |
588 |
|
'saved_entry=Fedora (3.10.3-300.fc19.x86_64) 19 (Schrödinger’s Cat)' |
589 |
|
|
590 |
testing="GRUB2 set default with default=saved_entry" |
testing="GRUB2 set default with default=saved_entry" |
591 |
grub2Test grub2.8 add/g2-1.8 --env grubenv.1 --set-default-index=0 |
grub2Test grub2.8 add/g2-1.8 --env grubenv.1 --set-default-index=0 |
592 |
commandTest "saved_default output" \ |
commandTest "saved_default output" \ |
601 |
|
|
602 |
testing="GRUB2 --default-title with default=saved_entry" |
testing="GRUB2 --default-title with default=saved_entry" |
603 |
grub2DisplayTest grub2.8 defaulttitle/g2.1 --env grubenv.1 --default-title |
grub2DisplayTest grub2.8 defaulttitle/g2.1 --env grubenv.1 --default-title |
604 |
|
|
605 |
|
testing="GRUB2 --default-index with default=saved_entry and empty grubenv" |
606 |
|
grub2DisplayTest grub2.8 defaultindex/0 --env grubenv.0 --default-index |
607 |
|
|
608 |
|
testlinux16=n |
609 |
|
case $ARCH in |
610 |
|
ia32|x86_64) testlinux16=y ;; |
611 |
|
esac |
612 |
|
|
613 |
|
if [ "$testlinux16" == "y" ]; then |
614 |
|
testing="GRUB2 add kernel with linux16" |
615 |
|
grub2Test grub2.10 add/g2-1.10 --add-kernel=/boot/new-kernel.img \ |
616 |
|
--title='title' --initrd=/boot/new-initrd --boot-filesystem=/boot/ \ |
617 |
|
--copy-default |
618 |
|
|
619 |
|
testing="GRUB2 add initrd with linux16" |
620 |
|
grub2Test grub2.11 add/g2-1.11 --update-kernel=/boot/new-kernel.img \ |
621 |
|
--initrd=/boot/new-initrd --boot-filesystem=/boot/ |
622 |
|
fi |
623 |
fi |
fi |
624 |
|
|
625 |
testing="YABOOT add kernel" |
testing="YABOOT add kernel" |
634 |
ziplTest zipl.1 add/z1.1 --add-kernel=/boot/new-kernel.img --title test |
ziplTest zipl.1 add/z1.1 --add-kernel=/boot/new-kernel.img --title test |
635 |
ziplTest zipl.1 add/z1.2 --add-kernel=/boot/new-kernel.img --title test --copy-default |
ziplTest zipl.1 add/z1.2 --add-kernel=/boot/new-kernel.img --title test --copy-default |
636 |
|
|
637 |
|
testing="Extlinux add kernel" |
638 |
|
extlinuxTest extlinux.1 add/extlinux1.1 --add-kernel=/boot/new-kernel.img --title='title' \ |
639 |
|
--initrd=/boot/new-initrd --boot-filesystem=/ |
640 |
|
extlinuxTest extlinux.1 add/extlinux1.2 --add-kernel=/boot/new-kernel.img --title='title' \ |
641 |
|
--initrd=/boot/new-initrd --boot-filesystem=/boot |
642 |
|
extlinuxTest extlinux.1 add/extlinux1.3 --add-kernel=/boot/new-kernel.img --title='title' \ |
643 |
|
--initrd=/boot/new-initrd --boot-filesystem=/ --copy-default |
644 |
|
extlinuxTest extlinux.1 add/extlinux1.4 --add-kernel=/boot/new-kernel.img --title='title' \ |
645 |
|
--initrd=/boot/new-initrd --boot-filesystem=/boot --copy-default |
646 |
|
extlinuxTest extlinux.2 add/extlinux2.1 --add-kernel=/boot/vmlinuz-3.12.0-2.fc21.i686 \ |
647 |
|
--initrd=/boot/initrd-3.12.0-2.fc21.i686-new.img --boot-filesystem=/boot --copy-default \ |
648 |
|
--title="Fedora (3.12.0-2.fc21.i686) 20 (Heisenbug)" \ |
649 |
|
--remove-kernel="TITLE=Fedora (3.12.0-2.fc21.i686) 20 (Heisenbug)" |
650 |
|
|
651 |
testing="LILO long titles" |
testing="LILO long titles" |
652 |
liloTest lilo.1 longtitle/l1.1 --add-kernel=/boot/new-kernel.img \ |
liloTest lilo.1 longtitle/l1.1 --add-kernel=/boot/new-kernel.img \ |
653 |
--title="linux-longtitle" --copy-default --boot-filesystem=/boot |
--title="linux-longtitle" --copy-default --boot-filesystem=/boot |