dracut - 049-1
- version 049
This commit is contained in:
parent
9d5d7534b9
commit
4454e5464f
28
0001.patch
28
0001.patch
@ -1,28 +0,0 @@
|
||||
From 9a9c67d61b1e522a7cb72bfc488f4610b4c5ff0b Mon Sep 17 00:00:00 2001
|
||||
From: Harald Hoyer <harald@redhat.com>
|
||||
Date: Fri, 6 Jul 2018 11:56:23 +0200
|
||||
Subject: [PATCH] TEST-30-ISCSI: readd multiple target test
|
||||
|
||||
---
|
||||
test/TEST-30-ISCSI/test.sh | 7 +++++++
|
||||
1 file changed, 7 insertions(+)
|
||||
|
||||
diff --git a/test/TEST-30-ISCSI/test.sh b/test/TEST-30-ISCSI/test.sh
|
||||
index e667587a..f6cc56d5 100755
|
||||
--- a/test/TEST-30-ISCSI/test.sh
|
||||
+++ b/test/TEST-30-ISCSI/test.sh
|
||||
@@ -76,6 +76,13 @@ do_test_run() {
|
||||
"rd.iscsi.initiator=$initiator" \
|
||||
|| return 1
|
||||
|
||||
+ run_client "netroot=iscsi target1 target2" \
|
||||
+ "root=LABEL=sysroot" \
|
||||
+ "ip=dhcp" \
|
||||
+ "netroot=iscsi:192.168.51.1::::iqn.2009-06.dracut:target1" \
|
||||
+ "netroot=iscsi:192.168.50.1::::iqn.2009-06.dracut:target2" \
|
||||
+ "rd.iscsi.initiator=$initiator" \
|
||||
+ || return 1
|
||||
|
||||
echo "All tests passed [OK]"
|
||||
return 0
|
||||
|
259
0002.patch
259
0002.patch
@ -1,259 +0,0 @@
|
||||
From d63a4e285ea7f4c2249dd3b53f4ed2fdd1f0e374 Mon Sep 17 00:00:00 2001
|
||||
From: Harald Hoyer <harald@redhat.com>
|
||||
Date: Thu, 12 Jul 2018 15:18:48 +0200
|
||||
Subject: [PATCH] TEST-40-NBD: disable for now
|
||||
|
||||
nbd is always broken
|
||||
---
|
||||
test/TEST-40-NBD/test.sh | 115 +++++++++++++++++++++++++----------------------
|
||||
1 file changed, 62 insertions(+), 53 deletions(-)
|
||||
|
||||
diff --git a/test/TEST-40-NBD/test.sh b/test/TEST-40-NBD/test.sh
|
||||
index 4931bb73..12736a15 100755
|
||||
--- a/test/TEST-40-NBD/test.sh
|
||||
+++ b/test/TEST-40-NBD/test.sh
|
||||
@@ -8,6 +8,11 @@ KVERSION=${KVERSION-$(uname -r)}
|
||||
#DEBUGFAIL="rd.shell rd.break rd.debug systemd.log_target=console loglevel=7 systemd.log_level=debug"
|
||||
#SERIAL="tcp:127.0.0.1:9999"
|
||||
|
||||
+test_check() {
|
||||
+ echo "nbd is constantly broken. skipping"
|
||||
+ return 1
|
||||
+}
|
||||
+
|
||||
run_server() {
|
||||
# Start server first
|
||||
echo "NBD TEST SETUP: Starting DHCP/NBD server"
|
||||
@@ -107,76 +112,76 @@ client_run() {
|
||||
# The default is ext3,errors=continue so use that to determine
|
||||
# if our options were parsed and used
|
||||
client_test "NBD root=nbd:IP:port" 52:54:00:12:34:00 \
|
||||
- "root=nbd:192.168.50.1:raw rd.luks=0" || return 1
|
||||
+ "root=nbd:192.168.50.1:raw rd.luks=0" || return 1
|
||||
|
||||
client_test "NBD root=nbd:IP:port::fsopts" 52:54:00:12:34:00 \
|
||||
- "root=nbd:192.168.50.1:raw::errors=panic rd.luks=0" \
|
||||
- ext3 errors=panic || return 1
|
||||
+ "root=nbd:192.168.50.1:raw::errors=panic rd.luks=0" \
|
||||
+ ext3 errors=panic || return 1
|
||||
|
||||
client_test "NBD root=nbd:IP:port:fstype" 52:54:00:12:34:00 \
|
||||
- "root=nbd:192.168.50.1:raw:ext2 rd.luks=0" ext2 || return 1
|
||||
+ "root=nbd:192.168.50.1:raw:ext2 rd.luks=0" ext2 || return 1
|
||||
|
||||
client_test "NBD root=nbd:IP:port:fstype:fsopts" 52:54:00:12:34:00 \
|
||||
- "root=nbd:192.168.50.1:raw:ext2:errors=panic rd.luks=0" \
|
||||
- ext2 errors=panic || return 1
|
||||
+ "root=nbd:192.168.50.1:raw:ext2:errors=panic rd.luks=0" \
|
||||
+ ext2 errors=panic || return 1
|
||||
|
||||
client_test "NBD Bridge root=nbd:IP:port:fstype:fsopts" 52:54:00:12:34:00 \
|
||||
- "root=nbd:192.168.50.1:raw:ext2:errors=panic bridge rd.luks=0" \
|
||||
- ext2 errors=panic || return 1
|
||||
+ "root=nbd:192.168.50.1:raw:ext2:errors=panic bridge rd.luks=0" \
|
||||
+ ext2 errors=panic || return 1
|
||||
|
||||
- # There doesn't seem to be a good way to validate the NBD options, so
|
||||
- # just check that we don't screw up the other options
|
||||
+ # There doesn't seem to be a good way to validate the NBD options, so
|
||||
+ # just check that we don't screw up the other options
|
||||
|
||||
client_test "NBD root=nbd:IP:port:::NBD opts" 52:54:00:12:34:00 \
|
||||
- "root=nbd:192.168.50.1:raw:::bs=2048 rd.luks=0" || return 1
|
||||
+ "root=nbd:192.168.50.1:raw:::bs=2048 rd.luks=0" || return 1
|
||||
|
||||
client_test "NBD root=nbd:IP:port:fstype::NBD opts" 52:54:00:12:34:00 \
|
||||
- "root=nbd:192.168.50.1:raw:ext2::bs=2048 rd.luks=0" ext2 || return 1
|
||||
+ "root=nbd:192.168.50.1:raw:ext2::bs=2048 rd.luks=0" ext2 || return 1
|
||||
|
||||
client_test "NBD root=nbd:IP:port:fstype:fsopts:NBD opts" \
|
||||
- 52:54:00:12:34:00 \
|
||||
- "root=nbd:192.168.50.1:raw:ext2:errors=panic:bs=2048 rd.luks=0" \
|
||||
- ext2 errors=panic || return 1
|
||||
+ 52:54:00:12:34:00 \
|
||||
+ "root=nbd:192.168.50.1:raw:ext2:errors=panic:bs=2048 rd.luks=0" \
|
||||
+ ext2 errors=panic || return 1
|
||||
|
||||
# DHCP root-path parsing
|
||||
|
||||
client_test "NBD root=dhcp DHCP root-path nbd:srv:port" 52:54:00:12:34:01 \
|
||||
- "root=dhcp rd.luks=0" || return 1
|
||||
+ "root=dhcp rd.luks=0" || return 1
|
||||
|
||||
client_test "NBD Bridge root=dhcp DHCP root-path nbd:srv:port" 52:54:00:12:34:01 \
|
||||
- "root=dhcp bridge rd.luks=0" || return 1
|
||||
+ "root=dhcp bridge rd.luks=0" || return 1
|
||||
|
||||
client_test "NBD root=dhcp DHCP root-path nbd:srv:port:fstype" \
|
||||
- 52:54:00:12:34:02 "root=dhcp rd.luks=0" ext2 || return 1
|
||||
+ 52:54:00:12:34:02 "root=dhcp rd.luks=0" ext2 || return 1
|
||||
|
||||
client_test "NBD root=dhcp DHCP root-path nbd:srv:port::fsopts" \
|
||||
- 52:54:00:12:34:03 "root=dhcp rd.luks=0" ext3 errors=panic || return 1
|
||||
+ 52:54:00:12:34:03 "root=dhcp rd.luks=0" ext3 errors=panic || return 1
|
||||
|
||||
client_test "NBD root=dhcp DHCP root-path nbd:srv:port:fstype:fsopts" \
|
||||
- 52:54:00:12:34:04 "root=dhcp rd.luks=0" ext2 errors=panic || return 1
|
||||
+ 52:54:00:12:34:04 "root=dhcp rd.luks=0" ext2 errors=panic || return 1
|
||||
|
||||
# netroot handling
|
||||
|
||||
client_test "NBD netroot=nbd:IP:port" 52:54:00:12:34:00 \
|
||||
- "netroot=nbd:192.168.50.1:raw rd.luks=0" || return 1
|
||||
+ "netroot=nbd:192.168.50.1:raw rd.luks=0" || return 1
|
||||
|
||||
client_test "NBD netroot=dhcp DHCP root-path nbd:srv:port:fstype:fsopts" \
|
||||
- 52:54:00:12:34:04 "netroot=dhcp rd.luks=0" ext2 errors=panic || return 1
|
||||
+ 52:54:00:12:34:04 "netroot=dhcp rd.luks=0" ext2 errors=panic || return 1
|
||||
|
||||
# Encrypted root handling via LVM/LUKS over NBD
|
||||
|
||||
. $TESTDIR/luks.uuid
|
||||
|
||||
client_test "NBD root=LABEL=dracut netroot=nbd:IP:port" \
|
||||
- 52:54:00:12:34:00 \
|
||||
- "root=LABEL=dracut rd.luks.uuid=$ID_FS_UUID rd.lv.vg=dracut netroot=nbd:192.168.50.1:encrypted" || return 1
|
||||
+ 52:54:00:12:34:00 \
|
||||
+ "root=LABEL=dracut rd.luks.uuid=$ID_FS_UUID rd.lv.vg=dracut netroot=nbd:192.168.50.1:encrypted" || return 1
|
||||
|
||||
# XXX This should be ext2,errors=panic but that doesn't currently
|
||||
# XXX work when you have a real root= line in addition to netroot=
|
||||
# XXX How we should work here needs clarification
|
||||
client_test "NBD root=LABEL=dracut netroot=dhcp (w/ fstype and opts)" \
|
||||
- 52:54:00:12:34:05 \
|
||||
- "root=LABEL=dracut rd.luks.uuid=$ID_FS_UUID rd.lv.vg=dracut netroot=dhcp" || return 1
|
||||
+ 52:54:00:12:34:05 \
|
||||
+ "root=LABEL=dracut rd.luks.uuid=$ID_FS_UUID rd.lv.vg=dracut netroot=dhcp" || return 1
|
||||
|
||||
if [[ -s server.pid ]]; then
|
||||
sudo kill -TERM $(cat $TESTDIR/server.pid)
|
||||
@@ -197,14 +202,15 @@ make_encrypted_root() {
|
||||
. $basedir/dracut-init.sh
|
||||
mkdir -p "$initdir"
|
||||
(
|
||||
- cd "$initdir"; mkdir -p dev sys proc etc var/run tmp
|
||||
- mkdir -p root usr/bin usr/lib usr/lib64 usr/sbin
|
||||
+ cd "$initdir"
|
||||
+ mkdir -p dev sys proc etc var tmp run root usr/bin usr/lib usr/lib64 usr/sbin
|
||||
for i in bin sbin lib lib64; do
|
||||
ln -sfnr usr/$i $i
|
||||
done
|
||||
+ ln -s ../run var/run
|
||||
)
|
||||
inst_multiple sh df free ls shutdown poweroff stty cat ps ln ip \
|
||||
- mount dmesg mkdir cp ping
|
||||
+ mount dmesg mkdir cp ping
|
||||
for _terminfodir in /lib/terminfo /etc/terminfo /usr/share/terminfo; do
|
||||
[ -f ${_terminfodir}/l/linux ] && break
|
||||
done
|
||||
@@ -221,11 +227,12 @@ make_encrypted_root() {
|
||||
export initdir=$TESTDIR/overlay
|
||||
. $basedir/dracut-init.sh
|
||||
(
|
||||
- cd "$initdir"; mkdir -p dev sys proc etc var/run tmp
|
||||
- mkdir -p root usr/bin usr/lib usr/lib64 usr/sbin
|
||||
+ cd "$initdir"
|
||||
+ mkdir -p dev sys proc etc tmp var run root usr/bin usr/lib usr/lib64 usr/sbin
|
||||
for i in bin sbin lib lib64; do
|
||||
ln -sfnr usr/$i $i
|
||||
done
|
||||
+ ln -s ../run var/run
|
||||
)
|
||||
inst_multiple mke2fs poweroff cp umount tune2fs
|
||||
inst_hook shutdown-emergency 000 ./hard-off.sh
|
||||
@@ -239,10 +246,10 @@ make_encrypted_root() {
|
||||
# We do it this way so that we do not risk trashing the host mdraid
|
||||
# devices, volume groups, encrypted partitions, etc.
|
||||
$basedir/dracut.sh -l -i $TESTDIR/overlay / \
|
||||
- -m "dash crypt lvm mdraid udev-rules base rootfs-block fs-lib kernel-modules" \
|
||||
- -d "piix ide-gd_mod ata_piix ext2 ext3 sd_mod" \
|
||||
- --no-hostonly-cmdline -N \
|
||||
- -f $TESTDIR/initramfs.makeroot $KVERSION || return 1
|
||||
+ -m "dash crypt lvm mdraid udev-rules base rootfs-block fs-lib kernel-modules" \
|
||||
+ -d "piix ide-gd_mod ata_piix ext2 ext3 sd_mod" \
|
||||
+ --no-hostonly-cmdline -N \
|
||||
+ -f $TESTDIR/initramfs.makeroot $KVERSION || return 1
|
||||
rm -rf -- $TESTDIR/overlay
|
||||
|
||||
# Invoke KVM and/or QEMU to actually create the target filesystem.
|
||||
@@ -269,14 +276,15 @@ make_client_root() {
|
||||
. $basedir/dracut-init.sh
|
||||
mkdir -p "$initdir"
|
||||
(
|
||||
- cd "$initdir"; mkdir -p dev sys proc etc var/run tmp
|
||||
- mkdir -p root usr/bin usr/lib usr/lib64 usr/sbin
|
||||
+ cd "$initdir"
|
||||
+ mkdir -p dev sys proc etc var tmp run root usr/bin usr/lib usr/lib64 usr/sbin
|
||||
for i in bin sbin lib lib64; do
|
||||
ln -sfnr usr/$i $i
|
||||
done
|
||||
+ ln -s ../run var/run
|
||||
)
|
||||
inst_multiple sh ls shutdown poweroff stty cat ps ln ip \
|
||||
- dmesg mkdir cp ping
|
||||
+ dmesg mkdir cp ping
|
||||
for _terminfodir in /lib/terminfo /etc/terminfo /usr/share/terminfo; do
|
||||
[ -f ${_terminfodir}/l/linux ] && break
|
||||
done
|
||||
@@ -311,7 +319,8 @@ make_server_root() {
|
||||
mkdir -p "$initdir"
|
||||
(
|
||||
cd "$initdir";
|
||||
- mkdir -p dev sys proc etc var/run var/lib/dhcpd tmp etc/nbd-server
|
||||
+ mkdir -p run dev sys proc etc var var/lib/dhcpd tmp etc/nbd-server
|
||||
+ ln -s ../run var/run
|
||||
)
|
||||
cat > "$initdir/etc/nbd-server/config" <<EOF
|
||||
[generic]
|
||||
@@ -323,8 +332,8 @@ exportname = /dev/sdc
|
||||
port = 2001
|
||||
EOF
|
||||
inst_multiple sh ls shutdown poweroff stty cat ps ln ip \
|
||||
- dmesg mkdir cp ping grep \
|
||||
- sleep nbd-server chmod modprobe vi
|
||||
+ dmesg mkdir cp ping grep \
|
||||
+ sleep nbd-server chmod modprobe vi
|
||||
for _terminfodir in /lib/terminfo /etc/terminfo /usr/share/terminfo; do
|
||||
[ -f ${_terminfodir}/l/linux ] && break
|
||||
done
|
||||
@@ -369,9 +378,9 @@ test_setup() {
|
||||
inst_simple ./99-idesymlinks.rules /etc/udev/rules.d/99-idesymlinks.rules
|
||||
inst ./cryptroot-ask.sh /sbin/cryptroot-ask
|
||||
|
||||
-# inst ./debug-shell.service /lib/systemd/system/debug-shell.service
|
||||
-# mkdir -p "${initdir}/lib/systemd/system/sysinit.target.wants"
|
||||
-# ln -fs ../debug-shell.service "${initdir}/lib/systemd/system/sysinit.target.wants/debug-shell.service"
|
||||
+ # inst ./debug-shell.service /lib/systemd/system/debug-shell.service
|
||||
+ # mkdir -p "${initdir}/lib/systemd/system/sysinit.target.wants"
|
||||
+ # ln -fs ../debug-shell.service "${initdir}/lib/systemd/system/sysinit.target.wants/debug-shell.service"
|
||||
|
||||
. $TESTDIR/luks.uuid
|
||||
mkdir -p $initdir/etc
|
||||
@@ -380,17 +389,17 @@ test_setup() {
|
||||
)
|
||||
|
||||
sudo $basedir/dracut.sh -l -i $TESTDIR/overlay / \
|
||||
- -m "dash udev-rules rootfs-block fs-lib base debug kernel-modules" \
|
||||
- -d "af_packet piix ide-gd_mod ata_piix ext2 ext3 sd_mod e1000" \
|
||||
- --no-hostonly-cmdline -N \
|
||||
- -f $TESTDIR/initramfs.server $KVERSION || return 1
|
||||
+ -m "dash udev-rules rootfs-block fs-lib base debug kernel-modules" \
|
||||
+ -d "af_packet piix ide-gd_mod ata_piix ext2 ext3 sd_mod e1000" \
|
||||
+ --no-hostonly-cmdline -N \
|
||||
+ -f $TESTDIR/initramfs.server $KVERSION || return 1
|
||||
|
||||
sudo $basedir/dracut.sh -l -i $TESTDIR/overlay / \
|
||||
- -o "plymouth" \
|
||||
- -a "debug watchdog" \
|
||||
- -d "af_packet piix ide-gd_mod ata_piix ext2 ext3 sd_mod e1000 i6300esb ib700wdt" \
|
||||
- --no-hostonly-cmdline -N \
|
||||
- -f $TESTDIR/initramfs.testing $KVERSION || return 1
|
||||
+ -o "plymouth" \
|
||||
+ -a "debug watchdog" \
|
||||
+ -d "af_packet piix ide-gd_mod ata_piix ext2 ext3 sd_mod e1000 i6300esb ib700wdt" \
|
||||
+ --no-hostonly-cmdline -N \
|
||||
+ -f $TESTDIR/initramfs.testing $KVERSION || return 1
|
||||
}
|
||||
|
||||
kill_server() {
|
||||
|
13
0003.patch
13
0003.patch
@ -1,13 +0,0 @@
|
||||
From 1caaeaae1ecbaadf69e3ac90d77a5da5a9d250b1 Mon Sep 17 00:00:00 2001
|
||||
From: Harald Hoyer <harald@redhat.com>
|
||||
Date: Thu, 12 Jul 2018 15:19:17 +0200
|
||||
Subject: [PATCH] modules.d/95fcoe/cleanup-fcoe.sh: chmod +x
|
||||
|
||||
---
|
||||
modules.d/95fcoe/cleanup-fcoe.sh | 0
|
||||
1 file changed, 0 insertions(+), 0 deletions(-)
|
||||
|
||||
diff --git a/modules.d/95fcoe/cleanup-fcoe.sh b/modules.d/95fcoe/cleanup-fcoe.sh
|
||||
old mode 100644
|
||||
new mode 100755
|
||||
|
64
0004.patch
64
0004.patch
@ -1,64 +0,0 @@
|
||||
From 7047294617bbdd3ffb2466c73db56fda4e6156db Mon Sep 17 00:00:00 2001
|
||||
From: Kairui Song <kasong@redhat.com>
|
||||
Date: Tue, 17 Jul 2018 17:16:07 +0800
|
||||
Subject: [PATCH] Record loaded kernel modules when hostonly mode is enabled
|
||||
|
||||
A hostonly image will not include every possibly required kernel module,
|
||||
so if any hardware or configuration changed, the image may fail to boot.
|
||||
|
||||
One way to know if there are any hardware change or configuration change
|
||||
that will require an image rebuild or not is to check the loaded kernel
|
||||
module list. If the loaded kernel module list differs from last build
|
||||
time, then the image may require to be rebuilt.
|
||||
|
||||
This commit will let dracut record the loaded kernel module list when
|
||||
the image is being built, so other tools or services can compare this
|
||||
list with currently loaded kernel modules to decide if dracut should be
|
||||
called to rebuild the image.
|
||||
|
||||
To retrieve the loaded kernel modules list when an image is built, use
|
||||
lsinitrd command:
|
||||
|
||||
lsinitrd $image -f */lib/dracut/loaded-kernel-modules.txt
|
||||
---
|
||||
dracut-functions.sh | 11 +++++++++++
|
||||
dracut.sh | 3 +++
|
||||
2 files changed, 14 insertions(+)
|
||||
|
||||
diff --git a/dracut-functions.sh b/dracut-functions.sh
|
||||
index ccc48971..7c408f83 100755
|
||||
--- a/dracut-functions.sh
|
||||
+++ b/dracut-functions.sh
|
||||
@@ -676,6 +676,17 @@ get_ucode_file ()
|
||||
fi
|
||||
}
|
||||
|
||||
+# Get currently loaded modules
|
||||
+# sorted, and delimited by newline
|
||||
+get_loaded_kernel_modules ()
|
||||
+{
|
||||
+ local modules=( )
|
||||
+ while read _module _size _used _used_by; do
|
||||
+ modules+=( "$_module" )
|
||||
+ done <<< $(lsmod | sed -n '1!p')
|
||||
+ printf '%s\n' "${modules[@]}" | sort
|
||||
+}
|
||||
+
|
||||
# Not every device in /dev/mapper should be examined.
|
||||
# If it is an LVM device, touch only devices which have /dev/VG/LV symlink.
|
||||
lvm_internal_dev() {
|
||||
diff --git a/dracut.sh b/dracut.sh
|
||||
index cfa4abde..6614d27d 100755
|
||||
--- a/dracut.sh
|
||||
+++ b/dracut.sh
|
||||
@@ -1492,6 +1492,9 @@ dinfo "*** Including modules done ***"
|
||||
|
||||
## final stuff that has to happen
|
||||
if [[ $no_kernel != yes ]]; then
|
||||
+ if [[ $hostonly ]]; then
|
||||
+ echo "$(get_loaded_kernel_modules)" > $initdir/lib/dracut/loaded-kernel-modules.txt
|
||||
+ fi
|
||||
|
||||
if [[ $drivers ]]; then
|
||||
hostonly='' instmods $drivers
|
||||
|
24
0005.patch
24
0005.patch
@ -1,24 +0,0 @@
|
||||
From e331e06a3910ef3fe6837f3e93a48123a7cc822b Mon Sep 17 00:00:00 2001
|
||||
From: Harald Hoyer <harald@redhat.com>
|
||||
Date: Wed, 18 Jul 2018 12:41:01 +0200
|
||||
Subject: [PATCH] dracut-install: skip modules with empty path
|
||||
|
||||
if kmod_module_get_path(module) returns NULL, skip the module
|
||||
---
|
||||
install/dracut-install.c | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/install/dracut-install.c b/install/dracut-install.c
|
||||
index 001225b4..88bca1d4 100644
|
||||
--- a/install/dracut-install.c
|
||||
+++ b/install/dracut-install.c
|
||||
@@ -1244,7 +1244,7 @@ static int install_dependent_modules(struct kmod_list *modlist)
|
||||
path = kmod_module_get_path(mod);
|
||||
|
||||
name = kmod_module_get_name(mod);
|
||||
- if (arg_mod_filter_noname && (regexec(&mod_filter_noname, name, 0, NULL, 0) == 0)) {
|
||||
+ if ((path == NULL) || (arg_mod_filter_noname && (regexec(&mod_filter_noname, name, 0, NULL, 0) == 0))) {
|
||||
kmod_module_unref(mod);
|
||||
continue;
|
||||
}
|
||||
|
70
0006.patch
70
0006.patch
@ -1,70 +0,0 @@
|
||||
From a0eadcdc644d571da58f718d73dacb4f68bef56b Mon Sep 17 00:00:00 2001
|
||||
From: Hannes Reinecke <hare@suse.de>
|
||||
Date: Thu, 5 Dec 2013 09:29:28 +0100
|
||||
Subject: [PATCH] 00warpclock: Set correct timezone
|
||||
|
||||
Add module for setting correct timezone.
|
||||
|
||||
References: bnc#830060
|
||||
|
||||
For now, this module will not be included automatically due to different
|
||||
expectations (see e.g. https://bugzilla.redhat.com/show_bug.cgi?id=981617)
|
||||
|
||||
Signed-off-by: Hannes Reinecke <hare@suse.de>
|
||||
Signed-off-by: Daniel Molkentin <daniel.molkentin@suse.com>
|
||||
---
|
||||
modules.d/00warpclock/module-setup.sh | 29 +++++++++++++++++++++++++++++
|
||||
modules.d/00warpclock/warpclock.sh | 9 +++++++++
|
||||
2 files changed, 38 insertions(+)
|
||||
|
||||
diff --git a/modules.d/00warpclock/module-setup.sh b/modules.d/00warpclock/module-setup.sh
|
||||
new file mode 100644
|
||||
index 00000000..ea1348ed
|
||||
--- /dev/null
|
||||
+++ b/modules.d/00warpclock/module-setup.sh
|
||||
@@ -0,0 +1,29 @@
|
||||
+#!/bin/bash
|
||||
+# -*- mode: shell-script; indent-tabs-mode: nil; sh-basic-offset: 4; -*-
|
||||
+# ex: ts=8 sw=4 sts=4 et filetype=sh
|
||||
+
|
||||
+# called by dracut
|
||||
+check() {
|
||||
+ # hwclock does not exist on S390(x), bail out silently then
|
||||
+ local _arch=$(uname -m)
|
||||
+ [ "$_arch" = "s390" -o "$_arch" = "s390x" ] && return 1
|
||||
+
|
||||
+ [ -e /etc/localtime -a -e /etc/adjtime ] || return 1
|
||||
+ require_binaries /sbin/hwclock || return 1
|
||||
+
|
||||
+ return 255
|
||||
+}
|
||||
+
|
||||
+# called by dracut
|
||||
+depends() {
|
||||
+ return 0
|
||||
+}
|
||||
+
|
||||
+# called by dracut
|
||||
+install() {
|
||||
+ inst /usr/share/zoneinfo/UTC
|
||||
+ inst /etc/localtime
|
||||
+ inst /etc/adjtime
|
||||
+ inst_hook pre-trigger 00 "$moddir/warpclock.sh"
|
||||
+ inst /sbin/hwclock
|
||||
+}
|
||||
diff --git a/modules.d/00warpclock/warpclock.sh b/modules.d/00warpclock/warpclock.sh
|
||||
new file mode 100644
|
||||
index 00000000..f64818c6
|
||||
--- /dev/null
|
||||
+++ b/modules.d/00warpclock/warpclock.sh
|
||||
@@ -0,0 +1,9 @@
|
||||
+#!/bin/sh
|
||||
+
|
||||
+if test -e /etc/adjtime ; then
|
||||
+ while read line ; do
|
||||
+ if test "$line" = LOCAL ; then
|
||||
+ hwclock --systz
|
||||
+ fi
|
||||
+ done < /etc/adjtime
|
||||
+fi
|
||||
|
20
0007.patch
20
0007.patch
@ -1,20 +0,0 @@
|
||||
From aac3a0652adc2b200d5b8fedfbce99cfde88b525 Mon Sep 17 00:00:00 2001
|
||||
From: Harald Hoyer <harald@redhat.com>
|
||||
Date: Thu, 26 Jul 2018 09:54:13 +0200
|
||||
Subject: [PATCH] NEWS: forgot to update the latest version
|
||||
|
||||
---
|
||||
NEWS | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/NEWS b/NEWS
|
||||
index 2de38ad7..60b430aa 100644
|
||||
--- a/NEWS
|
||||
+++ b/NEWS
|
||||
@@ -1,4 +1,4 @@
|
||||
-dracut-047
|
||||
+dracut-048
|
||||
==========
|
||||
|
||||
dracut.sh:
|
||||
|
49
0008.patch
49
0008.patch
@ -1,49 +0,0 @@
|
||||
From f81c864eede2a11bfeb849cb2a2634be034ed7fb Mon Sep 17 00:00:00 2001
|
||||
From: Kairui Song <kasong@redhat.com>
|
||||
Date: Wed, 25 Jul 2018 16:34:08 +0800
|
||||
Subject: [PATCH] lsinitrd: allow to only unpack certain files
|
||||
|
||||
Before this patch, "--unpack" will always unpack the whole image.
|
||||
Make "--unpack" be able to unpack only certain files, it will be
|
||||
easier to retrieve files from initramfs image.
|
||||
|
||||
Signed-off-by: Kairui Song <kasong@redhat.com>
|
||||
---
|
||||
lsinitrd.sh | 16 +++++++++++++---
|
||||
1 file changed, 13 insertions(+), 3 deletions(-)
|
||||
|
||||
diff --git a/lsinitrd.sh b/lsinitrd.sh
|
||||
index 80fbf922..1b9a93b6 100755
|
||||
--- a/lsinitrd.sh
|
||||
+++ b/lsinitrd.sh
|
||||
@@ -159,8 +159,15 @@ list_files()
|
||||
|
||||
unpack_files()
|
||||
{
|
||||
- $CAT "$image" 2>/dev/null | cpio -id --quiet $verbose
|
||||
- ((ret+=$?))
|
||||
+ if (( ${#filenames[@]} > 0 )); then
|
||||
+ for f in "${!filenames[@]}"; do
|
||||
+ $CAT "$image" 2>/dev/null | cpio -id --quiet $verbose $f
|
||||
+ ((ret+=$?))
|
||||
+ done
|
||||
+ else
|
||||
+ $CAT "$image" 2>/dev/null | cpio -id --quiet $verbose
|
||||
+ ((ret+=$?))
|
||||
+ fi
|
||||
}
|
||||
|
||||
|
||||
@@ -175,7 +182,10 @@ case $bin in
|
||||
CAT="cat --"
|
||||
is_early=$(cpio --extract --verbose --quiet --to-stdout -- 'early_cpio' < "$image" 2>/dev/null)
|
||||
if [[ "$is_early" ]]; then
|
||||
- if [[ -n "$unpackearly" ]]; then
|
||||
+ if [[ -n "$unpack" ]]; then
|
||||
+ # should use --unpackearly for early CPIO
|
||||
+ :
|
||||
+ elif [[ -n "$unpackearly" ]]; then
|
||||
unpack_files
|
||||
elif (( ${#filenames[@]} > 0 )); then
|
||||
extract_files
|
||||
|
58
0009.patch
58
0009.patch
@ -1,58 +0,0 @@
|
||||
From 986b12d391b8de6c820da1af9bfdb4153c340370 Mon Sep 17 00:00:00 2001
|
||||
From: Kairui Song <kasong@redhat.com>
|
||||
Date: Wed, 25 Jul 2018 16:47:37 +0800
|
||||
Subject: [PATCH] lsinitrd: optimize performance when handling multiple files
|
||||
|
||||
Currently, when trying to unpack or print the content of multiple
|
||||
files, lsinitrd will decompress the image and pipe the decompressed
|
||||
content to cpio to retrive each file if the image is compressed.
|
||||
Which mean if we want to extract 10 files the image will be decompressed
|
||||
10 times, which is a waste of time.
|
||||
|
||||
This patch will let lsinitrd decompress the image file to a temp file
|
||||
first if multiple file names are given, then cpio will read from the
|
||||
decompressed temp file, which will speed up a lot.
|
||||
|
||||
Time consumption test for command:
|
||||
`lsinitrd initramfs-4.16.15-300.fc28.x86_64.img \
|
||||
usr/lib/dracut/build-parameter.txt \
|
||||
usr/lib/dracut/modules.txt \
|
||||
etc/machine-id \
|
||||
etc/hostname \
|
||||
usr/lib/udev/rules.d/99-systemd.rules`
|
||||
|
||||
Before the patch:
|
||||
2.37user 0.33system 0:02.12elapsed
|
||||
|
||||
After the patch:
|
||||
0.50user 0.42system 0:00.72elapsed
|
||||
|
||||
There would be a more significant time difference if we try to
|
||||
extract more files.
|
||||
---
|
||||
lsinitrd.sh | 11 +++++++++++
|
||||
1 file changed, 11 insertions(+)
|
||||
|
||||
diff --git a/lsinitrd.sh b/lsinitrd.sh
|
||||
index 1b9a93b6..0cb89e9c 100755
|
||||
--- a/lsinitrd.sh
|
||||
+++ b/lsinitrd.sh
|
||||
@@ -251,6 +251,17 @@ if [[ $SKIP ]]; then
|
||||
CAT=skipcpio
|
||||
fi
|
||||
|
||||
+if (( ${#filenames[@]} > 1 )); then
|
||||
+ TMPFILE="$(mktemp -t --suffix=.cpio lsinitrd.XXXXXX)"
|
||||
+ $CAT "$image" 2>/dev/null > $TMPFILE
|
||||
+ trap "rm -f '$TMPFILE'" EXIT
|
||||
+ pre_decompress()
|
||||
+ {
|
||||
+ cat $TMPFILE
|
||||
+ }
|
||||
+ CAT=pre_decompress
|
||||
+fi
|
||||
+
|
||||
ret=0
|
||||
|
||||
if [[ -n "$unpack" ]]; then
|
||||
|
49
0010.patch
49
0010.patch
@ -1,49 +0,0 @@
|
||||
From 143420bc05079ffa040a63decbb2585c59e44011 Mon Sep 17 00:00:00 2001
|
||||
From: Kairui Song <kasong@redhat.com>
|
||||
Date: Wed, 25 Jul 2018 23:50:47 +0800
|
||||
Subject: [PATCH] lsinitrd: update help message and man page
|
||||
|
||||
Signed-off-by: Kairui Song <kasong@redhat.com>
|
||||
---
|
||||
lsinitrd.1.asc | 6 ++++++
|
||||
lsinitrd.sh | 3 +++
|
||||
2 files changed, 9 insertions(+)
|
||||
|
||||
diff --git a/lsinitrd.1.asc b/lsinitrd.1.asc
|
||||
index b6a704c2..193a4471 100644
|
||||
--- a/lsinitrd.1.asc
|
||||
+++ b/lsinitrd.1.asc
|
||||
@@ -34,11 +34,17 @@ OPTIONS
|
||||
**-k, --kver** _<kernel version>_::
|
||||
inspect the initramfs of <kernel version>.
|
||||
|
||||
+**-m, --mod**::
|
||||
+ list dracut modules included of the initramfs image.
|
||||
+
|
||||
**--unpack**::
|
||||
unpack the initramfs to the current directory, instead of displaying the contents.
|
||||
+ If optional filenames are given, will only unpack specified files, else the whole image will be unpacked.
|
||||
+ Won't unpack anything from early cpio part.
|
||||
|
||||
**--unpackearly**::
|
||||
unpack the early microcode initramfs to the current directory, instead of displaying the contents.
|
||||
+ Same as --unpack, but only unpack files from early cpio part.
|
||||
|
||||
**-v, --verbose**::
|
||||
unpack verbosely
|
||||
diff --git a/lsinitrd.sh b/lsinitrd.sh
|
||||
index 0cb89e9c..a2fa4d7a 100755
|
||||
--- a/lsinitrd.sh
|
||||
+++ b/lsinitrd.sh
|
||||
@@ -28,7 +28,10 @@ usage()
|
||||
echo "-m, --mod list modules."
|
||||
echo "-f, --file <filename> print the contents of <filename>."
|
||||
echo "--unpack unpack the initramfs, instead of displaying the contents."
|
||||
+ echo " If optional filenames are given, will only unpack specified files,"
|
||||
+ echo " else the whole image will be unpacked. Won't unpack anything from early cpio part."
|
||||
echo "--unpackearly unpack the early microcode part of the initramfs."
|
||||
+ echo " Same as --unpack, but only unpack files from early cpio part."
|
||||
echo "-v, --verbose unpack verbosely."
|
||||
echo "-k, --kver <kernel version> inspect the initramfs of <kernel version>."
|
||||
echo
|
||||
|
110
0011.patch
110
0011.patch
@ -1,110 +0,0 @@
|
||||
From 819ea3865161d440353b2f961f3dfeaabeed333d Mon Sep 17 00:00:00 2001
|
||||
From: Harald Hoyer <harald@redhat.com>
|
||||
Date: Thu, 26 Jul 2018 12:49:45 +0200
|
||||
Subject: [PATCH] Bring back 51-dracut-rescue-postinst.sh
|
||||
|
||||
can only be obsoleted after F30
|
||||
---
|
||||
51-dracut-rescue-postinst.sh | 68 ++++++++++++++++++++++++++++++++++++++++++++
|
||||
dracut.spec | 6 ++++
|
||||
2 files changed, 74 insertions(+)
|
||||
|
||||
diff --git a/51-dracut-rescue-postinst.sh b/51-dracut-rescue-postinst.sh
|
||||
new file mode 100755
|
||||
index 00000000..67f5b717
|
||||
--- /dev/null
|
||||
+++ b/51-dracut-rescue-postinst.sh
|
||||
@@ -0,0 +1,68 @@
|
||||
+#!/bin/bash
|
||||
+
|
||||
+export LANG=C
|
||||
+
|
||||
+KERNEL_VERSION="$1"
|
||||
+KERNEL_IMAGE="$2"
|
||||
+
|
||||
+[[ -f /etc/os-release ]] && . /etc/os-release
|
||||
+
|
||||
+if [[ ! -f /etc/machine-id ]] || [[ ! -s /etc/machine-id ]]; then
|
||||
+ systemd-machine-id-setup
|
||||
+fi
|
||||
+
|
||||
+[[ -f /etc/machine-id ]] && read MACHINE_ID < /etc/machine-id
|
||||
+
|
||||
+[[ $MACHINE_ID ]] || exit 1
|
||||
+[[ -f $KERNEL_IMAGE ]] || exit 1
|
||||
+
|
||||
+INITRDFILE="/boot/initramfs-0-rescue-${MACHINE_ID}.img"
|
||||
+NEW_KERNEL_IMAGE="${KERNEL_IMAGE%/*}/vmlinuz-0-rescue-${MACHINE_ID}"
|
||||
+
|
||||
+[[ -f $INITRDFILE ]] && [[ -f $NEW_KERNEL_IMAGE ]] && exit 0
|
||||
+
|
||||
+dropindirs_sort()
|
||||
+{
|
||||
+ suffix=$1; shift
|
||||
+ args=("$@")
|
||||
+ files=$(
|
||||
+ while (( $# > 0 )); do
|
||||
+ for i in ${1}/*${suffix}; do
|
||||
+ [[ -f $i ]] && echo ${i##*/}
|
||||
+ done
|
||||
+ shift
|
||||
+ done | sort -Vu
|
||||
+ )
|
||||
+
|
||||
+ for f in $files; do
|
||||
+ for d in "${args[@]}"; do
|
||||
+ if [[ -f "$d/$f" ]]; then
|
||||
+ echo "$d/$f"
|
||||
+ continue 2
|
||||
+ fi
|
||||
+ done
|
||||
+ done
|
||||
+}
|
||||
+
|
||||
+# source our config dir
|
||||
+for f in $(dropindirs_sort ".conf" "/etc/dracut.conf.d" "/usr/lib/dracut/dracut.conf.d"); do
|
||||
+ [[ -e $f ]] && . "$f"
|
||||
+done
|
||||
+
|
||||
+[[ $dracut_rescue_image != "yes" ]] && exit 0
|
||||
+
|
||||
+if [[ ! -f $INITRDFILE ]]; then
|
||||
+ dracut --no-hostonly -a "rescue" "$INITRDFILE" "$KERNEL_VERSION"
|
||||
+ ((ret+=$?))
|
||||
+fi
|
||||
+
|
||||
+if [[ ! -f $NEW_KERNEL_IMAGE ]]; then
|
||||
+ cp --reflink=auto "$KERNEL_IMAGE" "$NEW_KERNEL_IMAGE"
|
||||
+ ((ret+=$?))
|
||||
+fi
|
||||
+
|
||||
+new-kernel-pkg --install "$KERNEL_VERSION" --kernel-image "$NEW_KERNEL_IMAGE" --initrdfile "$INITRDFILE" --banner "$NAME $VERSION_ID Rescue $MACHINE_ID"
|
||||
+
|
||||
+((ret+=$?))
|
||||
+
|
||||
+exit $ret
|
||||
diff --git a/dracut.spec b/dracut.spec
|
||||
index c218b63d..10cd7839 100644
|
||||
--- a/dracut.spec
|
||||
+++ b/dracut.spec
|
||||
@@ -259,6 +259,10 @@ rm -f -- $RPM_BUILD_ROOT%{_bindir}/lsinitrd
|
||||
%if 0%{?fedora} || 0%{?rhel}
|
||||
echo 'hostonly="no"' > $RPM_BUILD_ROOT%{dracutlibdir}/dracut.conf.d/02-generic-image.conf
|
||||
echo 'dracut_rescue_image="yes"' > $RPM_BUILD_ROOT%{dracutlibdir}/dracut.conf.d/02-rescue.conf
|
||||
+
|
||||
+# FIXME: remove after F30
|
||||
+mkdir -p $RPM_BUILD_ROOT%{_sysconfdir}/kernel/postinst.d
|
||||
+install -m 0755 51-dracut-rescue-postinst.sh $RPM_BUILD_ROOT%{_sysconfdir}/kernel/postinst.d/51-dracut-rescue-postinst.sh
|
||||
%endif
|
||||
|
||||
%files
|
||||
@@ -452,6 +456,8 @@ echo 'dracut_rescue_image="yes"' > $RPM_BUILD_ROOT%{dracutlibdir}/dracut.conf.d/
|
||||
%{dracutlibdir}/dracut.conf.d/02-rescue.conf
|
||||
%if 0%{?fedora} || 0%{?rhel}
|
||||
%{_prefix}/lib/kernel/install.d/51-dracut-rescue.install
|
||||
+# FIXME: remove after F30
|
||||
+%{_sysconfdir}/kernel/postinst.d/51-dracut-rescue-postinst.sh
|
||||
%endif
|
||||
|
||||
%changelog
|
||||
|
22
0012.patch
22
0012.patch
@ -1,22 +0,0 @@
|
||||
From 25111d717eab662bd104295f034ed7d2d6cc606b Mon Sep 17 00:00:00 2001
|
||||
From: Harald Hoyer <harald@redhat.com>
|
||||
Date: Thu, 26 Jul 2018 13:00:24 +0200
|
||||
Subject: [PATCH] dracut.spec: add 00warpclock dracut module
|
||||
|
||||
---
|
||||
dracut.spec | 1 +
|
||||
1 file changed, 1 insertion(+)
|
||||
|
||||
diff --git a/dracut.spec b/dracut.spec
|
||||
index 10cd7839..754ed3c9 100644
|
||||
--- a/dracut.spec
|
||||
+++ b/dracut.spec
|
||||
@@ -317,6 +317,7 @@ install -m 0755 51-dracut-rescue-postinst.sh $RPM_BUILD_ROOT%{_sysconfdir}/kerne
|
||||
%endif
|
||||
%{dracutlibdir}/modules.d/00bash
|
||||
%{dracutlibdir}/modules.d/00systemd
|
||||
+%{dracutlibdir}/modules.d/00warpclock
|
||||
%{dracutlibdir}/modules.d/01systemd-initrd
|
||||
%{dracutlibdir}/modules.d/03modsign
|
||||
%{dracutlibdir}/modules.d/03rescue
|
||||
|
61
0013.patch
61
0013.patch
@ -1,61 +0,0 @@
|
||||
From 55a12055c511979be0a471d0d7c24c040b830887 Mon Sep 17 00:00:00 2001
|
||||
From: Harald Hoyer <harald@redhat.com>
|
||||
Date: Thu, 26 Jul 2018 13:04:20 +0200
|
||||
Subject: [PATCH] dracut.spec: Remove needless use of %defattr
|
||||
|
||||
---
|
||||
dracut.spec | 7 -------
|
||||
1 file changed, 7 deletions(-)
|
||||
|
||||
diff --git a/dracut.spec b/dracut.spec
|
||||
index 754ed3c9..9b9d497a 100644
|
||||
--- a/dracut.spec
|
||||
+++ b/dracut.spec
|
||||
@@ -266,7 +266,6 @@ install -m 0755 51-dracut-rescue-postinst.sh $RPM_BUILD_ROOT%{_sysconfdir}/kerne
|
||||
%endif
|
||||
|
||||
%files
|
||||
-%defattr(-,root,root,0755)
|
||||
%if %{with doc}
|
||||
%doc README HACKING TODO AUTHORS NEWS dracut.html dracut.png dracut.svg
|
||||
%endif
|
||||
@@ -407,7 +406,6 @@ install -m 0755 51-dracut-rescue-postinst.sh $RPM_BUILD_ROOT%{_sysconfdir}/kerne
|
||||
%endif
|
||||
|
||||
%files network
|
||||
-%defattr(-,root,root,0755)
|
||||
%{dracutlibdir}/modules.d/02systemd-networkd
|
||||
%{dracutlibdir}/modules.d/40network
|
||||
%{dracutlibdir}/modules.d/45ifcfg
|
||||
@@ -426,18 +424,15 @@ install -m 0755 51-dracut-rescue-postinst.sh $RPM_BUILD_ROOT%{_sysconfdir}/kerne
|
||||
%{dracutlibdir}/modules.d/99uefi-lib
|
||||
|
||||
%files caps
|
||||
-%defattr(-,root,root,0755)
|
||||
%{dracutlibdir}/modules.d/02caps
|
||||
|
||||
%files live
|
||||
-%defattr(-,root,root,0755)
|
||||
%{dracutlibdir}/modules.d/99img-lib
|
||||
%{dracutlibdir}/modules.d/90dmsquash-live
|
||||
%{dracutlibdir}/modules.d/90dmsquash-live-ntfs
|
||||
%{dracutlibdir}/modules.d/90livenet
|
||||
|
||||
%files tools
|
||||
-%defattr(-,root,root,0755)
|
||||
|
||||
%if %{with doc}
|
||||
%doc %{_mandir}/man8/dracut-catimages.8*
|
||||
@@ -449,11 +444,9 @@ install -m 0755 51-dracut-rescue-postinst.sh $RPM_BUILD_ROOT%{_sysconfdir}/kerne
|
||||
%dir /var/lib/dracut/overlay
|
||||
|
||||
%files config-generic
|
||||
-%defattr(-,root,root,0755)
|
||||
%{dracutlibdir}/dracut.conf.d/02-generic-image.conf
|
||||
|
||||
%files config-rescue
|
||||
-%defattr(-,root,root,0755)
|
||||
%{dracutlibdir}/dracut.conf.d/02-rescue.conf
|
||||
%if 0%{?fedora} || 0%{?rhel}
|
||||
%{_prefix}/lib/kernel/install.d/51-dracut-rescue.install
|
||||
|
32
0014.patch
32
0014.patch
@ -1,32 +0,0 @@
|
||||
From 33782aebbffa005415e1a03deeae837d8cf5665e Mon Sep 17 00:00:00 2001
|
||||
From: Yu Watanabe <watanabe.yu+github@gmail.com>
|
||||
Date: Mon, 30 Jul 2018 02:26:01 +0900
|
||||
Subject: [PATCH] spec: warpclock is not available on s390 or s390x
|
||||
|
||||
---
|
||||
dracut.spec | 3 +++
|
||||
1 file changed, 3 insertions(+)
|
||||
|
||||
diff --git a/dracut.spec b/dracut.spec
|
||||
index 9b9d497a..ce69fa1f 100644
|
||||
--- a/dracut.spec
|
||||
+++ b/dracut.spec
|
||||
@@ -224,6 +224,7 @@ rm -fr -- $RPM_BUILD_ROOT/%{dracutlibdir}/modules.d/98integrity
|
||||
|
||||
%ifnarch s390 s390x
|
||||
# remove architecture specific modules
|
||||
+rm -fr -- $RPM_BUILD_ROOT/%{dracutlibdir}/modules.d/00warpclock
|
||||
rm -fr -- $RPM_BUILD_ROOT/%{dracutlibdir}/modules.d/80cms
|
||||
rm -fr -- $RPM_BUILD_ROOT/%{dracutlibdir}/modules.d/81cio_ignore
|
||||
rm -fr -- $RPM_BUILD_ROOT/%{dracutlibdir}/modules.d/91zipl
|
||||
@@ -316,7 +317,9 @@ install -m 0755 51-dracut-rescue-postinst.sh $RPM_BUILD_ROOT%{_sysconfdir}/kerne
|
||||
%endif
|
||||
%{dracutlibdir}/modules.d/00bash
|
||||
%{dracutlibdir}/modules.d/00systemd
|
||||
+%ifnarch s390 s390x
|
||||
%{dracutlibdir}/modules.d/00warpclock
|
||||
+%endif
|
||||
%{dracutlibdir}/modules.d/01systemd-initrd
|
||||
%{dracutlibdir}/modules.d/03modsign
|
||||
%{dracutlibdir}/modules.d/03rescue
|
||||
|
45
0015.patch
45
0015.patch
@ -1,45 +0,0 @@
|
||||
From be98291cafa1080ed18a976c6452ae2be1c7c747 Mon Sep 17 00:00:00 2001
|
||||
From: Yu Watanabe <watanabe.yu+github@gmail.com>
|
||||
Date: Mon, 30 Jul 2018 02:26:48 +0900
|
||||
Subject: [PATCH] spec: sort modules
|
||||
|
||||
Also drops remaining %defattr.
|
||||
---
|
||||
dracut.spec | 9 +++------
|
||||
1 file changed, 3 insertions(+), 6 deletions(-)
|
||||
|
||||
diff --git a/dracut.spec b/dracut.spec
|
||||
index ce69fa1f..d24c6f36 100644
|
||||
--- a/dracut.spec
|
||||
+++ b/dracut.spec
|
||||
@@ -320,6 +320,9 @@ install -m 0755 51-dracut-rescue-postinst.sh $RPM_BUILD_ROOT%{_sysconfdir}/kerne
|
||||
%ifnarch s390 s390x
|
||||
%{dracutlibdir}/modules.d/00warpclock
|
||||
%endif
|
||||
+%if 0%{?fedora} || 0%{?rhel} || 0%{?suse_version}
|
||||
+%{dracutlibdir}/modules.d/01fips
|
||||
+%endif
|
||||
%{dracutlibdir}/modules.d/01systemd-initrd
|
||||
%{dracutlibdir}/modules.d/03modsign
|
||||
%{dracutlibdir}/modules.d/03rescue
|
||||
@@ -403,11 +406,6 @@ install -m 0755 51-dracut-rescue-postinst.sh $RPM_BUILD_ROOT%{_sysconfdir}/kerne
|
||||
%{_prefix}/lib/kernel/install.d/50-dracut.install
|
||||
%endif
|
||||
|
||||
-%if 0%{?fedora} || 0%{?rhel} || 0%{?suse_version}
|
||||
-%defattr(-,root,root,0755)
|
||||
-%{dracutlibdir}/modules.d/01fips
|
||||
-%endif
|
||||
-
|
||||
%files network
|
||||
%{dracutlibdir}/modules.d/02systemd-networkd
|
||||
%{dracutlibdir}/modules.d/40network
|
||||
@@ -436,7 +434,6 @@ install -m 0755 51-dracut-rescue-postinst.sh $RPM_BUILD_ROOT%{_sysconfdir}/kerne
|
||||
%{dracutlibdir}/modules.d/90livenet
|
||||
|
||||
%files tools
|
||||
-
|
||||
%if %{with doc}
|
||||
%doc %{_mandir}/man8/dracut-catimages.8*
|
||||
%endif
|
||||
|
34
0016.patch
34
0016.patch
@ -1,34 +0,0 @@
|
||||
From 99df3d22be14690260371311086a439c83fdc6b4 Mon Sep 17 00:00:00 2001
|
||||
From: Harald Hoyer <harald@redhat.com>
|
||||
Date: Thu, 2 Aug 2018 16:32:41 +0200
|
||||
Subject: [PATCH] mdraid/parse-md.sh: also accept rd.md.uuid with ":"
|
||||
|
||||
convert rd.md.uuid=32ef2172:f056:6fa7:66a8:2f7fc8b1798
|
||||
to udev rules in the correct UUID format 32ef2172-f056-6fa7-66a8-2f7fcf8b1798
|
||||
---
|
||||
modules.d/90mdraid/parse-md.sh | 4 ++++
|
||||
1 file changed, 4 insertions(+)
|
||||
|
||||
diff --git a/modules.d/90mdraid/parse-md.sh b/modules.d/90mdraid/parse-md.sh
|
||||
index c422b24e..428f9515 100755
|
||||
--- a/modules.d/90mdraid/parse-md.sh
|
||||
+++ b/modules.d/90mdraid/parse-md.sh
|
||||
@@ -14,6 +14,9 @@ else
|
||||
if [ "${line%%UUID CHECK}" != "$line" ]; then
|
||||
printf 'IMPORT{program}="/sbin/mdadm --examine --export $tempnode"\n'
|
||||
for uuid in $MD_UUID; do
|
||||
+ uuid=$(str_replace "$uuid" "-" "")
|
||||
+ uuid=$(str_replace "$uuid" ":" "")
|
||||
+ uuid="$(expr substr $uuid 1 8)-$(expr substr $uuid 9 4)-$(expr substr $uuid 13 4)-$(expr substr $uuid 17 4)-$(expr substr $uuid 21 12)"
|
||||
printf 'ENV{MD_UUID}=="%s", GOTO="md_uuid_ok"\n' $uuid
|
||||
printf 'ENV{ID_FS_UUID}=="%s", GOTO="md_uuid_ok"\n' $uuid
|
||||
done;
|
||||
@@ -29,6 +32,7 @@ else
|
||||
if strstr "$uuid" "-"; then
|
||||
# convert ID_FS_UUID to MD_UUID format
|
||||
uuid=$(str_replace "$uuid" "-" "")
|
||||
+ uuid=$(str_replace "$uuid" ":" "")
|
||||
uuid="$(expr substr $uuid 1 8):$(expr substr $uuid 9 8):$(expr substr $uuid 17 8):$(expr substr $uuid 25 8)"
|
||||
fi
|
||||
wait_for_dev "/dev/disk/by-id/md-uuid-${uuid}"
|
||||
|
43
0017.patch
43
0017.patch
@ -1,43 +0,0 @@
|
||||
From a0c915b1e4585ccf286dd38a5cd7d8b89e0346c5 Mon Sep 17 00:00:00 2001
|
||||
From: Nicolas Chauvet <kwizart@gmail.com>
|
||||
Date: Fri, 3 Aug 2018 23:39:51 +0200
|
||||
Subject: [PATCH] Add gpio and pinctrl drivers for arm*/aarch64
|
||||
|
||||
This is needed since few gpio/pinctrl can be built as modules and are
|
||||
useful on early boot.
|
||||
|
||||
One example is jetson-tx1 where sata and external mmc can work only
|
||||
after loading pinctrl-max77620 and gpio-max77620 modules.
|
||||
|
||||
Having theses kind of drivers bundled into the initramfs will also
|
||||
avoid some deferred probes.
|
||||
|
||||
V2: add pinctrl for all arches
|
||||
|
||||
Signed-off-by: Nicolas Chauvet <kwizart@gmail.com>
|
||||
---
|
||||
modules.d/90kernel-modules/module-setup.sh | 3 ++-
|
||||
1 file changed, 2 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/modules.d/90kernel-modules/module-setup.sh b/modules.d/90kernel-modules/module-setup.sh
|
||||
index 89b33ce6..f01470e7 100755
|
||||
--- a/modules.d/90kernel-modules/module-setup.sh
|
||||
+++ b/modules.d/90kernel-modules/module-setup.sh
|
||||
@@ -25,7 +25,7 @@ installkernel() {
|
||||
ohci-hcd ohci-pci \
|
||||
uhci-hcd \
|
||||
xhci-hcd xhci-pci xhci-plat-hcd \
|
||||
- pinctrl-cherryview \
|
||||
+ "=drivers/pinctrl" \
|
||||
${NULL}
|
||||
|
||||
hostonly=$(optional_hostonly) instmods \
|
||||
@@ -50,6 +50,7 @@ installkernel() {
|
||||
"=drivers/clk" \
|
||||
"=drivers/dma" \
|
||||
"=drivers/extcon" \
|
||||
+ "=drivers/gpio" \
|
||||
"=drivers/hwspinlock" \
|
||||
"=drivers/i2c/busses" \
|
||||
"=drivers/mfd" \
|
||||
|
23
0018.patch
23
0018.patch
@ -1,23 +0,0 @@
|
||||
From a762dedb60aef8f43a625e1e3c10c97664f1d74a Mon Sep 17 00:00:00 2001
|
||||
From: Lukas Nykryn <lnykryn@redhat.com>
|
||||
Date: Thu, 9 Aug 2018 12:14:20 +0200
|
||||
Subject: [PATCH] dracut-functions: fix the word splitting
|
||||
|
||||
---
|
||||
dracut-functions.sh | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/dracut-functions.sh b/dracut-functions.sh
|
||||
index 7c408f83..1431dd18 100755
|
||||
--- a/dracut-functions.sh
|
||||
+++ b/dracut-functions.sh
|
||||
@@ -683,7 +683,7 @@ get_loaded_kernel_modules ()
|
||||
local modules=( )
|
||||
while read _module _size _used _used_by; do
|
||||
modules+=( "$_module" )
|
||||
- done <<< $(lsmod | sed -n '1!p')
|
||||
+ done <<< "$(lsmod | sed -n '1!p')"
|
||||
printf '%s\n' "${modules[@]}" | sort
|
||||
}
|
||||
|
||||
|
79
0019.patch
79
0019.patch
@ -1,79 +0,0 @@
|
||||
From 746135dd1ebc8dc7e26132bfa14ac159db7b2b95 Mon Sep 17 00:00:00 2001
|
||||
From: Harald Hoyer <harald@redhat.com>
|
||||
Date: Mon, 13 Aug 2018 10:01:36 +0200
|
||||
Subject: [PATCH] mdraid: better handling of various UUID formats
|
||||
|
||||
---
|
||||
modules.d/90mdraid/mdraid_start.sh | 4 ++++
|
||||
modules.d/90mdraid/parse-md.sh | 19 ++++++++-----------
|
||||
2 files changed, 12 insertions(+), 11 deletions(-)
|
||||
|
||||
diff --git a/modules.d/90mdraid/mdraid_start.sh b/modules.d/90mdraid/mdraid_start.sh
|
||||
index 2f5daff1..77e843d7 100755
|
||||
--- a/modules.d/90mdraid/mdraid_start.sh
|
||||
+++ b/modules.d/90mdraid/mdraid_start.sh
|
||||
@@ -39,6 +39,9 @@ _md_force_run() {
|
||||
_offroot=$(strstr "$(mdadm --help-options 2>&1)" offroot && echo --offroot)
|
||||
|
||||
if [ -n "$_MD_UUID" ]; then
|
||||
+ _MD_UUID=$(str_replace "$_MD_UUID" "-" "")
|
||||
+ _MD_UUID=$(str_replace "$_MD_UUID" ":" "")
|
||||
+
|
||||
for _md in /dev/md[0-9_]*; do
|
||||
[ -b "$_md" ] || continue
|
||||
_UUID=$(
|
||||
@@ -50,6 +53,7 @@ _md_force_run() {
|
||||
)
|
||||
|
||||
[ -z "$_UUID" ] && continue
|
||||
+ _UUID=$(str_replace "$_UUID" ":" "")
|
||||
|
||||
# check if we should handle this device
|
||||
strstr " $_MD_UUID " " $_UUID " || continue
|
||||
diff --git a/modules.d/90mdraid/parse-md.sh b/modules.d/90mdraid/parse-md.sh
|
||||
index 428f9515..4d9baa52 100755
|
||||
--- a/modules.d/90mdraid/parse-md.sh
|
||||
+++ b/modules.d/90mdraid/parse-md.sh
|
||||
@@ -1,6 +1,9 @@
|
||||
#!/bin/sh
|
||||
|
||||
MD_UUID=$(getargs rd.md.uuid -d rd_MD_UUID=)
|
||||
+# normalize the uuid
|
||||
+MD_UUID=$(str_replace "$MD_UUID" "-" "")
|
||||
+MD_UUID=$(str_replace "$MD_UUID" ":" "")
|
||||
|
||||
if ( ! [ -n "$MD_UUID" ] && ! getargbool 0 rd.auto ) || ! getargbool 1 rd.md -d -n rd_NO_MD; then
|
||||
info "rd.md=0: removing MD RAID activation"
|
||||
@@ -12,13 +15,12 @@ else
|
||||
[ -e "$f" ] || continue
|
||||
while read line || [ -n "$line" ]; do
|
||||
if [ "${line%%UUID CHECK}" != "$line" ]; then
|
||||
+ for uuid in $MD_UUID; do
|
||||
+ printf 'ENV{ID_FS_UUID}=="%s", GOTO="md_uuid_ok"\n' "$(expr substr $uuid 1 8)-$(expr substr $uuid 9 4)-$(expr substr $uuid 13 4)-$(expr substr $uuid 17 4)-$(expr substr $uuid 21 12)"
|
||||
+ done;
|
||||
printf 'IMPORT{program}="/sbin/mdadm --examine --export $tempnode"\n'
|
||||
for uuid in $MD_UUID; do
|
||||
- uuid=$(str_replace "$uuid" "-" "")
|
||||
- uuid=$(str_replace "$uuid" ":" "")
|
||||
- uuid="$(expr substr $uuid 1 8)-$(expr substr $uuid 9 4)-$(expr substr $uuid 13 4)-$(expr substr $uuid 17 4)-$(expr substr $uuid 21 12)"
|
||||
- printf 'ENV{MD_UUID}=="%s", GOTO="md_uuid_ok"\n' $uuid
|
||||
- printf 'ENV{ID_FS_UUID}=="%s", GOTO="md_uuid_ok"\n' $uuid
|
||||
+ printf 'ENV{MD_UUID}=="%s", GOTO="md_uuid_ok"\n' "$(expr substr $uuid 1 8):$(expr substr $uuid 9 8):$(expr substr $uuid 17 8):$(expr substr $uuid 25 8)"
|
||||
done;
|
||||
printf 'GOTO="md_end"\n'
|
||||
printf 'LABEL="md_uuid_ok"\n'
|
||||
@@ -29,12 +31,7 @@ else
|
||||
mv "${f}.new" "$f"
|
||||
done
|
||||
for uuid in $MD_UUID; do
|
||||
- if strstr "$uuid" "-"; then
|
||||
- # convert ID_FS_UUID to MD_UUID format
|
||||
- uuid=$(str_replace "$uuid" "-" "")
|
||||
- uuid=$(str_replace "$uuid" ":" "")
|
||||
- uuid="$(expr substr $uuid 1 8):$(expr substr $uuid 9 8):$(expr substr $uuid 17 8):$(expr substr $uuid 25 8)"
|
||||
- fi
|
||||
+ uuid="$(expr substr $uuid 1 8):$(expr substr $uuid 9 8):$(expr substr $uuid 17 8):$(expr substr $uuid 25 8)"
|
||||
wait_for_dev "/dev/disk/by-id/md-uuid-${uuid}"
|
||||
done
|
||||
fi
|
||||
|
70
0020.patch
70
0020.patch
@ -1,70 +0,0 @@
|
||||
From 6f0500ed4afa29ae8edc997933d598bc5862b4ce Mon Sep 17 00:00:00 2001
|
||||
From: Harald Hoyer <harald@redhat.com>
|
||||
Date: Mon, 13 Aug 2018 10:56:53 +0200
|
||||
Subject: [PATCH] iscsi: remove $() where it does not fit
|
||||
|
||||
also simplify iscsiadm command to one call
|
||||
---
|
||||
modules.d/95iscsi/iscsiroot.sh | 33 ++++++++++++++++++---------------
|
||||
1 file changed, 18 insertions(+), 15 deletions(-)
|
||||
|
||||
diff --git a/modules.d/95iscsi/iscsiroot.sh b/modules.d/95iscsi/iscsiroot.sh
|
||||
index 5ac0ad9a..76c8b3fe 100755
|
||||
--- a/modules.d/95iscsi/iscsiroot.sh
|
||||
+++ b/modules.d/95iscsi/iscsiroot.sh
|
||||
@@ -109,7 +109,7 @@ handle_netroot()
|
||||
arg=$(getarg rd.iscsi.in.password -d iscsi_in_password=)
|
||||
[ -n "$arg" ] && iscsi_in_password=$arg
|
||||
for p in $(getargs rd.iscsi.param -d iscsi_param); do
|
||||
- iscsi_param="$iscsi_param $p"
|
||||
+ iscsi_param="$iscsi_param $p"
|
||||
done
|
||||
|
||||
parse_iscsi_root "$1" || return 1
|
||||
@@ -208,28 +208,31 @@ handle_netroot()
|
||||
echo "iscsi_lun=$iscsi_lun . /bin/mount-lun.sh " > $hookdir/mount/01-$$-iscsi.sh
|
||||
fi
|
||||
|
||||
- ### ToDo: Upstream calls systemd-run - Shall we, do we have to port this?
|
||||
-
|
||||
targets=$(iscsiadm -m discovery -t st -p $iscsi_target_ip:${iscsi_target_port:+$iscsi_target_port} | sed 's/^.*iqn/iqn/')
|
||||
[ -z "$targets" ] && echo "Target discovery to $iscsi_target_ip:${iscsi_target_port:+$iscsi_target_port} failed with status $?" && exit 1
|
||||
|
||||
for target in $iscsi_target_name; do
|
||||
case "$targets" in
|
||||
*$target*)
|
||||
+ EXTRA=""
|
||||
if [ -n "$iscsi_iface_name" ]; then
|
||||
- $(iscsiadm -m iface -I $iscsi_iface_name --op=new)
|
||||
- [ -n "$iscsi_initiator" ] && $(iscsiadm -m iface -I $iscsi_iface_name --op=update --name=iface.initiatorname --value=$iscsi_initiator)
|
||||
- [ -n "$iscsi_netdev_name" ] && $(iscsiadm -m iface -I $iscsi_iface_name --op=update --name=iface.net_ifacename --value=$iscsi_netdev_name)
|
||||
- COMMAND="iscsiadm -m node -T $target -p $iscsi_target_ip${iscsi_target_port:+:$iscsi_target_port} -I $iscsi_iface_name --op=update"
|
||||
- else
|
||||
- COMMAND="iscsiadm -m node -T $target -p $iscsi_target_ip${iscsi_target_port:+:$iscsi_target_port} --op=update"
|
||||
+ iscsiadm -m iface -I $iscsi_iface_name --op=new
|
||||
+ EXTRA=" ${iscsi_netdev_name:+--name=iface.net_ifacename --value=$iscsi_netdev_name} "
|
||||
+ EXTRA="$EXTRA ${iscsi_initiator:+--name=iface.initiatorname --value=$iscsi_initiator} "
|
||||
fi
|
||||
- $($COMMAND --name=node.startup --value=onboot)
|
||||
- [ -n "$iscsi_username" ] && $($COMMAND --name=node.session.auth.username --value=$iscsi_username)
|
||||
- [ -n "$iscsi_password" ] && $($COMMAND --name=node.session.auth.password --value=$iscsi_password)
|
||||
- [ -n "$iscsi_in_username" ] && $($COMMAND --name=node.session.auth.username_in --value=$iscsi_in_username)
|
||||
- [ -n "$iscsi_in_password" ] && $($COMMAND --name=node.session.auth.password_in --value=$iscsi_in_password)
|
||||
- [ -n "$iscsi_param" ] && for param in $iscsi_param; do $($COMMAND --name=${param%=*} --value=${param#*=}); done
|
||||
+ [ -n "$iscsi_param" ] && for param in $iscsi_param; do EXTRA="$EXTRA --name=${param%=*} --value=${param#*=}"; done
|
||||
+
|
||||
+ iscsiadm -m node -T $target \
|
||||
+ ${iscsi_iface_name:+-I $iscsi_iface_name} \
|
||||
+ -p $iscsi_target_ip${iscsi_target_port:+:$iscsi_target_port} \
|
||||
+ --op=update \
|
||||
+ --name=node.startup --value=onboot \
|
||||
+ ${iscsi_username:+ --name=node.session.auth.username --value=$iscsi_username} \
|
||||
+ ${iscsi_password:+ --name=node.session.auth.password --value=$iscsi_password} \
|
||||
+ ${iscsi_in_username:+--name=node.session.auth.username_in --value=$iscsi_in_username} \
|
||||
+ ${iscsi_in_password:+--name=node.session.auth.password_in --value=$iscsi_in_password} \
|
||||
+ $EXTRA \
|
||||
+ $NULL
|
||||
;;
|
||||
*)
|
||||
;;
|
||||
|
32
0021.patch
32
0021.patch
@ -1,32 +0,0 @@
|
||||
From 0a80cda0ea1186bb3b384158aeda491443ae93ff Mon Sep 17 00:00:00 2001
|
||||
From: Harald Hoyer <harald@redhat.com>
|
||||
Date: Mon, 13 Aug 2018 11:30:03 +0200
|
||||
Subject: [PATCH] dracut.spec: remove warpclock from z-series, not the other
|
||||
way round
|
||||
|
||||
---
|
||||
dracut.spec | 3 ++-
|
||||
1 file changed, 2 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/dracut.spec b/dracut.spec
|
||||
index d24c6f36..09c74478 100644
|
||||
--- a/dracut.spec
|
||||
+++ b/dracut.spec
|
||||
@@ -224,7 +224,6 @@ rm -fr -- $RPM_BUILD_ROOT/%{dracutlibdir}/modules.d/98integrity
|
||||
|
||||
%ifnarch s390 s390x
|
||||
# remove architecture specific modules
|
||||
-rm -fr -- $RPM_BUILD_ROOT/%{dracutlibdir}/modules.d/00warpclock
|
||||
rm -fr -- $RPM_BUILD_ROOT/%{dracutlibdir}/modules.d/80cms
|
||||
rm -fr -- $RPM_BUILD_ROOT/%{dracutlibdir}/modules.d/81cio_ignore
|
||||
rm -fr -- $RPM_BUILD_ROOT/%{dracutlibdir}/modules.d/91zipl
|
||||
@@ -236,6 +235,8 @@ rm -fr -- $RPM_BUILD_ROOT/%{dracutlibdir}/modules.d/95qeth_rules
|
||||
rm -fr -- $RPM_BUILD_ROOT/%{dracutlibdir}/modules.d/95zfcp
|
||||
rm -fr -- $RPM_BUILD_ROOT/%{dracutlibdir}/modules.d/95zfcp_rules
|
||||
rm -fr -- $RPM_BUILD_ROOT/%{dracutlibdir}/modules.d/95znet
|
||||
+%else
|
||||
+rm -fr -- $RPM_BUILD_ROOT/%{dracutlibdir}/modules.d/00warpclock
|
||||
%endif
|
||||
|
||||
mkdir -p $RPM_BUILD_ROOT/boot/dracut
|
||||
|
24
0022.patch
24
0022.patch
@ -1,24 +0,0 @@
|
||||
From 26aea0299a7ec702972cbf8b5556731b762dcde9 Mon Sep 17 00:00:00 2001
|
||||
From: Harald Hoyer <harald@redhat.com>
|
||||
Date: Mon, 13 Aug 2018 11:37:44 +0200
|
||||
Subject: [PATCH] multipath-shutdown: fix shell syntax
|
||||
|
||||
seems like a misplaced $()
|
||||
---
|
||||
modules.d/90multipath/multipath-shutdown.sh | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/modules.d/90multipath/multipath-shutdown.sh b/modules.d/90multipath/multipath-shutdown.sh
|
||||
index 47e9990c..f160f45e 100755
|
||||
--- a/modules.d/90multipath/multipath-shutdown.sh
|
||||
+++ b/modules.d/90multipath/multipath-shutdown.sh
|
||||
@@ -1,7 +1,7 @@
|
||||
#!/bin/bash
|
||||
|
||||
for i in $(multipath -l -v1); do
|
||||
- if ! $(dmsetup table $i | sed -n '/.*queue_if_no_path.*/q1') ; then
|
||||
+ if ! dmsetup table $i | sed -n '/.*queue_if_no_path.*/q1' ; then
|
||||
dmsetup message $i 0 fail_if_no_path
|
||||
fi
|
||||
done
|
||||
|
150
0023.patch
150
0023.patch
@ -1,150 +0,0 @@
|
||||
From 6058b06b86ce1a505a640c78896eae32768077c1 Mon Sep 17 00:00:00 2001
|
||||
From: Harald Hoyer <harald@redhat.com>
|
||||
Date: Mon, 13 Aug 2018 16:27:59 +0200
|
||||
Subject: [PATCH] test/{TEST-50-MULTINIC,TEST-70-BONDBRIDGETEAMVLAN}: use
|
||||
qemu-3.0 syntax
|
||||
|
||||
use qemu-3.0 syntax for network devices
|
||||
---
|
||||
test/TEST-50-MULTINIC/test.sh | 20 +++++-----
|
||||
test/TEST-70-BONDBRIDGETEAMVLAN/server-init.sh | 4 ++
|
||||
test/TEST-70-BONDBRIDGETEAMVLAN/test.sh | 53 ++++++++++++++------------
|
||||
3 files changed, 43 insertions(+), 34 deletions(-)
|
||||
|
||||
diff --git a/test/TEST-50-MULTINIC/test.sh b/test/TEST-50-MULTINIC/test.sh
|
||||
index 7c108aa0..de40790f 100755
|
||||
--- a/test/TEST-50-MULTINIC/test.sh
|
||||
+++ b/test/TEST-50-MULTINIC/test.sh
|
||||
@@ -51,15 +51,17 @@ client_test() {
|
||||
fi
|
||||
|
||||
$testdir/run-qemu -drive format=raw,index=0,media=disk,file="$TESTDIR"/client.img -m 512M -smp 2 -nographic \
|
||||
- -net socket,vlan=0,connect=127.0.0.1:12350 \
|
||||
- -net nic,vlan=0,macaddr=52:54:00:12:34:$mac1,model=e1000 \
|
||||
- -net nic,vlan=0,macaddr=52:54:00:12:34:$mac2,model=e1000 \
|
||||
- -net nic,vlan=0,macaddr=52:54:00:12:34:$mac3,model=e1000 \
|
||||
- -net nic,vlan=1,macaddr=52:54:00:12:34:98,model=e1000 \
|
||||
- -net nic,vlan=2,macaddr=52:54:00:12:34:99,model=e1000 \
|
||||
- -watchdog i6300esb -watchdog-action poweroff \
|
||||
- -no-reboot \
|
||||
- -append "panic=1 rd.shell=0 $cmdline $DEBUGFAIL rd.retry=5 ro console=ttyS0,115200n81 selinux=0 init=/sbin/init rd.debug systemd.log_target=console loglevel=7" \
|
||||
+ -net socket,connect=127.0.0.1:12350 \
|
||||
+ -net nic,macaddr=52:54:00:12:34:$mac1,model=e1000 \
|
||||
+ -net nic,macaddr=52:54:00:12:34:$mac2,model=e1000 \
|
||||
+ -net nic,macaddr=52:54:00:12:34:$mac3,model=e1000 \
|
||||
+ -netdev hubport,id=n1,hubid=1 \
|
||||
+ -netdev hubport,id=n2,hubid=2 \
|
||||
+ --device e1000,netdev=n1,mac=52:54:00:12:34:98 \
|
||||
+ -device e1000,netdev=n2,mac=52:54:00:12:34:99 \
|
||||
+ -watchdog i6300esb -watchdog-action poweroff \
|
||||
+ -no-reboot \
|
||||
+ -append "panic=1 rd.shell=0 $cmdline $DEBUGFAIL rd.retry=5 ro console=ttyS0,115200n81 selinux=0 init=/sbin/init rd.debug systemd.log_target=console loglevel=7" \
|
||||
-initrd "$TESTDIR"/initramfs.testing
|
||||
|
||||
{ read OK; read IFACES; } < "$TESTDIR"/client.img
|
||||
diff --git a/test/TEST-70-BONDBRIDGETEAMVLAN/server-init.sh b/test/TEST-70-BONDBRIDGETEAMVLAN/server-init.sh
|
||||
index 562feae6..503ed9ed 100755
|
||||
--- a/test/TEST-70-BONDBRIDGETEAMVLAN/server-init.sh
|
||||
+++ b/test/TEST-70-BONDBRIDGETEAMVLAN/server-init.sh
|
||||
@@ -67,6 +67,10 @@ ip addr add 192.168.55.1/24 dev ens4.2
|
||||
ip addr add 192.168.56.1/24 dev ens4.3
|
||||
ip addr add 192.168.57.1/24 dev ens4.4
|
||||
linkup ens4
|
||||
+ip link set dev ens4.1 up
|
||||
+ip link set dev ens4.2 up
|
||||
+ip link set dev ens4.3 up
|
||||
+ip link set dev ens4.4 up
|
||||
ip link set dev eth2 name ens5
|
||||
ip addr add 192.168.51.1/24 dev ens5
|
||||
linkup ens5
|
||||
diff --git a/test/TEST-70-BONDBRIDGETEAMVLAN/test.sh b/test/TEST-70-BONDBRIDGETEAMVLAN/test.sh
|
||||
index 277bbd01..eadf09f1 100755
|
||||
--- a/test/TEST-70-BONDBRIDGETEAMVLAN/test.sh
|
||||
+++ b/test/TEST-70-BONDBRIDGETEAMVLAN/test.sh
|
||||
@@ -18,14 +18,14 @@ run_server() {
|
||||
-hda "$TESTDIR"/server.ext3 \
|
||||
-m 512M -smp 2 \
|
||||
-display none \
|
||||
- -net socket,vlan=0,listen=127.0.0.1:12370 \
|
||||
- -net socket,vlan=1,listen=127.0.0.1:12371 \
|
||||
- -net socket,vlan=2,listen=127.0.0.1:12372 \
|
||||
- -net socket,vlan=3,listen=127.0.0.1:12373 \
|
||||
- -net nic,vlan=0,macaddr=52:54:01:12:34:56,model=e1000 \
|
||||
- -net nic,vlan=1,macaddr=52:54:01:12:34:57,model=e1000 \
|
||||
- -net nic,vlan=2,macaddr=52:54:01:12:34:58,model=e1000 \
|
||||
- -net nic,vlan=3,macaddr=52:54:01:12:34:59,model=e1000 \
|
||||
+ -netdev socket,id=n0,listen=127.0.0.1:12370 \
|
||||
+ -netdev socket,id=n1,listen=127.0.0.1:12371 \
|
||||
+ -netdev socket,id=n2,listen=127.0.0.1:12372 \
|
||||
+ -netdev socket,id=n3,listen=127.0.0.1:12373 \
|
||||
+ -device e1000,netdev=n0,mac=52:54:01:12:34:56 \
|
||||
+ -device e1000,netdev=n1,mac=52:54:01:12:34:57 \
|
||||
+ -device e1000,netdev=n2,mac=52:54:01:12:34:58 \
|
||||
+ -device e1000,netdev=n3,mac=52:54:01:12:34:59 \
|
||||
${SERIAL:+-serial "$SERIAL"} \
|
||||
${SERIAL:--serial file:"$TESTDIR"/server.log} \
|
||||
-watchdog i6300esb -watchdog-action poweroff \
|
||||
@@ -58,22 +58,25 @@ client_test() {
|
||||
echo "Unable to make client sda image" 1>&2
|
||||
return 1
|
||||
fi
|
||||
+ if [[ $do_vlan13 ]]; then
|
||||
+ nic1=" -netdev socket,connect=127.0.0.1:12371,id=n1"
|
||||
+ nic3=" -netdev socket,connect=127.0.0.1:12373,id=n3"
|
||||
+ else
|
||||
+ nic1=" -netdev hubport,id=n1,hubid=2"
|
||||
+ nic3=" -netdev hubport,id=n3,hubid=3"
|
||||
+ fi
|
||||
|
||||
$testdir/run-qemu -hda "$TESTDIR"/client.img -m 512M -smp 2 -nographic \
|
||||
- -net socket,vlan=0,connect=127.0.0.1:12370 \
|
||||
- ${do_vlan13:+-net socket,vlan=1,connect=127.0.0.1:12371} \
|
||||
- -net socket,vlan=2,connect=127.0.0.1:12372 \
|
||||
- ${do_vlan13:+-net socket,vlan=3,connect=127.0.0.1:12373} \
|
||||
- -net nic,vlan=0,macaddr=52:54:00:12:34:01,model=e1000 \
|
||||
- -net nic,vlan=0,macaddr=52:54:00:12:34:02,model=e1000 \
|
||||
- -net nic,vlan=1,macaddr=52:54:00:12:34:03,model=e1000 \
|
||||
- -net nic,vlan=2,macaddr=52:54:00:12:34:04,model=e1000 \
|
||||
- -net nic,vlan=3,macaddr=52:54:00:12:34:05,model=e1000 \
|
||||
+ -netdev socket,connect=127.0.0.1:12370,id=s1 -netdev hubport,hubid=1,id=h1,netdev=s1 \
|
||||
+ -netdev hubport,hubid=1,id=h2 -device e1000,mac=52:54:00:12:34:01,netdev=h2 \
|
||||
+ -netdev hubport,hubid=1,id=h3 -device e1000,mac=52:54:00:12:34:02,netdev=h3 \
|
||||
+ $nic1 -device e1000,mac=52:54:00:12:34:03,netdev=n1 \
|
||||
+ -netdev socket,connect=127.0.0.1:12372,id=n2 -device e1000,mac=52:54:00:12:34:04,netdev=n2 \
|
||||
+ $nic3 -device e1000,mac=52:54:00:12:34:05,netdev=n3 \
|
||||
-watchdog i6300esb -watchdog-action poweroff \
|
||||
-no-reboot \
|
||||
-append "panic=1 $cmdline rd.debug $DEBUGFAIL rd.retry=5 rw console=ttyS0,115200n81 selinux=0 init=/sbin/init" \
|
||||
-initrd "$TESTDIR"/initramfs.testing
|
||||
-
|
||||
{
|
||||
read OK
|
||||
if [[ "$OK" != "OK" ]]; then
|
||||
@@ -113,19 +116,19 @@ test_client() {
|
||||
client_test "Multiple VLAN" \
|
||||
"yes" \
|
||||
"
|
||||
-vlan=vlan0001:ens4
|
||||
-vlan=vlan2:ens4
|
||||
-vlan=ens4.3:ens4
|
||||
-vlan=ens4.0004:ens4
|
||||
+vlan=vlan0001:ens5
|
||||
+vlan=vlan2:ens5
|
||||
+vlan=ens5.3:ens5
|
||||
+vlan=ens5.0004:ens5
|
||||
ip=ens3:dhcp
|
||||
ip=192.168.54.101::192.168.54.1:24:test:vlan0001:none
|
||||
ip=192.168.55.102::192.168.55.1:24:test:vlan2:none
|
||||
-ip=192.168.56.103::192.168.56.1:24:test:ens4.3:none
|
||||
-ip=192.168.57.104::192.168.57.1:24:test:ens4.0004:none
|
||||
+ip=192.168.56.103::192.168.56.1:24:test:ens5.3:none
|
||||
+ip=192.168.57.104::192.168.57.1:24:test:ens5.0004:none
|
||||
rd.neednet=1
|
||||
root=nfs:192.168.50.1:/nfs/client bootdev=ens3
|
||||
" \
|
||||
- 'ens3 ens4.0004 ens4.3 vlan0001 vlan2 /run/initramfs/state/etc/sysconfig/network-scripts/ifcfg-ens3 # Generated by dracut initrd NAME="ens3" DEVICE="ens3" ONBOOT=yes NETBOOT=yes IPV6INIT=yes BOOTPROTO=dhcp TYPE=Ethernet /run/initramfs/state/etc/sysconfig/network-scripts/ifcfg-ens4.0004 # Generated by dracut initrd NAME="ens4.0004" ONBOOT=yes NETBOOT=yes BOOTPROTO=none IPADDR="192.168.57.104" PREFIX="24" GATEWAY="192.168.57.1" TYPE=Vlan DEVICE="ens4.0004" VLAN=yes PHYSDEV="ens4" /run/initramfs/state/etc/sysconfig/network-scripts/ifcfg-ens4.3 # Generated by dracut initrd NAME="ens4.3" ONBOOT=yes NETBOOT=yes BOOTPROTO=none IPADDR="192.168.56.103" PREFIX="24" GATEWAY="192.168.56.1" TYPE=Vlan DEVICE="ens4.3" VLAN=yes PHYSDEV="ens4" /run/initramfs/state/etc/sysconfig/network-scripts/ifcfg-vlan0001 # Generated by dracut initrd NAME="vlan0001" ONBOOT=yes NETBOOT=yes BOOTPROTO=none IPADDR="192.168.54.101" PREFIX="24" GATEWAY="192.168.54.1" TYPE=Vlan DEVICE="vlan0001" VLAN=yes PHYSDEV="ens4" /run/initramfs/state/etc/sysconfig/network-scripts/ifcfg-vlan2 # Generated by dracut initrd NAME="vlan2" ONBOOT=yes NETBOOT=yes BOOTPROTO=none IPADDR="192.168.55.102" PREFIX="24" GATEWAY="192.168.55.1" TYPE=Vlan DEVICE="vlan2" VLAN=yes PHYSDEV="ens4" EOF ' \
|
||||
+ 'ens3 ens5.0004 ens5.3 vlan0001 vlan2 /run/initramfs/state/etc/sysconfig/network-scripts/ifcfg-ens3 # Generated by dracut initrd NAME="ens3" DEVICE="ens3" ONBOOT=yes NETBOOT=yes IPV6INIT=yes BOOTPROTO=dhcp TYPE=Ethernet /run/initramfs/state/etc/sysconfig/network-scripts/ifcfg-ens5.0004 # Generated by dracut initrd NAME="ens5.0004" ONBOOT=yes NETBOOT=yes BOOTPROTO=none IPADDR="192.168.57.104" PREFIX="24" GATEWAY="192.168.57.1" TYPE=Vlan DEVICE="ens5.0004" VLAN=yes PHYSDEV="ens5" /run/initramfs/state/etc/sysconfig/network-scripts/ifcfg-ens5.3 # Generated by dracut initrd NAME="ens5.3" ONBOOT=yes NETBOOT=yes BOOTPROTO=none IPADDR="192.168.56.103" PREFIX="24" GATEWAY="192.168.56.1" TYPE=Vlan DEVICE="ens5.3" VLAN=yes PHYSDEV="ens5" /run/initramfs/state/etc/sysconfig/network-scripts/ifcfg-vlan0001 # Generated by dracut initrd NAME="vlan0001" ONBOOT=yes NETBOOT=yes BOOTPROTO=none IPADDR="192.168.54.101" PREFIX="24" GATEWAY="192.168.54.1" TYPE=Vlan DEVICE="vlan0001" VLAN=yes PHYSDEV="ens5" /run/initramfs/state/etc/sysconfig/network-scripts/ifcfg-vlan2 # Generated by dracut initrd NAME="vlan2" ONBOOT=yes NETBOOT=yes BOOTPROTO=none IPADDR="192.168.55.102" PREFIX="24" GATEWAY="192.168.55.1" TYPE=Vlan DEVICE="vlan2" VLAN=yes PHYSDEV="ens5" EOF ' \
|
||||
|| return 1
|
||||
|
||||
client_test "Multiple Bonds" \
|
||||
|
48
0024.patch
48
0024.patch
@ -1,48 +0,0 @@
|
||||
From ab94a204e0cb22bcaa2b2863dee9ffb9f22e91c5 Mon Sep 17 00:00:00 2001
|
||||
From: Harald Hoyer <harald@redhat.com>
|
||||
Date: Tue, 14 Aug 2018 11:03:11 +0200
|
||||
Subject: [PATCH] load modules earlier for iscsi via dhcp root-path
|
||||
|
||||
---
|
||||
modules.d/95iscsi/parse-iscsiroot.sh | 15 +++++++--------
|
||||
1 file changed, 7 insertions(+), 8 deletions(-)
|
||||
|
||||
diff --git a/modules.d/95iscsi/parse-iscsiroot.sh b/modules.d/95iscsi/parse-iscsiroot.sh
|
||||
index f884e684..7a64d888 100755
|
||||
--- a/modules.d/95iscsi/parse-iscsiroot.sh
|
||||
+++ b/modules.d/95iscsi/parse-iscsiroot.sh
|
||||
@@ -90,19 +90,13 @@ if [ -n "$iscsi_firmware" ]; then
|
||||
initqueue --unique --onetime --settled /sbin/iscsiroot online "iscsi:" "'$NEWROOT'"
|
||||
fi
|
||||
|
||||
-if [ -z "$netroot" ] || ! [ "${netroot%%:*}" = "iscsi" ]; then
|
||||
- return 1
|
||||
-fi
|
||||
-
|
||||
-initqueue --unique --onetime --timeout /sbin/iscsiroot timeout "$netroot" "$NEWROOT"
|
||||
-
|
||||
-initqueue --onetime modprobe --all -b -q qla4xxx cxgb3i cxgb4i bnx2i be2iscsi qedi
|
||||
-
|
||||
# ISCSI actually supported?
|
||||
if ! [ -e /sys/module/iscsi_tcp ]; then
|
||||
modprobe -b -q iscsi_tcp || die "iscsiroot requested but kernel/initrd does not support iscsi"
|
||||
fi
|
||||
|
||||
+modprobe --all -b -q qla4xxx cxgb3i cxgb4i bnx2i be2iscsi
|
||||
+
|
||||
if [ -n "$netroot" ] && [ "$root" != "/dev/root" ] && [ "$root" != "dhcp" ]; then
|
||||
if ! getargbool 1 rd.neednet >/dev/null || ! getarg "ip="; then
|
||||
initqueue --unique --onetime --settled /sbin/iscsiroot dummy "'$netroot'" "'$NEWROOT'"
|
||||
@@ -141,6 +135,11 @@ if [ -z $iscsi_initiator ] && [ -f /sys/firmware/ibft/initiator/initiator-name ]
|
||||
fi
|
||||
fi
|
||||
|
||||
+if [ -z "$netroot" ] || ! [ "${netroot%%:*}" = "iscsi" ]; then
|
||||
+ return 1
|
||||
+fi
|
||||
+
|
||||
+initqueue --unique --onetime --timeout /sbin/iscsiroot timeout "$netroot" "$NEWROOT"
|
||||
|
||||
for nroot in $(getargs netroot); do
|
||||
[ "${nroot%%:*}" = "iscsi" ] || continue
|
||||
|
32
0025.patch
32
0025.patch
@ -1,32 +0,0 @@
|
||||
From ffbd37d7844b96611506eb4631a3e4f3b5e74c86 Mon Sep 17 00:00:00 2001
|
||||
From: Harald Hoyer <harald@redhat.com>
|
||||
Date: Tue, 14 Aug 2018 11:03:48 +0200
|
||||
Subject: [PATCH] TEST-31-ISCSI-MULTI: use different port than TEST-30
|
||||
|
||||
---
|
||||
test/TEST-31-ISCSI-MULTI/test.sh | 4 ++--
|
||||
1 file changed, 2 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/test/TEST-31-ISCSI-MULTI/test.sh b/test/TEST-31-ISCSI-MULTI/test.sh
|
||||
index 2f2b6ed5..c2f86ac8 100755
|
||||
--- a/test/TEST-31-ISCSI-MULTI/test.sh
|
||||
+++ b/test/TEST-31-ISCSI-MULTI/test.sh
|
||||
@@ -24,7 +24,7 @@ run_server() {
|
||||
${SERIAL:--serial file:"$TESTDIR"/server.log} \
|
||||
-net nic,macaddr=52:54:00:12:34:56,model=e1000 \
|
||||
-net nic,macaddr=52:54:00:12:34:57,model=e1000 \
|
||||
- -net socket,listen=127.0.0.1:12330 \
|
||||
+ -net socket,listen=127.0.0.1:12331 \
|
||||
-no-reboot \
|
||||
-append "panic=1 root=/dev/sda rootfstype=ext3 rw console=ttyS0,115200n81 selinux=0 $SERVER_DEBUG" \
|
||||
-initrd $TESTDIR/initramfs.server \
|
||||
@@ -49,7 +49,7 @@ run_client() {
|
||||
-m 512M -smp 2 -nographic \
|
||||
-net nic,macaddr=52:54:00:12:34:00,model=e1000 \
|
||||
-net nic,macaddr=52:54:00:12:34:01,model=e1000 \
|
||||
- -net socket,connect=127.0.0.1:12330 \
|
||||
+ -net socket,connect=127.0.0.1:12331 \
|
||||
-no-reboot \
|
||||
-append "panic=1 rw rd.auto rd.retry=50 console=ttyS0,115200n81 selinux=0 rd.debug=0 rd.shell=0 $DEBUGFAIL $*" \
|
||||
-initrd $TESTDIR/initramfs.testing
|
||||
|
231
0026.patch
231
0026.patch
@ -1,231 +0,0 @@
|
||||
From 82fe4ea0a5a745c920aa396775b9ebb52b4d2927 Mon Sep 17 00:00:00 2001
|
||||
From: Harald Hoyer <harald@redhat.com>
|
||||
Date: Tue, 14 Aug 2018 11:04:17 +0200
|
||||
Subject: [PATCH] enable parallel test suite
|
||||
|
||||
$ time sudo make -j SKIP=14 V=2 check
|
||||
make[1]: Entering directory '/home/harald/git/dracut/test/TEST-13-ENC-RAID-LVM'
|
||||
make[1]: Entering directory '/home/harald/git/dracut/test/TEST-40-NBD'
|
||||
make[1]: Entering directory '/home/harald/git/dracut/test/TEST-04-FULL-SYSTEMD'
|
||||
make[1]: Entering directory '/home/harald/git/dracut/test/TEST-12-RAID-DEG'
|
||||
make[1]: Entering directory '/home/harald/git/dracut/test/TEST-15-BTRFSRAID'
|
||||
make[1]: Entering directory '/home/harald/git/dracut/test/TEST-16-DMSQUASH'
|
||||
make[1]: Entering directory '/home/harald/git/dracut/test/TEST-17-LVM-THIN'
|
||||
make[1]: Entering directory '/home/harald/git/dracut/test/TEST-11-LVM'
|
||||
make[1]: Entering directory '/home/harald/git/dracut/test/TEST-31-ISCSI-MULTI'
|
||||
make[1]: Entering directory '/home/harald/git/dracut/test/TEST-20-NFS'
|
||||
make[1]: Entering directory '/home/harald/git/dracut/test/TEST-99-RPM'
|
||||
make[1]: Entering directory '/home/harald/git/dracut/test/TEST-02-SYSTEMD'
|
||||
make[1]: Entering directory '/home/harald/git/dracut/test/TEST-30-ISCSI'
|
||||
make[1]: Entering directory '/home/harald/git/dracut/test/TEST-01-BASIC'
|
||||
make[1]: Entering directory '/home/harald/git/dracut/test/TEST-03-USR-MOUNT'
|
||||
make[1]: Entering directory '/home/harald/git/dracut/test/TEST-70-BONDBRIDGETEAMVLAN'
|
||||
make[1]: Entering directory '/home/harald/git/dracut/test/TEST-50-MULTINIC'
|
||||
make[1]: Entering directory '/home/harald/git/dracut/test/TEST-10-RAID'
|
||||
make[1]: Entering directory '/home/harald/git/dracut/test/TEST-18-LVM-ENC-LV'
|
||||
TEST: root filesystem on an encrypted LVM PV on a degraded RAID-5 [STARTED]
|
||||
TEST: root filesystem on NBD [STARTED]
|
||||
TEST: root filesystem on NBD [SKIPPED]
|
||||
TEST: Full systemd serialization/deserialization test with /usr mount [STARTED]
|
||||
TEST: root filesystem on multiple device btrfs [STARTED]
|
||||
make[1]: Leaving directory '/home/harald/git/dracut/test/TEST-40-NBD'
|
||||
TEST: root filesystem on a LiveCD dmsquash filesystem [STARTED]
|
||||
TEST: root filesystem on a LiveCD dmsquash filesystem [SKIPPED]
|
||||
make[1]: Leaving directory '/home/harald/git/dracut/test/TEST-16-DMSQUASH'
|
||||
TEST: root filesystem on LVM on encrypted partitions of a RAID-5 [STARTED]
|
||||
TEST: root filesystem on LVM PV [STARTED]
|
||||
TEST: rpm integrity after dracut and kernel install [STARTED]
|
||||
TEST: root filesystem on NFS [STARTED]
|
||||
TEST: root filesystem over iSCSI [STARTED]
|
||||
TEST: root filesystem on LVM PV with thin pool [STARTED]
|
||||
TEST: root filesystem over iSCSI [STARTED]
|
||||
TEST: root filesystem on a ext3 filesystem [STARTED]
|
||||
TEST: root filesystem on a ext3 filesystem [STARTED]
|
||||
TEST: root filesystem on a btrfs filesystem with /usr subvolume [STARTED]
|
||||
TEST: root filesystem on NFS with bridging/bonding/vlan [STARTED]
|
||||
TEST: root filesystem on NFS with multiple nics [STARTED]
|
||||
TEST: root filesystem on an encrypted LVM PV on a RAID-5 [STARTED]
|
||||
TEST: root filesystem on LVM on encrypted partitions of a RAID-5 [STARTED]
|
||||
TEST: root filesystem on LVM PV [OK]
|
||||
make[1]: Leaving directory '/home/harald/git/dracut/test/TEST-11-LVM'
|
||||
TEST: root filesystem on multiple device btrfs [OK]
|
||||
make[1]: Leaving directory '/home/harald/git/dracut/test/TEST-15-BTRFSRAID'
|
||||
TEST: root filesystem on LVM PV with thin pool [OK]
|
||||
make[1]: Leaving directory '/home/harald/git/dracut/test/TEST-17-LVM-THIN'
|
||||
TEST: root filesystem on a ext3 filesystem [OK]
|
||||
make[1]: Leaving directory '/home/harald/git/dracut/test/TEST-02-SYSTEMD'
|
||||
TEST: root filesystem on a btrfs filesystem with /usr subvolume [OK]
|
||||
make[1]: Leaving directory '/home/harald/git/dracut/test/TEST-03-USR-MOUNT'
|
||||
TEST: root filesystem on LVM on encrypted partitions of a RAID-5 [OK]
|
||||
make[1]: Leaving directory '/home/harald/git/dracut/test/TEST-18-LVM-ENC-LV'
|
||||
TEST: Full systemd serialization/deserialization test with /usr mount [OK]
|
||||
make[1]: Leaving directory '/home/harald/git/dracut/test/TEST-04-FULL-SYSTEMD'
|
||||
TEST: root filesystem on an encrypted LVM PV on a RAID-5 [OK]
|
||||
make[1]: Leaving directory '/home/harald/git/dracut/test/TEST-10-RAID'
|
||||
TEST: root filesystem on LVM on encrypted partitions of a RAID-5 [OK]
|
||||
make[1]: Leaving directory '/home/harald/git/dracut/test/TEST-13-ENC-RAID-LVM'
|
||||
TEST: root filesystem over iSCSI [OK]
|
||||
make[1]: Leaving directory '/home/harald/git/dracut/test/TEST-30-ISCSI'
|
||||
TEST: root filesystem on a ext3 filesystem [OK]
|
||||
make[1]: Leaving directory '/home/harald/git/dracut/test/TEST-01-BASIC'
|
||||
TEST: root filesystem over iSCSI [OK]
|
||||
make[1]: Leaving directory '/home/harald/git/dracut/test/TEST-31-ISCSI-MULTI'
|
||||
TEST: rpm integrity after dracut and kernel install [OK]
|
||||
make[1]: Leaving directory '/home/harald/git/dracut/test/TEST-99-RPM'
|
||||
TEST: root filesystem on NFS [OK]
|
||||
make[1]: Leaving directory '/home/harald/git/dracut/test/TEST-20-NFS'
|
||||
TEST: root filesystem on NFS with bridging/bonding/vlan [OK]
|
||||
make[1]: Leaving directory '/home/harald/git/dracut/test/TEST-70-BONDBRIDGETEAMVLAN'
|
||||
TEST: root filesystem on an encrypted LVM PV on a degraded RAID-5 [OK]
|
||||
make[1]: Leaving directory '/home/harald/git/dracut/test/TEST-12-RAID-DEG'
|
||||
TEST: root filesystem on NFS with multiple nics [OK]
|
||||
make[1]: Leaving directory '/home/harald/git/dracut/test/TEST-50-MULTINIC'
|
||||
|
||||
real 9m3,969s
|
||||
user 22m50,323s
|
||||
sys 5m24,411s
|
||||
---
|
||||
test/Makefile | 21 +++++++++--------
|
||||
test/test-functions | 68 ++++++++++++++++++++++++++++-------------------------
|
||||
2 files changed, 47 insertions(+), 42 deletions(-)
|
||||
|
||||
diff --git a/test/Makefile b/test/Makefile
|
||||
index eaa944fb..0b33660b 100644
|
||||
--- a/test/Makefile
|
||||
+++ b/test/Makefile
|
||||
@@ -1,15 +1,16 @@
|
||||
-.PHONY: all check clean
|
||||
+.PHONY: all check clean $(wildcard TEST-??-*)
|
||||
|
||||
-check:
|
||||
+$(wildcard TEST-??-*):
|
||||
@[ "$$EUID" == "0" ] || { echo "'check' must be run as root! Please use 'sudo'."; exit 1; }
|
||||
- @{ ret=0; \
|
||||
- for i in TEST-[0-9]*; do \
|
||||
- [ -d $$i ] || continue ; \
|
||||
- [ -f $$i/Makefile ] || continue ; \
|
||||
- if [ -n "$$TESTS" ]; then t=$${i##TEST-}; t=$${t%%-*}; [ "$${TESTS#*$$t*}" != "$$TESTS" ] || continue; fi; \
|
||||
- if [ -n "$$SKIP" ]; then t=$${i##TEST-}; t=$${t%%-*}; [ "$${SKIP#*$$t*}" != "$$SKIP" ] && continue; fi; \
|
||||
- $(MAKE) -C $$i all ; ret=$$((ret + $$?)); \
|
||||
- done; exit $$ret; }
|
||||
+ @{ \
|
||||
+ [ -d $@ ] || exit 0; \
|
||||
+ [ -f $@/Makefile ] || exit 0; \
|
||||
+ if [ -n "$$TESTS" ]; then t=$${$@##TEST-}; t=$${t%%-*}; [ "$${TESTS#*$$t*}" != "$$TESTS" ] || exit 0; fi; \
|
||||
+ if [ -n "$$SKIP" ]; then t=$${$@##TEST-}; t=$${t%%-*}; [ "$${SKIP#*$$t*}" != "$$SKIP" ] && exit 0; fi; \
|
||||
+ $(MAKE) -C $@ all ; \
|
||||
+ }
|
||||
+
|
||||
+check: $(wildcard TEST-??-*)
|
||||
|
||||
clean:
|
||||
@for i in TEST-[0-9]*; do \
|
||||
diff --git a/test/test-functions b/test/test-functions
|
||||
index 2b8a4d26..57611ff5 100644
|
||||
--- a/test/test-functions
|
||||
+++ b/test/test-functions
|
||||
@@ -4,14 +4,14 @@ export PATH
|
||||
|
||||
[[ -e .testdir ]] && . .testdir
|
||||
if [[ -z "$TESTDIR" ]] || [[ ! -d "$TESTDIR" ]]; then
|
||||
- TESTDIR=$(mktemp -d -p "/var/tmp" -t dracut-test.XXXXXX)
|
||||
+ TESTDIR=$(mktemp -d -p "/var/tmp" -t dracut-test.XXXXXX)
|
||||
fi
|
||||
echo "TESTDIR=\"$TESTDIR\"" > .testdir
|
||||
export TESTDIR
|
||||
|
||||
command -v test_check &>/dev/null || test_check() {
|
||||
- :
|
||||
-}
|
||||
+ :
|
||||
+ }
|
||||
|
||||
# terminal sequence to set color to a 'success' color (currently: green)
|
||||
function SETCOLOR_SUCCESS() { echo -en '\033[0;32m'; }
|
||||
@@ -22,6 +22,11 @@ function SETCOLOR_WARNING() { echo -en '\033[0;33m'; }
|
||||
# terminal sequence to reset to the default color.
|
||||
function SETCOLOR_NORMAL() { echo -en '\033[0;39m'; }
|
||||
|
||||
+COLOR_SUCCESS='\033[0;32m'
|
||||
+COLOR_FAILURE='\033[0;31m'
|
||||
+COLOR_WARNING='\033[0;33m'
|
||||
+COLOR_NORMAL='\033[0;39m'
|
||||
+
|
||||
check_root() {
|
||||
if (( $EUID != 0 )); then
|
||||
SETCOLOR_FAILURE; echo "Tests must be run as root! Please use 'sudo'."; SETCOLOR_NORMAL
|
||||
@@ -49,45 +54,44 @@ while (($# > 0)); do
|
||||
exit $?;;
|
||||
--all)
|
||||
check_root
|
||||
- echo -n "TEST: $TEST_DESCRIPTION ";
|
||||
if ! test_check 2&>test.log ; then
|
||||
- SETCOLOR_WARNING
|
||||
- echo "[SKIPPED]"
|
||||
- SETCOLOR_NORMAL
|
||||
+ echo -e "TEST: $TEST_DESCRIPTION " $COLOR_WARNING "[SKIPPED]" $COLOR_NORMAL
|
||||
exit 0;
|
||||
+ else
|
||||
+ echo "TEST: $TEST_DESCRIPTION [STARTED]";
|
||||
fi
|
||||
if [ "$V" != "1" ]; then
|
||||
- (
|
||||
- test_setup && test_run
|
||||
- ret=$?
|
||||
- test_cleanup
|
||||
- rm -fr -- "$TESTDIR"
|
||||
- rm -f -- .testdir
|
||||
- exit $ret
|
||||
- ) </dev/null >test.log 2>&1
|
||||
+ (
|
||||
+ test_setup && test_run
|
||||
+ ret=$?
|
||||
+ test_cleanup
|
||||
+ rm -fr -- "$TESTDIR"
|
||||
+ rm -f -- .testdir
|
||||
+ exit $ret
|
||||
+ ) </dev/null >test.log 2>&1
|
||||
else
|
||||
- set -o pipefail
|
||||
- (
|
||||
- test_setup && test_run
|
||||
- ret=$?
|
||||
- test_cleanup
|
||||
- rm -fr -- "$TESTDIR"
|
||||
- rm -f -- .testdir
|
||||
- exit $ret
|
||||
- ) </dev/null 2>&1 | tee test.log
|
||||
+ set -o pipefail
|
||||
+ (
|
||||
+ test_setup && test_run
|
||||
+ ret=$?
|
||||
+ test_cleanup
|
||||
+ rm -fr -- "$TESTDIR"
|
||||
+ rm -f -- .testdir
|
||||
+ exit $ret
|
||||
+ ) </dev/null 2>&1 | tee test.log
|
||||
fi
|
||||
ret=$?
|
||||
set +o pipefail
|
||||
if [ $ret -eq 0 ]; then
|
||||
- rm -- test.log
|
||||
- SETCOLOR_SUCCESS
|
||||
- echo "[OK]"
|
||||
- SETCOLOR_NORMAL
|
||||
+ rm -- test.log
|
||||
+ echo -e "TEST: $TEST_DESCRIPTION " $COLOR_SUCCESS "[OK]" $COLOR_NORMAL
|
||||
else
|
||||
- SETCOLOR_FAILURE
|
||||
- echo "[FAILED]"
|
||||
- SETCOLOR_NORMAL
|
||||
- echo "see $(pwd)/test.log"
|
||||
+ echo -e "TEST: $TEST_DESCRIPTION " $COLOR_FAILURE "[FAILED]" $COLOR_NORMAL
|
||||
+ if [ "$V" == "2" ]; then
|
||||
+ cat $(pwd)/test.log
|
||||
+ else
|
||||
+ echo "see $(pwd)/test.log"
|
||||
+ fi
|
||||
fi
|
||||
exit $ret;;
|
||||
*) break ;;
|
||||
|
23
0027.patch
23
0027.patch
@ -1,23 +0,0 @@
|
||||
From 393da0c370deaea03b7f72a35782fde506526a49 Mon Sep 17 00:00:00 2001
|
||||
From: Harald Hoyer <harald@redhat.com>
|
||||
Date: Tue, 14 Aug 2018 11:35:26 +0200
|
||||
Subject: [PATCH] TEST-50-MULTINIC: s/--device/-device
|
||||
|
||||
---
|
||||
test/TEST-50-MULTINIC/test.sh | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/test/TEST-50-MULTINIC/test.sh b/test/TEST-50-MULTINIC/test.sh
|
||||
index de40790f..2640c318 100755
|
||||
--- a/test/TEST-50-MULTINIC/test.sh
|
||||
+++ b/test/TEST-50-MULTINIC/test.sh
|
||||
@@ -57,7 +57,7 @@ client_test() {
|
||||
-net nic,macaddr=52:54:00:12:34:$mac3,model=e1000 \
|
||||
-netdev hubport,id=n1,hubid=1 \
|
||||
-netdev hubport,id=n2,hubid=2 \
|
||||
- --device e1000,netdev=n1,mac=52:54:00:12:34:98 \
|
||||
+ -device e1000,netdev=n1,mac=52:54:00:12:34:98 \
|
||||
-device e1000,netdev=n2,mac=52:54:00:12:34:99 \
|
||||
-watchdog i6300esb -watchdog-action poweroff \
|
||||
-no-reboot \
|
||||
|
34
0028.patch
34
0028.patch
@ -1,34 +0,0 @@
|
||||
From 827a5b1a80c63f62fbe70945d46a8eb9453fc9fe Mon Sep 17 00:00:00 2001
|
||||
From: Harald Hoyer <harald@redhat.com>
|
||||
Date: Tue, 14 Aug 2018 11:37:57 +0200
|
||||
Subject: [PATCH] test: also output server.log on failure
|
||||
|
||||
---
|
||||
test/test-functions | 6 +++++-
|
||||
1 file changed, 5 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/test/test-functions b/test/test-functions
|
||||
index 57611ff5..f27be912 100644
|
||||
--- a/test/test-functions
|
||||
+++ b/test/test-functions
|
||||
@@ -75,6 +75,9 @@ while (($# > 0)); do
|
||||
test_setup && test_run
|
||||
ret=$?
|
||||
test_cleanup
|
||||
+ if ((ret!=0)) && [[ -f "$TESTDIR"/server.log ]]; then
|
||||
+ mv [[ -f "$TESTDIR"/server.log ]] ./
|
||||
+ fi
|
||||
rm -fr -- "$TESTDIR"
|
||||
rm -f -- .testdir
|
||||
exit $ret
|
||||
@@ -88,7 +91,8 @@ while (($# > 0)); do
|
||||
else
|
||||
echo -e "TEST: $TEST_DESCRIPTION " $COLOR_FAILURE "[FAILED]" $COLOR_NORMAL
|
||||
if [ "$V" == "2" ]; then
|
||||
- cat $(pwd)/test.log
|
||||
+ cat $(pwd)/server.log $(pwd)/test.log
|
||||
+ echo -e "TEST: $TEST_DESCRIPTION " $COLOR_FAILURE "[FAILED]" $COLOR_NORMAL
|
||||
else
|
||||
echo "see $(pwd)/test.log"
|
||||
fi
|
||||
|
23
0029.patch
23
0029.patch
@ -1,23 +0,0 @@
|
||||
From 94cc856cb8e4a325cc26a3bcc2d9e92da6a2be69 Mon Sep 17 00:00:00 2001
|
||||
From: Harald Hoyer <harald@redhat.com>
|
||||
Date: Tue, 14 Aug 2018 13:57:15 +0200
|
||||
Subject: [PATCH] TEST-70-BONDBRIDGETEAMVLAN: load vlan kernel modules
|
||||
|
||||
---
|
||||
test/TEST-70-BONDBRIDGETEAMVLAN/server-init.sh | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/test/TEST-70-BONDBRIDGETEAMVLAN/server-init.sh b/test/TEST-70-BONDBRIDGETEAMVLAN/server-init.sh
|
||||
index 503ed9ed..b9f01c9b 100755
|
||||
--- a/test/TEST-70-BONDBRIDGETEAMVLAN/server-init.sh
|
||||
+++ b/test/TEST-70-BONDBRIDGETEAMVLAN/server-init.sh
|
||||
@@ -49,7 +49,7 @@ linkup() {
|
||||
&& wait_for_if_up $1 2>/dev/null
|
||||
}
|
||||
|
||||
-modprobe -b -q 8021q
|
||||
+modprobe --all -b -q 8021q ipvlan macvlan
|
||||
>/dev/watchdog
|
||||
ip addr add 127.0.0.1/8 dev lo
|
||||
linkup lo
|
||||
|
338
0030.patch
338
0030.patch
@ -1,338 +0,0 @@
|
||||
From ca8f1c1ba3e5f1ebfb2e5e70ea4d4b7a791b0bc2 Mon Sep 17 00:00:00 2001
|
||||
From: Harald Hoyer <harald@redhat.com>
|
||||
Date: Tue, 14 Aug 2018 13:58:21 +0200
|
||||
Subject: [PATCH] test: fixed KVERSION and qemu backwards compatiblity
|
||||
|
||||
---
|
||||
test/TEST-50-MULTINIC/test.sh | 137 ++++++++++++++++++--------------
|
||||
test/TEST-70-BONDBRIDGETEAMVLAN/test.sh | 52 ++++++++----
|
||||
2 files changed, 115 insertions(+), 74 deletions(-)
|
||||
|
||||
diff --git a/test/TEST-50-MULTINIC/test.sh b/test/TEST-50-MULTINIC/test.sh
|
||||
index 2640c318..02443c40 100755
|
||||
--- a/test/TEST-50-MULTINIC/test.sh
|
||||
+++ b/test/TEST-50-MULTINIC/test.sh
|
||||
@@ -12,19 +12,36 @@ run_server() {
|
||||
echo "MULTINIC TEST SETUP: Starting DHCP/NFS server"
|
||||
|
||||
fsck -a "$TESTDIR"/server.ext3 || return 1
|
||||
- $testdir/run-qemu \
|
||||
- -drive format=raw,index=0,media=disk,file="$TESTDIR"/server.ext3 \
|
||||
- -m 512M -smp 2 \
|
||||
- -display none \
|
||||
- -net socket,listen=127.0.0.1:12350 \
|
||||
- -net nic,macaddr=52:54:01:12:34:56,model=e1000 \
|
||||
- ${SERIAL:+-serial "$SERIAL"} \
|
||||
- ${SERIAL:--serial file:"$TESTDIR"/server.log} \
|
||||
- -watchdog i6300esb -watchdog-action poweroff \
|
||||
- -no-reboot \
|
||||
- -append "panic=1 loglevel=7 root=/dev/sda rootfstype=ext3 rw console=ttyS0,115200n81 selinux=0" \
|
||||
- -initrd "$TESTDIR"/initramfs.server \
|
||||
- -pidfile "$TESTDIR"/server.pid -daemonize || return 1
|
||||
+
|
||||
+ if $testdir/run-qemu --help | grep -qF -m1 'netdev hubport,id=str,hubid=n[,netdev=nd]' && echo OK; then
|
||||
+ $testdir/run-qemu \
|
||||
+ -drive format=raw,index=0,media=disk,file="$TESTDIR"/server.ext3 \
|
||||
+ -m 512M -smp 2 \
|
||||
+ -display none \
|
||||
+ -net socket,listen=127.0.0.1:12350 \
|
||||
+ -net nic,macaddr=52:54:01:12:34:56,model=e1000 \
|
||||
+ ${SERIAL:+-serial "$SERIAL"} \
|
||||
+ ${SERIAL:--serial file:"$TESTDIR"/server.log} \
|
||||
+ -watchdog i6300esb -watchdog-action poweroff \
|
||||
+ -no-reboot \
|
||||
+ -append "panic=1 loglevel=7 root=/dev/sda rootfstype=ext3 rw console=ttyS0,115200n81 selinux=0" \
|
||||
+ -initrd "$TESTDIR"/initramfs.server \
|
||||
+ -pidfile "$TESTDIR"/server.pid -daemonize || return 1
|
||||
+ else
|
||||
+ $testdir/run-qemu \
|
||||
+ -drive format=raw,index=0,media=disk,file="$TESTDIR"/client.img -m 512M -smp 2 -nographic \
|
||||
+ -net socket,vlan=0,connect=127.0.0.1:12350 \
|
||||
+ -net nic,vlan=0,macaddr=52:54:00:12:34:$mac1,model=e1000 \
|
||||
+ -net nic,vlan=0,macaddr=52:54:00:12:34:$mac2,model=e1000 \
|
||||
+ -net nic,vlan=0,macaddr=52:54:00:12:34:$mac3,model=e1000 \
|
||||
+ -net nic,vlan=1,macaddr=52:54:00:12:34:98,model=e1000 \
|
||||
+ -net nic,vlan=2,macaddr=52:54:00:12:34:99,model=e1000 \
|
||||
+ -watchdog i6300esb -watchdog-action poweroff \
|
||||
+ -no-reboot \
|
||||
+ -append "panic=1 rd.shell=0 $cmdline $DEBUGFAIL rd.retry=5 ro console=ttyS0,115200n81 selinux=0 init=/sbin/init rd.debug systemd.log_target=console loglevel=7" \
|
||||
+ -initrd "$TESTDIR"/initramfs.testing
|
||||
+ fi
|
||||
+
|
||||
sudo chmod 644 -- "$TESTDIR"/server.pid || return 1
|
||||
|
||||
# Cleanup the terminal if we have one
|
||||
@@ -51,18 +68,18 @@ client_test() {
|
||||
fi
|
||||
|
||||
$testdir/run-qemu -drive format=raw,index=0,media=disk,file="$TESTDIR"/client.img -m 512M -smp 2 -nographic \
|
||||
- -net socket,connect=127.0.0.1:12350 \
|
||||
- -net nic,macaddr=52:54:00:12:34:$mac1,model=e1000 \
|
||||
- -net nic,macaddr=52:54:00:12:34:$mac2,model=e1000 \
|
||||
- -net nic,macaddr=52:54:00:12:34:$mac3,model=e1000 \
|
||||
- -netdev hubport,id=n1,hubid=1 \
|
||||
- -netdev hubport,id=n2,hubid=2 \
|
||||
- -device e1000,netdev=n1,mac=52:54:00:12:34:98 \
|
||||
- -device e1000,netdev=n2,mac=52:54:00:12:34:99 \
|
||||
- -watchdog i6300esb -watchdog-action poweroff \
|
||||
- -no-reboot \
|
||||
- -append "panic=1 rd.shell=0 $cmdline $DEBUGFAIL rd.retry=5 ro console=ttyS0,115200n81 selinux=0 init=/sbin/init rd.debug systemd.log_target=console loglevel=7" \
|
||||
- -initrd "$TESTDIR"/initramfs.testing
|
||||
+ -net socket,connect=127.0.0.1:12350 \
|
||||
+ -net nic,macaddr=52:54:00:12:34:$mac1,model=e1000 \
|
||||
+ -net nic,macaddr=52:54:00:12:34:$mac2,model=e1000 \
|
||||
+ -net nic,macaddr=52:54:00:12:34:$mac3,model=e1000 \
|
||||
+ -netdev hubport,id=n1,hubid=1 \
|
||||
+ -netdev hubport,id=n2,hubid=2 \
|
||||
+ -device e1000,netdev=n1,mac=52:54:00:12:34:98 \
|
||||
+ -device e1000,netdev=n2,mac=52:54:00:12:34:99 \
|
||||
+ -watchdog i6300esb -watchdog-action poweroff \
|
||||
+ -no-reboot \
|
||||
+ -append "panic=1 rd.shell=0 $cmdline $DEBUGFAIL rd.retry=5 ro console=ttyS0,115200n81 selinux=0 init=/sbin/init rd.debug systemd.log_target=console loglevel=7" \
|
||||
+ -initrd "$TESTDIR"/initramfs.testing
|
||||
|
||||
{ read OK; read IFACES; } < "$TESTDIR"/client.img
|
||||
|
||||
@@ -110,58 +127,58 @@ test_client() {
|
||||
|
||||
# PXE Style BOOTIF=
|
||||
client_test "MULTINIC root=nfs BOOTIF=" \
|
||||
- 00 01 02 \
|
||||
- "root=nfs:192.168.50.1:/nfs/client BOOTIF=52-54-00-12-34-00" \
|
||||
- "ens3" || return 1
|
||||
+ 00 01 02 \
|
||||
+ "root=nfs:192.168.50.1:/nfs/client BOOTIF=52-54-00-12-34-00" \
|
||||
+ "ens3" || return 1
|
||||
|
||||
client_test "MULTINIC root=nfs BOOTIF= ip=ens4:dhcp" \
|
||||
- 00 01 02 \
|
||||
- "root=nfs:192.168.50.1:/nfs/client BOOTIF=52-54-00-12-34-00 ip=ens4:dhcp" \
|
||||
- "ens3 ens4" || return 1
|
||||
+ 00 01 02 \
|
||||
+ "root=nfs:192.168.50.1:/nfs/client BOOTIF=52-54-00-12-34-00 ip=ens4:dhcp" \
|
||||
+ "ens3 ens4" || return 1
|
||||
|
||||
# PXE Style BOOTIF= with dhcp root-path
|
||||
client_test "MULTINIC root=dhcp BOOTIF=" \
|
||||
- 00 01 02 \
|
||||
- "root=dhcp BOOTIF=52-54-00-12-34-02" \
|
||||
- "ens5" || return 1
|
||||
+ 00 01 02 \
|
||||
+ "root=dhcp BOOTIF=52-54-00-12-34-02" \
|
||||
+ "ens5" || return 1
|
||||
|
||||
# Multinic case, where only one nic works
|
||||
client_test "MULTINIC root=nfs ip=dhcp" \
|
||||
- FF 00 FE \
|
||||
- "root=nfs:192.168.50.1:/nfs/client ip=dhcp" \
|
||||
- "ens4" || return 1
|
||||
+ FF 00 FE \
|
||||
+ "root=nfs:192.168.50.1:/nfs/client ip=dhcp" \
|
||||
+ "ens4" || return 1
|
||||
|
||||
# Require two interfaces
|
||||
client_test "MULTINIC root=nfs ip=ens4:dhcp ip=ens5:dhcp bootdev=ens4" \
|
||||
- 00 01 02 \
|
||||
- "root=nfs:192.168.50.1:/nfs/client ip=ens4:dhcp ip=ens5:dhcp bootdev=ens4" \
|
||||
- "ens4 ens5" || return 1
|
||||
+ 00 01 02 \
|
||||
+ "root=nfs:192.168.50.1:/nfs/client ip=ens4:dhcp ip=ens5:dhcp bootdev=ens4" \
|
||||
+ "ens4 ens5" || return 1
|
||||
|
||||
# Require three interfaces with dhcp root-path
|
||||
client_test "MULTINIC root=dhcp ip=ens3:dhcp ip=ens4:dhcp ip=ens5:dhcp bootdev=ens5" \
|
||||
- 00 01 02 \
|
||||
- "root=dhcp ip=ens3:dhcp ip=ens4:dhcp ip=ens5:dhcp bootdev=ens5" \
|
||||
- "ens3 ens4 ens5" || return 1
|
||||
+ 00 01 02 \
|
||||
+ "root=dhcp ip=ens3:dhcp ip=ens4:dhcp ip=ens5:dhcp bootdev=ens5" \
|
||||
+ "ens3 ens4 ens5" || return 1
|
||||
|
||||
client_test "MULTINIC bonding" \
|
||||
- 00 01 02 \
|
||||
- "root=nfs:192.168.50.1:/nfs/client ip=bond0:dhcp bond=bond0:ens3,ens4,ens5:mode=balance-rr" \
|
||||
- "bond0" || return 1
|
||||
+ 00 01 02 \
|
||||
+ "root=nfs:192.168.50.1:/nfs/client ip=bond0:dhcp bond=bond0:ens3,ens4,ens5:mode=balance-rr" \
|
||||
+ "bond0" || return 1
|
||||
|
||||
client_test "MULTINIC bridging" \
|
||||
- 00 01 02 \
|
||||
- "root=nfs:192.168.50.1:/nfs/client ip=bridge0:dhcp bridge=bridge0:ens3,ens6,ens7" \
|
||||
- "bridge0" || return 1
|
||||
+ 00 01 02 \
|
||||
+ "root=nfs:192.168.50.1:/nfs/client ip=bridge0:dhcp bridge=bridge0:ens3,ens6,ens7" \
|
||||
+ "bridge0" || return 1
|
||||
return 0
|
||||
}
|
||||
|
||||
test_setup() {
|
||||
- # Make server root
|
||||
+ # Make server root
|
||||
dd if=/dev/null of="$TESTDIR"/server.ext3 bs=1M seek=120
|
||||
mke2fs -j -F -- "$TESTDIR"/server.ext3
|
||||
mkdir -- "$TESTDIR"/mnt
|
||||
sudo mount -o loop -- "$TESTDIR"/server.ext3 "$TESTDIR"/mnt
|
||||
-
|
||||
+ kernel=$KVERSION
|
||||
(
|
||||
export initdir="$TESTDIR"/mnt
|
||||
. "$basedir"/dracut-init.sh
|
||||
@@ -185,9 +202,9 @@ test_setup() {
|
||||
done
|
||||
|
||||
inst_multiple sh ls shutdown poweroff stty cat ps ln ip \
|
||||
- dmesg mkdir cp ping exportfs \
|
||||
- modprobe rpc.nfsd rpc.mountd showmount tcpdump \
|
||||
- /etc/services sleep mount chmod
|
||||
+ dmesg mkdir cp ping exportfs \
|
||||
+ modprobe rpc.nfsd rpc.mountd showmount tcpdump \
|
||||
+ /etc/services sleep mount chmod
|
||||
for _terminfodir in /lib/terminfo /etc/terminfo /usr/share/terminfo; do
|
||||
[ -f "${_terminfodir}"/l/linux ] && break
|
||||
done
|
||||
@@ -212,7 +229,7 @@ test_setup() {
|
||||
inst_libdir_file 'libnfsidmap*.so*'
|
||||
|
||||
_nsslibs=$(sed -e '/^#/d' -e 's/^.*://' -e 's/\[NOTFOUND=return\]//' /etc/nsswitch.conf \
|
||||
- | tr -s '[:space:]' '\n' | sort -u | tr -s '[:space:]' '|')
|
||||
+ | tr -s '[:space:]' '\n' | sort -u | tr -s '[:space:]' '|')
|
||||
_nsslibs=${_nsslibs#|}
|
||||
_nsslibs=${_nsslibs%|}
|
||||
|
||||
@@ -241,7 +258,7 @@ test_setup() {
|
||||
done
|
||||
)
|
||||
inst_multiple sh shutdown poweroff stty cat ps ln ip \
|
||||
- mount dmesg mkdir cp ping grep ls
|
||||
+ mount dmesg mkdir cp ping grep ls
|
||||
for _terminfodir in /lib/terminfo /etc/terminfo /usr/share/terminfo; do
|
||||
[[ -f ${_terminfodir}/l/linux ]] && break
|
||||
done
|
||||
@@ -258,7 +275,7 @@ test_setup() {
|
||||
inst_libdir_file 'libnfsidmap*.so*'
|
||||
|
||||
_nsslibs=$(sed -e '/^#/d' -e 's/^.*://' -e 's/\[NOTFOUND=return\]//' -- /etc/nsswitch.conf \
|
||||
- | tr -s '[:space:]' '\n' | sort -u | tr -s '[:space:]' '|')
|
||||
+ | tr -s '[:space:]' '\n' | sort -u | tr -s '[:space:]' '|')
|
||||
_nsslibs=${_nsslibs#|}
|
||||
_nsslibs=${_nsslibs%|}
|
||||
|
||||
@@ -282,14 +299,16 @@ test_setup() {
|
||||
)
|
||||
|
||||
# Make server's dracut image
|
||||
- $basedir/dracut.sh -l -i "$TESTDIR"/overlay / \
|
||||
+ $basedir/dracut.sh \
|
||||
+ -l -i "$TESTDIR"/overlay / \
|
||||
-m "dash udev-rules base rootfs-block fs-lib debug kernel-modules watchdog" \
|
||||
-d "af_packet piix ide-gd_mod ata_piix ext3 sd_mod nfsv2 nfsv3 nfsv4 nfs_acl nfs_layout_nfsv41_files nfsd e1000 i6300esb ib700wdt" \
|
||||
--no-hostonly-cmdline -N \
|
||||
-f "$TESTDIR"/initramfs.server "$KVERSION" || return 1
|
||||
|
||||
# Make client's dracut image
|
||||
- $basedir/dracut.sh -l -i "$TESTDIR"/overlay / \
|
||||
+ $basedir/dracut.sh \
|
||||
+ -l -i "$TESTDIR"/overlay / \
|
||||
-o "plymouth" \
|
||||
-a "debug" \
|
||||
-d "af_packet piix sd_mod sr_mod ata_piix ide-gd_mod e1000 nfsv2 nfsv3 nfsv4 nfs_acl nfs_layout_nfsv41_files sunrpc i6300esb ib700wdt" \
|
||||
diff --git a/test/TEST-70-BONDBRIDGETEAMVLAN/test.sh b/test/TEST-70-BONDBRIDGETEAMVLAN/test.sh
|
||||
index eadf09f1..8c11a7d3 100755
|
||||
--- a/test/TEST-70-BONDBRIDGETEAMVLAN/test.sh
|
||||
+++ b/test/TEST-70-BONDBRIDGETEAMVLAN/test.sh
|
||||
@@ -14,6 +14,7 @@ run_server() {
|
||||
echo "MULTINIC TEST SETUP: Starting DHCP/NFS server"
|
||||
|
||||
fsck -a "$TESTDIR"/server.ext3 || return 1
|
||||
+
|
||||
$testdir/run-qemu \
|
||||
-hda "$TESTDIR"/server.ext3 \
|
||||
-m 512M -smp 2 \
|
||||
@@ -66,17 +67,38 @@ client_test() {
|
||||
nic3=" -netdev hubport,id=n3,hubid=3"
|
||||
fi
|
||||
|
||||
- $testdir/run-qemu -hda "$TESTDIR"/client.img -m 512M -smp 2 -nographic \
|
||||
- -netdev socket,connect=127.0.0.1:12370,id=s1 -netdev hubport,hubid=1,id=h1,netdev=s1 \
|
||||
- -netdev hubport,hubid=1,id=h2 -device e1000,mac=52:54:00:12:34:01,netdev=h2 \
|
||||
- -netdev hubport,hubid=1,id=h3 -device e1000,mac=52:54:00:12:34:02,netdev=h3 \
|
||||
- $nic1 -device e1000,mac=52:54:00:12:34:03,netdev=n1 \
|
||||
- -netdev socket,connect=127.0.0.1:12372,id=n2 -device e1000,mac=52:54:00:12:34:04,netdev=n2 \
|
||||
- $nic3 -device e1000,mac=52:54:00:12:34:05,netdev=n3 \
|
||||
- -watchdog i6300esb -watchdog-action poweroff \
|
||||
- -no-reboot \
|
||||
- -append "panic=1 $cmdline rd.debug $DEBUGFAIL rd.retry=5 rw console=ttyS0,115200n81 selinux=0 init=/sbin/init" \
|
||||
- -initrd "$TESTDIR"/initramfs.testing
|
||||
+ if $testdir/run-qemu --help | grep -qF -m1 'netdev hubport,id=str,hubid=n[,netdev=nd]' && echo OK; then
|
||||
+ $testdir/run-qemu \
|
||||
+ -hda "$TESTDIR"/client.img -m 512M -smp 2 -nographic \
|
||||
+ -netdev socket,connect=127.0.0.1:12370,id=s1 \
|
||||
+ -netdev hubport,hubid=1,id=h1,netdev=s1 \
|
||||
+ -netdev hubport,hubid=1,id=h2 -device e1000,mac=52:54:00:12:34:01,netdev=h2 \
|
||||
+ -netdev hubport,hubid=1,id=h3 -device e1000,mac=52:54:00:12:34:02,netdev=h3 \
|
||||
+ $nic1 -device e1000,mac=52:54:00:12:34:03,netdev=n1 \
|
||||
+ -netdev socket,connect=127.0.0.1:12372,id=n2 -device e1000,mac=52:54:00:12:34:04,netdev=n2 \
|
||||
+ $nic3 -device e1000,mac=52:54:00:12:34:05,netdev=n3 \
|
||||
+ -watchdog i6300esb -watchdog-action poweroff \
|
||||
+ -no-reboot \
|
||||
+ -append "panic=1 $cmdline rd.debug $DEBUGFAIL rd.retry=5 rw console=ttyS0,115200n81 selinux=0 init=/sbin/init" \
|
||||
+ -initrd "$TESTDIR"/initramfs.testing
|
||||
+ else
|
||||
+ $testdir/run-qemu \
|
||||
+ -hda "$TESTDIR"/client.img -m 512M -smp 2 -nographic \
|
||||
+ -net socket,vlan=0,connect=127.0.0.1:12370 \
|
||||
+ ${do_vlan13:+-net socket,vlan=1,connect=127.0.0.1:12371} \
|
||||
+ -net socket,vlan=2,connect=127.0.0.1:12372 \
|
||||
+ ${do_vlan13:+-net socket,vlan=3,connect=127.0.0.1:12373} \
|
||||
+ -net nic,vlan=0,macaddr=52:54:00:12:34:01,model=e1000 \
|
||||
+ -net nic,vlan=0,macaddr=52:54:00:12:34:02,model=e1000 \
|
||||
+ -net nic,vlan=1,macaddr=52:54:00:12:34:03,model=e1000 \
|
||||
+ -net nic,vlan=2,macaddr=52:54:00:12:34:04,model=e1000 \
|
||||
+ -net nic,vlan=3,macaddr=52:54:00:12:34:05,model=e1000 \
|
||||
+ -watchdog i6300esb -watchdog-action poweroff \
|
||||
+ -no-reboot \
|
||||
+ -append "panic=1 $cmdline rd.debug $DEBUGFAIL rd.retry=5 rw console=ttyS0,115200n81 selinux=0 init=/sbin/init" \
|
||||
+ -initrd "$TESTDIR"/initramfs.testing
|
||||
+ fi
|
||||
+
|
||||
{
|
||||
read OK
|
||||
if [[ "$OK" != "OK" ]]; then
|
||||
@@ -167,7 +189,7 @@ test_setup() {
|
||||
mke2fs -j -F -- "$TESTDIR"/server.ext3
|
||||
mkdir -- "$TESTDIR"/mnt
|
||||
mount -o loop -- "$TESTDIR"/server.ext3 "$TESTDIR"/mnt
|
||||
-
|
||||
+ kernel=$KVERSION
|
||||
(
|
||||
export initdir="$TESTDIR"/mnt
|
||||
. "$basedir"/dracut-init.sh
|
||||
@@ -203,7 +225,7 @@ test_setup() {
|
||||
[ -f /etc/netconfig ] && inst_multiple /etc/netconfig
|
||||
type -P dhcpd >/dev/null && inst_multiple dhcpd
|
||||
[ -x /usr/sbin/dhcpd3 ] && inst /usr/sbin/dhcpd3 /usr/sbin/dhcpd
|
||||
- instmods nfsd sunrpc ipv6 lockd af_packet 8021q
|
||||
+ instmods nfsd sunrpc ipv6 lockd af_packet 8021q ipvlan macvlan
|
||||
inst_simple /etc/os-release
|
||||
inst ./server-init.sh /sbin/init
|
||||
inst ./hosts /etc/hosts
|
||||
@@ -286,7 +308,7 @@ test_setup() {
|
||||
$basedir/dracut.sh -l -i "$TESTDIR"/overlay / \
|
||||
--no-early-microcode \
|
||||
-m "udev-rules base rootfs-block fs-lib debug kernel-modules watchdog" \
|
||||
- -d "af_packet piix ide-gd_mod ata_piix ext3 sd_mod nfsv2 nfsv3 nfsv4 nfs_acl nfs_layout_nfsv41_files nfsd e1000 i6300esb ib700wdt" \
|
||||
+ -d "ipvlan macvlan af_packet piix ide-gd_mod ata_piix ext3 sd_mod nfsv2 nfsv3 nfsv4 nfs_acl nfs_layout_nfsv41_files nfsd e1000 i6300esb ib700wdt" \
|
||||
--no-hostonly-cmdline -N \
|
||||
-f "$TESTDIR"/initramfs.server "$KVERSION" || return 1
|
||||
|
||||
@@ -295,7 +317,7 @@ test_setup() {
|
||||
--no-early-microcode \
|
||||
-o "plymouth" \
|
||||
-a "debug" \
|
||||
- -d "af_packet piix sd_mod sr_mod ata_piix ide-gd_mod e1000 nfsv2 nfsv3 nfsv4 nfs_acl nfs_layout_nfsv41_files sunrpc i6300esb ib700wdt" \
|
||||
+ -d "ipvlan macvlan af_packet piix sd_mod sr_mod ata_piix ide-gd_mod e1000 nfsv2 nfsv3 nfsv4 nfs_acl nfs_layout_nfsv41_files sunrpc i6300esb ib700wdt" \
|
||||
--no-hostonly-cmdline -N \
|
||||
-f "$TESTDIR"/initramfs.testing "$KVERSION" || return 1
|
||||
}
|
||||
|
23
0031.patch
23
0031.patch
@ -1,23 +0,0 @@
|
||||
From bb75d16521a9d76ccedbf06f3a6239efbbca77d7 Mon Sep 17 00:00:00 2001
|
||||
From: Harald Hoyer <harald@redhat.com>
|
||||
Date: Tue, 14 Aug 2018 14:07:12 +0200
|
||||
Subject: [PATCH] kernel-network-modules: add vlan kernel modules
|
||||
|
||||
---
|
||||
modules.d/90kernel-network-modules/module-setup.sh | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/modules.d/90kernel-network-modules/module-setup.sh b/modules.d/90kernel-network-modules/module-setup.sh
|
||||
index 16ed3a74..600ef112 100755
|
||||
--- a/modules.d/90kernel-network-modules/module-setup.sh
|
||||
+++ b/modules.d/90kernel-network-modules/module-setup.sh
|
||||
@@ -28,7 +28,7 @@ installkernel() {
|
||||
=drivers/net/phy \
|
||||
=drivers/net/team \
|
||||
=drivers/net/ethernet \
|
||||
- ecb arc4 bridge stp llc ipv6 bonding 8021q af_packet virtio_net xennet
|
||||
+ ecb arc4 bridge stp llc ipv6 bonding 8021q ipvlan macvlan af_packet virtio_net xennet
|
||||
hostonly="" instmods iscsi_ibft crc32c iscsi_boot_sysfs
|
||||
}
|
||||
|
||||
|
37
0032.patch
37
0032.patch
@ -1,37 +0,0 @@
|
||||
From f9c8b3112aee5216a6bb5a42fb46146f6f228854 Mon Sep 17 00:00:00 2001
|
||||
From: Harald Hoyer <harald@redhat.com>
|
||||
Date: Tue, 14 Aug 2018 14:12:54 +0200
|
||||
Subject: [PATCH] TEST-50-MULTINIC/test.sh: fixed server startup
|
||||
|
||||
---
|
||||
test/TEST-50-MULTINIC/test.sh | 9 ++++++---
|
||||
1 file changed, 6 insertions(+), 3 deletions(-)
|
||||
|
||||
diff --git a/test/TEST-50-MULTINIC/test.sh b/test/TEST-50-MULTINIC/test.sh
|
||||
index 02443c40..d7cec437 100755
|
||||
--- a/test/TEST-50-MULTINIC/test.sh
|
||||
+++ b/test/TEST-50-MULTINIC/test.sh
|
||||
@@ -29,7 +29,9 @@ run_server() {
|
||||
-pidfile "$TESTDIR"/server.pid -daemonize || return 1
|
||||
else
|
||||
$testdir/run-qemu \
|
||||
- -drive format=raw,index=0,media=disk,file="$TESTDIR"/client.img -m 512M -smp 2 -nographic \
|
||||
+ -drive format=raw,index=0,media=disk,file="$TESTDIR"/server.ext3 \
|
||||
+ -m 512M -smp 2 \
|
||||
+ -display none \
|
||||
-net socket,vlan=0,connect=127.0.0.1:12350 \
|
||||
-net nic,vlan=0,macaddr=52:54:00:12:34:$mac1,model=e1000 \
|
||||
-net nic,vlan=0,macaddr=52:54:00:12:34:$mac2,model=e1000 \
|
||||
@@ -38,8 +40,9 @@ run_server() {
|
||||
-net nic,vlan=2,macaddr=52:54:00:12:34:99,model=e1000 \
|
||||
-watchdog i6300esb -watchdog-action poweroff \
|
||||
-no-reboot \
|
||||
- -append "panic=1 rd.shell=0 $cmdline $DEBUGFAIL rd.retry=5 ro console=ttyS0,115200n81 selinux=0 init=/sbin/init rd.debug systemd.log_target=console loglevel=7" \
|
||||
- -initrd "$TESTDIR"/initramfs.testing
|
||||
+ -append "panic=1 loglevel=7 root=/dev/sda rootfstype=ext3 rw console=ttyS0,115200n81 selinux=0" \
|
||||
+ -initrd "$TESTDIR"/initramfs.server \
|
||||
+ -pidfile "$TESTDIR"/server.pid -daemonize || return 1
|
||||
fi
|
||||
|
||||
sudo chmod 644 -- "$TESTDIR"/server.pid || return 1
|
||||
|
21
0033.patch
21
0033.patch
@ -1,21 +0,0 @@
|
||||
From 604c09b1dacd4a364ee88d0e405a4e6692bdc1c2 Mon Sep 17 00:00:00 2001
|
||||
From: Harald Hoyer <harald@redhat.com>
|
||||
Date: Tue, 14 Aug 2018 15:28:56 +0200
|
||||
Subject: [PATCH] TEST-31-ISCSI-MULTI/test.sh: fixed test description
|
||||
|
||||
---
|
||||
test/TEST-31-ISCSI-MULTI/test.sh | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/test/TEST-31-ISCSI-MULTI/test.sh b/test/TEST-31-ISCSI-MULTI/test.sh
|
||||
index c2f86ac8..1ed3fb7b 100755
|
||||
--- a/test/TEST-31-ISCSI-MULTI/test.sh
|
||||
+++ b/test/TEST-31-ISCSI-MULTI/test.sh
|
||||
@@ -1,5 +1,5 @@
|
||||
#!/bin/bash
|
||||
-TEST_DESCRIPTION="root filesystem over iSCSI"
|
||||
+TEST_DESCRIPTION="root filesystem over multiple iSCSI"
|
||||
|
||||
KVERSION=${KVERSION-$(uname -r)}
|
||||
|
||||
|
86
0034.patch
86
0034.patch
@ -1,86 +0,0 @@
|
||||
From a2dbecfcd65ac243363c9544442f7bf526ec6091 Mon Sep 17 00:00:00 2001
|
||||
From: Harald Hoyer <harald@redhat.com>
|
||||
Date: Tue, 14 Aug 2018 15:42:21 +0200
|
||||
Subject: [PATCH] test: add TEST_RUN_ID
|
||||
|
||||
---
|
||||
test/test-functions | 24 ++++++++++++------------
|
||||
1 file changed, 12 insertions(+), 12 deletions(-)
|
||||
|
||||
diff --git a/test/test-functions b/test/test-functions
|
||||
index f27be912..bde5f742 100644
|
||||
--- a/test/test-functions
|
||||
+++ b/test/test-functions
|
||||
@@ -2,11 +2,11 @@
|
||||
PATH=/sbin:/bin:/usr/sbin:/usr/bin
|
||||
export PATH
|
||||
|
||||
-[[ -e .testdir ]] && . .testdir
|
||||
+[[ -e .testdir${TEST_RUN_ID:+-$TEST_RUN_ID} ]] && . .testdir${TEST_RUN_ID:+-$TEST_RUN_ID}
|
||||
if [[ -z "$TESTDIR" ]] || [[ ! -d "$TESTDIR" ]]; then
|
||||
TESTDIR=$(mktemp -d -p "/var/tmp" -t dracut-test.XXXXXX)
|
||||
fi
|
||||
-echo "TESTDIR=\"$TESTDIR\"" > .testdir
|
||||
+echo "TESTDIR=\"$TESTDIR\"" > .testdir${TEST_RUN_ID:+-$TEST_RUN_ID}
|
||||
export TESTDIR
|
||||
|
||||
command -v test_check &>/dev/null || test_check() {
|
||||
@@ -50,11 +50,11 @@ while (($# > 0)); do
|
||||
echo "TEST CLEANUP: $TEST_DESCRIPTION"
|
||||
test_cleanup
|
||||
rm -fr -- "$TESTDIR"
|
||||
- rm -f -- .testdir
|
||||
+ rm -f -- .testdir${TEST_RUN_ID:+-$TEST_RUN_ID}
|
||||
exit $?;;
|
||||
--all)
|
||||
check_root
|
||||
- if ! test_check 2&>test.log ; then
|
||||
+ if ! test_check 2&>test-${TEST_RUN_ID:+-$TEST_RUN_ID}.log ; then
|
||||
echo -e "TEST: $TEST_DESCRIPTION " $COLOR_WARNING "[SKIPPED]" $COLOR_NORMAL
|
||||
exit 0;
|
||||
else
|
||||
@@ -66,9 +66,9 @@ while (($# > 0)); do
|
||||
ret=$?
|
||||
test_cleanup
|
||||
rm -fr -- "$TESTDIR"
|
||||
- rm -f -- .testdir
|
||||
+ rm -f -- .testdir${TEST_RUN_ID:+-$TEST_RUN_ID}
|
||||
exit $ret
|
||||
- ) </dev/null >test.log 2>&1
|
||||
+ ) </dev/null >test-${TEST_RUN_ID:+-$TEST_RUN_ID}.log 2>&1
|
||||
else
|
||||
set -o pipefail
|
||||
(
|
||||
@@ -76,25 +76,25 @@ while (($# > 0)); do
|
||||
ret=$?
|
||||
test_cleanup
|
||||
if ((ret!=0)) && [[ -f "$TESTDIR"/server.log ]]; then
|
||||
- mv [[ -f "$TESTDIR"/server.log ]] ./
|
||||
+ mv [[ -f "$TESTDIR"/server.log ]] ./server${TEST_RUN_ID:+-$TEST_RUN_ID}.log
|
||||
fi
|
||||
rm -fr -- "$TESTDIR"
|
||||
- rm -f -- .testdir
|
||||
+ rm -f -- .testdir${TEST_RUN_ID:+-$TEST_RUN_ID}
|
||||
exit $ret
|
||||
- ) </dev/null 2>&1 | tee test.log
|
||||
+ ) </dev/null 2>&1 | tee test-${TEST_RUN_ID:+-$TEST_RUN_ID}.log
|
||||
fi
|
||||
ret=$?
|
||||
set +o pipefail
|
||||
if [ $ret -eq 0 ]; then
|
||||
- rm -- test.log
|
||||
+ rm -- test-${TEST_RUN_ID:+-$TEST_RUN_ID}.log
|
||||
echo -e "TEST: $TEST_DESCRIPTION " $COLOR_SUCCESS "[OK]" $COLOR_NORMAL
|
||||
else
|
||||
echo -e "TEST: $TEST_DESCRIPTION " $COLOR_FAILURE "[FAILED]" $COLOR_NORMAL
|
||||
if [ "$V" == "2" ]; then
|
||||
- cat $(pwd)/server.log $(pwd)/test.log
|
||||
+ cat $(pwd)/server${TEST_RUN_ID:+-$TEST_RUN_ID}.log $(pwd)/test-${TEST_RUN_ID:+-$TEST_RUN_ID}.log
|
||||
echo -e "TEST: $TEST_DESCRIPTION " $COLOR_FAILURE "[FAILED]" $COLOR_NORMAL
|
||||
else
|
||||
- echo "see $(pwd)/test.log"
|
||||
+ echo "see $(pwd)/test-${TEST_RUN_ID:+-$TEST_RUN_ID}.log"
|
||||
fi
|
||||
fi
|
||||
exit $ret;;
|
||||
|
26
0035.patch
26
0035.patch
@ -1,26 +0,0 @@
|
||||
From 0f294d90b246e15d00dd56627a8085e5bfc5bf85 Mon Sep 17 00:00:00 2001
|
||||
From: Harald Hoyer <harald@redhat.com>
|
||||
Date: Tue, 14 Aug 2018 15:54:42 +0200
|
||||
Subject: [PATCH] TEST-31-ISCSI-MULTI: increase verbose level
|
||||
|
||||
---
|
||||
test/TEST-31-ISCSI-MULTI/test.sh | 4 ++--
|
||||
1 file changed, 2 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/test/TEST-31-ISCSI-MULTI/test.sh b/test/TEST-31-ISCSI-MULTI/test.sh
|
||||
index 1ed3fb7b..5c38249c 100755
|
||||
--- a/test/TEST-31-ISCSI-MULTI/test.sh
|
||||
+++ b/test/TEST-31-ISCSI-MULTI/test.sh
|
||||
@@ -3,9 +3,9 @@ TEST_DESCRIPTION="root filesystem over multiple iSCSI"
|
||||
|
||||
KVERSION=${KVERSION-$(uname -r)}
|
||||
|
||||
-DEBUGFAIL="loglevel=1"
|
||||
+#DEBUGFAIL="loglevel=1"
|
||||
#DEBUGFAIL="rd.shell rd.break rd.debug loglevel=7 "
|
||||
-#DEBUGFAIL="rd.debug loglevel=7 "
|
||||
+DEBUGFAIL="rd.debug loglevel=7 "
|
||||
#SERVER_DEBUG="rd.debug loglevel=7"
|
||||
#SERIAL="tcp:127.0.0.1:9999"
|
||||
|
||||
|
93
0036.patch
93
0036.patch
@ -1,93 +0,0 @@
|
||||
From 3c1a083e5c5e56bf2e26aa806f023d4f053fc7b7 Mon Sep 17 00:00:00 2001
|
||||
From: Harald Hoyer <harald@redhat.com>
|
||||
Date: Tue, 14 Aug 2018 16:01:39 +0200
|
||||
Subject: [PATCH] add travis build job
|
||||
|
||||
---
|
||||
.travis.yml | 15 +++++++++++++++
|
||||
fedora-test.sh | 55 +++++++++++++++++++++++++++++++++++++++++++++++++++++++
|
||||
2 files changed, 70 insertions(+)
|
||||
|
||||
diff --git a/.travis.yml b/.travis.yml
|
||||
new file mode 100644
|
||||
index 00000000..16f9a511
|
||||
--- /dev/null
|
||||
+++ b/.travis.yml
|
||||
@@ -0,0 +1,15 @@
|
||||
+sudo: required
|
||||
+
|
||||
+services:
|
||||
+ - docker
|
||||
+
|
||||
+env:
|
||||
+ matrix:
|
||||
+ - IMAGE=latest
|
||||
+ - IMAGE=rawhide
|
||||
+
|
||||
+before_script:
|
||||
+- docker pull fedora:$IMAGE
|
||||
+
|
||||
+script:
|
||||
+- docker run --privileged -it -v $(pwd)/:/dracut fedora:$IMAGE /dracut/fedora-test.sh $IMAGE-$$
|
||||
diff --git a/fedora-test.sh b/fedora-test.sh
|
||||
new file mode 100755
|
||||
index 00000000..ee506caf
|
||||
--- /dev/null
|
||||
+++ b/fedora-test.sh
|
||||
@@ -0,0 +1,55 @@
|
||||
+#!/bin/bash
|
||||
+
|
||||
+set -ex
|
||||
+
|
||||
+cd ${0%/*}
|
||||
+
|
||||
+RUN_ID="$1"
|
||||
+
|
||||
+dnf -y update --best --allowerasing
|
||||
+
|
||||
+dnf -y install --best --allowerasing \
|
||||
+ dash \
|
||||
+ asciidoc \
|
||||
+ mdadm \
|
||||
+ lvm2 \
|
||||
+ dmraid \
|
||||
+ cryptsetup \
|
||||
+ nfs-utils \
|
||||
+ nbd \
|
||||
+ dhcp-server \
|
||||
+ scsi-target-utils \
|
||||
+ iscsi-initiator-utils \
|
||||
+ strace \
|
||||
+ btrfs-progs \
|
||||
+ kmod-devel \
|
||||
+ gcc \
|
||||
+ bzip2 \
|
||||
+ xz \
|
||||
+ tar \
|
||||
+ wget \
|
||||
+ rpm-build \
|
||||
+ make \
|
||||
+ git \
|
||||
+ bash-completion \
|
||||
+ sudo \
|
||||
+ kernel \
|
||||
+ dhcp-client \
|
||||
+ /usr/bin/qemu-kvm \
|
||||
+ e2fsprogs \
|
||||
+ $NULL
|
||||
+
|
||||
+./configure
|
||||
+
|
||||
+NCPU=$(getconf _NPROCESSORS_ONLN)
|
||||
+
|
||||
+make -j$NCPU all syncheck rpm
|
||||
+
|
||||
+cd test
|
||||
+
|
||||
+time sudo make -j$((NCPU/2+1)) \
|
||||
+ KVERSION=$(rpm -qa kernel --qf '%{VERSION}-%{RELEASE}.%{ARCH}\n' | sort -rn | head -1) \
|
||||
+ TEST_RUN_ID=$RUN_ID \
|
||||
+ -k V=2 \
|
||||
+ SKIP="14 16" \
|
||||
+ check
|
||||
|
44
0037.patch
44
0037.patch
@ -1,44 +0,0 @@
|
||||
From b7774da97ca743ada8a94d5eab4484cb96504ca0 Mon Sep 17 00:00:00 2001
|
||||
From: Harald Hoyer <harald@redhat.com>
|
||||
Date: Tue, 14 Aug 2018 16:18:53 +0200
|
||||
Subject: [PATCH] might even run without kvm
|
||||
|
||||
---
|
||||
.travis.yml | 5 +----
|
||||
test/run-qemu | 1 +
|
||||
2 files changed, 2 insertions(+), 4 deletions(-)
|
||||
|
||||
diff --git a/.travis.yml b/.travis.yml
|
||||
index 16f9a511..a71d9be2 100644
|
||||
--- a/.travis.yml
|
||||
+++ b/.travis.yml
|
||||
@@ -1,15 +1,12 @@
|
||||
+language: generic
|
||||
sudo: required
|
||||
-
|
||||
services:
|
||||
- docker
|
||||
-
|
||||
env:
|
||||
matrix:
|
||||
- IMAGE=latest
|
||||
- IMAGE=rawhide
|
||||
-
|
||||
before_script:
|
||||
- docker pull fedora:$IMAGE
|
||||
-
|
||||
script:
|
||||
- docker run --privileged -it -v $(pwd)/:/dracut fedora:$IMAGE /dracut/fedora-test.sh $IMAGE-$$
|
||||
diff --git a/test/run-qemu b/test/run-qemu
|
||||
index a4e15548..c28de2db 100755
|
||||
--- a/test/run-qemu
|
||||
+++ b/test/run-qemu
|
||||
@@ -8,6 +8,7 @@ $(lsmod | grep -q '^kqemu ') && BIN=/usr/bin/qemu && ARGS="-kernel-kqemu "
|
||||
[[ -c /dev/kvm && -x /usr/bin/kvm ]] && BIN=/usr/bin/kvm && ARGS=""
|
||||
[[ -c /dev/kvm && -x /usr/bin/qemu-kvm ]] && BIN=/usr/bin/qemu-kvm && ARGS=""
|
||||
[[ -c /dev/kvm && -x /usr/libexec/qemu-kvm ]] && BIN=/usr/libexec/qemu-kvm && ARGS=""
|
||||
+[[ -x /usr/bin/qemu-system-$(uname -i) ]] && BIN=/usr/bin/qemu-system-$(uname -i) && ARGS=""
|
||||
[[ -c /dev/kvm && -x /usr/bin/qemu-system-$(uname -i) ]] && BIN=/usr/bin/qemu-system-$(uname -i) && ARGS="-enable-kvm"
|
||||
|
||||
[[ $BIN ]] || {
|
||||
|
23
0038.patch
23
0038.patch
@ -1,23 +0,0 @@
|
||||
From fba4d2843382540839d90abbaa2cae0d5bf1c2dd Mon Sep 17 00:00:00 2001
|
||||
From: Harald Hoyer <harald@redhat.com>
|
||||
Date: Tue, 14 Aug 2018 16:30:42 +0200
|
||||
Subject: [PATCH] TEST-50-MULTINIC: fixed server.log
|
||||
|
||||
---
|
||||
test/TEST-50-MULTINIC/test.sh | 2 ++
|
||||
1 file changed, 2 insertions(+)
|
||||
|
||||
diff --git a/test/TEST-50-MULTINIC/test.sh b/test/TEST-50-MULTINIC/test.sh
|
||||
index d7cec437..0a4d29c2 100755
|
||||
--- a/test/TEST-50-MULTINIC/test.sh
|
||||
+++ b/test/TEST-50-MULTINIC/test.sh
|
||||
@@ -38,6 +38,8 @@ run_server() {
|
||||
-net nic,vlan=0,macaddr=52:54:00:12:34:$mac3,model=e1000 \
|
||||
-net nic,vlan=1,macaddr=52:54:00:12:34:98,model=e1000 \
|
||||
-net nic,vlan=2,macaddr=52:54:00:12:34:99,model=e1000 \
|
||||
+ ${SERIAL:+-serial "$SERIAL"} \
|
||||
+ ${SERIAL:--serial file:"$TESTDIR"/server.log} \
|
||||
-watchdog i6300esb -watchdog-action poweroff \
|
||||
-no-reboot \
|
||||
-append "panic=1 loglevel=7 root=/dev/sda rootfstype=ext3 rw console=ttyS0,115200n81 selinux=0" \
|
||||
|
51
0039.patch
51
0039.patch
@ -1,51 +0,0 @@
|
||||
From cafe6675c2e54cbdc576785bc98e5f7fda76ba7c Mon Sep 17 00:00:00 2001
|
||||
From: Harald Hoyer <harald@redhat.com>
|
||||
Date: Tue, 14 Aug 2018 16:31:00 +0200
|
||||
Subject: [PATCH] test/run-qemu: move -cpu host to kvm args
|
||||
|
||||
---
|
||||
fedora-test.sh | 1 +
|
||||
test/run-qemu | 12 ++++++------
|
||||
2 files changed, 7 insertions(+), 6 deletions(-)
|
||||
|
||||
diff --git a/fedora-test.sh b/fedora-test.sh
|
||||
index ee506caf..146c7f2f 100755
|
||||
--- a/fedora-test.sh
|
||||
+++ b/fedora-test.sh
|
||||
@@ -36,6 +36,7 @@ dnf -y install --best --allowerasing \
|
||||
kernel \
|
||||
dhcp-client \
|
||||
/usr/bin/qemu-kvm \
|
||||
+ /usr/bin/qemu-system-$(uname -i) \
|
||||
e2fsprogs \
|
||||
$NULL
|
||||
|
||||
diff --git a/test/run-qemu b/test/run-qemu
|
||||
index c28de2db..4eb497ff 100755
|
||||
--- a/test/run-qemu
|
||||
+++ b/test/run-qemu
|
||||
@@ -4,12 +4,12 @@
|
||||
export PATH=/sbin:/bin:/usr/sbin:/usr/bin
|
||||
|
||||
[[ -x /usr/bin/qemu ]] && BIN=/usr/bin/qemu && ARGS=""
|
||||
-$(lsmod | grep -q '^kqemu ') && BIN=/usr/bin/qemu && ARGS="-kernel-kqemu "
|
||||
-[[ -c /dev/kvm && -x /usr/bin/kvm ]] && BIN=/usr/bin/kvm && ARGS=""
|
||||
-[[ -c /dev/kvm && -x /usr/bin/qemu-kvm ]] && BIN=/usr/bin/qemu-kvm && ARGS=""
|
||||
-[[ -c /dev/kvm && -x /usr/libexec/qemu-kvm ]] && BIN=/usr/libexec/qemu-kvm && ARGS=""
|
||||
+$(lsmod | grep -q '^kqemu ') && BIN=/usr/bin/qemu && ARGS="-kernel-kqemu -cpu host"
|
||||
+[[ -c /dev/kvm && -x /usr/bin/kvm ]] && BIN=/usr/bin/kvm && ARGS="-cpu host"
|
||||
+[[ -c /dev/kvm && -x /usr/bin/qemu-kvm ]] && BIN=/usr/bin/qemu-kvm && ARGS="-cpu host"
|
||||
+[[ -c /dev/kvm && -x /usr/libexec/qemu-kvm ]] && BIN=/usr/libexec/qemu-kvm && ARGS="-cpu host"
|
||||
[[ -x /usr/bin/qemu-system-$(uname -i) ]] && BIN=/usr/bin/qemu-system-$(uname -i) && ARGS=""
|
||||
-[[ -c /dev/kvm && -x /usr/bin/qemu-system-$(uname -i) ]] && BIN=/usr/bin/qemu-system-$(uname -i) && ARGS="-enable-kvm"
|
||||
+[[ -c /dev/kvm && -x /usr/bin/qemu-system-$(uname -i) ]] && BIN=/usr/bin/qemu-system-$(uname -i) && ARGS="-enable-kvm -cpu host"
|
||||
|
||||
[[ $BIN ]] || {
|
||||
echo "Could not find a working KVM or QEMU to test with!" >&2
|
||||
@@ -31,4 +31,4 @@ if ! [ -f "$VMLINUZ" ]; then
|
||||
fi
|
||||
fi
|
||||
|
||||
-exec sudo $BIN $ARGS -kernel $VMLINUZ -cpu host "$@"
|
||||
+exec sudo $BIN $ARGS -kernel $VMLINUZ "$@"
|
||||
|
67
0040.patch
67
0040.patch
@ -1,67 +0,0 @@
|
||||
From 9288d21b9fd992cc7a32fbf79ad4f80b070e2277 Mon Sep 17 00:00:00 2001
|
||||
From: Harald Hoyer <harald@redhat.com>
|
||||
Date: Tue, 14 Aug 2018 16:37:01 +0200
|
||||
Subject: [PATCH] TEST-50-MULTINIC: removed bogus qemu compat server call
|
||||
|
||||
---
|
||||
test/TEST-50-MULTINIC/test.sh | 46 ++++++++++++-------------------------------
|
||||
1 file changed, 13 insertions(+), 33 deletions(-)
|
||||
|
||||
diff --git a/test/TEST-50-MULTINIC/test.sh b/test/TEST-50-MULTINIC/test.sh
|
||||
index 0a4d29c2..495a66f2 100755
|
||||
--- a/test/TEST-50-MULTINIC/test.sh
|
||||
+++ b/test/TEST-50-MULTINIC/test.sh
|
||||
@@ -13,39 +13,19 @@ run_server() {
|
||||
|
||||
fsck -a "$TESTDIR"/server.ext3 || return 1
|
||||
|
||||
- if $testdir/run-qemu --help | grep -qF -m1 'netdev hubport,id=str,hubid=n[,netdev=nd]' && echo OK; then
|
||||
- $testdir/run-qemu \
|
||||
- -drive format=raw,index=0,media=disk,file="$TESTDIR"/server.ext3 \
|
||||
- -m 512M -smp 2 \
|
||||
- -display none \
|
||||
- -net socket,listen=127.0.0.1:12350 \
|
||||
- -net nic,macaddr=52:54:01:12:34:56,model=e1000 \
|
||||
- ${SERIAL:+-serial "$SERIAL"} \
|
||||
- ${SERIAL:--serial file:"$TESTDIR"/server.log} \
|
||||
- -watchdog i6300esb -watchdog-action poweroff \
|
||||
- -no-reboot \
|
||||
- -append "panic=1 loglevel=7 root=/dev/sda rootfstype=ext3 rw console=ttyS0,115200n81 selinux=0" \
|
||||
- -initrd "$TESTDIR"/initramfs.server \
|
||||
- -pidfile "$TESTDIR"/server.pid -daemonize || return 1
|
||||
- else
|
||||
- $testdir/run-qemu \
|
||||
- -drive format=raw,index=0,media=disk,file="$TESTDIR"/server.ext3 \
|
||||
- -m 512M -smp 2 \
|
||||
- -display none \
|
||||
- -net socket,vlan=0,connect=127.0.0.1:12350 \
|
||||
- -net nic,vlan=0,macaddr=52:54:00:12:34:$mac1,model=e1000 \
|
||||
- -net nic,vlan=0,macaddr=52:54:00:12:34:$mac2,model=e1000 \
|
||||
- -net nic,vlan=0,macaddr=52:54:00:12:34:$mac3,model=e1000 \
|
||||
- -net nic,vlan=1,macaddr=52:54:00:12:34:98,model=e1000 \
|
||||
- -net nic,vlan=2,macaddr=52:54:00:12:34:99,model=e1000 \
|
||||
- ${SERIAL:+-serial "$SERIAL"} \
|
||||
- ${SERIAL:--serial file:"$TESTDIR"/server.log} \
|
||||
- -watchdog i6300esb -watchdog-action poweroff \
|
||||
- -no-reboot \
|
||||
- -append "panic=1 loglevel=7 root=/dev/sda rootfstype=ext3 rw console=ttyS0,115200n81 selinux=0" \
|
||||
- -initrd "$TESTDIR"/initramfs.server \
|
||||
- -pidfile "$TESTDIR"/server.pid -daemonize || return 1
|
||||
- fi
|
||||
+ $testdir/run-qemu \
|
||||
+ -drive format=raw,index=0,media=disk,file="$TESTDIR"/server.ext3 \
|
||||
+ -m 512M -smp 2 \
|
||||
+ -display none \
|
||||
+ -net socket,listen=127.0.0.1:12350 \
|
||||
+ -net nic,macaddr=52:54:01:12:34:56,model=e1000 \
|
||||
+ ${SERIAL:+-serial "$SERIAL"} \
|
||||
+ ${SERIAL:--serial file:"$TESTDIR"/server.log} \
|
||||
+ -watchdog i6300esb -watchdog-action poweroff \
|
||||
+ -no-reboot \
|
||||
+ -append "panic=1 loglevel=7 root=/dev/sda rootfstype=ext3 rw console=ttyS0,115200n81 selinux=0" \
|
||||
+ -initrd "$TESTDIR"/initramfs.server \
|
||||
+ -pidfile "$TESTDIR"/server.pid -daemonize || return 1
|
||||
|
||||
sudo chmod 644 -- "$TESTDIR"/server.pid || return 1
|
||||
|
||||
|
23
0041.patch
23
0041.patch
@ -1,23 +0,0 @@
|
||||
From d15c15c8f54d3aa97f7906e4f926584ac646fc5e Mon Sep 17 00:00:00 2001
|
||||
From: Harald Hoyer <harald@redhat.com>
|
||||
Date: Tue, 14 Aug 2018 16:54:27 +0200
|
||||
Subject: [PATCH] test/test-functions: be verbose for any $V not empty
|
||||
|
||||
---
|
||||
test/test-functions | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/test/test-functions b/test/test-functions
|
||||
index bde5f742..d6b28d20 100644
|
||||
--- a/test/test-functions
|
||||
+++ b/test/test-functions
|
||||
@@ -60,7 +60,7 @@ while (($# > 0)); do
|
||||
else
|
||||
echo "TEST: $TEST_DESCRIPTION [STARTED]";
|
||||
fi
|
||||
- if [ "$V" != "1" ]; then
|
||||
+ if ! [[ "$V" ]]; then
|
||||
(
|
||||
test_setup && test_run
|
||||
ret=$?
|
||||
|
25
0042.patch
25
0042.patch
@ -1,25 +0,0 @@
|
||||
From 1363167d655f8d08ea8fd71e56c8c85ff94ccc04 Mon Sep 17 00:00:00 2001
|
||||
From: Harald Hoyer <harald@redhat.com>
|
||||
Date: Tue, 14 Aug 2018 16:58:52 +0200
|
||||
Subject: [PATCH] Update README.md
|
||||
|
||||
---
|
||||
README.md | 4 ++++
|
||||
1 file changed, 4 insertions(+)
|
||||
|
||||
diff --git a/README.md b/README.md
|
||||
index e229641b..36ae7e1b 100644
|
||||
--- a/README.md
|
||||
+++ b/README.md
|
||||
@@ -2,6 +2,10 @@
|
||||
|
||||
dracut is an initramfs infrastructure.
|
||||
|
||||
+## Travis
|
||||
+
|
||||
+[![Build Status](https://travis-ci.org/dracutdevs/dracut.svg?branch=master)](https://travis-ci.org/dracutdevs/dracut)
|
||||
+
|
||||
## CentOS CI
|
||||
|
||||
[![Build Status](https://ci.centos.org/job/dracut-push-master/badge/icon)](https://ci.centos.org/job/dracut-push-master/)
|
||||
|
23
0043.patch
23
0043.patch
@ -1,23 +0,0 @@
|
||||
From 75b8b144a1cf5c7e15e0454f847615cadf6518e9 Mon Sep 17 00:00:00 2001
|
||||
From: Harald Hoyer <harald@redhat.com>
|
||||
Date: Tue, 14 Aug 2018 17:02:14 +0200
|
||||
Subject: [PATCH] fedora-test.sh: don't parallelize travis tests
|
||||
|
||||
---
|
||||
fedora-test.sh | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/fedora-test.sh b/fedora-test.sh
|
||||
index 146c7f2f..9528f08c 100755
|
||||
--- a/fedora-test.sh
|
||||
+++ b/fedora-test.sh
|
||||
@@ -48,7 +48,7 @@ make -j$NCPU all syncheck rpm
|
||||
|
||||
cd test
|
||||
|
||||
-time sudo make -j$((NCPU/2+1)) \
|
||||
+time sudo make \
|
||||
KVERSION=$(rpm -qa kernel --qf '%{VERSION}-%{RELEASE}.%{ARCH}\n' | sort -rn | head -1) \
|
||||
TEST_RUN_ID=$RUN_ID \
|
||||
-k V=2 \
|
||||
|
26
0044.patch
26
0044.patch
@ -1,26 +0,0 @@
|
||||
From da5a44cfb727561e3a2b8e6e24003cd410537cfc Mon Sep 17 00:00:00 2001
|
||||
From: Harald Hoyer <harald@redhat.com>
|
||||
Date: Tue, 14 Aug 2018 17:06:58 +0200
|
||||
Subject: [PATCH] .travis.yml: add gitter notifications
|
||||
|
||||
---
|
||||
.travis.yml | 8 ++++++++
|
||||
1 file changed, 8 insertions(+)
|
||||
|
||||
diff --git a/.travis.yml b/.travis.yml
|
||||
index a71d9be2..96dcd951 100644
|
||||
--- a/.travis.yml
|
||||
+++ b/.travis.yml
|
||||
@@ -10,3 +10,11 @@ before_script:
|
||||
- docker pull fedora:$IMAGE
|
||||
script:
|
||||
- docker run --privileged -it -v $(pwd)/:/dracut fedora:$IMAGE /dracut/fedora-test.sh $IMAGE-$$
|
||||
+notifications:
|
||||
+ webhooks:
|
||||
+ urls:
|
||||
+ - https://webhooks.gitter.im/e/effa917ca3e0ed5fd00e
|
||||
+ on_success: change # options: [always|never|change] default: always
|
||||
+ on_failure: always # options: [always|never|change] default: always
|
||||
+ on_start: never # options: [always|never|change] default: always
|
||||
+
|
||||
|
94
0045.patch
94
0045.patch
@ -1,94 +0,0 @@
|
||||
From 65d16d19141d0378f6cbab33b435a231ffdd37c4 Mon Sep 17 00:00:00 2001
|
||||
From: Harald Hoyer <harald@redhat.com>
|
||||
Date: Thu, 16 Aug 2018 08:50:11 +0200
|
||||
Subject: [PATCH] travis: extend matrix
|
||||
|
||||
---
|
||||
.travis.yml | 45 ++++++++++++++++++++++++++++++++++++++++++---
|
||||
fedora-test.sh | 4 +++-
|
||||
2 files changed, 45 insertions(+), 4 deletions(-)
|
||||
|
||||
diff --git a/.travis.yml b/.travis.yml
|
||||
index 96dcd951..fbaafdac 100644
|
||||
--- a/.travis.yml
|
||||
+++ b/.travis.yml
|
||||
@@ -4,12 +4,51 @@ services:
|
||||
- docker
|
||||
env:
|
||||
matrix:
|
||||
- - IMAGE=latest
|
||||
- - IMAGE=rawhide
|
||||
+ - IMAGE=latest TESTS=01
|
||||
+ - IMAGE=latest TESTS=02
|
||||
+ - IMAGE=latest TESTS=03
|
||||
+ - IMAGE=latest TESTS=04
|
||||
+ - IMAGE=latest TESTS=10
|
||||
+ - IMAGE=latest TESTS=11
|
||||
+ - IMAGE=latest TESTS=12
|
||||
+ - IMAGE=latest TESTS=13
|
||||
+ - IMAGE=latest TESTS=14
|
||||
+ - IMAGE=latest TESTS=15
|
||||
+ - IMAGE=latest TESTS=16
|
||||
+ - IMAGE=latest TESTS=17
|
||||
+ - IMAGE=latest TESTS=18
|
||||
+ - IMAGE=latest TESTS=20
|
||||
+ - IMAGE=latest TESTS=30
|
||||
+ - IMAGE=latest TESTS=31
|
||||
+ - IMAGE=latest TESTS=40
|
||||
+ - IMAGE=latest TESTS=50
|
||||
+ - IMAGE=latest TESTS=70
|
||||
+ - IMAGE=latest TESTS=99
|
||||
+ - IMAGE=rawhide TESTS=01
|
||||
+ - IMAGE=rawhide TESTS=02
|
||||
+ - IMAGE=rawhide TESTS=03
|
||||
+ - IMAGE=rawhide TESTS=04
|
||||
+ - IMAGE=rawhide TESTS=10
|
||||
+ - IMAGE=rawhide TESTS=11
|
||||
+ - IMAGE=rawhide TESTS=12
|
||||
+ - IMAGE=rawhide TESTS=13
|
||||
+ - IMAGE=rawhide TESTS=14
|
||||
+ - IMAGE=rawhide TESTS=15
|
||||
+ - IMAGE=rawhide TESTS=16
|
||||
+ - IMAGE=rawhide TESTS=17
|
||||
+ - IMAGE=rawhide TESTS=18
|
||||
+ - IMAGE=rawhide TESTS=20
|
||||
+ - IMAGE=rawhide TESTS=30
|
||||
+ - IMAGE=rawhide TESTS=31
|
||||
+ - IMAGE=rawhide TESTS=40
|
||||
+ - IMAGE=rawhide TESTS=50
|
||||
+ - IMAGE=rawhide TESTS=70
|
||||
+ - IMAGE=rawhide TESTS=99
|
||||
+
|
||||
before_script:
|
||||
- docker pull fedora:$IMAGE
|
||||
script:
|
||||
-- docker run --privileged -it -v $(pwd)/:/dracut fedora:$IMAGE /dracut/fedora-test.sh $IMAGE-$$
|
||||
+- docker run --privileged -it -v $(pwd)/:/dracut fedora:$IMAGE /dracut/fedora-test.sh $IMAGE-$$ $TESTS
|
||||
notifications:
|
||||
webhooks:
|
||||
urls:
|
||||
diff --git a/fedora-test.sh b/fedora-test.sh
|
||||
index 9528f08c..df7147c6 100755
|
||||
--- a/fedora-test.sh
|
||||
+++ b/fedora-test.sh
|
||||
@@ -2,9 +2,10 @@
|
||||
|
||||
set -ex
|
||||
|
||||
-cd ${0%/*}
|
||||
+[[ -d ${0%/*} ]] && cd ${0%/*}
|
||||
|
||||
RUN_ID="$1"
|
||||
+TESTS=$2
|
||||
|
||||
dnf -y update --best --allowerasing
|
||||
|
||||
@@ -51,6 +52,7 @@ cd test
|
||||
time sudo make \
|
||||
KVERSION=$(rpm -qa kernel --qf '%{VERSION}-%{RELEASE}.%{ARCH}\n' | sort -rn | head -1) \
|
||||
TEST_RUN_ID=$RUN_ID \
|
||||
+ ${TESTS:+TESTS="$TESTS"} \
|
||||
-k V=2 \
|
||||
SKIP="14 16" \
|
||||
check
|
||||
|
94
0046.patch
94
0046.patch
@ -1,94 +0,0 @@
|
||||
From 1ebbe2eb7b177f169e48df6318d9169e9ae1afe9 Mon Sep 17 00:00:00 2001
|
||||
From: Harald Hoyer <harald@redhat.com>
|
||||
Date: Thu, 16 Aug 2018 09:10:29 +0200
|
||||
Subject: [PATCH] travis: combine jobs
|
||||
|
||||
---
|
||||
.travis.yml | 64 +++++++++++++++++++++----------------------------------------
|
||||
1 file changed, 22 insertions(+), 42 deletions(-)
|
||||
|
||||
diff --git a/.travis.yml b/.travis.yml
|
||||
index fbaafdac..f2cd8b26 100644
|
||||
--- a/.travis.yml
|
||||
+++ b/.travis.yml
|
||||
@@ -1,49 +1,29 @@
|
||||
language: generic
|
||||
sudo: required
|
||||
services:
|
||||
- - docker
|
||||
+- docker
|
||||
env:
|
||||
matrix:
|
||||
- - IMAGE=latest TESTS=01
|
||||
- - IMAGE=latest TESTS=02
|
||||
- - IMAGE=latest TESTS=03
|
||||
- - IMAGE=latest TESTS=04
|
||||
- - IMAGE=latest TESTS=10
|
||||
- - IMAGE=latest TESTS=11
|
||||
- - IMAGE=latest TESTS=12
|
||||
- - IMAGE=latest TESTS=13
|
||||
- - IMAGE=latest TESTS=14
|
||||
- - IMAGE=latest TESTS=15
|
||||
- - IMAGE=latest TESTS=16
|
||||
- - IMAGE=latest TESTS=17
|
||||
- - IMAGE=latest TESTS=18
|
||||
- - IMAGE=latest TESTS=20
|
||||
- - IMAGE=latest TESTS=30
|
||||
- - IMAGE=latest TESTS=31
|
||||
- - IMAGE=latest TESTS=40
|
||||
- - IMAGE=latest TESTS=50
|
||||
- - IMAGE=latest TESTS=70
|
||||
- - IMAGE=latest TESTS=99
|
||||
- - IMAGE=rawhide TESTS=01
|
||||
- - IMAGE=rawhide TESTS=02
|
||||
- - IMAGE=rawhide TESTS=03
|
||||
- - IMAGE=rawhide TESTS=04
|
||||
- - IMAGE=rawhide TESTS=10
|
||||
- - IMAGE=rawhide TESTS=11
|
||||
- - IMAGE=rawhide TESTS=12
|
||||
- - IMAGE=rawhide TESTS=13
|
||||
- - IMAGE=rawhide TESTS=14
|
||||
- - IMAGE=rawhide TESTS=15
|
||||
- - IMAGE=rawhide TESTS=16
|
||||
- - IMAGE=rawhide TESTS=17
|
||||
- - IMAGE=rawhide TESTS=18
|
||||
- - IMAGE=rawhide TESTS=20
|
||||
- - IMAGE=rawhide TESTS=30
|
||||
- - IMAGE=rawhide TESTS=31
|
||||
- - IMAGE=rawhide TESTS=40
|
||||
- - IMAGE=rawhide TESTS=50
|
||||
- - IMAGE=rawhide TESTS=70
|
||||
- - IMAGE=rawhide TESTS=99
|
||||
+ - IMAGE=latest TESTS=01
|
||||
+ - IMAGE=latest TESTS="02 03 04"
|
||||
+ - IMAGE=latest TESTS="10 11 12 13 15 17 18"
|
||||
+ - IMAGE=latest TESTS=20
|
||||
+ - IMAGE=latest TESTS=30
|
||||
+ - IMAGE=latest TESTS=31
|
||||
+ - IMAGE=latest TESTS=40
|
||||
+ - IMAGE=latest TESTS=50
|
||||
+ - IMAGE=latest TESTS=70
|
||||
+ - IMAGE=latest TESTS=99
|
||||
+ - IMAGE=rawhide TESTS=01
|
||||
+ - IMAGE=rawhide TESTS="02 03 04"
|
||||
+ - IMAGE=rawhide TESTS="10 11 12 13 15 17 18"
|
||||
+ - IMAGE=rawhide TESTS=20
|
||||
+ - IMAGE=rawhide TESTS=30
|
||||
+ - IMAGE=rawhide TESTS=31
|
||||
+ - IMAGE=rawhide TESTS=40
|
||||
+ - IMAGE=rawhide TESTS=50
|
||||
+ - IMAGE=rawhide TESTS=70
|
||||
+ - IMAGE=rawhide TESTS=99
|
||||
|
||||
before_script:
|
||||
- docker pull fedora:$IMAGE
|
||||
@@ -52,7 +32,7 @@ script:
|
||||
notifications:
|
||||
webhooks:
|
||||
urls:
|
||||
- - https://webhooks.gitter.im/e/effa917ca3e0ed5fd00e
|
||||
+ - https://webhooks.gitter.im/e/effa917ca3e0ed5fd00e
|
||||
on_success: change # options: [always|never|change] default: always
|
||||
on_failure: always # options: [always|never|change] default: always
|
||||
on_start: never # options: [always|never|change] default: always
|
||||
|
24
0047.patch
24
0047.patch
@ -1,24 +0,0 @@
|
||||
From 311198868044b79e8e4f37872514f580b51e4ceb Mon Sep 17 00:00:00 2001
|
||||
From: Harald Hoyer <harald@redhat.com>
|
||||
Date: Thu, 16 Aug 2018 09:19:52 +0200
|
||||
Subject: [PATCH] dracut.sh: remove bogus dir removal for --rebuild
|
||||
|
||||
---
|
||||
dracut.sh | 3 ---
|
||||
1 file changed, 3 deletions(-)
|
||||
|
||||
diff --git a/dracut.sh b/dracut.sh
|
||||
index 6614d27d..8ee8c168 100755
|
||||
--- a/dracut.sh
|
||||
+++ b/dracut.sh
|
||||
@@ -474,9 +474,6 @@ if [[ $append_args_l == "yes" ]]; then
|
||||
eval set -- "$TEMP"
|
||||
rearrange_params "$@"
|
||||
fi
|
||||
-
|
||||
- # clean the temporarily used scratch-pad directory
|
||||
- rm -rf $scratch_dir
|
||||
fi
|
||||
|
||||
unset PARMS_TO_STORE
|
||||
|
49
0048.patch
49
0048.patch
@ -1,49 +0,0 @@
|
||||
From 01f9d0d9bf47f80823094de6b184ee67023406c7 Mon Sep 17 00:00:00 2001
|
||||
From: Harald Hoyer <harald@redhat.com>
|
||||
Date: Thu, 16 Aug 2018 09:26:35 +0200
|
||||
Subject: [PATCH] travis: combine more tests
|
||||
|
||||
---
|
||||
.travis.yml | 14 +++++---------
|
||||
1 file changed, 5 insertions(+), 9 deletions(-)
|
||||
|
||||
diff --git a/.travis.yml b/.travis.yml
|
||||
index f2cd8b26..a99418e3 100644
|
||||
--- a/.travis.yml
|
||||
+++ b/.travis.yml
|
||||
@@ -5,21 +5,17 @@ services:
|
||||
env:
|
||||
matrix:
|
||||
- IMAGE=latest TESTS=01
|
||||
- - IMAGE=latest TESTS="02 03 04"
|
||||
- - IMAGE=latest TESTS="10 11 12 13 15 17 18"
|
||||
+ - IMAGE=latest TESTS="02 03 04 10 11 12 13 15 17 18"
|
||||
- IMAGE=latest TESTS=20
|
||||
- - IMAGE=latest TESTS=30
|
||||
- - IMAGE=latest TESTS=31
|
||||
+ - IMAGE=latest TESTS="30 31"
|
||||
- IMAGE=latest TESTS=40
|
||||
- IMAGE=latest TESTS=50
|
||||
- IMAGE=latest TESTS=70
|
||||
- IMAGE=latest TESTS=99
|
||||
- IMAGE=rawhide TESTS=01
|
||||
- - IMAGE=rawhide TESTS="02 03 04"
|
||||
- - IMAGE=rawhide TESTS="10 11 12 13 15 17 18"
|
||||
+ - IMAGE=rawhide TESTS="02 03 04 10 11 12 13 15 17 18"
|
||||
- IMAGE=rawhide TESTS=20
|
||||
- - IMAGE=rawhide TESTS=30
|
||||
- - IMAGE=rawhide TESTS=31
|
||||
+ - IMAGE=rawhide TESTS="30 31"
|
||||
- IMAGE=rawhide TESTS=40
|
||||
- IMAGE=rawhide TESTS=50
|
||||
- IMAGE=rawhide TESTS=70
|
||||
@@ -28,7 +24,7 @@ env:
|
||||
before_script:
|
||||
- docker pull fedora:$IMAGE
|
||||
script:
|
||||
-- docker run --privileged -it -v $(pwd)/:/dracut fedora:$IMAGE /dracut/fedora-test.sh $IMAGE-$$ $TESTS
|
||||
+- docker run --privileged -it -v $(pwd)/:/dracut fedora:$IMAGE /dracut/fedora-test.sh $IMAGE-$$ "$TESTS"
|
||||
notifications:
|
||||
webhooks:
|
||||
urls:
|
||||
|
52
0049.patch
52
0049.patch
@ -1,52 +0,0 @@
|
||||
From 3c8d3a65656707148d5f9e5de1c0191339a72053 Mon Sep 17 00:00:00 2001
|
||||
From: Harald Hoyer <harald@redhat.com>
|
||||
Date: Thu, 16 Aug 2018 09:35:33 +0200
|
||||
Subject: [PATCH] travis: don't run TEST-40-NBD
|
||||
|
||||
---
|
||||
.travis.yml | 16 +++++++---------
|
||||
fedora-test.sh | 1 -
|
||||
2 files changed, 7 insertions(+), 10 deletions(-)
|
||||
|
||||
diff --git a/.travis.yml b/.travis.yml
|
||||
index a99418e3..d6d3947c 100644
|
||||
--- a/.travis.yml
|
||||
+++ b/.travis.yml
|
||||
@@ -4,19 +4,17 @@ services:
|
||||
- docker
|
||||
env:
|
||||
matrix:
|
||||
- - IMAGE=latest TESTS=01
|
||||
- - IMAGE=latest TESTS="02 03 04 10 11 12 13 15 17 18"
|
||||
- - IMAGE=latest TESTS=20
|
||||
- - IMAGE=latest TESTS="30 31"
|
||||
- - IMAGE=latest TESTS=40
|
||||
- - IMAGE=latest TESTS=50
|
||||
- - IMAGE=latest TESTS=70
|
||||
- - IMAGE=latest TESTS=99
|
||||
+ - IMAGE=latest TESTS=01
|
||||
+ - IMAGE=latest TESTS="02 03 04 10 11 12 13 15 17 18"
|
||||
+ - IMAGE=latest TESTS=20
|
||||
+ - IMAGE=latest TESTS="30 31"
|
||||
+ - IMAGE=latest TESTS=50
|
||||
+ - IMAGE=latest TESTS=70
|
||||
+ - IMAGE=latest TESTS=99
|
||||
- IMAGE=rawhide TESTS=01
|
||||
- IMAGE=rawhide TESTS="02 03 04 10 11 12 13 15 17 18"
|
||||
- IMAGE=rawhide TESTS=20
|
||||
- IMAGE=rawhide TESTS="30 31"
|
||||
- - IMAGE=rawhide TESTS=40
|
||||
- IMAGE=rawhide TESTS=50
|
||||
- IMAGE=rawhide TESTS=70
|
||||
- IMAGE=rawhide TESTS=99
|
||||
diff --git a/fedora-test.sh b/fedora-test.sh
|
||||
index df7147c6..5e7d34d6 100755
|
||||
--- a/fedora-test.sh
|
||||
+++ b/fedora-test.sh
|
||||
@@ -54,5 +54,4 @@ time sudo make \
|
||||
TEST_RUN_ID=$RUN_ID \
|
||||
${TESTS:+TESTS="$TESTS"} \
|
||||
-k V=2 \
|
||||
- SKIP="14 16" \
|
||||
check
|
||||
|
32
0050.patch
32
0050.patch
@ -1,32 +0,0 @@
|
||||
From 79afb279c273d46b65fafc2c686ed99c5433fe94 Mon Sep 17 00:00:00 2001
|
||||
From: Harald Hoyer <harald@redhat.com>
|
||||
Date: Thu, 16 Aug 2018 09:48:02 +0200
|
||||
Subject: [PATCH] travis: fedora-test.sh send dnf output to dev/null
|
||||
|
||||
---
|
||||
fedora-test.sh | 4 ++--
|
||||
1 file changed, 2 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/fedora-test.sh b/fedora-test.sh
|
||||
index 5e7d34d6..e7d0f633 100755
|
||||
--- a/fedora-test.sh
|
||||
+++ b/fedora-test.sh
|
||||
@@ -7,7 +7,7 @@ set -ex
|
||||
RUN_ID="$1"
|
||||
TESTS=$2
|
||||
|
||||
-dnf -y update --best --allowerasing
|
||||
+dnf -y update --best --allowerasing &>/dev/null
|
||||
|
||||
dnf -y install --best --allowerasing \
|
||||
dash \
|
||||
@@ -39,7 +39,7 @@ dnf -y install --best --allowerasing \
|
||||
/usr/bin/qemu-kvm \
|
||||
/usr/bin/qemu-system-$(uname -i) \
|
||||
e2fsprogs \
|
||||
- $NULL
|
||||
+ $NULL &>/dev/null
|
||||
|
||||
./configure
|
||||
|
||||
|
46
0051.patch
46
0051.patch
@ -1,46 +0,0 @@
|
||||
From c31a80c9edf8603cbdc5d2fe4465571a2ffcdff0 Mon Sep 17 00:00:00 2001
|
||||
From: Harald Hoyer <harald@redhat.com>
|
||||
Date: Thu, 16 Aug 2018 09:50:52 +0200
|
||||
Subject: [PATCH] TEST-01: remove memdebug
|
||||
|
||||
---
|
||||
.travis.yml | 6 ++----
|
||||
test/TEST-01-BASIC/test.sh | 2 +-
|
||||
2 files changed, 3 insertions(+), 5 deletions(-)
|
||||
|
||||
diff --git a/.travis.yml b/.travis.yml
|
||||
index d6d3947c..1f50b6d9 100644
|
||||
--- a/.travis.yml
|
||||
+++ b/.travis.yml
|
||||
@@ -4,15 +4,13 @@ services:
|
||||
- docker
|
||||
env:
|
||||
matrix:
|
||||
- - IMAGE=latest TESTS=01
|
||||
- - IMAGE=latest TESTS="02 03 04 10 11 12 13 15 17 18"
|
||||
+ - IMAGE=latest TESTS="01 02 03 04 10 11 12 13 15 17 18"
|
||||
- IMAGE=latest TESTS=20
|
||||
- IMAGE=latest TESTS="30 31"
|
||||
- IMAGE=latest TESTS=50
|
||||
- IMAGE=latest TESTS=70
|
||||
- IMAGE=latest TESTS=99
|
||||
- - IMAGE=rawhide TESTS=01
|
||||
- - IMAGE=rawhide TESTS="02 03 04 10 11 12 13 15 17 18"
|
||||
+ - IMAGE=rawhide TESTS="01 02 03 04 10 11 12 13 15 17 18"
|
||||
- IMAGE=rawhide TESTS=20
|
||||
- IMAGE=rawhide TESTS="30 31"
|
||||
- IMAGE=rawhide TESTS=50
|
||||
diff --git a/test/TEST-01-BASIC/test.sh b/test/TEST-01-BASIC/test.sh
|
||||
index 137249f4..455afef6 100755
|
||||
--- a/test/TEST-01-BASIC/test.sh
|
||||
+++ b/test/TEST-01-BASIC/test.sh
|
||||
@@ -15,7 +15,7 @@ test_run() {
|
||||
-net none \
|
||||
-watchdog i6300esb -watchdog-action poweroff \
|
||||
-no-reboot \
|
||||
- -append "panic=1 root=LABEL=dracut rw systemd.log_level=debug systemd.log_target=console rd.retry=3 rd.debug console=ttyS0,115200n81 rd.shell=0 $DEBUGFAIL rd.memdebug=4" \
|
||||
+ -append "panic=1 root=LABEL=dracut rw systemd.log_level=debug systemd.log_target=console rd.retry=3 rd.debug console=ttyS0,115200n81 rd.shell=0 $DEBUGFAIL" \
|
||||
-initrd $TESTDIR/initramfs.testing || return 1
|
||||
grep -F -m 1 -q dracut-root-block-success $TESTDIR/result || return 1
|
||||
}
|
||||
|
149
0052.patch
149
0052.patch
@ -1,149 +0,0 @@
|
||||
From 51d0a545557d535f814e402fff20274f9e125d85 Mon Sep 17 00:00:00 2001
|
||||
From: Harald Hoyer <harald@redhat.com>
|
||||
Date: Thu, 16 Aug 2018 10:16:52 +0200
|
||||
Subject: [PATCH] travis: use own logtee.c to reduce log output
|
||||
|
||||
---
|
||||
.travis.yml | 12 ++++++------
|
||||
Makefile | 3 +++
|
||||
fedora-test.sh | 2 +-
|
||||
logtee.c | 46 ++++++++++++++++++++++++++++++++++++++++++++++
|
||||
test/test-functions | 15 ++++++++++++++-
|
||||
5 files changed, 70 insertions(+), 8 deletions(-)
|
||||
|
||||
diff --git a/.travis.yml b/.travis.yml
|
||||
index 1f50b6d9..5298a816 100644
|
||||
--- a/.travis.yml
|
||||
+++ b/.travis.yml
|
||||
@@ -10,12 +10,12 @@ env:
|
||||
- IMAGE=latest TESTS=50
|
||||
- IMAGE=latest TESTS=70
|
||||
- IMAGE=latest TESTS=99
|
||||
- - IMAGE=rawhide TESTS="01 02 03 04 10 11 12 13 15 17 18"
|
||||
- - IMAGE=rawhide TESTS=20
|
||||
- - IMAGE=rawhide TESTS="30 31"
|
||||
- - IMAGE=rawhide TESTS=50
|
||||
- - IMAGE=rawhide TESTS=70
|
||||
- - IMAGE=rawhide TESTS=99
|
||||
+# - IMAGE=rawhide TESTS="01 02 03 04 10 11 12 13 15 17 18"
|
||||
+# - IMAGE=rawhide TESTS=20
|
||||
+# - IMAGE=rawhide TESTS="30 31"
|
||||
+# - IMAGE=rawhide TESTS=50
|
||||
+# - IMAGE=rawhide TESTS=70
|
||||
+# - IMAGE=rawhide TESTS=99
|
||||
|
||||
before_script:
|
||||
- docker pull fedora:$IMAGE
|
||||
diff --git a/Makefile b/Makefile
|
||||
index 414fb330..cd02dab0 100644
|
||||
--- a/Makefile
|
||||
+++ b/Makefile
|
||||
@@ -63,6 +63,9 @@ install/strv.o: install/strv.c install/strv.h install/util.h install/macro.h ins
|
||||
install/dracut-install: $(DRACUT_INSTALL_OBJECTS)
|
||||
$(CC) $(LDFLAGS) -o $@ $(DRACUT_INSTALL_OBJECTS) $(LDLIBS) $(KMOD_LIBS)
|
||||
|
||||
+logtee: logtee.c
|
||||
+ $(CC) $(LDFLAGS) -o $@ $<
|
||||
+
|
||||
dracut-install: install/dracut-install
|
||||
ln -fs $< $@
|
||||
|
||||
diff --git a/fedora-test.sh b/fedora-test.sh
|
||||
index e7d0f633..af38bc33 100755
|
||||
--- a/fedora-test.sh
|
||||
+++ b/fedora-test.sh
|
||||
@@ -45,7 +45,7 @@ dnf -y install --best --allowerasing \
|
||||
|
||||
NCPU=$(getconf _NPROCESSORS_ONLN)
|
||||
|
||||
-make -j$NCPU all syncheck rpm
|
||||
+make -j$NCPU all syncheck rpm logtee
|
||||
|
||||
cd test
|
||||
|
||||
diff --git a/logtee.c b/logtee.c
|
||||
new file mode 100644
|
||||
index 00000000..2f1937d4
|
||||
--- /dev/null
|
||||
+++ b/logtee.c
|
||||
@@ -0,0 +1,46 @@
|
||||
+#define _GNU_SOURCE
|
||||
+#include <fcntl.h>
|
||||
+#include <stdio.h>
|
||||
+#include <stdlib.h>
|
||||
+#include <unistd.h>
|
||||
+#include <errno.h>
|
||||
+#include <limits.h>
|
||||
+
|
||||
+int
|
||||
+main(int argc, char *argv[])
|
||||
+{
|
||||
+ int fd;
|
||||
+ int len, slen;
|
||||
+
|
||||
+ if (argc != 2) {
|
||||
+ fprintf(stderr, "Usage: %s <file>\n", argv[0]);
|
||||
+ exit(EXIT_FAILURE);
|
||||
+ }
|
||||
+
|
||||
+ fd = open(argv[1], O_WRONLY | O_CREAT | O_TRUNC, 0644);
|
||||
+ if (fd == -1) {
|
||||
+ perror("open");
|
||||
+ exit(EXIT_FAILURE);
|
||||
+ }
|
||||
+
|
||||
+ fprintf(stderr, "Logging to %s: ", argv[1]);
|
||||
+
|
||||
+ do {
|
||||
+ len = splice(STDIN_FILENO, NULL, fd, NULL,
|
||||
+ 65536, SPLICE_F_MOVE);
|
||||
+
|
||||
+ if (len < 0) {
|
||||
+ if (errno == EAGAIN)
|
||||
+ continue;
|
||||
+ perror("tee");
|
||||
+ exit(EXIT_FAILURE);
|
||||
+ } else
|
||||
+ if (len == 0)
|
||||
+ break;
|
||||
+ fprintf(stderr, ".", len);
|
||||
+ } while (1);
|
||||
+ close(fd);
|
||||
+ fprintf(stderr, "\n");
|
||||
+ exit(EXIT_SUCCESS);
|
||||
+}
|
||||
+
|
||||
diff --git a/test/test-functions b/test/test-functions
|
||||
index d6b28d20..02ceafec 100644
|
||||
--- a/test/test-functions
|
||||
+++ b/test/test-functions
|
||||
@@ -60,7 +60,7 @@ while (($# > 0)); do
|
||||
else
|
||||
echo "TEST: $TEST_DESCRIPTION [STARTED]";
|
||||
fi
|
||||
- if ! [[ "$V" ]]; then
|
||||
+ if [[ "$V" == "1" ]]; then
|
||||
(
|
||||
test_setup && test_run
|
||||
ret=$?
|
||||
@@ -69,6 +69,19 @@ while (($# > 0)); do
|
||||
rm -f -- .testdir${TEST_RUN_ID:+-$TEST_RUN_ID}
|
||||
exit $ret
|
||||
) </dev/null >test-${TEST_RUN_ID:+-$TEST_RUN_ID}.log 2>&1
|
||||
+ elif [[ "$V" == "2" ]]; then
|
||||
+ set -o pipefail
|
||||
+ (
|
||||
+ test_setup && test_run
|
||||
+ ret=$?
|
||||
+ test_cleanup
|
||||
+ if ((ret!=0)) && [[ -f "$TESTDIR"/server.log ]]; then
|
||||
+ mv [[ -f "$TESTDIR"/server.log ]] ./server${TEST_RUN_ID:+-$TEST_RUN_ID}.log
|
||||
+ fi
|
||||
+ rm -fr -- "$TESTDIR"
|
||||
+ rm -f -- .testdir${TEST_RUN_ID:+-$TEST_RUN_ID}
|
||||
+ exit $ret
|
||||
+ ) </dev/null 2>&1 | $basedir/logtee test-${TEST_RUN_ID:+-$TEST_RUN_ID}.log
|
||||
else
|
||||
set -o pipefail
|
||||
(
|
||||
|
24
0053.patch
24
0053.patch
@ -1,24 +0,0 @@
|
||||
From 110063c5850ea1cb95dd2af171adff1a03305e60 Mon Sep 17 00:00:00 2001
|
||||
From: Harald Hoyer <harald@redhat.com>
|
||||
Date: Thu, 16 Aug 2018 10:29:16 +0200
|
||||
Subject: [PATCH] travis: git check
|
||||
|
||||
---
|
||||
.travis.yml | 3 +++
|
||||
1 file changed, 3 insertions(+)
|
||||
|
||||
diff --git a/.travis.yml b/.travis.yml
|
||||
index 5298a816..72cfe8f9 100644
|
||||
--- a/.travis.yml
|
||||
+++ b/.travis.yml
|
||||
@@ -19,6 +19,9 @@ env:
|
||||
|
||||
before_script:
|
||||
- docker pull fedora:$IMAGE
|
||||
+- git describe --abbrev=0 --tags || :
|
||||
+- git describe --tags || :
|
||||
+
|
||||
script:
|
||||
- docker run --privileged -it -v $(pwd)/:/dracut fedora:$IMAGE /dracut/fedora-test.sh $IMAGE-$$ "$TESTS"
|
||||
notifications:
|
||||
|
39
0054.patch
39
0054.patch
@ -1,39 +0,0 @@
|
||||
From 6f90be2971439e84c4efb61d1fc888b165b3f3ca Mon Sep 17 00:00:00 2001
|
||||
From: Harald Hoyer <harald@redhat.com>
|
||||
Date: Thu, 16 Aug 2018 10:33:06 +0200
|
||||
Subject: [PATCH] travis: fixup
|
||||
|
||||
---
|
||||
.travis.yml | 13 ++++---------
|
||||
1 file changed, 4 insertions(+), 9 deletions(-)
|
||||
|
||||
diff --git a/.travis.yml b/.travis.yml
|
||||
index 72cfe8f9..cd05ceae 100644
|
||||
--- a/.travis.yml
|
||||
+++ b/.travis.yml
|
||||
@@ -10,20 +10,15 @@ env:
|
||||
- IMAGE=latest TESTS=50
|
||||
- IMAGE=latest TESTS=70
|
||||
- IMAGE=latest TESTS=99
|
||||
-# - IMAGE=rawhide TESTS="01 02 03 04 10 11 12 13 15 17 18"
|
||||
-# - IMAGE=rawhide TESTS=20
|
||||
-# - IMAGE=rawhide TESTS="30 31"
|
||||
-# - IMAGE=rawhide TESTS=50
|
||||
-# - IMAGE=rawhide TESTS=70
|
||||
-# - IMAGE=rawhide TESTS=99
|
||||
|
||||
before_script:
|
||||
-- docker pull fedora:$IMAGE
|
||||
-- git describe --abbrev=0 --tags || :
|
||||
-- git describe --tags || :
|
||||
+ - docker pull fedora:$IMAGE
|
||||
+ - git describe --abbrev=0 --tags || :
|
||||
+ - git describe --tags || :
|
||||
|
||||
script:
|
||||
- docker run --privileged -it -v $(pwd)/:/dracut fedora:$IMAGE /dracut/fedora-test.sh $IMAGE-$$ "$TESTS"
|
||||
+
|
||||
notifications:
|
||||
webhooks:
|
||||
urls:
|
||||
|
26
0055.patch
26
0055.patch
@ -1,26 +0,0 @@
|
||||
From 2b77ba0b75dad8f87c141fc517f2999b2e45ae0c Mon Sep 17 00:00:00 2001
|
||||
From: Harald Hoyer <harald@redhat.com>
|
||||
Date: Thu, 16 Aug 2018 10:36:17 +0200
|
||||
Subject: [PATCH] travis: fight with yaml
|
||||
|
||||
---
|
||||
.travis.yml | 5 +++--
|
||||
1 file changed, 3 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/.travis.yml b/.travis.yml
|
||||
index cd05ceae..38b29ca4 100644
|
||||
--- a/.travis.yml
|
||||
+++ b/.travis.yml
|
||||
@@ -13,8 +13,9 @@ env:
|
||||
|
||||
before_script:
|
||||
- docker pull fedora:$IMAGE
|
||||
- - git describe --abbrev=0 --tags || :
|
||||
- - git describe --tags || :
|
||||
+ - |
|
||||
+ git describe --abbrev=0 --tags || :
|
||||
+ git describe --tags || :
|
||||
|
||||
script:
|
||||
- docker run --privileged -it -v $(pwd)/:/dracut fedora:$IMAGE /dracut/fedora-test.sh $IMAGE-$$ "$TESTS"
|
||||
|
22
0056.patch
22
0056.patch
@ -1,22 +0,0 @@
|
||||
From 9f02b291ac9c315b94d42c4c029645fb1298dac4 Mon Sep 17 00:00:00 2001
|
||||
From: Harald Hoyer <harald@redhat.com>
|
||||
Date: Thu, 16 Aug 2018 10:39:49 +0200
|
||||
Subject: [PATCH] travis: git pull --tags
|
||||
|
||||
---
|
||||
.travis.yml | 1 +
|
||||
1 file changed, 1 insertion(+)
|
||||
|
||||
diff --git a/.travis.yml b/.travis.yml
|
||||
index 38b29ca4..01be428f 100644
|
||||
--- a/.travis.yml
|
||||
+++ b/.travis.yml
|
||||
@@ -13,6 +13,7 @@ env:
|
||||
|
||||
before_script:
|
||||
- docker pull fedora:$IMAGE
|
||||
+ - git pull --tags
|
||||
- |
|
||||
git describe --abbrev=0 --tags || :
|
||||
git describe --tags || :
|
||||
|
38
0057.patch
38
0057.patch
@ -1,38 +0,0 @@
|
||||
From 0ae584824519995219857ca7f447e73f31a6da9a Mon Sep 17 00:00:00 2001
|
||||
From: Harald Hoyer <harald@redhat.com>
|
||||
Date: Thu, 16 Aug 2018 10:46:57 +0200
|
||||
Subject: [PATCH] travis: git pull more depth
|
||||
|
||||
---
|
||||
.travis.yml | 2 +-
|
||||
Makefile | 4 ++--
|
||||
2 files changed, 3 insertions(+), 3 deletions(-)
|
||||
|
||||
diff --git a/.travis.yml b/.travis.yml
|
||||
index 01be428f..2df45f4d 100644
|
||||
--- a/.travis.yml
|
||||
+++ b/.travis.yml
|
||||
@@ -13,7 +13,7 @@ env:
|
||||
|
||||
before_script:
|
||||
- docker pull fedora:$IMAGE
|
||||
- - git pull --tags
|
||||
+ - git pull --depth=100
|
||||
- |
|
||||
git describe --abbrev=0 --tags || :
|
||||
git describe --tags || :
|
||||
diff --git a/Makefile b/Makefile
|
||||
index cd02dab0..80623437 100644
|
||||
--- a/Makefile
|
||||
+++ b/Makefile
|
||||
@@ -1,7 +1,7 @@
|
||||
-include dracut-version.sh
|
||||
|
||||
-VERSION ?= $(shell [ -d .git ] && git describe --abbrev=0 --tags 2>/dev/null || echo $(DRACUT_VERSION))
|
||||
-GITVERSION ?= $(shell [ -d .git ] && { v=$$(git describe --tags 2>/dev/null); [ -n "$$v" ] && [ $${v\#*-} != $$v ] && echo -$${v\#*-}; } )
|
||||
+VERSION ?= $(shell [ -d .git ] && git describe --abbrev=0 --tags --always 2>/dev/null || echo $(DRACUT_VERSION))
|
||||
+GITVERSION ?= $(shell [ -d .git ] && { v=$$(git describe --tags --always 2>/dev/null); [ -n "$$v" ] && [ $${v\#*-} != $$v ] && echo -$${v\#*-}; } )
|
||||
|
||||
-include Makefile.inc
|
||||
|
||||
|
66
0058.patch
66
0058.patch
@ -1,66 +0,0 @@
|
||||
From 67f43d2124cb827f45f4a1f3a2c1aae7cb08378e Mon Sep 17 00:00:00 2001
|
||||
From: Harald Hoyer <harald@redhat.com>
|
||||
Date: Thu, 16 Aug 2018 11:13:55 +0200
|
||||
Subject: [PATCH] test: fixed test.log name
|
||||
|
||||
---
|
||||
test/test-functions | 14 +++++++-------
|
||||
1 file changed, 7 insertions(+), 7 deletions(-)
|
||||
|
||||
diff --git a/test/test-functions b/test/test-functions
|
||||
index 02ceafec..0c9d88c8 100644
|
||||
--- a/test/test-functions
|
||||
+++ b/test/test-functions
|
||||
@@ -54,7 +54,7 @@ while (($# > 0)); do
|
||||
exit $?;;
|
||||
--all)
|
||||
check_root
|
||||
- if ! test_check 2&>test-${TEST_RUN_ID:+-$TEST_RUN_ID}.log ; then
|
||||
+ if ! test_check 2&>test${TEST_RUN_ID:+-$TEST_RUN_ID}.log ; then
|
||||
echo -e "TEST: $TEST_DESCRIPTION " $COLOR_WARNING "[SKIPPED]" $COLOR_NORMAL
|
||||
exit 0;
|
||||
else
|
||||
@@ -68,7 +68,7 @@ while (($# > 0)); do
|
||||
rm -fr -- "$TESTDIR"
|
||||
rm -f -- .testdir${TEST_RUN_ID:+-$TEST_RUN_ID}
|
||||
exit $ret
|
||||
- ) </dev/null >test-${TEST_RUN_ID:+-$TEST_RUN_ID}.log 2>&1
|
||||
+ ) </dev/null >test${TEST_RUN_ID:+-$TEST_RUN_ID}.log 2>&1
|
||||
elif [[ "$V" == "2" ]]; then
|
||||
set -o pipefail
|
||||
(
|
||||
@@ -81,7 +81,7 @@ while (($# > 0)); do
|
||||
rm -fr -- "$TESTDIR"
|
||||
rm -f -- .testdir${TEST_RUN_ID:+-$TEST_RUN_ID}
|
||||
exit $ret
|
||||
- ) </dev/null 2>&1 | $basedir/logtee test-${TEST_RUN_ID:+-$TEST_RUN_ID}.log
|
||||
+ ) </dev/null 2>&1 | $basedir/logtee test${TEST_RUN_ID:+-$TEST_RUN_ID}.log
|
||||
else
|
||||
set -o pipefail
|
||||
(
|
||||
@@ -94,20 +94,20 @@ while (($# > 0)); do
|
||||
rm -fr -- "$TESTDIR"
|
||||
rm -f -- .testdir${TEST_RUN_ID:+-$TEST_RUN_ID}
|
||||
exit $ret
|
||||
- ) </dev/null 2>&1 | tee test-${TEST_RUN_ID:+-$TEST_RUN_ID}.log
|
||||
+ ) </dev/null 2>&1 | tee test${TEST_RUN_ID:+-$TEST_RUN_ID}.log
|
||||
fi
|
||||
ret=$?
|
||||
set +o pipefail
|
||||
if [ $ret -eq 0 ]; then
|
||||
- rm -- test-${TEST_RUN_ID:+-$TEST_RUN_ID}.log
|
||||
+ rm -- test${TEST_RUN_ID:+-$TEST_RUN_ID}.log
|
||||
echo -e "TEST: $TEST_DESCRIPTION " $COLOR_SUCCESS "[OK]" $COLOR_NORMAL
|
||||
else
|
||||
echo -e "TEST: $TEST_DESCRIPTION " $COLOR_FAILURE "[FAILED]" $COLOR_NORMAL
|
||||
if [ "$V" == "2" ]; then
|
||||
- cat $(pwd)/server${TEST_RUN_ID:+-$TEST_RUN_ID}.log $(pwd)/test-${TEST_RUN_ID:+-$TEST_RUN_ID}.log
|
||||
+ cat $(pwd)/server${TEST_RUN_ID:+-$TEST_RUN_ID}.log $(pwd)/test${TEST_RUN_ID:+-$TEST_RUN_ID}.log
|
||||
echo -e "TEST: $TEST_DESCRIPTION " $COLOR_FAILURE "[FAILED]" $COLOR_NORMAL
|
||||
else
|
||||
- echo "see $(pwd)/test-${TEST_RUN_ID:+-$TEST_RUN_ID}.log"
|
||||
+ echo "see $(pwd)/test${TEST_RUN_ID:+-$TEST_RUN_ID}.log"
|
||||
fi
|
||||
fi
|
||||
exit $ret;;
|
||||
|
55
0059.patch
55
0059.patch
@ -1,55 +0,0 @@
|
||||
From f59664a01fa9b525e211fbcb837bf8b54cac9acb Mon Sep 17 00:00:00 2001
|
||||
From: Harald Hoyer <harald@redhat.com>
|
||||
Date: Thu, 16 Aug 2018 11:14:11 +0200
|
||||
Subject: [PATCH] logtee: reduce output
|
||||
|
||||
---
|
||||
logtee.c | 16 ++++++++++++----
|
||||
1 file changed, 12 insertions(+), 4 deletions(-)
|
||||
|
||||
diff --git a/logtee.c b/logtee.c
|
||||
index 2f1937d4..2690e72d 100644
|
||||
--- a/logtee.c
|
||||
+++ b/logtee.c
|
||||
@@ -6,6 +6,8 @@
|
||||
#include <errno.h>
|
||||
#include <limits.h>
|
||||
|
||||
+#define BUFLEN 4096
|
||||
+
|
||||
int
|
||||
main(int argc, char *argv[])
|
||||
{
|
||||
@@ -25,9 +27,11 @@ main(int argc, char *argv[])
|
||||
|
||||
fprintf(stderr, "Logging to %s: ", argv[1]);
|
||||
|
||||
+ slen = 0;
|
||||
+
|
||||
do {
|
||||
len = splice(STDIN_FILENO, NULL, fd, NULL,
|
||||
- 65536, SPLICE_F_MOVE);
|
||||
+ BUFLEN, SPLICE_F_MOVE);
|
||||
|
||||
if (len < 0) {
|
||||
if (errno == EAGAIN)
|
||||
@@ -37,10 +41,14 @@ main(int argc, char *argv[])
|
||||
} else
|
||||
if (len == 0)
|
||||
break;
|
||||
- fprintf(stderr, ".", len);
|
||||
+ slen += len;
|
||||
+ if ((slen/BUFLEN) > 0) {
|
||||
+ fprintf(stderr, ".");
|
||||
+ }
|
||||
+ slen = slen % BUFLEN;
|
||||
+
|
||||
} while (1);
|
||||
close(fd);
|
||||
fprintf(stderr, "\n");
|
||||
exit(EXIT_SUCCESS);
|
||||
-}
|
||||
-
|
||||
+}
|
||||
\ No newline at end of file
|
||||
|
30
0060.patch
30
0060.patch
@ -1,30 +0,0 @@
|
||||
From c128b969bb860dee863fcd3beed1f4097f6fb44a Mon Sep 17 00:00:00 2001
|
||||
From: Harald Hoyer <harald@redhat.com>
|
||||
Date: Thu, 16 Aug 2018 11:15:16 +0200
|
||||
Subject: [PATCH] travis: combine more tests
|
||||
|
||||
---
|
||||
.travis.yml | 6 +++---
|
||||
1 file changed, 3 insertions(+), 3 deletions(-)
|
||||
|
||||
diff --git a/.travis.yml b/.travis.yml
|
||||
index 2df45f4d..dfb4a616 100644
|
||||
--- a/.travis.yml
|
||||
+++ b/.travis.yml
|
||||
@@ -4,12 +4,12 @@ services:
|
||||
- docker
|
||||
env:
|
||||
matrix:
|
||||
- - IMAGE=latest TESTS="01 02 03 04 10 11 12 13 15 17 18"
|
||||
+ - IMAGE=latest TESTS="01 02 03 04 10 11"
|
||||
+ - IMAGE=latest TESTS="12 13 15 17 18"
|
||||
- IMAGE=latest TESTS=20
|
||||
- IMAGE=latest TESTS="30 31"
|
||||
- IMAGE=latest TESTS=50
|
||||
- - IMAGE=latest TESTS=70
|
||||
- - IMAGE=latest TESTS=99
|
||||
+ - IMAGE=latest TESTS="70 99"
|
||||
|
||||
before_script:
|
||||
- docker pull fedora:$IMAGE
|
||||
|
23
0061.patch
23
0061.patch
@ -1,23 +0,0 @@
|
||||
From f8cad00948c10107f84b9fcba812589a256f8f80 Mon Sep 17 00:00:00 2001
|
||||
From: Harald Hoyer <harald@redhat.com>
|
||||
Date: Thu, 16 Aug 2018 11:47:21 +0200
|
||||
Subject: [PATCH] test: for V=2 tail only the last MB of logs
|
||||
|
||||
---
|
||||
test/test-functions | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/test/test-functions b/test/test-functions
|
||||
index 0c9d88c8..6d7f418b 100644
|
||||
--- a/test/test-functions
|
||||
+++ b/test/test-functions
|
||||
@@ -104,7 +104,7 @@ while (($# > 0)); do
|
||||
else
|
||||
echo -e "TEST: $TEST_DESCRIPTION " $COLOR_FAILURE "[FAILED]" $COLOR_NORMAL
|
||||
if [ "$V" == "2" ]; then
|
||||
- cat $(pwd)/server${TEST_RUN_ID:+-$TEST_RUN_ID}.log $(pwd)/test${TEST_RUN_ID:+-$TEST_RUN_ID}.log
|
||||
+ tail -c 1048576 $(pwd)/server${TEST_RUN_ID:+-$TEST_RUN_ID}.log $(pwd)/test${TEST_RUN_ID:+-$TEST_RUN_ID}.log
|
||||
echo -e "TEST: $TEST_DESCRIPTION " $COLOR_FAILURE "[FAILED]" $COLOR_NORMAL
|
||||
else
|
||||
echo "see $(pwd)/test${TEST_RUN_ID:+-$TEST_RUN_ID}.log"
|
||||
|
65
0062.patch
65
0062.patch
@ -1,65 +0,0 @@
|
||||
From 9c034dc326b4acd8e66af15f76f151311a5408bb Mon Sep 17 00:00:00 2001
|
||||
From: Harald Hoyer <harald@redhat.com>
|
||||
Date: Thu, 16 Aug 2018 11:57:30 +0200
|
||||
Subject: [PATCH] travis: no rpm check for all matrix tests
|
||||
|
||||
---
|
||||
.travis.yml | 10 +++++-----
|
||||
fedora-test.sh | 24 ++++++++++++++----------
|
||||
2 files changed, 19 insertions(+), 15 deletions(-)
|
||||
|
||||
diff --git a/.travis.yml b/.travis.yml
|
||||
index dfb4a616..075cbc6a 100644
|
||||
--- a/.travis.yml
|
||||
+++ b/.travis.yml
|
||||
@@ -4,12 +4,12 @@ services:
|
||||
- docker
|
||||
env:
|
||||
matrix:
|
||||
- - IMAGE=latest TESTS="01 02 03 04 10 11"
|
||||
- - IMAGE=latest TESTS="12 13 15 17 18"
|
||||
+ - IMAGE=latest
|
||||
+ - IMAGE=latest TESTS="01 02 03 04 10 11 12"
|
||||
+ - IMAGE=latest TESTS="13 15 17 18"
|
||||
- IMAGE=latest TESTS=20
|
||||
- - IMAGE=latest TESTS="30 31"
|
||||
- - IMAGE=latest TESTS=50
|
||||
- - IMAGE=latest TESTS="70 99"
|
||||
+ - IMAGE=latest TESTS="30 31 99"
|
||||
+ - IMAGE=latest TESTS="50 70"
|
||||
|
||||
before_script:
|
||||
- docker pull fedora:$IMAGE
|
||||
diff --git a/fedora-test.sh b/fedora-test.sh
|
||||
index af38bc33..87023a84 100755
|
||||
--- a/fedora-test.sh
|
||||
+++ b/fedora-test.sh
|
||||
@@ -45,13 +45,17 @@ dnf -y install --best --allowerasing \
|
||||
|
||||
NCPU=$(getconf _NPROCESSORS_ONLN)
|
||||
|
||||
-make -j$NCPU all syncheck rpm logtee
|
||||
-
|
||||
-cd test
|
||||
-
|
||||
-time sudo make \
|
||||
- KVERSION=$(rpm -qa kernel --qf '%{VERSION}-%{RELEASE}.%{ARCH}\n' | sort -rn | head -1) \
|
||||
- TEST_RUN_ID=$RUN_ID \
|
||||
- ${TESTS:+TESTS="$TESTS"} \
|
||||
- -k V=2 \
|
||||
- check
|
||||
+if ! [[ $TESTS ]]; then
|
||||
+ make -j$NCPU all syncheck rpm logtee
|
||||
+else
|
||||
+ make -j$NCPU all logtee
|
||||
+
|
||||
+ cd test
|
||||
+
|
||||
+ time sudo make \
|
||||
+ KVERSION=$(rpm -qa kernel --qf '%{VERSION}-%{RELEASE}.%{ARCH}\n' | sort -rn | head -1) \
|
||||
+ TEST_RUN_ID=$RUN_ID \
|
||||
+ ${TESTS:+TESTS="$TESTS"} \
|
||||
+ -k V=2 \
|
||||
+ check
|
||||
+fi
|
||||
|
45
0063.patch
45
0063.patch
@ -1,45 +0,0 @@
|
||||
From 5a8f1aef556056de88d55bb398443fe2b57eae52 Mon Sep 17 00:00:00 2001
|
||||
From: Harald Hoyer <harald@redhat.com>
|
||||
Date: Thu, 16 Aug 2018 11:59:09 +0200
|
||||
Subject: [PATCH] TEST-15-BTRFSRAID: sync in test-init
|
||||
|
||||
strange failure
|
||||
---
|
||||
test/TEST-15-BTRFSRAID/test-init.sh | 1 +
|
||||
test/TEST-15-BTRFSRAID/test.sh | 3 ++-
|
||||
2 files changed, 3 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/test/TEST-15-BTRFSRAID/test-init.sh b/test/TEST-15-BTRFSRAID/test-init.sh
|
||||
index 8f7cdf3a..ab9021df 100755
|
||||
--- a/test/TEST-15-BTRFSRAID/test-init.sh
|
||||
+++ b/test/TEST-15-BTRFSRAID/test-init.sh
|
||||
@@ -2,6 +2,7 @@
|
||||
export PATH=/sbin:/bin:/usr/sbin:/usr/bin
|
||||
exec >/dev/console 2>&1
|
||||
echo "dracut-root-block-success" >/dev/sda1
|
||||
+sync
|
||||
export TERM=linux
|
||||
export PS1='initramfs-test:\w\$ '
|
||||
[ -f /etc/fstab ] || ln -s /proc/mounts /etc/fstab
|
||||
diff --git a/test/TEST-15-BTRFSRAID/test.sh b/test/TEST-15-BTRFSRAID/test.sh
|
||||
index b8969863..3936ade2 100755
|
||||
--- a/test/TEST-15-BTRFSRAID/test.sh
|
||||
+++ b/test/TEST-15-BTRFSRAID/test.sh
|
||||
@@ -15,6 +15,7 @@ test_run() {
|
||||
-append "panic=1 root=LABEL=root rw rd.retry=3 rd.info console=ttyS0,115200n81 selinux=0 rd.shell=0 $DEBUGFAIL" \
|
||||
-initrd $TESTDIR/initramfs.testing
|
||||
dd if=$DISKIMAGE bs=512 count=4 skip=2048 | grep -F -m 1 -q dracut-root-block-success $DISKIMAGE || return 1
|
||||
+ return 0
|
||||
}
|
||||
|
||||
test_setup() {
|
||||
@@ -38,7 +39,7 @@ test_setup() {
|
||||
mkdir -p -- var/lib/nfs/rpc_pipefs
|
||||
)
|
||||
inst_multiple sh df free ls shutdown poweroff stty cat ps ln ip \
|
||||
- mount dmesg dhclient mkdir cp ping dhclient
|
||||
+ mount dmesg dhclient mkdir cp ping dhclient sync
|
||||
for _terminfodir in /lib/terminfo /etc/terminfo /usr/share/terminfo; do
|
||||
[ -f ${_terminfodir}/l/linux ] && break
|
||||
done
|
||||
|
23
0064.patch
23
0064.patch
@ -1,23 +0,0 @@
|
||||
From 2699d8ff7eb41ffafba46194f29bab9670b9e874 Mon Sep 17 00:00:00 2001
|
||||
From: Harald Hoyer <harald@redhat.com>
|
||||
Date: Thu, 16 Aug 2018 12:03:40 +0200
|
||||
Subject: [PATCH] TEST-99-RPM: removed --releasever
|
||||
|
||||
---
|
||||
test/TEST-99-RPM/test.sh | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/test/TEST-99-RPM/test.sh b/test/TEST-99-RPM/test.sh
|
||||
index b76a061b..984b9385 100755
|
||||
--- a/test/TEST-99-RPM/test.sh
|
||||
+++ b/test/TEST-99-RPM/test.sh
|
||||
@@ -35,7 +35,7 @@ test_run() {
|
||||
dnf_or_yum_cmd=yum
|
||||
command -v dnf >/dev/null && { dnf_or_yum="dnf"; dnf_or_yum_cmd="dnf --allowerasing"; }
|
||||
for (( i=0; i < 5 ; i++)); do
|
||||
- $dnf_or_yum_cmd -v --nogpgcheck --installroot "$rootdir"/ --releasever 29 --disablerepo='*' \
|
||||
+ $dnf_or_yum_cmd -v --nogpgcheck --installroot "$rootdir"/ --disablerepo='*' \
|
||||
--enablerepo=fedora --enablerepo=updates \
|
||||
install -y \
|
||||
$dnf_or_yum \
|
||||
|
50
0065.patch
50
0065.patch
@ -1,50 +0,0 @@
|
||||
From 7c62555bcffd7565883738df5e8c2150e887694f Mon Sep 17 00:00:00 2001
|
||||
From: Harald Hoyer <harald@redhat.com>
|
||||
Date: Thu, 16 Aug 2018 13:05:42 +0200
|
||||
Subject: [PATCH] TEST-15-BTRFSRAID: use seperate disk image for boot result
|
||||
|
||||
---
|
||||
test/TEST-15-BTRFSRAID/test-init.sh | 2 +-
|
||||
test/TEST-15-BTRFSRAID/test.sh | 10 ++++++----
|
||||
2 files changed, 7 insertions(+), 5 deletions(-)
|
||||
|
||||
diff --git a/test/TEST-15-BTRFSRAID/test-init.sh b/test/TEST-15-BTRFSRAID/test-init.sh
|
||||
index ab9021df..ed66a2b3 100755
|
||||
--- a/test/TEST-15-BTRFSRAID/test-init.sh
|
||||
+++ b/test/TEST-15-BTRFSRAID/test-init.sh
|
||||
@@ -1,7 +1,7 @@
|
||||
#!/bin/sh
|
||||
export PATH=/sbin:/bin:/usr/sbin:/usr/bin
|
||||
exec >/dev/console 2>&1
|
||||
-echo "dracut-root-block-success" >/dev/sda1
|
||||
+echo "dracut-root-block-success" >/dev/sda
|
||||
sync
|
||||
export TERM=linux
|
||||
export PS1='initramfs-test:\w\$ '
|
||||
diff --git a/test/TEST-15-BTRFSRAID/test.sh b/test/TEST-15-BTRFSRAID/test.sh
|
||||
index 3936ade2..092ed254 100755
|
||||
--- a/test/TEST-15-BTRFSRAID/test.sh
|
||||
+++ b/test/TEST-15-BTRFSRAID/test.sh
|
||||
@@ -7,15 +7,17 @@ KVERSION=${KVERSION-$(uname -r)}
|
||||
#DEBUGFAIL="rd.shell"
|
||||
test_run() {
|
||||
DISKIMAGE=$TESTDIR/TEST-15-BTRFSRAID-root.img
|
||||
+ MARKER_DISKIMAGE=$TESTDIR/TEST-15-BTRFSRAID-marker.img
|
||||
+ dd if=/dev/zero of=$MARKER_DISKIMAGE bs=512 count=10
|
||||
$testdir/run-qemu \
|
||||
- -drive format=raw,index=0,media=disk,file=$DISKIMAGE \
|
||||
- -m 512M -smp 2 -nographic \
|
||||
+ -drive format=raw,index=0,media=disk,file=$MARKER_DISKIMAGE \
|
||||
+ -drive format=raw,index=1,media=disk,file=$DISKIMAGE \
|
||||
+ -m 512M -smp 2 -nographic \
|
||||
-net none \
|
||||
-no-reboot \
|
||||
-append "panic=1 root=LABEL=root rw rd.retry=3 rd.info console=ttyS0,115200n81 selinux=0 rd.shell=0 $DEBUGFAIL" \
|
||||
-initrd $TESTDIR/initramfs.testing
|
||||
- dd if=$DISKIMAGE bs=512 count=4 skip=2048 | grep -F -m 1 -q dracut-root-block-success $DISKIMAGE || return 1
|
||||
- return 0
|
||||
+ grep -F -m 1 -q dracut-root-block-success $MARKER_DISKIMAGE || return 1
|
||||
}
|
||||
|
||||
test_setup() {
|
||||
|
29
0066.patch
29
0066.patch
@ -1,29 +0,0 @@
|
||||
From 286685cb720f4150f363487c3702ea12d838f7df Mon Sep 17 00:00:00 2001
|
||||
From: Harald Hoyer <harald@redhat.com>
|
||||
Date: Thu, 16 Aug 2018 13:20:40 +0200
|
||||
Subject: [PATCH] TEST-99-RPM: use releasever of the host system
|
||||
|
||||
---
|
||||
test/TEST-99-RPM/test.sh | 4 ++--
|
||||
1 file changed, 2 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/test/TEST-99-RPM/test.sh b/test/TEST-99-RPM/test.sh
|
||||
index 984b9385..b4aca176 100755
|
||||
--- a/test/TEST-99-RPM/test.sh
|
||||
+++ b/test/TEST-99-RPM/test.sh
|
||||
@@ -30,12 +30,12 @@ test_run() {
|
||||
"$TESTDIR"/dracut-[0-9]*.$(arch).rpm \
|
||||
"$TESTDIR"/dracut-network-[0-9]*.$(arch).rpm \
|
||||
"$rootdir/$TESTDIR/"
|
||||
-
|
||||
+ . /etc/os-release
|
||||
dnf_or_yum=yum
|
||||
dnf_or_yum_cmd=yum
|
||||
command -v dnf >/dev/null && { dnf_or_yum="dnf"; dnf_or_yum_cmd="dnf --allowerasing"; }
|
||||
for (( i=0; i < 5 ; i++)); do
|
||||
- $dnf_or_yum_cmd -v --nogpgcheck --installroot "$rootdir"/ --disablerepo='*' \
|
||||
+ $dnf_or_yum_cmd -v --nogpgcheck --installroot "$rootdir"/ --releasever "$VERSION_ID" --disablerepo='*' \
|
||||
--enablerepo=fedora --enablerepo=updates \
|
||||
install -y \
|
||||
$dnf_or_yum \
|
||||
|
31
0067.patch
31
0067.patch
@ -1,31 +0,0 @@
|
||||
From f059ce76826645569575ee9631b23806764095fe Mon Sep 17 00:00:00 2001
|
||||
From: Harald Hoyer <harald@redhat.com>
|
||||
Date: Thu, 16 Aug 2018 13:56:19 +0200
|
||||
Subject: [PATCH] travis: reshuffle tests
|
||||
|
||||
---
|
||||
.travis.yml | 10 +++++-----
|
||||
1 file changed, 5 insertions(+), 5 deletions(-)
|
||||
|
||||
diff --git a/.travis.yml b/.travis.yml
|
||||
index 075cbc6a..8e20054a 100644
|
||||
--- a/.travis.yml
|
||||
+++ b/.travis.yml
|
||||
@@ -5,11 +5,11 @@ services:
|
||||
env:
|
||||
matrix:
|
||||
- IMAGE=latest
|
||||
- - IMAGE=latest TESTS="01 02 03 04 10 11 12"
|
||||
- - IMAGE=latest TESTS="13 15 17 18"
|
||||
- - IMAGE=latest TESTS=20
|
||||
- - IMAGE=latest TESTS="30 31 99"
|
||||
- - IMAGE=latest TESTS="50 70"
|
||||
+ - IMAGE=latest TESTS="13 15 17 18 30 31"
|
||||
+ - IMAGE=latest TESTS="10 20"
|
||||
+ - IMAGE=latest TESTS="01 02 03 04 70"
|
||||
+ - IMAGE=latest TESTS="11 12 99"
|
||||
+ - IMAGE=latest TESTS="50"
|
||||
|
||||
before_script:
|
||||
- docker pull fedora:$IMAGE
|
||||
|
34
0068.patch
34
0068.patch
@ -1,34 +0,0 @@
|
||||
From 06e12e4ba8d827eedd0882d9918f94758d52a579 Mon Sep 17 00:00:00 2001
|
||||
From: Harald Hoyer <harald@redhat.com>
|
||||
Date: Thu, 16 Aug 2018 14:25:23 +0200
|
||||
Subject: [PATCH] travis: rebalance tests
|
||||
|
||||
---
|
||||
.travis.yml | 10 +++++++---
|
||||
1 file changed, 7 insertions(+), 3 deletions(-)
|
||||
|
||||
diff --git a/.travis.yml b/.travis.yml
|
||||
index 8e20054a..91ecafed 100644
|
||||
--- a/.travis.yml
|
||||
+++ b/.travis.yml
|
||||
@@ -7,12 +7,16 @@ env:
|
||||
- IMAGE=latest
|
||||
- IMAGE=latest TESTS="13 15 17 18 30 31"
|
||||
- IMAGE=latest TESTS="10 20"
|
||||
- - IMAGE=latest TESTS="01 02 03 04 70"
|
||||
- - IMAGE=latest TESTS="11 12 99"
|
||||
- - IMAGE=latest TESTS="50"
|
||||
+ - IMAGE=latest TESTS="01 02 03 04 11 70"
|
||||
+ - IMAGE=latest TESTS="12"
|
||||
+ - IMAGE=latest TESTS="50 99"
|
||||
|
||||
before_script:
|
||||
- docker pull fedora:$IMAGE
|
||||
+ - |
|
||||
+ sudo modprobe kvm-intel nested=y || :
|
||||
+ sudo modprobe kvm-amd nested=y || :
|
||||
+ dmesg | tail || :
|
||||
- git pull --depth=100
|
||||
- |
|
||||
git describe --abbrev=0 --tags || :
|
||||
|
30
0069.patch
30
0069.patch
@ -1,30 +0,0 @@
|
||||
From bd03d374b704324b595e2af1901e590ff7c5a92b Mon Sep 17 00:00:00 2001
|
||||
From: Harald Hoyer <harald@redhat.com>
|
||||
Date: Thu, 16 Aug 2018 14:28:54 +0200
|
||||
Subject: [PATCH] travis: modprobe amd nested=1
|
||||
|
||||
GREAT!
|
||||
|
||||
$ modinfo kvm-intel kvm-amd| fgrep nested
|
||||
parm: nested:bool
|
||||
parm: nested:int
|
||||
---
|
||||
.travis.yml | 4 ++--
|
||||
1 file changed, 2 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/.travis.yml b/.travis.yml
|
||||
index 91ecafed..0932805f 100644
|
||||
--- a/.travis.yml
|
||||
+++ b/.travis.yml
|
||||
@@ -14,8 +14,8 @@ env:
|
||||
before_script:
|
||||
- docker pull fedora:$IMAGE
|
||||
- |
|
||||
- sudo modprobe kvm-intel nested=y || :
|
||||
- sudo modprobe kvm-amd nested=y || :
|
||||
+ sudo modprobe kvm-intel nested=1 || :
|
||||
+ sudo modprobe kvm-amd nested=1 || :
|
||||
dmesg | tail || :
|
||||
- git pull --depth=100
|
||||
- |
|
||||
|
44
0070.patch
44
0070.patch
@ -1,44 +0,0 @@
|
||||
From a17440713acdc943983c61cf12c56aa0a7e3a58d Mon Sep 17 00:00:00 2001
|
||||
From: Harald Hoyer <harald@redhat.com>
|
||||
Date: Thu, 16 Aug 2018 14:48:21 +0200
|
||||
Subject: [PATCH] travis: reshuffle tests
|
||||
|
||||
long running tests first
|
||||
---
|
||||
.travis.yml | 22 +++++++++++++++++-----
|
||||
1 file changed, 17 insertions(+), 5 deletions(-)
|
||||
|
||||
diff --git a/.travis.yml b/.travis.yml
|
||||
index 0932805f..f1aab2a9 100644
|
||||
--- a/.travis.yml
|
||||
+++ b/.travis.yml
|
||||
@@ -5,11 +5,23 @@ services:
|
||||
env:
|
||||
matrix:
|
||||
- IMAGE=latest
|
||||
- - IMAGE=latest TESTS="13 15 17 18 30 31"
|
||||
- - IMAGE=latest TESTS="10 20"
|
||||
- - IMAGE=latest TESTS="01 02 03 04 11 70"
|
||||
- - IMAGE=latest TESTS="12"
|
||||
- - IMAGE=latest TESTS="50 99"
|
||||
+ - IMAGE=latest TESTS=01
|
||||
+ - IMAGE=latest TESTS=12
|
||||
+ - IMAGE=latest TESTS=20
|
||||
+ - IMAGE=latest TESTS=50
|
||||
+ - IMAGE=latest TESTS=31
|
||||
+ - IMAGE=latest TESTS=30
|
||||
+ - IMAGE=latest TESTS=70
|
||||
+ - IMAGE=latest TESTS=99
|
||||
+ - IMAGE=latest TESTS=02
|
||||
+ - IMAGE=latest TESTS=03
|
||||
+ - IMAGE=latest TESTS=04
|
||||
+ - IMAGE=latest TESTS=10
|
||||
+ - IMAGE=latest TESTS=11
|
||||
+ - IMAGE=latest TESTS=13
|
||||
+ - IMAGE=latest TESTS=15
|
||||
+ - IMAGE=latest TESTS=17
|
||||
+ - IMAGE=latest TESTS=18
|
||||
|
||||
before_script:
|
||||
- docker pull fedora:$IMAGE
|
||||
|
41
0071.patch
41
0071.patch
@ -1,41 +0,0 @@
|
||||
From f19063ac71b9a82d19f3be7f252bf90d98be454f Mon Sep 17 00:00:00 2001
|
||||
From: Harald Hoyer <harald@redhat.com>
|
||||
Date: Thu, 16 Aug 2018 15:28:04 +0200
|
||||
Subject: [PATCH] travis: one last job reshuffle
|
||||
|
||||
---
|
||||
.travis.yml | 15 +++------------
|
||||
1 file changed, 3 insertions(+), 12 deletions(-)
|
||||
|
||||
diff --git a/.travis.yml b/.travis.yml
|
||||
index f1aab2a9..83e9b4d1 100644
|
||||
--- a/.travis.yml
|
||||
+++ b/.travis.yml
|
||||
@@ -5,23 +5,14 @@ services:
|
||||
env:
|
||||
matrix:
|
||||
- IMAGE=latest
|
||||
- - IMAGE=latest TESTS=01
|
||||
+ - IMAGE=latest TESTS="01 02 03 04"
|
||||
- IMAGE=latest TESTS=12
|
||||
- IMAGE=latest TESTS=20
|
||||
- IMAGE=latest TESTS=50
|
||||
- - IMAGE=latest TESTS=31
|
||||
- - IMAGE=latest TESTS=30
|
||||
+ - IMAGE=latest TESTS="30 31"
|
||||
- IMAGE=latest TESTS=70
|
||||
- IMAGE=latest TESTS=99
|
||||
- - IMAGE=latest TESTS=02
|
||||
- - IMAGE=latest TESTS=03
|
||||
- - IMAGE=latest TESTS=04
|
||||
- - IMAGE=latest TESTS=10
|
||||
- - IMAGE=latest TESTS=11
|
||||
- - IMAGE=latest TESTS=13
|
||||
- - IMAGE=latest TESTS=15
|
||||
- - IMAGE=latest TESTS=17
|
||||
- - IMAGE=latest TESTS=18
|
||||
+ - IMAGE=latest TESTS="10 11 13 15 17"
|
||||
|
||||
before_script:
|
||||
- docker pull fedora:$IMAGE
|
||||
|
142
0072.patch
142
0072.patch
@ -1,142 +0,0 @@
|
||||
From 09132c732a36cc892310b26c829ac00c007d84ec Mon Sep 17 00:00:00 2001
|
||||
From: Harald Hoyer <harald@redhat.com>
|
||||
Date: Fri, 17 Aug 2018 15:38:03 +0200
|
||||
Subject: [PATCH] test/test-functions: fixed V=1 logic
|
||||
|
||||
---
|
||||
test/test-functions | 96 ++++++++++++++++++++++++++---------------------------
|
||||
1 file changed, 48 insertions(+), 48 deletions(-)
|
||||
|
||||
diff --git a/test/test-functions b/test/test-functions
|
||||
index 6d7f418b..a6254ec7 100644
|
||||
--- a/test/test-functions
|
||||
+++ b/test/test-functions
|
||||
@@ -38,79 +38,79 @@ while (($# > 0)); do
|
||||
case $1 in
|
||||
--run)
|
||||
check_root
|
||||
- echo "TEST RUN: $TEST_DESCRIPTION"
|
||||
- test_check && test_run
|
||||
- exit $?;;
|
||||
+ echo "TEST RUN: $TEST_DESCRIPTION"
|
||||
+ test_check && test_run
|
||||
+ exit $?;;
|
||||
--setup)
|
||||
check_root
|
||||
- echo "TEST SETUP: $TEST_DESCRIPTION"
|
||||
- test_check && test_setup
|
||||
- exit $?;;
|
||||
+ echo "TEST SETUP: $TEST_DESCRIPTION"
|
||||
+ test_check && test_setup
|
||||
+ exit $?;;
|
||||
--clean)
|
||||
- echo "TEST CLEANUP: $TEST_DESCRIPTION"
|
||||
- test_cleanup
|
||||
- rm -fr -- "$TESTDIR"
|
||||
- rm -f -- .testdir${TEST_RUN_ID:+-$TEST_RUN_ID}
|
||||
- exit $?;;
|
||||
+ echo "TEST CLEANUP: $TEST_DESCRIPTION"
|
||||
+ test_cleanup
|
||||
+ rm -fr -- "$TESTDIR"
|
||||
+ rm -f -- .testdir${TEST_RUN_ID:+-$TEST_RUN_ID}
|
||||
+ exit $?;;
|
||||
--all)
|
||||
check_root
|
||||
if ! test_check 2&>test${TEST_RUN_ID:+-$TEST_RUN_ID}.log ; then
|
||||
- echo -e "TEST: $TEST_DESCRIPTION " $COLOR_WARNING "[SKIPPED]" $COLOR_NORMAL
|
||||
- exit 0;
|
||||
+ echo -e "TEST: $TEST_DESCRIPTION " $COLOR_WARNING "[SKIPPED]" $COLOR_NORMAL
|
||||
+ exit 0;
|
||||
else
|
||||
- echo "TEST: $TEST_DESCRIPTION [STARTED]";
|
||||
+ echo "TEST: $TEST_DESCRIPTION [STARTED]";
|
||||
fi
|
||||
if [[ "$V" == "1" ]]; then
|
||||
- (
|
||||
- test_setup && test_run
|
||||
- ret=$?
|
||||
- test_cleanup
|
||||
- rm -fr -- "$TESTDIR"
|
||||
- rm -f -- .testdir${TEST_RUN_ID:+-$TEST_RUN_ID}
|
||||
- exit $ret
|
||||
- ) </dev/null >test${TEST_RUN_ID:+-$TEST_RUN_ID}.log 2>&1
|
||||
- elif [[ "$V" == "2" ]]; then
|
||||
set -o pipefail
|
||||
(
|
||||
- test_setup && test_run
|
||||
- ret=$?
|
||||
- test_cleanup
|
||||
+ test_setup && test_run
|
||||
+ ret=$?
|
||||
+ test_cleanup
|
||||
if ((ret!=0)) && [[ -f "$TESTDIR"/server.log ]]; then
|
||||
mv [[ -f "$TESTDIR"/server.log ]] ./server${TEST_RUN_ID:+-$TEST_RUN_ID}.log
|
||||
fi
|
||||
- rm -fr -- "$TESTDIR"
|
||||
- rm -f -- .testdir${TEST_RUN_ID:+-$TEST_RUN_ID}
|
||||
- exit $ret
|
||||
- ) </dev/null 2>&1 | $basedir/logtee test${TEST_RUN_ID:+-$TEST_RUN_ID}.log
|
||||
- else
|
||||
+ rm -fr -- "$TESTDIR"
|
||||
+ rm -f -- .testdir${TEST_RUN_ID:+-$TEST_RUN_ID}
|
||||
+ exit $ret
|
||||
+ ) </dev/null 2>&1 | tee test${TEST_RUN_ID:+-$TEST_RUN_ID}.log
|
||||
+ elif [[ "$V" == "2" ]]; then
|
||||
set -o pipefail
|
||||
(
|
||||
- test_setup && test_run
|
||||
- ret=$?
|
||||
- test_cleanup
|
||||
+ test_setup && test_run
|
||||
+ ret=$?
|
||||
+ test_cleanup
|
||||
if ((ret!=0)) && [[ -f "$TESTDIR"/server.log ]]; then
|
||||
mv [[ -f "$TESTDIR"/server.log ]] ./server${TEST_RUN_ID:+-$TEST_RUN_ID}.log
|
||||
fi
|
||||
- rm -fr -- "$TESTDIR"
|
||||
- rm -f -- .testdir${TEST_RUN_ID:+-$TEST_RUN_ID}
|
||||
- exit $ret
|
||||
- ) </dev/null 2>&1 | tee test${TEST_RUN_ID:+-$TEST_RUN_ID}.log
|
||||
+ rm -fr -- "$TESTDIR"
|
||||
+ rm -f -- .testdir${TEST_RUN_ID:+-$TEST_RUN_ID}
|
||||
+ exit $ret
|
||||
+ ) </dev/null 2>&1 | $basedir/logtee test${TEST_RUN_ID:+-$TEST_RUN_ID}.log
|
||||
+ else
|
||||
+ (
|
||||
+ test_setup && test_run
|
||||
+ ret=$?
|
||||
+ test_cleanup
|
||||
+ rm -fr -- "$TESTDIR"
|
||||
+ rm -f -- .testdir${TEST_RUN_ID:+-$TEST_RUN_ID}
|
||||
+ exit $ret
|
||||
+ ) </dev/null >test${TEST_RUN_ID:+-$TEST_RUN_ID}.log 2>&1
|
||||
fi
|
||||
- ret=$?
|
||||
+ ret=$?
|
||||
set +o pipefail
|
||||
- if [ $ret -eq 0 ]; then
|
||||
+ if [ $ret -eq 0 ]; then
|
||||
rm -- test${TEST_RUN_ID:+-$TEST_RUN_ID}.log
|
||||
- echo -e "TEST: $TEST_DESCRIPTION " $COLOR_SUCCESS "[OK]" $COLOR_NORMAL
|
||||
- else
|
||||
- echo -e "TEST: $TEST_DESCRIPTION " $COLOR_FAILURE "[FAILED]" $COLOR_NORMAL
|
||||
+ echo -e "TEST: $TEST_DESCRIPTION " $COLOR_SUCCESS "[OK]" $COLOR_NORMAL
|
||||
+ else
|
||||
+ echo -e "TEST: $TEST_DESCRIPTION " $COLOR_FAILURE "[FAILED]" $COLOR_NORMAL
|
||||
if [ "$V" == "2" ]; then
|
||||
- tail -c 1048576 $(pwd)/server${TEST_RUN_ID:+-$TEST_RUN_ID}.log $(pwd)/test${TEST_RUN_ID:+-$TEST_RUN_ID}.log
|
||||
- echo -e "TEST: $TEST_DESCRIPTION " $COLOR_FAILURE "[FAILED]" $COLOR_NORMAL
|
||||
+ tail -c 1048576 $(pwd)/server${TEST_RUN_ID:+-$TEST_RUN_ID}.log $(pwd)/test${TEST_RUN_ID:+-$TEST_RUN_ID}.log
|
||||
+ echo -e "TEST: $TEST_DESCRIPTION " $COLOR_FAILURE "[FAILED]" $COLOR_NORMAL
|
||||
else
|
||||
- echo "see $(pwd)/test${TEST_RUN_ID:+-$TEST_RUN_ID}.log"
|
||||
+ echo "see $(pwd)/test${TEST_RUN_ID:+-$TEST_RUN_ID}.log"
|
||||
fi
|
||||
- fi
|
||||
- exit $ret;;
|
||||
+ fi
|
||||
+ exit $ret;;
|
||||
*) break ;;
|
||||
esac
|
||||
shift
|
||||
|
44
0073.patch
44
0073.patch
@ -1,44 +0,0 @@
|
||||
From ee18dd2b88d6767902d442baa92c95f7be69c265 Mon Sep 17 00:00:00 2001
|
||||
From: Harald Hoyer <harald@redhat.com>
|
||||
Date: Fri, 17 Aug 2018 12:50:29 +0200
|
||||
Subject: [PATCH] ifcfg/write-ifcfg.sh: aggregate resolv.conf
|
||||
|
||||
The old code used /tmp/net.$netif.resolv.conf with $netif being randomly
|
||||
chosen.
|
||||
|
||||
As it is not known which nameserver have which priority, just sort them
|
||||
and deduplicate.
|
||||
---
|
||||
modules.d/45ifcfg/module-setup.sh | 1 +
|
||||
modules.d/45ifcfg/write-ifcfg.sh | 5 ++++-
|
||||
2 files changed, 5 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/modules.d/45ifcfg/module-setup.sh b/modules.d/45ifcfg/module-setup.sh
|
||||
index 6791985a..c89def3e 100755
|
||||
--- a/modules.d/45ifcfg/module-setup.sh
|
||||
+++ b/modules.d/45ifcfg/module-setup.sh
|
||||
@@ -14,6 +14,7 @@ depends() {
|
||||
|
||||
# called by dracut
|
||||
install() {
|
||||
+ inst_binary sort
|
||||
inst_hook pre-pivot 85 "$moddir/write-ifcfg.sh"
|
||||
}
|
||||
|
||||
diff --git a/modules.d/45ifcfg/write-ifcfg.sh b/modules.d/45ifcfg/write-ifcfg.sh
|
||||
index 25c81be3..3bf847a5 100755
|
||||
--- a/modules.d/45ifcfg/write-ifcfg.sh
|
||||
+++ b/modules.d/45ifcfg/write-ifcfg.sh
|
||||
@@ -286,7 +286,10 @@ echo "files /etc/sysconfig/network-scripts" >> /run/initramfs/rwtab
|
||||
echo "files /var/lib/dhclient" >> /run/initramfs/rwtab
|
||||
{
|
||||
cp /tmp/net.* /run/initramfs/
|
||||
- cp /tmp/net.$netif.resolv.conf /run/initramfs/state/etc/resolv.conf
|
||||
+ for i in /tmp/net.*.resolv.conf; do
|
||||
+ [ -f "$i" ] && cat "$i"
|
||||
+ done | sort -u > /run/initramfs/state/etc/resolv.conf
|
||||
+ [ -s /run/initramfs/state/etc/resolv.conf ] || rm -f /run/initramfs/state/etc/resolv.conf
|
||||
copytree /tmp/ifcfg /run/initramfs/state/etc/sysconfig/network-scripts
|
||||
cp /tmp/ifcfg-leases/* /run/initramfs/state/var/lib/dhclient
|
||||
} > /dev/null 2>&1
|
||||
|
42
0074.patch
42
0074.patch
@ -1,42 +0,0 @@
|
||||
From e0e6d96d696349c69cffd72a9c4eaf3be3dd22d5 Mon Sep 17 00:00:00 2001
|
||||
From: Harald Hoyer <harald@redhat.com>
|
||||
Date: Mon, 20 Aug 2018 10:04:52 +0200
|
||||
Subject: [PATCH] travis: re-enable test 14
|
||||
|
||||
https://bugzilla.redhat.com/show_bug.cgi?id=1615271
|
||||
---
|
||||
.travis.yml | 15 ++++++++++++---
|
||||
1 file changed, 12 insertions(+), 3 deletions(-)
|
||||
|
||||
diff --git a/.travis.yml b/.travis.yml
|
||||
index 83e9b4d1..f913db57 100644
|
||||
--- a/.travis.yml
|
||||
+++ b/.travis.yml
|
||||
@@ -5,14 +5,23 @@ services:
|
||||
env:
|
||||
matrix:
|
||||
- IMAGE=latest
|
||||
- - IMAGE=latest TESTS="01 02 03 04"
|
||||
+ - IMAGE=latest TESTS=01
|
||||
- IMAGE=latest TESTS=12
|
||||
- IMAGE=latest TESTS=20
|
||||
- IMAGE=latest TESTS=50
|
||||
- - IMAGE=latest TESTS="30 31"
|
||||
+ - IMAGE=latest TESTS=30
|
||||
+ - IMAGE=latest TESTS=31
|
||||
- IMAGE=latest TESTS=70
|
||||
- IMAGE=latest TESTS=99
|
||||
- - IMAGE=latest TESTS="10 11 13 15 17"
|
||||
+ - IMAGE=latest TESTS=02
|
||||
+ - IMAGE=latest TESTS=03
|
||||
+ - IMAGE=latest TESTS=04
|
||||
+ - IMAGE=latest TESTS=10
|
||||
+ - IMAGE=latest TESTS=11
|
||||
+ - IMAGE=latest TESTS=13
|
||||
+ - IMAGE=latest TESTS=14
|
||||
+ - IMAGE=latest TESTS=15
|
||||
+ - IMAGE=latest TESTS=17
|
||||
|
||||
before_script:
|
||||
- docker pull fedora:$IMAGE
|
||||
|
129
0075.patch
129
0075.patch
@ -1,129 +0,0 @@
|
||||
From e791d753bed41315cfbd8611e65cc8cd64ea2d15 Mon Sep 17 00:00:00 2001
|
||||
From: Frederick Grose <fgrose@sugarlabs.org>
|
||||
Date: Wed, 1 Aug 2018 18:40:20 -0400
|
||||
Subject: [PATCH] livenet: Enable OverlayFS overlay in sysroot.mount generator.
|
||||
|
||||
Adjust sysroot.mount configuration for rd.live.overlay.overlayfs option.
|
||||
Use link at /dev/root as a consistent flag for wait_for_dev.
|
||||
Adjust documentation.
|
||||
---
|
||||
dracut.cmdline.7.asc | 9 +++++----
|
||||
modules.d/90dmsquash-live/dmsquash-live-root.sh | 5 +++--
|
||||
modules.d/90dmsquash-live/parse-dmsquash-live.sh | 2 +-
|
||||
modules.d/90livenet/livenet-generator.sh | 18 ++++++++++++++----
|
||||
4 files changed, 23 insertions(+), 11 deletions(-)
|
||||
|
||||
diff --git a/dracut.cmdline.7.asc b/dracut.cmdline.7.asc
|
||||
index 9252d253..df633e5d 100644
|
||||
--- a/dracut.cmdline.7.asc
|
||||
+++ b/dracut.cmdline.7.asc
|
||||
@@ -930,7 +930,8 @@ NOTE: There must be enough free RAM available to hold the complete image.
|
||||
This method is very suitable for diskless boots.
|
||||
|
||||
**root=**live:__<url>__::
|
||||
-Boots a live image retrieved from __<url>__. Valid handlers: __http, https, ftp, torrent, tftp__.
|
||||
+Boots a live image retrieved from __<url>__. Requires dracut 'livenet' module.
|
||||
+Valid handlers: __http, https, ftp, torrent, tftp__.
|
||||
+
|
||||
[listing]
|
||||
.Example
|
||||
@@ -955,7 +956,7 @@ By default, this is __squashfs.img__.
|
||||
Copy the complete image to RAM and use this for booting. This is useful
|
||||
when the image resides on, i.e., a DVD which needs to be ejected later on.
|
||||
|
||||
-**rd.live.overlay=**__<devspec>__:__(<pathspec>|auto)__|__none__::
|
||||
+**rd.live.overlay={**__<devspec>__[:__{<pathspec>|auto}__]|__none__}::
|
||||
Allow the usage of a permanent overlay.
|
||||
- _<devspec>_ specifies the path to a device with a mountable filesystem.
|
||||
- _<pathspec>_ is the path to a file within that filesystem, which shall be
|
||||
@@ -1005,10 +1006,10 @@ extended attributes and provides a valid d_type in readdir responses, such as
|
||||
with ext4 and xfs. On non-vfat-formatted devices, a persistent OverlayFS
|
||||
overlay can extend the available root filesystem storage up to the capacity of
|
||||
the LiveOS device.
|
||||
-
|
||||
++
|
||||
If a persistent overlay is detected at the standard LiveOS path, the overlay &
|
||||
overlay type detected (whether OverlayFS or Device-mapper) will be used.
|
||||
-
|
||||
++
|
||||
The **rd.live.overlay.readonly** option, which allows a persistent overlayfs to
|
||||
be mounted read only through a higher level transient overlay directory, has
|
||||
been implemented through the multiple lower layers feature of OverlayFS.
|
||||
diff --git a/modules.d/90dmsquash-live/dmsquash-live-root.sh b/modules.d/90dmsquash-live/dmsquash-live-root.sh
|
||||
index 8f3b2bf9..ac603408 100755
|
||||
--- a/modules.d/90dmsquash-live/dmsquash-live-root.sh
|
||||
+++ b/modules.d/90dmsquash-live/dmsquash-live-root.sh
|
||||
@@ -376,19 +376,20 @@ if [ -n "$overlayfs" ]; then
|
||||
mount -r $FSIMG /run/rootfsbase
|
||||
fi
|
||||
if [ -z "$DRACUT_SYSTEMD" ]; then
|
||||
- #FIXME What to link to /dev/root? Is it even needed?
|
||||
printf 'mount -t overlay LiveOS_rootfs -o%s,%s %s\n' "$ROOTFLAGS" \
|
||||
'lowerdir=/run/rootfsbase,upperdir=/run/overlayfs,workdir=/run/ovlwork' \
|
||||
"$NEWROOT" > $hookdir/mount/01-$$-live.sh
|
||||
fi
|
||||
+ _dev=/run/rootfsbase
|
||||
else
|
||||
- ln -s /dev/mapper/live-rw /dev/root
|
||||
+ _dev=/dev/mapper/live-rw
|
||||
if [ -z "$DRACUT_SYSTEMD" ]; then
|
||||
[ -n "$ROOTFLAGS" ] && ROOTFLAGS="-o $ROOTFLAGS"
|
||||
printf 'mount %s /dev/mapper/live-rw %s\n' "$ROOTFLAGS" "$NEWROOT" > $hookdir/mount/01-$$-live.sh
|
||||
fi
|
||||
ln -s $BASE_LOOPDEV /run/rootfsbase
|
||||
fi
|
||||
+ln -s $_dev /dev/root
|
||||
|
||||
need_shutdown
|
||||
|
||||
diff --git a/modules.d/90dmsquash-live/parse-dmsquash-live.sh b/modules.d/90dmsquash-live/parse-dmsquash-live.sh
|
||||
index a9b78ab5..0eedf1f6 100755
|
||||
--- a/modules.d/90dmsquash-live/parse-dmsquash-live.sh
|
||||
+++ b/modules.d/90dmsquash-live/parse-dmsquash-live.sh
|
||||
@@ -57,6 +57,6 @@ info "root was $liveroot, is now $root"
|
||||
# make sure that init doesn't complain
|
||||
[ -z "$root" ] && root="live"
|
||||
|
||||
-wait_for_dev -n /run/rootfsbase
|
||||
+wait_for_dev -n /dev/root
|
||||
|
||||
return 0
|
||||
diff --git a/modules.d/90livenet/livenet-generator.sh b/modules.d/90livenet/livenet-generator.sh
|
||||
index a349cd0b..e2b5b6eb 100755
|
||||
--- a/modules.d/90livenet/livenet-generator.sh
|
||||
+++ b/modules.d/90livenet/livenet-generator.sh
|
||||
@@ -43,19 +43,29 @@ GENERATOR_DIR="$2"
|
||||
|
||||
[ -d "$GENERATOR_DIR" ] || mkdir "$GENERATOR_DIR"
|
||||
|
||||
+getargbool 0 rd.live.overlay.overlayfs && overlayfs="yes"
|
||||
+[ -e /xor_overlayfs ] && xor_overlayfs="yes"
|
||||
ROOTFLAGS="$(getarg rootflags)"
|
||||
{
|
||||
echo "[Unit]"
|
||||
echo "Before=initrd-root-fs.target"
|
||||
echo "[Mount]"
|
||||
echo "Where=/sysroot"
|
||||
- echo "What=/dev/mapper/live-rw"
|
||||
- [ -n "$ROOTFLAGS" ] && echo "Options=${ROOTFLAGS}"
|
||||
+ if [ "$overlayfs$xor_overlayfs" = "yes" ]; then
|
||||
+ echo "What=LiveOS_rootfs"
|
||||
+ echo "Options=${ROOTFLAGS},lowerdir=/run/rootfsbase,upperdir=/run/overlayfs,workdir=/run/ovlwork"
|
||||
+ echo "Type=overlay"
|
||||
+ _dev=LiveOS_rootfs
|
||||
+ else
|
||||
+ echo "What=/dev/mapper/live-rw"
|
||||
+ [ -n "$ROOTFLAGS" ] && echo "Options=${ROOTFLAGS}"
|
||||
+ _dev=$'dev-mapper-live\\x2drw'
|
||||
+ fi
|
||||
} > "$GENERATOR_DIR"/sysroot.mount
|
||||
|
||||
-mkdir -p "$GENERATOR_DIR/dev-mapper-live\x2drw.device.d"
|
||||
+mkdir -p "$GENERATOR_DIR/$_dev.device.d"
|
||||
{
|
||||
echo "[Unit]"
|
||||
echo "JobTimeoutSec=3000"
|
||||
echo "JobRunningTimeoutSec=3000"
|
||||
-} > "$GENERATOR_DIR/dev-mapper-live\x2drw.device.d/timeout.conf"
|
||||
+} > "$GENERATOR_DIR/$_dev.device.d/timeout.conf"
|
||||
|
361
0076.patch
361
0076.patch
@ -1,361 +0,0 @@
|
||||
From 789668deb3e6f8584ffab964d2204ddcb75f0a06 Mon Sep 17 00:00:00 2001
|
||||
From: Frederick Grose <fgrose@sugarlabs.org>
|
||||
Date: Mon, 20 Aug 2018 09:47:50 -0400
|
||||
Subject: [PATCH] dmsquash-live: Support a flattened squashfs.img
|
||||
|
||||
A simplified root filesystem structure may be provided for OverlayFS
|
||||
overlays by squashing the root filesystem directly instead of squashing
|
||||
an embedded image file at /LiveOS/rootfs.img. Detect and configure
|
||||
such a squashed root filesystem for live booting.
|
||||
|
||||
For OverlayFS boots, avoid the read-only Device-mapper linear device
|
||||
at /dev/mapper/live-base.
|
||||
Create a consistent device link at /dev/live-base for the read-only
|
||||
base loop device for all overlayed live root filesystems.
|
||||
Consistently provide a link at /dev/root for wait_for_dev.
|
||||
|
||||
Update documentation.
|
||||
---
|
||||
dracut.cmdline.7.asc | 126 +++++++++++++++---------
|
||||
modules.d/90dmsquash-live/dmsquash-live-root.sh | 51 ++++++----
|
||||
2 files changed, 110 insertions(+), 67 deletions(-)
|
||||
|
||||
diff --git a/dracut.cmdline.7.asc b/dracut.cmdline.7.asc
|
||||
index df633e5d..882035af 100644
|
||||
--- a/dracut.cmdline.7.asc
|
||||
+++ b/dracut.cmdline.7.asc
|
||||
@@ -838,23 +838,24 @@ Booting live images
|
||||
Dracut offers multiple options for live booted images:
|
||||
|
||||
=====================
|
||||
-SquashFS with read-only filesystem image::: The system will boot with a read
|
||||
-only filesystem from the SquashFS and apply a writable device-mapper snapshot
|
||||
-over the read only filesystem. Using this method ensures a relatively fast
|
||||
-boot and lower RAM usage. Users **must be careful** to avoid writing too many
|
||||
-blocks to the snapshot volume. Once the blocks of the snapshot overlay are
|
||||
-exhausted, the root filesystem becomes read only and may cause application
|
||||
-failures. The overlay file is marked 'Overflow', and a difficult recovery is
|
||||
-required to repair and enlarge the overlay offline. Non-persistent overlays
|
||||
-are sparse files in RAM that only consume content space as required blocks are
|
||||
-allocated. They default to an apparent size of 32 GiB in RAM. The size can be
|
||||
-adjusted with the **rd.live.overlay.size=** kernel command line option.
|
||||
+SquashFS with read-only filesystem image::: The system will boot with a
|
||||
+read-only filesystem from the SquashFS and apply a writable Device-mapper
|
||||
+snapshot or an OverlayFS overlay mount for the read-only base filesystem. This
|
||||
+method ensures a relatively fast boot and lower RAM usage. Users **must be
|
||||
+careful** to avoid writing too many blocks to a snapshot volume. Once the
|
||||
+blocks of the snapshot overlay are exhausted, the root filesystem becomes
|
||||
+read-only and may cause application failures. The snapshot overlay file is
|
||||
+marked 'Overflow', and a difficult recovery is required to repair and enlarge
|
||||
+the overlay offline. Non-persistent overlays are sparse files in RAM that only
|
||||
+consume content space as required blocks are allocated. They default to an
|
||||
+apparent size of 32 GiB in RAM. The size can be adjusted with the
|
||||
+**rd.live.overlay.size=** kernel command line option.
|
||||
+
|
||||
-The filesystem structure is expected to be:
|
||||
+The filesystem structure is traditionally expected to be:
|
||||
+
|
||||
[listing]
|
||||
--
|
||||
-squashfs.img | Squashfs from LiveCD .iso downloaded via network
|
||||
+squashfs.img | SquashFS from LiveCD .iso
|
||||
!(mount)
|
||||
/LiveOS
|
||||
|- rootfs.img | Filesystem image to mount read-only
|
||||
@@ -865,21 +866,35 @@ squashfs.img | Squashfs from LiveCD .iso downloaded via network
|
||||
... |
|
||||
--
|
||||
+
|
||||
-Dracut uses this method of live booting by default. No additional command line
|
||||
-options are required other than **root=live:<URL>** to specify the location
|
||||
-of your squashed filesystem.
|
||||
+For OverlayFS mount overlays, the filesystem structure may also be a direct
|
||||
+compression of the root filesystem:
|
||||
++
|
||||
+[listing]
|
||||
+--
|
||||
+squashfs.img | SquashFS from LiveCD .iso
|
||||
+ !(mount)
|
||||
+ /bin | Live filesystem
|
||||
+ /boot |
|
||||
+ /dev |
|
||||
+ ... |
|
||||
+--
|
||||
++
|
||||
+Dracut uses one of the overlay methods of live booting by default. No
|
||||
+additional command line options are required other than **root=live:<URL>** to
|
||||
+specify the location of your squashed filesystem.
|
||||
+
|
||||
- The compressed SquashFS image can be copied during boot to RAM at
|
||||
`/run/initramfs/squashed.img` by using the **rd.live.ram=1** option.
|
||||
-- A device with a persistent overlay can be booted read only by using the
|
||||
+- A device with a persistent overlay can be booted read-only by using the
|
||||
**rd.live.overlay.readonly** option on the kernel command line. This will
|
||||
-cause a temporary, writable overlay to be stacked over a read-only snapshot
|
||||
-of the root filesystem.
|
||||
+either cause a temporary, writable overlay to be stacked over a read-only
|
||||
+snapshot of the root filesystem or the OverlayFS mount will use an additional
|
||||
+lower layer with the root filesystem.
|
||||
+
|
||||
Uncompressed live filesystem image:::
|
||||
When the live system was installed with the '--skipcompress' option of the
|
||||
__livecd-iso-to-disk__ installation script for Live USB devices, the root
|
||||
-filesystem image, `rootfs.img`, is expanded on installation and no SquashFS
|
||||
+filesystem image, __rootfs.img__, is expanded on installation and no SquashFS
|
||||
is involved during boot.
|
||||
+
|
||||
- If **rd.live.ram=1** is used in this situation, the full, uncompressed
|
||||
@@ -887,12 +902,12 @@ root filesystem is copied during boot to `/run/initramfs/rootfs.img` in the
|
||||
`/run` tmpfs.
|
||||
+
|
||||
- If **rd.live.overlay=none** is provided as a kernel command line option,
|
||||
-a writable, linear device-mapper target is created on boot with no overlay.
|
||||
+a writable, linear Device-mapper target is created on boot with no overlay.
|
||||
|
||||
-writable filesystem image:::
|
||||
+Writable filesystem image:::
|
||||
The system will retrieve a compressed filesystem image, extract it to
|
||||
`/run/initramfs/fsimg/rootfs.img`, connect it to a loop device, create a
|
||||
-writable, linear device-mapper target at `/dev/mapper/live-rw`, and mount that
|
||||
+writable, linear Device-mapper target at `/dev/mapper/live-rw`, and mount that
|
||||
as a writable volume at `/`. More RAM is required during boot but the live
|
||||
filesystem is easier to manage if it becomes full. Users can make a filesystem
|
||||
image of any size and that size will be maintained when the system boots. There
|
||||
@@ -902,7 +917,7 @@ The filesystem structure is expected to be:
|
||||
+
|
||||
[listing]
|
||||
--
|
||||
-rootfs.tgz | Compressed tarball containing fileystem image
|
||||
+rootfs.tgz | Compressed tarball containing filesystem image
|
||||
!(unpack)
|
||||
/rootfs.img | Filesystem image at /run/initramfs/fsimg/
|
||||
!(mount)
|
||||
@@ -930,11 +945,11 @@ NOTE: There must be enough free RAM available to hold the complete image.
|
||||
This method is very suitable for diskless boots.
|
||||
|
||||
**root=**live:__<url>__::
|
||||
-Boots a live image retrieved from __<url>__. Requires dracut 'livenet' module.
|
||||
-Valid handlers: __http, https, ftp, torrent, tftp__.
|
||||
+Boots a live image retrieved from __<url>__. Requires the dracut 'livenet'
|
||||
+module. Valid handlers: __http, https, ftp, torrent, tftp__.
|
||||
+
|
||||
[listing]
|
||||
-.Example
|
||||
+.Examples
|
||||
--
|
||||
root=live:http://example.com/liveboot.img
|
||||
root=live:ftp://ftp.example.com/liveboot.img
|
||||
@@ -946,7 +961,7 @@ Enables debug output from the live boot process.
|
||||
|
||||
**rd.live.dir=**__<path>__::
|
||||
Specifies the directory within the boot device where the squashfs.img or
|
||||
-rootfs.img can be found. By default, this is __LiveOS__.
|
||||
+rootfs.img can be found. By default, this is `/LiveOS`.
|
||||
|
||||
**rd.live.squashimg=**__<filename of SquashFS image>__::
|
||||
Specifies the filename for a SquashFS image of the root filesystem.
|
||||
@@ -954,35 +969,52 @@ By default, this is __squashfs.img__.
|
||||
|
||||
**rd.live.ram=**1::
|
||||
Copy the complete image to RAM and use this for booting. This is useful
|
||||
-when the image resides on, i.e., a DVD which needs to be ejected later on.
|
||||
+when the image resides on, e.g., a DVD which needs to be ejected later on.
|
||||
|
||||
**rd.live.overlay={**__<devspec>__[:__{<pathspec>|auto}__]|__none__}::
|
||||
-Allow the usage of a permanent overlay.
|
||||
-- _<devspec>_ specifies the path to a device with a mountable filesystem.
|
||||
-- _<pathspec>_ is the path to a file within that filesystem, which shall be
|
||||
+Manage the usage of a permanent overlay.
|
||||
++
|
||||
+--
|
||||
+* _<devspec>_ specifies the path to a device with a mountable filesystem.
|
||||
+* _<pathspec>_ is the path to a file within that filesystem, which shall be
|
||||
used to persist the changes made to the device specified by the
|
||||
**root=live:__<url>__** option.
|
||||
-- _none_ specifies no overlay when an uncompressed live root filesystem is
|
||||
-available.
|
||||
-If a persistent overlay is detected at the standard LiveOS path, the overlay &
|
||||
-overlay type detected (whether Device-mapper or OverlayFS) will be used.
|
||||
++
|
||||
+The default _pathspec_, when _auto_ or no _:<pathspec>_ is given, is
|
||||
+`/<+++<b>rd.live.dir</b>+++>/overlay-<label>-<uuid>`, where _<label>_ is the
|
||||
+device LABEL, and _<uuid>_ is the device UUID.
|
||||
+* _none_ (the word itself) specifies that no overlay will be used, such as when
|
||||
+an uncompressed, writable live root filesystem is available.
|
||||
++
|
||||
+If a persistent overlay __is detected__ at the standard LiveOS path, the
|
||||
+overlay & overlay type detected, whether Device-mapper or OverlayFS, will be
|
||||
+used.
|
||||
+--
|
||||
+
|
||||
[listing]
|
||||
-.Example
|
||||
+.Examples
|
||||
--
|
||||
rd.live.overlay=/dev/sdb1:persistent-overlay.img
|
||||
+rd.live.overlay=UUID=99440c1f-8daa-41bf-b965-b7240a8996f4
|
||||
--
|
||||
|
||||
**rd.live.overlay.size=**__<size_MiB>__::
|
||||
-Specifies a non-persistent overlay size in MiB. The default is _32768_.
|
||||
+Specifies a non-persistent Device-mapper overlay size in MiB. The default is
|
||||
+_32768_.
|
||||
|
||||
**rd.live.overlay.readonly=**1::
|
||||
-Specifies a non-persistent, writable snapshot overlay to be stacked over a
|
||||
-read-only snapshot of the root filesystem, `/dev/mapper/live-ro`, or a read-
|
||||
-only loop device of a writable `rootfs.img`.
|
||||
+This is used to boot with a normally read-write persistent overlay in a
|
||||
+read-only mode. With this option, either an additional, non-persistent,
|
||||
+writable snapshot overlay will be stacked over a read-only snapshot,
|
||||
+`/dev/mapper/live‑ro`, of the base filesystem with the persistent overlay, or a
|
||||
+read-only loop device, in the case of a writable __rootfs.img__, or an OverlayFS
|
||||
+mount will use the persistent overlay directory linked at `/run/overlayfs‑r` as
|
||||
+an additional lower layer along with the base root filesystem and apply a
|
||||
+transient, writable upper directory overlay, in order to complete the booted
|
||||
+root filesystem.
|
||||
|
||||
**rd.live.overlay.reset=**1::
|
||||
-Specifies that a persistent overlay should be reset on boot. All root
|
||||
+Specifies that a persistent overlay should be reset on boot. All previous root
|
||||
filesystem changes are vacated by this action.
|
||||
|
||||
**rd.live.overlay.thin=**1::
|
||||
@@ -993,25 +1025,25 @@ that memory is given back to the kernel when the filesystem does not claim it
|
||||
anymore.
|
||||
|
||||
**rd.live.overlay.overlayfs=**1::
|
||||
-Enables the use of the **OverlayFS** kernel module, if available, to provide a
|
||||
+Enables the use of the *OverlayFS* kernel module, if available, to provide a
|
||||
copy-on-write union directory for the root filesystem. OverlayFS overlays are
|
||||
directories of the files that have changed on the read-only base (lower)
|
||||
filesystem. The root filesystem is provided through a special overlay type
|
||||
mount that merges the lower and upper directories. If an OverlayFS upper
|
||||
directory is not present on the boot device, a tmpfs directory will be created
|
||||
-at /run/overlayfs to provide temporary storage. Persistent storage can be
|
||||
+at `/run/overlayfs` to provide temporary storage. Persistent storage can be
|
||||
provided on vfat or msdos formatted devices by supplying the OverlayFS upper
|
||||
directory within an embedded filesystem that supports the creation of trusted.*
|
||||
extended attributes and provides a valid d_type in readdir responses, such as
|
||||
with ext4 and xfs. On non-vfat-formatted devices, a persistent OverlayFS
|
||||
overlay can extend the available root filesystem storage up to the capacity of
|
||||
-the LiveOS device.
|
||||
+the LiveOS disk device.
|
||||
+
|
||||
If a persistent overlay is detected at the standard LiveOS path, the overlay &
|
||||
-overlay type detected (whether OverlayFS or Device-mapper) will be used.
|
||||
+overlay type detected, whether OverlayFS or Device-mapper, will be used.
|
||||
+
|
||||
The **rd.live.overlay.readonly** option, which allows a persistent overlayfs to
|
||||
-be mounted read only through a higher level transient overlay directory, has
|
||||
+be mounted read-only through a higher level transient overlay directory, has
|
||||
been implemented through the multiple lower layers feature of OverlayFS.
|
||||
|
||||
|
||||
diff --git a/modules.d/90dmsquash-live/dmsquash-live-root.sh b/modules.d/90dmsquash-live/dmsquash-live-root.sh
|
||||
index ac603408..0c5e010e 100755
|
||||
--- a/modules.d/90dmsquash-live/dmsquash-live-root.sh
|
||||
+++ b/modules.d/90dmsquash-live/dmsquash-live-root.sh
|
||||
@@ -250,13 +250,11 @@ do_live_overlay() {
|
||||
echo 0 $sz snapshot $base $over PO 8 | dmsetup create live-rw
|
||||
fi
|
||||
|
||||
- # Create a device that always points to a ro base image
|
||||
- if [ -n "$overlayfs" ]; then
|
||||
- BASE_LOOPDUP=$(losetup -f --show -r $BASE_LOOPDEV)
|
||||
- echo 0 $sz linear $BASE_LOOPDUP 0 | dmsetup create --readonly live-base
|
||||
- else
|
||||
+ # Create a device for the ro base of overlayed file systems.
|
||||
+ if [ -z "$overlayfs" ]; then
|
||||
echo 0 $sz linear $BASE_LOOPDEV 0 | dmsetup create --readonly live-base
|
||||
fi
|
||||
+ ln -s $BASE_LOOPDEV /dev/live-base
|
||||
}
|
||||
|
||||
# we might have a genMinInstDelta delta file for anaconda to take advantage of
|
||||
@@ -291,10 +289,21 @@ if [ -e "$SQUASHED" ]; then
|
||||
mkdir -m 0755 -p /run/initramfs/squashfs
|
||||
mount -n -t squashfs -o ro $SQUASHED_LOOPDEV /run/initramfs/squashfs
|
||||
|
||||
- if [ -f /run/initramfs/squashfs/LiveOS/rootfs.img ]; then
|
||||
- FSIMG="/run/initramfs/squashfs/LiveOS/rootfs.img"
|
||||
- elif [ -f /run/initramfs/squashfs/LiveOS/ext3fs.img ]; then
|
||||
- FSIMG="/run/initramfs/squashfs/LiveOS/ext3fs.img"
|
||||
+ if [ -d /run/initramfs/squashfs/LiveOS ]; then
|
||||
+ if [ -f /run/initramfs/squashfs/LiveOS/rootfs.img ]; then
|
||||
+ FSIMG="/run/initramfs/squashfs/LiveOS/rootfs.img"
|
||||
+ elif [ -f /run/initramfs/squashfs/LiveOS/ext3fs.img ]; then
|
||||
+ FSIMG="/run/initramfs/squashfs/LiveOS/ext3fs.img"
|
||||
+ fi
|
||||
+ elif [ -d /run/initramfs/squashfs/proc ]; then
|
||||
+ FSIMG=$SQUASHED
|
||||
+ if [ -z "$overlayfs" ]; then
|
||||
+ overlayfs="yes"
|
||||
+ [ -n "$DRACUT_SYSTEMD" ] && reloadsysrootmountunit="yes"
|
||||
+ fi
|
||||
+ else
|
||||
+ die "Failed to find a root filesystem in $SQUASHED."
|
||||
+ exit 1
|
||||
fi
|
||||
else
|
||||
# we might have an embedded fs image to use as rootfs (uncompressed live)
|
||||
@@ -312,8 +321,8 @@ else
|
||||
fi
|
||||
fi
|
||||
|
||||
-if [ -n "$FSIMG" ] ; then
|
||||
- if [ -n "$writable_fsimg" ] ; then
|
||||
+if [ -n "$FSIMG" ]; then
|
||||
+ if [ -n "$writable_fsimg" ]; then
|
||||
# mount the provided filesystem read/write
|
||||
echo "Unpacking live filesystem (may take some time)" > /dev/kmsg
|
||||
mkdir -m 0755 /run/initramfs/fsimg/
|
||||
@@ -336,9 +345,13 @@ if [ -n "$FSIMG" ] ; then
|
||||
setup=yes
|
||||
fi
|
||||
fi
|
||||
- BASE_LOOPDEV=$(losetup -f --show $opt $FSIMG)
|
||||
- sz=$(blockdev --getsz $BASE_LOOPDEV)
|
||||
- if [ "$setup" == rw ]; then
|
||||
+ if [ "$FSIMG" = "$SQUASHED" ]; then
|
||||
+ BASE_LOOPDEV=$SQUASHED_LOOPDEV
|
||||
+ else
|
||||
+ BASE_LOOPDEV=$(losetup -f --show $opt $FSIMG)
|
||||
+ sz=$(blockdev --getsz $BASE_LOOPDEV)
|
||||
+ fi
|
||||
+ if [ "$setup" = rw ]; then
|
||||
echo 0 $sz linear $BASE_LOOPDEV 0 | dmsetup create live-rw
|
||||
else
|
||||
# Add a DM snapshot or OverlayFS for writes.
|
||||
@@ -346,8 +359,6 @@ if [ -n "$FSIMG" ] ; then
|
||||
fi
|
||||
fi
|
||||
|
||||
-[ -e "$SQUASHED" ] && [ -z "$overlayfs" ] && umount -l /run/initramfs/squashfs
|
||||
-
|
||||
if [ -b "$OSMIN_LOOPDEV" ]; then
|
||||
# set up the devicemapper snapshot device, which will merge
|
||||
# the normal live fs image, and the delta, into a minimzied fs image
|
||||
@@ -380,17 +391,17 @@ if [ -n "$overlayfs" ]; then
|
||||
'lowerdir=/run/rootfsbase,upperdir=/run/overlayfs,workdir=/run/ovlwork' \
|
||||
"$NEWROOT" > $hookdir/mount/01-$$-live.sh
|
||||
fi
|
||||
- _dev=/run/rootfsbase
|
||||
else
|
||||
- _dev=/dev/mapper/live-rw
|
||||
if [ -z "$DRACUT_SYSTEMD" ]; then
|
||||
[ -n "$ROOTFLAGS" ] && ROOTFLAGS="-o $ROOTFLAGS"
|
||||
printf 'mount %s /dev/mapper/live-rw %s\n' "$ROOTFLAGS" "$NEWROOT" > $hookdir/mount/01-$$-live.sh
|
||||
fi
|
||||
- ln -s $BASE_LOOPDEV /run/rootfsbase
|
||||
fi
|
||||
-ln -s $_dev /dev/root
|
||||
+[ -e "$SQUASHED" ] && umount -l /run/initramfs/squashfs
|
||||
+
|
||||
+ln -s null /dev/root
|
||||
|
||||
need_shutdown
|
||||
|
||||
exit 0
|
||||
+
|
||||
|
193
0077.patch
193
0077.patch
@ -1,193 +0,0 @@
|
||||
From eb18a1fe29a3ffcd646fe6d25ae2d7d998b63e71 Mon Sep 17 00:00:00 2001
|
||||
From: Frederick Grose <fgrose@sugarlabs.org>
|
||||
Date: Mon, 20 Aug 2018 19:52:53 -0400
|
||||
Subject: [PATCH] dmsquash-live, livenet: Simplify OverlayFS read-only overlay
|
||||
setup.
|
||||
|
||||
Use multiple lower layer directories in a single OverlayFS mount with
|
||||
a transient overlay directory.
|
||||
Tolerate a command line with rd.live.overlay.readonly and NO persistent
|
||||
overlay by reconfiguring the OverlayFS mount options.
|
||||
Use more compatible shell syntax for testing symlinks, and use printf
|
||||
instead of echo -e.
|
||||
---
|
||||
modules.d/90dmsquash-live/dmsquash-generator.sh | 9 ++++++-
|
||||
modules.d/90dmsquash-live/dmsquash-live-root.sh | 34 ++++++++++++++-----------
|
||||
modules.d/90livenet/livenet-generator.sh | 9 ++++++-
|
||||
3 files changed, 35 insertions(+), 17 deletions(-)
|
||||
|
||||
diff --git a/modules.d/90dmsquash-live/dmsquash-generator.sh b/modules.d/90dmsquash-live/dmsquash-generator.sh
|
||||
index fe190012..1129ddff 100755
|
||||
--- a/modules.d/90dmsquash-live/dmsquash-generator.sh
|
||||
+++ b/modules.d/90dmsquash-live/dmsquash-generator.sh
|
||||
@@ -54,8 +54,10 @@ GENERATOR_DIR="$2"
|
||||
[ -z "$GENERATOR_DIR" ] && exit 1
|
||||
[ -d "$GENERATOR_DIR" ] || mkdir "$GENERATOR_DIR"
|
||||
|
||||
+getargbool 0 rd.live.overlay.readonly -d -y readonly_overlay && readonly_overlay="--readonly" || readonly_overlay=""
|
||||
getargbool 0 rd.live.overlay.overlayfs && overlayfs="yes"
|
||||
[ -e /xor_overlayfs ] && xor_overlayfs="yes"
|
||||
+[ -e /xor_readonly ] && xor_readonly="--readonly"
|
||||
ROOTFLAGS="$(getarg rootflags)"
|
||||
{
|
||||
echo "[Unit]"
|
||||
@@ -64,7 +66,12 @@ ROOTFLAGS="$(getarg rootflags)"
|
||||
echo "Where=/sysroot"
|
||||
if [ "$overlayfs$xor_overlayfs" = "yes" ]; then
|
||||
echo "What=LiveOS_rootfs"
|
||||
- echo "Options=${ROOTFLAGS},lowerdir=/run/rootfsbase,upperdir=/run/overlayfs,workdir=/run/ovlwork"
|
||||
+ if [ "$readonly_overlay$xor_readonly" = "--readonly" ]; then
|
||||
+ ovlfs=lowerdir=/run/overlayfs-r:/run/rootfsbase
|
||||
+ else
|
||||
+ ovlfs=lowerdir=/run/rootfsbase
|
||||
+ fi
|
||||
+ echo "Options=${ROOTFLAGS},${ovlfs},upperdir=/run/overlayfs,workdir=/run/ovlwork"
|
||||
echo "Type=overlay"
|
||||
_dev=LiveOS_rootfs
|
||||
else
|
||||
diff --git a/modules.d/90dmsquash-live/dmsquash-live-root.sh b/modules.d/90dmsquash-live/dmsquash-live-root.sh
|
||||
index 0c5e010e..0f3d8f89 100755
|
||||
--- a/modules.d/90dmsquash-live/dmsquash-live-root.sh
|
||||
+++ b/modules.d/90dmsquash-live/dmsquash-live-root.sh
|
||||
@@ -137,7 +137,7 @@ do_live_overlay() {
|
||||
fi
|
||||
if [ -n "$overlayfs" ]; then
|
||||
unset -v overlayfs
|
||||
- [ -n "$DRACUT_SYSTEMD" ] && reloadsysrootmountunit="yes"
|
||||
+ [ -n "$DRACUT_SYSTEMD" ] && reloadsysrootmountunit=":>/xor_overlayfs;"
|
||||
fi
|
||||
setup="yes"
|
||||
else
|
||||
@@ -148,7 +148,7 @@ do_live_overlay() {
|
||||
ln -s /run/initramfs/overlayfs/ovlwork /run/ovlwork$opt
|
||||
if [ -z "$overlayfs" ]; then
|
||||
overlayfs="yes"
|
||||
- [ -n "$DRACUT_SYSTEMD" ] && reloadsysrootmountunit="yes"
|
||||
+ [ -n "$DRACUT_SYSTEMD" ] && reloadsysrootmountunit=":>/xor_overlayfs;"
|
||||
fi
|
||||
setup="yes"
|
||||
fi
|
||||
@@ -159,7 +159,7 @@ do_live_overlay() {
|
||||
ln -s /run/initramfs/overlayfs$pathspec/../ovlwork /run/ovlwork$opt
|
||||
if [ -z "$overlayfs" ]; then
|
||||
overlayfs="yes"
|
||||
- [ -n "$DRACUT_SYSTEMD" ] && reloadsysrootmountunit="yes"
|
||||
+ [ -n "$DRACUT_SYSTEMD" ] && reloadsysrootmountunit=":>/xor_overlayfs;"
|
||||
fi
|
||||
setup="yes"
|
||||
fi
|
||||
@@ -168,8 +168,7 @@ do_live_overlay() {
|
||||
modprobe overlay
|
||||
if [ $? != 0 ]; then
|
||||
m='OverlayFS is not available; using temporary Device-mapper overlay.'
|
||||
- unset -v overlayfs setup
|
||||
- [ -n "$reloadsysrootmountunit" ] && unset -v reloadsysrootmountunit
|
||||
+ unset -v overlayfs setup reloadsysrootmountunit
|
||||
fi
|
||||
fi
|
||||
|
||||
@@ -181,7 +180,7 @@ do_live_overlay() {
|
||||
m=' Unable to find a persistent overlay; using a temporary one.'
|
||||
m="$m"$'\n All root filesystem changes will be lost on shutdown.'
|
||||
m="$m"$'\n Press [Enter] to continue.'
|
||||
- echo -e "\n\n\n\n${m}\n\n\n" > /dev/kmsg
|
||||
+ printf "\n\n\n\n${m}\n\n\n" > /dev/kmsg
|
||||
if [ -n "$DRACUT_SYSTEMD" ]; then
|
||||
if type plymouth >/dev/null 2>&1 && plymouth --ping ; then
|
||||
if getargbool 0 rhgb || getargbool 0 splash ; then
|
||||
@@ -203,6 +202,11 @@ do_live_overlay() {
|
||||
if [ -n "$overlayfs" ]; then
|
||||
mkdir -m 0755 /run/overlayfs
|
||||
mkdir -m 0755 /run/ovlwork
|
||||
+ if [ -n "$readonly_overlay" ] && ! [ -h /run/overlayfs-r ]; then
|
||||
+ info "No persistent overlay found."
|
||||
+ unset -v readonly_overlay
|
||||
+ [ -n "$DRACUT_SYSTEMD" ] && reloadsysrootmountunit="${reloadsysrootmountunit}:>/xor_readonly;"
|
||||
+ fi
|
||||
else
|
||||
dd if=/dev/null of=/overlay bs=1024 count=1 seek=$((overlay_size*1024)) 2> /dev/null
|
||||
if [ -n "$setup" -a -n "$readonly_overlay" ]; then
|
||||
@@ -256,6 +260,7 @@ do_live_overlay() {
|
||||
fi
|
||||
ln -s $BASE_LOOPDEV /dev/live-base
|
||||
}
|
||||
+# end do_live_overlay()
|
||||
|
||||
# we might have a genMinInstDelta delta file for anaconda to take advantage of
|
||||
if [ -e /run/initramfs/live/${live_dir}/osmin.img ]; then
|
||||
@@ -299,7 +304,7 @@ if [ -e "$SQUASHED" ]; then
|
||||
FSIMG=$SQUASHED
|
||||
if [ -z "$overlayfs" ]; then
|
||||
overlayfs="yes"
|
||||
- [ -n "$DRACUT_SYSTEMD" ] && reloadsysrootmountunit="yes"
|
||||
+ [ -n "$DRACUT_SYSTEMD" ] && reloadsysrootmountunit=":>/xor_overlayfs;"
|
||||
fi
|
||||
else
|
||||
die "Failed to find a root filesystem in $SQUASHED."
|
||||
@@ -366,7 +371,7 @@ if [ -b "$OSMIN_LOOPDEV" ]; then
|
||||
fi
|
||||
|
||||
if [ -n "$reloadsysrootmountunit" ]; then
|
||||
- > /xor_overlayfs
|
||||
+ eval "$reloadsysrootmountunit"
|
||||
systemctl daemon-reload
|
||||
fi
|
||||
|
||||
@@ -374,21 +379,20 @@ ROOTFLAGS="$(getarg rootflags)"
|
||||
|
||||
if [ -n "$overlayfs" ]; then
|
||||
mkdir -m 0755 /run/rootfsbase
|
||||
- if [ -n "$reset_overlay" ] && [ -L /run/overlayfs ]; then
|
||||
+ if [ -n "$reset_overlay" ] && [ -h /run/overlayfs ]; then
|
||||
ovlfs=$(readlink /run/overlayfs)
|
||||
info "Resetting the OverlayFS overlay directory."
|
||||
rm -r -- ${ovlfs}/* ${ovlfs}/.* >/dev/null 2>&1
|
||||
fi
|
||||
- if [ -n "$readonly_overlay" ]; then
|
||||
- mkdir -m 0755 /run/rootfsbase-r
|
||||
- mount -r $FSIMG /run/rootfsbase-r
|
||||
- mount -t overlay LiveOS_rootfs-r -oro,lowerdir=/run/overlayfs-r:/run/rootfsbase-r /run/rootfsbase
|
||||
+ if [ -n "$readonly_overlay" ] && [ -h /run/overlayfs-r ]; then
|
||||
+ ovlfs=lowerdir=/run/overlayfs-r:/run/rootfsbase
|
||||
else
|
||||
- mount -r $FSIMG /run/rootfsbase
|
||||
+ ovlfs=lowerdir=/run/rootfsbase
|
||||
fi
|
||||
+ mount -r $FSIMG /run/rootfsbase
|
||||
if [ -z "$DRACUT_SYSTEMD" ]; then
|
||||
printf 'mount -t overlay LiveOS_rootfs -o%s,%s %s\n' "$ROOTFLAGS" \
|
||||
- 'lowerdir=/run/rootfsbase,upperdir=/run/overlayfs,workdir=/run/ovlwork' \
|
||||
+ "$ovlfs",upperdir=/run/overlayfs,workdir=/run/ovlwork \
|
||||
"$NEWROOT" > $hookdir/mount/01-$$-live.sh
|
||||
fi
|
||||
else
|
||||
diff --git a/modules.d/90livenet/livenet-generator.sh b/modules.d/90livenet/livenet-generator.sh
|
||||
index e2b5b6eb..f0d12851 100755
|
||||
--- a/modules.d/90livenet/livenet-generator.sh
|
||||
+++ b/modules.d/90livenet/livenet-generator.sh
|
||||
@@ -43,8 +43,10 @@ GENERATOR_DIR="$2"
|
||||
|
||||
[ -d "$GENERATOR_DIR" ] || mkdir "$GENERATOR_DIR"
|
||||
|
||||
+getargbool 0 rd.live.overlay.readonly -d -y readonly_overlay && readonly_overlay="--readonly" || readonly_overlay=""
|
||||
getargbool 0 rd.live.overlay.overlayfs && overlayfs="yes"
|
||||
[ -e /xor_overlayfs ] && xor_overlayfs="yes"
|
||||
+[ -e /xor_readonly ] && xor_readonly="--readonly"
|
||||
ROOTFLAGS="$(getarg rootflags)"
|
||||
{
|
||||
echo "[Unit]"
|
||||
@@ -53,7 +55,12 @@ ROOTFLAGS="$(getarg rootflags)"
|
||||
echo "Where=/sysroot"
|
||||
if [ "$overlayfs$xor_overlayfs" = "yes" ]; then
|
||||
echo "What=LiveOS_rootfs"
|
||||
- echo "Options=${ROOTFLAGS},lowerdir=/run/rootfsbase,upperdir=/run/overlayfs,workdir=/run/ovlwork"
|
||||
+ if [ "$readonly_overlay$xor_readonly" = "--readonly" ]; then
|
||||
+ ovlfs=lowerdir=/run/overlayfs-r:/run/rootfsbase
|
||||
+ else
|
||||
+ ovlfs=lowerdir=/run/rootfsbase
|
||||
+ fi
|
||||
+ echo "Options=${ROOTFLAGS},${ovlfs},upperdir=/run/overlayfs,workdir=/run/ovlwork"
|
||||
echo "Type=overlay"
|
||||
_dev=LiveOS_rootfs
|
||||
else
|
||||
|
29
0078.patch
29
0078.patch
@ -1,29 +0,0 @@
|
||||
From 9f3c31cd8d68b5272f803063247362a644720227 Mon Sep 17 00:00:00 2001
|
||||
From: Kairui Song <kasong@redhat.com>
|
||||
Date: Mon, 20 Aug 2018 18:43:19 +0800
|
||||
Subject: [PATCH] 99base: enable initqueue if extra devices are added
|
||||
|
||||
When extra devices are added, initqueue should be enabled to make sure
|
||||
those devices are present, so following services and routines could
|
||||
use those devices.
|
||||
|
||||
See PR #442 for more detail.
|
||||
---
|
||||
modules.d/99base/module-setup.sh | 3 +++
|
||||
1 file changed, 3 insertions(+)
|
||||
|
||||
diff --git a/modules.d/99base/module-setup.sh b/modules.d/99base/module-setup.sh
|
||||
index a1569b12..731c6dcc 100755
|
||||
--- a/modules.d/99base/module-setup.sh
|
||||
+++ b/modules.d/99base/module-setup.sh
|
||||
@@ -94,6 +94,9 @@ install() {
|
||||
|
||||
## save host_devs which we need bring up
|
||||
if [[ $hostonly_cmdline == "yes" ]]; then
|
||||
+ if [[ -n $add_device ]]; then
|
||||
+ dracut_need_initqueue
|
||||
+ fi
|
||||
if [[ -f "$initdir/lib/dracut/need-initqueue" ]] || ! dracut_module_included "systemd"; then
|
||||
(
|
||||
if dracut_module_included "systemd"; then
|
||||
|
24
0079.patch
24
0079.patch
@ -1,24 +0,0 @@
|
||||
From 09ba1b289f2cba613c1950b03f0f549ebb7eb83f Mon Sep 17 00:00:00 2001
|
||||
From: Kairui Song <kasong@redhat.com>
|
||||
Date: Mon, 20 Aug 2018 18:40:05 +0800
|
||||
Subject: [PATCH] kernel-modules: add nfit
|
||||
|
||||
To support pmem devices, nfit module is required
|
||||
---
|
||||
modules.d/90kernel-modules/module-setup.sh | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/modules.d/90kernel-modules/module-setup.sh b/modules.d/90kernel-modules/module-setup.sh
|
||||
index f01470e7..3dfceff0 100755
|
||||
--- a/modules.d/90kernel-modules/module-setup.sh
|
||||
+++ b/modules.d/90kernel-modules/module-setup.sh
|
||||
@@ -41,7 +41,7 @@ installkernel() {
|
||||
yenta_socket scsi_dh_rdac scsi_dh_emc scsi_dh_alua \
|
||||
atkbd i8042 usbhid firewire-ohci pcmcia hv-vmbus \
|
||||
virtio virtio_blk virtio_ring virtio_pci virtio_scsi \
|
||||
- "=drivers/pcmcia" =ide nvme vmd
|
||||
+ "=drivers/pcmcia" =ide nvme vmd nfit
|
||||
|
||||
if [[ "$(uname -m)" == arm* || "$(uname -m)" == aarch64 ]]; then
|
||||
# arm/aarch64 specific modules
|
||||
|
35
0080.patch
35
0080.patch
@ -1,35 +0,0 @@
|
||||
From ae9bc0d72ffea2c960c95d7b705b1b76ae53d692 Mon Sep 17 00:00:00 2001
|
||||
From: Tony Asleson <tasleson@redhat.com>
|
||||
Date: Thu, 23 Aug 2018 15:08:59 -0500
|
||||
Subject: [PATCH] stratis: Add additional binaries
|
||||
|
||||
Include all binaries that could be called by the daemon.
|
||||
|
||||
Signed-off-by: Tony Asleson <tasleson@redhat.com>
|
||||
---
|
||||
modules.d/90stratis/module-setup.sh | 4 ++--
|
||||
1 file changed, 2 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/modules.d/90stratis/module-setup.sh b/modules.d/90stratis/module-setup.sh
|
||||
index 2787b63b..29f0765b 100755
|
||||
--- a/modules.d/90stratis/module-setup.sh
|
||||
+++ b/modules.d/90stratis/module-setup.sh
|
||||
@@ -2,7 +2,7 @@
|
||||
|
||||
# called by dracut
|
||||
check() {
|
||||
- require_binaries stratisd-init thin_check thin_repair || return 1
|
||||
+ require_binaries stratisd-init thin_check thin_repair mkfs.xfs xfs_admin xfs_growfs || return 1
|
||||
return 255
|
||||
}
|
||||
|
||||
@@ -20,7 +20,7 @@ installkernel() {
|
||||
# called by dracut
|
||||
install() {
|
||||
|
||||
- inst_multiple stratisd-init thin_check thin_repair
|
||||
+ inst_multiple stratisd-init thin_check thin_repair mkfs.xfs xfs_admin xfs_growfs
|
||||
|
||||
if dracut_module_included "systemd"; then
|
||||
inst_simple "${moddir}/stratisd-init.service" "${systemdsystemunitdir}/stratisd-init.service"
|
||||
|
106
0081.patch
106
0081.patch
@ -1,106 +0,0 @@
|
||||
From d09218823c787d23b3fdc3e450bb27b20f71f089 Mon Sep 17 00:00:00 2001
|
||||
From: Tobias Klauser <tklauser@distanz.ch>
|
||||
Date: Wed, 29 Aug 2018 11:53:14 +0200
|
||||
Subject: [PATCH] Fix misspellings in man pages and usage
|
||||
|
||||
Also remove some trailing whitespaces from the same files.
|
||||
|
||||
Signed-off-by: Tobias Klauser <tklauser@distanz.ch>
|
||||
---
|
||||
dracut.cmdline.7.asc | 2 +-
|
||||
dracut.modules.7.asc | 6 +++---
|
||||
dracut.usage.asc | 4 ++--
|
||||
mkinitrd-suse.8.asc | 6 +++---
|
||||
4 files changed, 9 insertions(+), 9 deletions(-)
|
||||
|
||||
diff --git a/dracut.cmdline.7.asc b/dracut.cmdline.7.asc
|
||||
index 882035af..3cee5a00 100644
|
||||
--- a/dracut.cmdline.7.asc
|
||||
+++ b/dracut.cmdline.7.asc
|
||||
@@ -601,7 +601,7 @@ NFS
|
||||
mount nfs share from <server-ip>:/<root-dir>, if no server-ip is given, use
|
||||
dhcp next_server. If server-ip is an IPv6 address it has to be put in
|
||||
brackets, e.g. [2001:DB8::1]. NFS options can be appended with the prefix
|
||||
- ":" or "," and are seperated by ",".
|
||||
+ ":" or "," and are separated by ",".
|
||||
|
||||
**root=**nfs:\[_<server-ip>_:]__<root-dir>__[:__<nfs-options>__], **root=**nfs4:\[_<server-ip>_:]__<root-dir>__[:__<nfs-options>__], **root=**__{dhcp|dhcp6}__::
|
||||
root=dhcp alone directs initrd to look at the DHCP root-path where NFS
|
||||
diff --git a/dracut.modules.7.asc b/dracut.modules.7.asc
|
||||
index 69ac6c44..c34d005d 100644
|
||||
--- a/dracut.modules.7.asc
|
||||
+++ b/dracut.modules.7.asc
|
||||
@@ -212,7 +212,7 @@ check() should return with:
|
||||
|
||||
0:: Include the dracut module in the initramfs.
|
||||
|
||||
-1:: Do not include the dracut module. The requirements are not fullfilled
|
||||
+1:: Do not include the dracut module. The requirements are not fulfilled
|
||||
(missing tools, etc.)
|
||||
|
||||
255:: Only include the dracut module, if another module requires it or if
|
||||
@@ -255,8 +255,8 @@ not lead to an error.
|
||||
==== inst <src> [<dst>]
|
||||
|
||||
installs _one_ file <src> either to the same place in the initramfs or to an
|
||||
-optional <dst>. inst with more than two arguments is treated the same as
|
||||
-inst_multiple, all arguments are treated as files to install and none as
|
||||
+optional <dst>. inst with more than two arguments is treated the same as
|
||||
+inst_multiple, all arguments are treated as files to install and none as
|
||||
install destinations.
|
||||
|
||||
==== inst_hook <hookdir> <prio> <src>
|
||||
diff --git a/dracut.usage.asc b/dracut.usage.asc
|
||||
index 2b25588f..2b598ee6 100644
|
||||
--- a/dracut.usage.asc
|
||||
+++ b/dracut.usage.asc
|
||||
@@ -243,7 +243,7 @@ If your root partition is on a network drive, you have to have the network
|
||||
dracut modules installed to create a network aware initramfs image.
|
||||
|
||||
If you specify ip=dhcp on the kernel command line, then dracut asks a dhcp
|
||||
-server about the ip adress for the machine. The dhcp server can also serve an
|
||||
+server about the ip address for the machine. The dhcp server can also serve an
|
||||
additional root-path, which will set the root device for dracut. With this
|
||||
mechanism, you have static configuration on your client machine and a
|
||||
centralized boot configuration on your TFTP/DHCP server. If you can't pass a
|
||||
@@ -252,7 +252,7 @@ method described in <<Injecting>>.
|
||||
|
||||
==== Reducing the Image Size
|
||||
|
||||
-To reduce the size of the initramfs, you should create it with by ommitting all
|
||||
+To reduce the size of the initramfs, you should create it with by omitting all
|
||||
dracut modules, which you know, you don't need to boot the machine.
|
||||
|
||||
You can also specify the exact dracut and kernel modules to produce a very tiny
|
||||
diff --git a/mkinitrd-suse.8.asc b/mkinitrd-suse.8.asc
|
||||
index 91ec4695..e39ac52b 100644
|
||||
--- a/mkinitrd-suse.8.asc
|
||||
+++ b/mkinitrd-suse.8.asc
|
||||
@@ -18,7 +18,7 @@ DESCRIPTION
|
||||
version <kernel-version> by calling *dracut*.
|
||||
|
||||
[IMPORTANT]
|
||||
-This version of mkinitrd is provided for compability with older
|
||||
+This version of mkinitrd is provided for compatibility with older
|
||||
versions of mkinitrd. If a more fine grained control over the
|
||||
resulting image is needed, *dracut* should be called directly.
|
||||
|
||||
@@ -30,7 +30,7 @@ OPTIONS
|
||||
**-k** _<kernel_list>_::
|
||||
List of kernel images for which initrd files are created (relative
|
||||
to _boot_dir_), Image name should begin with the following string,
|
||||
- defaults to _vmlinux_ on ppc/ppc64, _image_ on s390/s390x and _vmlinuz_
|
||||
+ defaults to _vmlinux_ on ppc/ppc64, _image_ on s390/s390x and _vmlinuz_
|
||||
for everything else.
|
||||
|
||||
**-i** _<initrd_list>_::
|
||||
@@ -51,7 +51,7 @@ OPTIONS
|
||||
|
||||
**-d** _<root_device>_::
|
||||
Root device, defaults to the device from which the root_dir is
|
||||
- mounted; overwrites the rootdev enviroment variable if set
|
||||
+ mounted; overwrites the rootdev environment variable if set
|
||||
|
||||
**-s** _<size>_::
|
||||
Add splash animation and bootscreen to initrd.
|
||||
|
46
0082.patch
46
0082.patch
@ -1,46 +0,0 @@
|
||||
From e9a84e0a215fb5a79e563f665bc406c0ea177d32 Mon Sep 17 00:00:00 2001
|
||||
From: Daniel Molkentin <dmolkentin@suse.com>
|
||||
Date: Wed, 5 Sep 2018 12:06:06 +0200
|
||||
Subject: [PATCH] 98dracut-systemd: Start systemd-vconsole-setup before
|
||||
dracut-cmdline-ask
|
||||
|
||||
This is what happened before this patch (edited for brevity):
|
||||
|
||||
dracut-cmdline-ask.service in modules.d/98dracut-systemd, which invokes
|
||||
dracut-cmdline-ask.sh. This script and systemd-vconsole-setup are
|
||||
started in parallel for the same console (tty1).
|
||||
|
||||
Then dracut-cmdline-ask quits immediately without doing anything (unless
|
||||
rd.cmdline=ask is given). As this is a bash script and it gets tty as
|
||||
stdin as specified in its *.service, this triggers the hangup of tty1 at
|
||||
its exit.
|
||||
|
||||
Meanwhile systemd-vconsole-setup continues and tries some ioctls after
|
||||
that, but they fail because of the hung up tty1.
|
||||
|
||||
The usual culprit for starting systemd-vconsole-setup early on is
|
||||
plymouth-start.service, even if plymouth.enable=0 is set.
|
||||
|
||||
A popular (and annoying) symptom of this as reported by users was
|
||||
the inability use their configured keyboard layout in plymouth when
|
||||
unlocking their crypted block devices.
|
||||
|
||||
Reference: boo#1055834
|
||||
---
|
||||
modules.d/98dracut-systemd/dracut-cmdline-ask.service | 2 ++
|
||||
1 file changed, 2 insertions(+)
|
||||
|
||||
diff --git a/modules.d/98dracut-systemd/dracut-cmdline-ask.service b/modules.d/98dracut-systemd/dracut-cmdline-ask.service
|
||||
index ce7deda5..b96c2aaf 100644
|
||||
--- a/modules.d/98dracut-systemd/dracut-cmdline-ask.service
|
||||
+++ b/modules.d/98dracut-systemd/dracut-cmdline-ask.service
|
||||
@@ -7,6 +7,8 @@ Description=dracut ask for additional cmdline parameters
|
||||
DefaultDependencies=no
|
||||
Before=dracut-cmdline.service
|
||||
After=systemd-journald.socket
|
||||
+After=systemd-vconsole-setup.service
|
||||
+Requires=systemd-vconsole-setup.service
|
||||
Wants=systemd-journald.socket
|
||||
ConditionPathExists=/usr/lib/initrd-release
|
||||
ConditionKernelCommandLine=|rd.cmdline=ask
|
||||
|
88
0083.patch
88
0083.patch
@ -1,88 +0,0 @@
|
||||
From a7d8fc280c172ab023ce6170c33c323fb7c87adf Mon Sep 17 00:00:00 2001
|
||||
From: Frederick Grose <fgrose@sugarlabs.org>
|
||||
Date: Mon, 3 Sep 2018 17:01:53 -0400
|
||||
Subject: [PATCH] dmsquash-live: Avoid grep and sed in this module.
|
||||
|
||||
strstr and variable string manipulations suffice.
|
||||
---
|
||||
modules.d/90dmsquash-live/dmsquash-generator.sh | 4 ++--
|
||||
modules.d/90dmsquash-live/dmsquash-live-root.sh | 6 +++---
|
||||
modules.d/90dmsquash-live/module-setup.sh | 2 +-
|
||||
modules.d/90dmsquash-live/parse-dmsquash-live.sh | 4 ++--
|
||||
4 files changed, 8 insertions(+), 8 deletions(-)
|
||||
|
||||
diff --git a/modules.d/90dmsquash-live/dmsquash-generator.sh b/modules.d/90dmsquash-live/dmsquash-generator.sh
|
||||
index 1129ddff..f57b1fc5 100755
|
||||
--- a/modules.d/90dmsquash-live/dmsquash-generator.sh
|
||||
+++ b/modules.d/90dmsquash-live/dmsquash-generator.sh
|
||||
@@ -18,12 +18,12 @@ fi
|
||||
case "$liveroot" in
|
||||
live:LABEL=*|LABEL=*) \
|
||||
root="${root#live:}"
|
||||
- root="$(echo $root | sed 's,/,\\x2f,g')"
|
||||
+ root="${root//\//\\x2f}"
|
||||
root="live:/dev/disk/by-label/${root#LABEL=}"
|
||||
rootok=1 ;;
|
||||
live:CDLABEL=*|CDLABEL=*) \
|
||||
root="${root#live:}"
|
||||
- root="$(echo $root | sed 's,/,\\x2f,g')"
|
||||
+ root="${root//\//\\x2f}"
|
||||
root="live:/dev/disk/by-label/${root#CDLABEL=}"
|
||||
rootok=1 ;;
|
||||
live:UUID=*|UUID=*) \
|
||||
diff --git a/modules.d/90dmsquash-live/dmsquash-live-root.sh b/modules.d/90dmsquash-live/dmsquash-live-root.sh
|
||||
index 0f3d8f89..330ba3e9 100755
|
||||
--- a/modules.d/90dmsquash-live/dmsquash-live-root.sh
|
||||
+++ b/modules.d/90dmsquash-live/dmsquash-live-root.sh
|
||||
@@ -109,15 +109,15 @@ do_live_overlay() {
|
||||
|
||||
if [ -z "$overlay" ]; then
|
||||
pathspec="/${live_dir}/overlay-$l-$u"
|
||||
- elif ( echo $overlay | grep -q ":" ); then
|
||||
+ elif strstr $overlay ":"; then
|
||||
# pathspec specified, extract
|
||||
- pathspec=$( echo $overlay | sed -e 's/^.*://' )
|
||||
+ pathspec=${overlay##*:}
|
||||
fi
|
||||
|
||||
if [ -z "$pathspec" -o "$pathspec" = "auto" ]; then
|
||||
pathspec="/${live_dir}/overlay-$l-$u"
|
||||
fi
|
||||
- devspec=$( echo $overlay | sed -e 's/:.*$//' )
|
||||
+ devspec=${overlay%%:*}
|
||||
|
||||
# need to know where to look for the overlay
|
||||
if [ -z "$setup" -a -n "$devspec" -a -n "$pathspec" -a -n "$overlay" ]; then
|
||||
diff --git a/modules.d/90dmsquash-live/module-setup.sh b/modules.d/90dmsquash-live/module-setup.sh
|
||||
index 48418a06..f251258f 100755
|
||||
--- a/modules.d/90dmsquash-live/module-setup.sh
|
||||
+++ b/modules.d/90dmsquash-live/module-setup.sh
|
||||
@@ -22,7 +22,7 @@ installkernel() {
|
||||
|
||||
# called by dracut
|
||||
install() {
|
||||
- inst_multiple umount dmsetup blkid dd losetup grep blockdev find
|
||||
+ inst_multiple umount dmsetup blkid dd losetup blockdev find
|
||||
inst_multiple -o checkisomd5
|
||||
inst_hook cmdline 30 "$moddir/parse-dmsquash-live.sh"
|
||||
inst_hook cmdline 31 "$moddir/parse-iso-scan.sh"
|
||||
diff --git a/modules.d/90dmsquash-live/parse-dmsquash-live.sh b/modules.d/90dmsquash-live/parse-dmsquash-live.sh
|
||||
index 0eedf1f6..4d46a360 100755
|
||||
--- a/modules.d/90dmsquash-live/parse-dmsquash-live.sh
|
||||
+++ b/modules.d/90dmsquash-live/parse-dmsquash-live.sh
|
||||
@@ -20,12 +20,12 @@ modprobe -q loop
|
||||
case "$liveroot" in
|
||||
live:LABEL=*|LABEL=*) \
|
||||
root="${root#live:}"
|
||||
- root="$(echo $root | sed 's,/,\\x2f,g')"
|
||||
+ root="${root//\//\\x2f}"
|
||||
root="live:/dev/disk/by-label/${root#LABEL=}"
|
||||
rootok=1 ;;
|
||||
live:CDLABEL=*|CDLABEL=*) \
|
||||
root="${root#live:}"
|
||||
- root="$(echo $root | sed 's,/,\\x2f,g')"
|
||||
+ root="${root//\//\\x2f}"
|
||||
root="live:/dev/disk/by-label/${root#CDLABEL=}"
|
||||
rootok=1 ;;
|
||||
live:UUID=*|UUID=*) \
|
||||
|
72
0084.patch
72
0084.patch
@ -1,72 +0,0 @@
|
||||
From 44d1688164040f088fd66fb8a2d458e1f61836ce Mon Sep 17 00:00:00 2001
|
||||
From: Frederick Grose <fgrose@sugarlabs.org>
|
||||
Date: Mon, 3 Sep 2018 19:02:23 -0400
|
||||
Subject: [PATCH] dmsquash-live-root: Manage absent overlayfs module better.
|
||||
|
||||
die when required; systemctl reload otherwise.
|
||||
---
|
||||
modules.d/90dmsquash-live/dmsquash-live-root.sh | 26 +++++++++++++++----------
|
||||
1 file changed, 16 insertions(+), 10 deletions(-)
|
||||
|
||||
diff --git a/modules.d/90dmsquash-live/dmsquash-live-root.sh b/modules.d/90dmsquash-live/dmsquash-live-root.sh
|
||||
index 330ba3e9..6324fe83 100755
|
||||
--- a/modules.d/90dmsquash-live/dmsquash-live-root.sh
|
||||
+++ b/modules.d/90dmsquash-live/dmsquash-live-root.sh
|
||||
@@ -146,10 +146,10 @@ do_live_overlay() {
|
||||
[ -d /run/initramfs/overlayfs/ovlwork ]; then
|
||||
ln -s /run/initramfs/overlayfs/overlayfs /run/overlayfs$opt
|
||||
ln -s /run/initramfs/overlayfs/ovlwork /run/ovlwork$opt
|
||||
- if [ -z "$overlayfs" ]; then
|
||||
- overlayfs="yes"
|
||||
- [ -n "$DRACUT_SYSTEMD" ] && reloadsysrootmountunit=":>/xor_overlayfs;"
|
||||
+ if [ -z "$overlayfs" ] && [ -n "$DRACUT_SYSTEMD" ]; then
|
||||
+ reloadsysrootmountunit=":>/xor_overlayfs;"
|
||||
fi
|
||||
+ overlayfs="required"
|
||||
setup="yes"
|
||||
fi
|
||||
fi
|
||||
@@ -157,18 +157,24 @@ do_live_overlay() {
|
||||
[ -d /run/initramfs/overlayfs$pathspec/../ovlwork ]; then
|
||||
ln -s /run/initramfs/overlayfs$pathspec /run/overlayfs$opt
|
||||
ln -s /run/initramfs/overlayfs$pathspec/../ovlwork /run/ovlwork$opt
|
||||
- if [ -z "$overlayfs" ]; then
|
||||
- overlayfs="yes"
|
||||
- [ -n "$DRACUT_SYSTEMD" ] && reloadsysrootmountunit=":>/xor_overlayfs;"
|
||||
+ if [ -z "$overlayfs" ] && [ -n "$DRACUT_SYSTEMD" ]; then
|
||||
+ reloadsysrootmountunit=":>/xor_overlayfs;"
|
||||
fi
|
||||
+ overlayfs="required"
|
||||
setup="yes"
|
||||
fi
|
||||
fi
|
||||
if [ -n "$overlayfs" ]; then
|
||||
modprobe overlay
|
||||
if [ $? != 0 ]; then
|
||||
+ if [ "$overlayfs" = required ]; then
|
||||
+ die "OverlayFS is required but not available."
|
||||
+ exit 1
|
||||
+ fi
|
||||
+ [ -n "$DRACUT_SYSTEMD" ] && reloadsysrootmountunit=":>/xor_overlayfs;"
|
||||
m='OverlayFS is not available; using temporary Device-mapper overlay.'
|
||||
- unset -v overlayfs setup reloadsysrootmountunit
|
||||
+ info $m
|
||||
+ unset -v overlayfs setup
|
||||
fi
|
||||
fi
|
||||
|
||||
@@ -302,10 +308,10 @@ if [ -e "$SQUASHED" ]; then
|
||||
fi
|
||||
elif [ -d /run/initramfs/squashfs/proc ]; then
|
||||
FSIMG=$SQUASHED
|
||||
- if [ -z "$overlayfs" ]; then
|
||||
- overlayfs="yes"
|
||||
- [ -n "$DRACUT_SYSTEMD" ] && reloadsysrootmountunit=":>/xor_overlayfs;"
|
||||
+ if [ -z "$overlayfs" ] && [ -n "$DRACUT_SYSTEMD" ]; then
|
||||
+ reloadsysrootmountunit=":>/xor_overlayfs;"
|
||||
fi
|
||||
+ overlayfs="required"
|
||||
else
|
||||
die "Failed to find a root filesystem in $SQUASHED."
|
||||
exit 1
|
||||
|
24
0085.patch
24
0085.patch
@ -1,24 +0,0 @@
|
||||
From 8dd7bb48fcd9d19dd2d7cec2577cd2c6b414fd8b Mon Sep 17 00:00:00 2001
|
||||
From: Frederick Grose <fgrose@sugarlabs.org>
|
||||
Date: Mon, 3 Sep 2018 19:41:58 -0400
|
||||
Subject: [PATCH] dmsquash-live/apply-live-updates: Test proper file link.
|
||||
|
||||
Update flag link to /dev/root as required by commit
|
||||
789668deb3e6f8584ffab964d2204ddcb75f0a06.
|
||||
---
|
||||
modules.d/90dmsquash-live/apply-live-updates.sh | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/modules.d/90dmsquash-live/apply-live-updates.sh b/modules.d/90dmsquash-live/apply-live-updates.sh
|
||||
index bcca761b..3df2d4ad 100755
|
||||
--- a/modules.d/90dmsquash-live/apply-live-updates.sh
|
||||
+++ b/modules.d/90dmsquash-live/apply-live-updates.sh
|
||||
@@ -1,6 +1,6 @@
|
||||
#!/bin/sh
|
||||
|
||||
-if [ -L /run/rootfsbase ] && [ -d /run/initramfs/live/updates -o -d /updates ]; then
|
||||
+if [ -h /dev/root ] && [ -d /run/initramfs/live/updates -o -d /updates ]; then
|
||||
info "Applying updates to live image..."
|
||||
mount -o bind /run $NEWROOT/run
|
||||
# avoid overwriting symlinks (e.g. /lib -> /usr/lib) with directories
|
||||
|
67
0086.patch
67
0086.patch
@ -1,67 +0,0 @@
|
||||
From b3480d31b01e66e21a70b7dab55eac95449126c7 Mon Sep 17 00:00:00 2001
|
||||
From: Alexander Tsoy <alexander@tsoy.me>
|
||||
Date: Sat, 8 Sep 2018 17:02:03 +0300
|
||||
Subject: [PATCH] Prevent environment leaking into initrd-release
|
||||
|
||||
On my system the following initrd-release is generated:
|
||||
...
|
||||
VERSION="4 dracut-048 dracut-048"
|
||||
...
|
||||
|
||||
VERSION is not defined in /etc/os-release, so the variable is
|
||||
concatenated with its previous value:
|
||||
|
||||
* "4" comes from the kernel build system since dracut is called from the
|
||||
kernel install hook ("4" is a major kernel version);
|
||||
* first "dracut-048" comes from the "systemd-initrd" module;
|
||||
* second "dracut-048" comes from the "base" module.
|
||||
---
|
||||
modules.d/01systemd-initrd/module-setup.sh | 9 ++++-----
|
||||
modules.d/99base/module-setup.sh | 9 ++++-----
|
||||
2 files changed, 8 insertions(+), 10 deletions(-)
|
||||
|
||||
diff --git a/modules.d/01systemd-initrd/module-setup.sh b/modules.d/01systemd-initrd/module-setup.sh
|
||||
index c1ccd2af..cb8a8fa6 100755
|
||||
--- a/modules.d/01systemd-initrd/module-setup.sh
|
||||
+++ b/modules.d/01systemd-initrd/module-setup.sh
|
||||
@@ -38,13 +38,12 @@ install() {
|
||||
|
||||
ln_r "${systemdsystemunitdir}/initrd.target" "${systemdsystemunitdir}/default.target"
|
||||
|
||||
+ local VERSION=""
|
||||
+ local PRETTY_NAME=""
|
||||
if [ -e /etc/os-release ]; then
|
||||
. /etc/os-release
|
||||
- VERSION+=" "
|
||||
- PRETTY_NAME+=" "
|
||||
- else
|
||||
- VERSION=""
|
||||
- PRETTY_NAME=""
|
||||
+ [[ -n ${VERSION} ]] && VERSION+=" "
|
||||
+ [[ -n ${PRETTY_NAME} ]] && PRETTY_NAME+=" "
|
||||
fi
|
||||
NAME=dracut
|
||||
ID=dracut
|
||||
diff --git a/modules.d/99base/module-setup.sh b/modules.d/99base/module-setup.sh
|
||||
index 731c6dcc..21523fc9 100755
|
||||
--- a/modules.d/99base/module-setup.sh
|
||||
+++ b/modules.d/99base/module-setup.sh
|
||||
@@ -63,13 +63,12 @@ install() {
|
||||
echo ro >> "${initdir}/etc/cmdline.d/base.conf"
|
||||
fi
|
||||
|
||||
+ local VERSION=""
|
||||
+ local PRETTY_NAME=""
|
||||
if [ -e /etc/os-release ]; then
|
||||
. /etc/os-release
|
||||
- VERSION+=" "
|
||||
- PRETTY_NAME+=" "
|
||||
- else
|
||||
- VERSION=""
|
||||
- PRETTY_NAME=""
|
||||
+ [[ -n ${VERSION} ]] && VERSION+=" "
|
||||
+ [[ -n ${PRETTY_NAME} ]] && PRETTY_NAME+=" "
|
||||
fi
|
||||
NAME=dracut
|
||||
ID=dracut
|
||||
|
32
0087.patch
32
0087.patch
@ -1,32 +0,0 @@
|
||||
From 838f22259a50e5f92429ecdd24b897c1128edc98 Mon Sep 17 00:00:00 2001
|
||||
From: Alexander Tsoy <alexander@tsoy.me>
|
||||
Date: Sun, 9 Sep 2018 02:47:09 +0300
|
||||
Subject: [PATCH] install: avoid non-portable __WORDSIZE
|
||||
|
||||
Lets not unnecessarily rely on __WORDSIZE, which is not clearly specified
|
||||
by any spec. Use explicit size comparisons if we're not interested in the
|
||||
WORDSIZE, anyway.
|
||||
|
||||
Patch ported from systemd.
|
||||
(commit 8507eb20b64010b26f23822cbf442bb0bf96511c)
|
||||
|
||||
Original-patch-by: Emil Renner Berthing <systemd@esmil.dk>
|
||||
Bug: https://bugs.gentoo.org/602122
|
||||
---
|
||||
install/util.h | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/install/util.h b/install/util.h
|
||||
index 2ad3254d..c13b1a27 100644
|
||||
--- a/install/util.h
|
||||
+++ b/install/util.h
|
||||
@@ -167,7 +167,7 @@ int safe_atoi(const char *s, int *ret_i);
|
||||
int safe_atollu(const char *s, unsigned long long *ret_u);
|
||||
int safe_atolli(const char *s, long long int *ret_i);
|
||||
|
||||
-#if __WORDSIZE == 32
|
||||
+#if LONG_MAX == INT_MAX
|
||||
static inline int safe_atolu(const char *s, unsigned long *ret_u) {
|
||||
assert_cc(sizeof(unsigned long) == sizeof(unsigned));
|
||||
return safe_atou(s, (unsigned*) ret_u);
|
||||
|
24
0088.patch
24
0088.patch
@ -1,24 +0,0 @@
|
||||
From f4334e9bdf5ff85d5f9d9eb12f51a6b78e94101e Mon Sep 17 00:00:00 2001
|
||||
From: Alexander Tsoy <alexander@tsoy.me>
|
||||
Date: Sun, 9 Sep 2018 13:57:33 +0300
|
||||
Subject: [PATCH] base/dracut-lib.sh: use "command -v" in pidof()
|
||||
|
||||
"type -P" doesn't work in dash
|
||||
---
|
||||
modules.d/99base/dracut-lib.sh | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/modules.d/99base/dracut-lib.sh b/modules.d/99base/dracut-lib.sh
|
||||
index b78272a3..f71e757c 100755
|
||||
--- a/modules.d/99base/dracut-lib.sh
|
||||
+++ b/modules.d/99base/dracut-lib.sh
|
||||
@@ -1060,7 +1060,7 @@ if ! command -v pidof >/dev/null 2>/dev/null; then
|
||||
debug_on
|
||||
return 1
|
||||
fi
|
||||
- _exe=$(type -P "$1")
|
||||
+ _exe=$(command -v "$1")
|
||||
for i in /proc/*/exe; do
|
||||
[ -e "$i" ] || continue
|
||||
if [ -n "$_exe" ]; then
|
||||
|
349
0089.patch
349
0089.patch
@ -1,349 +0,0 @@
|
||||
From 095e1f37c41e8995c95635a47dbe2bf61d8ee2bc Mon Sep 17 00:00:00 2001
|
||||
From: Kairui Song <kasong@redhat.com>
|
||||
Date: Tue, 11 Sep 2018 19:32:24 +0800
|
||||
Subject: [PATCH] Add support for building a squashed initramfs
|
||||
|
||||
With all files stored in ramfs, and most of them are not compressed,
|
||||
the initramfs will take up a lot of memory. Besides, if the file number
|
||||
is large, each file will waste some memory due to page fragmetation.
|
||||
This is due to ramfs' design, at least one page will be allocated for
|
||||
one file however small the file is. On machine with large page size,
|
||||
this will become worse and waste too many memory.
|
||||
|
||||
One approach to reducing the memory usage is to reduce the number of
|
||||
files that got directly loaded into the root ramfs, and compress files
|
||||
by put most files will into a read-only squash image and keep a minimum
|
||||
set of executable and libraries outside as the loader for the squash
|
||||
image. After the squash image is mounted, the real 'init' will be
|
||||
executed and then everything behaves as usual.
|
||||
|
||||
This patch will introduce a '99squash' module which will never be
|
||||
included by default. User can force add it, and if it is included,
|
||||
dracut will perform some extra steps before creating the final image:
|
||||
|
||||
For now, "/etc" and "/usr" will be moved into the squashfs image.
|
||||
"/init" will be renamed to "/init.stock" and replaced by "/init.squash".
|
||||
Files and folders need to be accessible before mounting the image will
|
||||
be still avaliable at their original place. And due to squashfs is
|
||||
readonly, an overlayfs layer will be created on top of squashfs mount
|
||||
point, as many dracut module require readwrite access to "/etc" and
|
||||
"/usr", "init.squash" will ultimately call "/init.stock".
|
||||
|
||||
An extra systemd service will be installed. This service will umount all
|
||||
squashfs related mount points right before switch-root to release
|
||||
resources properly. This service will not actually do anything if
|
||||
switch-root is not used.
|
||||
|
||||
This is very helpful when mem resource is very limited, like Kdump.
|
||||
According to my tests, this squash module can help save about 35MB of
|
||||
memory with 64K page size, or about 15MB with 4K page size on an
|
||||
ordinary kdump capture routine. This module could also help reduce
|
||||
memory usage for normal boot up process.
|
||||
|
||||
Won't change any behavior if squash module is not enabled.
|
||||
|
||||
Signed-off-by: Kairui Song <kasong@redhat.com>
|
||||
---
|
||||
dracut.sh | 114 ++++++++++++++++++++++++++++
|
||||
modules.d/99squash/clear-squash.sh | 9 +++
|
||||
modules.d/99squash/init.sh | 7 ++
|
||||
modules.d/99squash/module-setup.sh | 29 +++++++
|
||||
modules.d/99squash/setup-squash.sh | 61 +++++++++++++++
|
||||
modules.d/99squash/shutdown.sh | 7 ++
|
||||
modules.d/99squash/squash-mnt-clear.service | 19 +++++
|
||||
7 files changed, 246 insertions(+)
|
||||
|
||||
diff --git a/dracut.sh b/dracut.sh
|
||||
index 8ee8c168..e683a9bc 100755
|
||||
--- a/dracut.sh
|
||||
+++ b/dracut.sh
|
||||
@@ -1747,6 +1747,120 @@ fi
|
||||
|
||||
dinfo "*** Creating image file '$outfile' ***"
|
||||
|
||||
+if dracut_module_included "squash"; then
|
||||
+ if ! check_kernel_config CONFIG_SQUASHFS; then
|
||||
+ dfatal "CONFIG_SQUASHFS have to be enabled for dracut squash module to work"
|
||||
+ exit 1
|
||||
+ fi
|
||||
+ if ! check_kernel_config CONFIG_OVERLAY_FS; then
|
||||
+ dfatal "CONFIG_OVERLAY_FS have to be enabled for dracut squash module to work"
|
||||
+ exit 1
|
||||
+ fi
|
||||
+ if ! check_kernel_config CONFIG_DEVTMPFS; then
|
||||
+ dfatal "CONFIG_DEVTMPFS have to be enabled for dracut squash module to work"
|
||||
+ exit 1
|
||||
+ fi
|
||||
+
|
||||
+ readonly squash_dir="${DRACUT_TMPDIR}/squashfs"
|
||||
+ readonly squash_img=$initdir/squash/root.img
|
||||
+
|
||||
+ # Currently only move "usr" "etc" to squashdir
|
||||
+ readonly squash_candidate=( "usr" "etc" )
|
||||
+
|
||||
+ mkdir -m 0755 -p $squash_dir
|
||||
+ for folder in "${squash_candidate[@]}"; do
|
||||
+ mv $initdir/$folder $squash_dir/$folder
|
||||
+ done
|
||||
+
|
||||
+ # Reinstall required files, because we have moved some important folders to $squash_dir
|
||||
+ inst_multiple "echo" "sh" "mount" "modprobe" "mkdir" \
|
||||
+ "systemctl" "udevadm" "$systemdutildir/systemd"
|
||||
+ hostonly="" instmods "loop" "squashfs" "overlay"
|
||||
+
|
||||
+ for folder in "${squash_candidate[@]}"; do
|
||||
+ # Remove duplicated files in squashfs image, save some more space
|
||||
+ [[ ! -d $initdir/$folder/ ]] && continue
|
||||
+ for file in $(find $initdir/$folder/ -not -type d);
|
||||
+ do
|
||||
+ if [[ -e $squash_dir${file#$initdir} ]]; then
|
||||
+ mv $squash_dir${file#$initdir} $file
|
||||
+ fi
|
||||
+ done
|
||||
+ done
|
||||
+
|
||||
+ # Move some files out side of the squash image, including:
|
||||
+ # - Files required to boot and mount the squashfs image
|
||||
+ # - Files need to be accessable without mounting the squash image
|
||||
+ required_in_root() {
|
||||
+ local file=$1
|
||||
+ local _sqsh_file=$squash_dir/$file
|
||||
+ local _init_file=$initdir/$file
|
||||
+
|
||||
+ if [[ -e $_init_file ]]; then
|
||||
+ return
|
||||
+ fi
|
||||
+
|
||||
+ if [[ ! -e $_sqsh_file ]] && [[ ! -L $_sqsh_file ]]; then
|
||||
+ derror "$file is required to boot a squashed initramfs but it's not installed!"
|
||||
+ return
|
||||
+ fi
|
||||
+
|
||||
+ if [[ ! -d $(dirname $_init_file) ]]; then
|
||||
+ required_in_root $(dirname $file)
|
||||
+ fi
|
||||
+
|
||||
+ if [[ -d $_sqsh_file ]]; then
|
||||
+ if [[ -L $_sqsh_file ]]; then
|
||||
+ cp --preserve=all -P $_sqsh_file $_init_file
|
||||
+ else
|
||||
+ mkdir $_init_file
|
||||
+ fi
|
||||
+ else
|
||||
+ if [[ -L $_sqsh_file ]]; then
|
||||
+ cp --preserve=all -P $_sqsh_file $_init_file
|
||||
+ _sqsh_file=$(realpath $_sqsh_file 2>/dev/null)
|
||||
+ if [[ -e $_sqsh_file ]] && [[ "$_sqsh_file" == "$squash_dir"* ]]; then
|
||||
+ # Relative symlink
|
||||
+ required_in_root ${_sqsh_file#$squash_dir/}
|
||||
+ return
|
||||
+ fi
|
||||
+ if [[ -e $squash_dir$_sqsh_file ]]; then
|
||||
+ # Absolute symlink
|
||||
+ required_in_root ${_sqsh_file#/}
|
||||
+ return
|
||||
+ fi
|
||||
+ required_in_root ${module_spec#$squash_dir/}
|
||||
+ else
|
||||
+ mv $_sqsh_file $_init_file
|
||||
+ fi
|
||||
+ fi
|
||||
+ }
|
||||
+
|
||||
+ required_in_root etc/initrd-release
|
||||
+
|
||||
+ for module_spec in $squash_dir/usr/lib/modules/*/modules.*;
|
||||
+ do
|
||||
+ required_in_root ${module_spec#$squash_dir/}
|
||||
+ done
|
||||
+
|
||||
+ for dracut_spec in $squash_dir/usr/lib/dracut/*;
|
||||
+ do
|
||||
+ required_in_root ${dracut_spec#$squash_dir/}
|
||||
+ done
|
||||
+
|
||||
+ mv $initdir/init $initdir/init.stock
|
||||
+ mv $initdir/shutdown $initdir/shutdown.stock
|
||||
+ ln -s squash/init.sh $initdir/init
|
||||
+ ln -s squash/shutdown.sh $initdir/shutdown
|
||||
+
|
||||
+ mksquashfs $squash_dir $squash_img -comp xz -b 64K -Xdict-size 100% &> /dev/null
|
||||
+
|
||||
+ if [[ $? != 0 ]]; then
|
||||
+ dfatal "dracut: Failed making squash image"
|
||||
+ exit 1
|
||||
+ fi
|
||||
+fi
|
||||
+
|
||||
if [[ $uefi = yes ]]; then
|
||||
readonly uefi_outdir="$DRACUT_TMPDIR/uefi"
|
||||
mkdir "$uefi_outdir"
|
||||
diff --git a/modules.d/99squash/clear-squash.sh b/modules.d/99squash/clear-squash.sh
|
||||
new file mode 100755
|
||||
index 00000000..34cb4cf5
|
||||
--- /dev/null
|
||||
+++ b/modules.d/99squash/clear-squash.sh
|
||||
@@ -0,0 +1,9 @@
|
||||
+#!/bin/sh
|
||||
+SQUASH_MNT_REC=/squash/mounts
|
||||
+SQUASH_MNTS=( )
|
||||
+
|
||||
+while read mnt; do
|
||||
+ SQUASH_MNTS+=( "$mnt" )
|
||||
+done <<< "$(cat $SQUASH_MNT_REC)"
|
||||
+
|
||||
+umount --lazy -- ${SQUASH_MNTS[@]}
|
||||
diff --git a/modules.d/99squash/init.sh b/modules.d/99squash/init.sh
|
||||
new file mode 100755
|
||||
index 00000000..bca49db5
|
||||
--- /dev/null
|
||||
+++ b/modules.d/99squash/init.sh
|
||||
@@ -0,0 +1,7 @@
|
||||
+#!/bin/sh
|
||||
+/squash/setup-squash.sh
|
||||
+
|
||||
+exec /init.stock
|
||||
+
|
||||
+echo "Something went wrong when trying to start original init executable!"
|
||||
+exit 1
|
||||
diff --git a/modules.d/99squash/module-setup.sh b/modules.d/99squash/module-setup.sh
|
||||
new file mode 100644
|
||||
index 00000000..935fd721
|
||||
--- /dev/null
|
||||
+++ b/modules.d/99squash/module-setup.sh
|
||||
@@ -0,0 +1,29 @@
|
||||
+#!/bin/bash
|
||||
+
|
||||
+check() {
|
||||
+ return 255
|
||||
+}
|
||||
+
|
||||
+depends() {
|
||||
+ echo "bash systemd systemd-initrd"
|
||||
+ return 0
|
||||
+}
|
||||
+
|
||||
+installkernel() {
|
||||
+ hostonly="" instmods squashfs loop overlay
|
||||
+}
|
||||
+
|
||||
+install() {
|
||||
+ if ! type -P mksquashfs >/dev/null || ! type -P unsquashfs >/dev/null ; then
|
||||
+ derror "squash module requires squashfs-tools to be installed."
|
||||
+ return 1
|
||||
+ fi
|
||||
+
|
||||
+ inst_multiple kmod modprobe mount mkdir ln echo
|
||||
+ inst $moddir/setup-squash.sh /squash/setup-squash.sh
|
||||
+ inst $moddir/clear-squash.sh /squash/clear-squash.sh
|
||||
+ inst $moddir/init.sh /squash/init.sh
|
||||
+
|
||||
+ inst "$moddir/squash-mnt-clear.service" "$systemdsystemunitdir/squash-mnt-clear.service"
|
||||
+ ln_r "$systemdsystemunitdir/squash-mnt-clear.service" "$systemdsystemunitdir/initrd.target.wants/squash-mnt-clear.service"
|
||||
+}
|
||||
diff --git a/modules.d/99squash/setup-squash.sh b/modules.d/99squash/setup-squash.sh
|
||||
new file mode 100755
|
||||
index 00000000..d2740e7c
|
||||
--- /dev/null
|
||||
+++ b/modules.d/99squash/setup-squash.sh
|
||||
@@ -0,0 +1,61 @@
|
||||
+#!/bin/sh
|
||||
+PATH=/bin:/sbin
|
||||
+
|
||||
+SQUASH_IMG=/squash/root.img
|
||||
+SQUASH_MNT=/squash/root
|
||||
+SQUASH_MNT_REC=/squash/mounts
|
||||
+SQUASHED_MNT="usr etc"
|
||||
+
|
||||
+echo $SQUASH_MNT > $SQUASH_MNT_REC
|
||||
+
|
||||
+# Following mount points are neccessary for mounting a squash image
|
||||
+
|
||||
+[ ! -d /proc/self ] && \
|
||||
+ mount -t proc -o nosuid,noexec,nodev proc /proc
|
||||
+
|
||||
+[ ! -d /sys/kernel ] && \
|
||||
+ mount -t sysfs -o nosuid,noexec,nodev sysfs /sys
|
||||
+
|
||||
+[ ! -e /dev/loop-control ] && \
|
||||
+ mount -t devtmpfs -o mode=0755,noexec,nosuid,strictatime devtmpfs /dev
|
||||
+
|
||||
+# Need a loop device backend, overlayfs, and squashfs module
|
||||
+modprobe loop
|
||||
+if [ $? != 0 ]; then
|
||||
+ echo "Unable to setup loop module"
|
||||
+fi
|
||||
+
|
||||
+modprobe squashfs
|
||||
+if [ $? != 0 ]; then
|
||||
+ echo "Unable to setup squashfs module"
|
||||
+fi
|
||||
+
|
||||
+modprobe overlay
|
||||
+if [ $? != 0 ]; then
|
||||
+ echo "Unable to setup overlay module"
|
||||
+fi
|
||||
+
|
||||
+[ ! -d "$SQUASH_MNT" ] && \
|
||||
+ mkdir -m 0755 -p $SQUASH_MNT
|
||||
+
|
||||
+# Mount the squashfs image
|
||||
+mount -t squashfs -o ro,loop $SQUASH_IMG $SQUASH_MNT
|
||||
+
|
||||
+if [ $? != 0 ]; then
|
||||
+ echo "Unable to mount squashed initramfs image"
|
||||
+fi
|
||||
+
|
||||
+for file in $SQUASHED_MNT; do
|
||||
+ lowerdir=$SQUASH_MNT/$file
|
||||
+ workdir=/squash/overlay-work/$file
|
||||
+ upperdir=/$file
|
||||
+ mntdir=/$file
|
||||
+
|
||||
+ mkdir -m 0755 -p $workdir
|
||||
+ mkdir -m 0755 -p $mntdir
|
||||
+
|
||||
+ mount -t overlay overlay -o\
|
||||
+ lowerdir=$lowerdir,upperdir=$upperdir,workdir=$workdir $mntdir
|
||||
+
|
||||
+ echo $mntdir >> $SQUASH_MNT_REC
|
||||
+done
|
||||
diff --git a/modules.d/99squash/shutdown.sh b/modules.d/99squash/shutdown.sh
|
||||
new file mode 100755
|
||||
index 00000000..535779f4
|
||||
--- /dev/null
|
||||
+++ b/modules.d/99squash/shutdown.sh
|
||||
@@ -0,0 +1,7 @@
|
||||
+#!/bin/sh
|
||||
+/squash/setup-squash.sh
|
||||
+
|
||||
+exec /shutdown.stock
|
||||
+
|
||||
+echo "Something went wrong when trying to start original shutdown executable!"
|
||||
+exit 1
|
||||
diff --git a/modules.d/99squash/squash-mnt-clear.service b/modules.d/99squash/squash-mnt-clear.service
|
||||
new file mode 100644
|
||||
index 00000000..8dd17812
|
||||
--- /dev/null
|
||||
+++ b/modules.d/99squash/squash-mnt-clear.service
|
||||
@@ -0,0 +1,19 @@
|
||||
+# This file is part of dracut.
|
||||
+#
|
||||
+
|
||||
+[Unit]
|
||||
+Description=Cleanup squashfs mounts when switch root
|
||||
+DefaultDependencies=no
|
||||
+After=initrd.target
|
||||
+After=dracut-initqueue.service dracut-pre-pivot.service
|
||||
+Before=initrd-cleanup.service
|
||||
+ConditionPathExists=/squash/root
|
||||
+Conflicts=initrd-switch-root.target
|
||||
+
|
||||
+[Service]
|
||||
+Type=oneshot
|
||||
+RemainAfterExit=yes
|
||||
+StandardInput=null
|
||||
+StandardOutput=syslog+console
|
||||
+StandardError=syslog+console
|
||||
+ExecStop=/squash/clear-squash.sh
|
||||
|
43
0090.patch
43
0090.patch
@ -1,43 +0,0 @@
|
||||
From 24f3463bff8600d562975c9a7c44365066a50ca4 Mon Sep 17 00:00:00 2001
|
||||
From: Kairui Song <kasong@redhat.com>
|
||||
Date: Thu, 20 Sep 2018 17:23:19 +0800
|
||||
Subject: [PATCH] dracut.spec: Add dracut-squash package
|
||||
|
||||
As 99squash module requires extra dependency and it introduces new
|
||||
files, add a new sub package for this module.
|
||||
---
|
||||
dracut.spec | 13 +++++++++++++
|
||||
1 file changed, 13 insertions(+)
|
||||
|
||||
diff --git a/dracut.spec b/dracut.spec
|
||||
index 09c74478..d9cfdf1c 100644
|
||||
--- a/dracut.spec
|
||||
+++ b/dracut.spec
|
||||
@@ -178,6 +178,16 @@ Requires: %{name} = %{version}-%{release}
|
||||
%description tools
|
||||
This package contains tools to assemble the local initrd and host configuration.
|
||||
|
||||
+%package squash
|
||||
+Summary: dracut module to build an initramfs with most files in a squashfs image
|
||||
+Requires: %{name} = %{version}-%{release}
|
||||
+Requires: squash-tools
|
||||
+
|
||||
+%description squash
|
||||
+This package provides a dracut module to build an initramfs, but store most files
|
||||
+in a squashfs image, result in a smaller initramfs size and reduce runtime memory
|
||||
+usage.
|
||||
+
|
||||
%prep
|
||||
%autosetup -n %{name}-%{version} -S git_am
|
||||
cp %{SOURCE1} .
|
||||
@@ -439,6 +449,9 @@ install -m 0755 51-dracut-rescue-postinst.sh $RPM_BUILD_ROOT%{_sysconfdir}/kerne
|
||||
%doc %{_mandir}/man8/dracut-catimages.8*
|
||||
%endif
|
||||
|
||||
+%files squash
|
||||
+%{dracutlibdir}/modules.d/99squash
|
||||
+
|
||||
%{_bindir}/dracut-catimages
|
||||
%dir /boot/dracut
|
||||
%dir /var/lib/dracut
|
||||
|
30
0091.patch
30
0091.patch
@ -1,30 +0,0 @@
|
||||
From 0454dc247a146fabd66232c26536514dca1f6044 Mon Sep 17 00:00:00 2001
|
||||
From: Lubomir Rintel <lkundrak@v3.sk>
|
||||
Date: Tue, 18 Sep 2018 11:17:54 +0200
|
||||
Subject: [PATCH] network: configure NetworkManager to use dhclient
|
||||
|
||||
If the network module obtained a lease using dhclient, NetworkManager
|
||||
must be configured to use it too, otherwise it would obtain a different
|
||||
lease (and could potentially break a connection to the network volume).
|
||||
---
|
||||
modules.d/40network/ifup.sh | 6 ++++++
|
||||
1 file changed, 6 insertions(+)
|
||||
|
||||
diff --git a/modules.d/40network/ifup.sh b/modules.d/40network/ifup.sh
|
||||
index 54981386..ea2a67ff 100755
|
||||
--- a/modules.d/40network/ifup.sh
|
||||
+++ b/modules.d/40network/ifup.sh
|
||||
@@ -41,6 +41,12 @@ do_dhcp() {
|
||||
return 1
|
||||
fi
|
||||
|
||||
+ if [ ! -e /run/NetworkManager/conf.d/10-dracut-dhclient.conf ]; then
|
||||
+ mkdir -p /run/NetworkManager/conf.d
|
||||
+ echo '[main]' > /run/NetworkManager/conf.d/10-dracut-dhclient.conf
|
||||
+ echo 'dhcp=dhclient' >>/run/NetworkManager/conf.d/10-dracut-dhclient.conf
|
||||
+ fi
|
||||
+
|
||||
while [ $_COUNT -lt $_DHCPRETRY ]; do
|
||||
info "Starting dhcp for interface $netif"
|
||||
dhclient "$@" \
|
||||
|
37
0092.patch
37
0092.patch
@ -1,37 +0,0 @@
|
||||
From 9e82732dd412a49cbdf9c4b998f04ac0a39e393f Mon Sep 17 00:00:00 2001
|
||||
From: Lubomir Rintel <lkundrak@v3.sk>
|
||||
Date: Thu, 30 Aug 2018 16:21:17 +0200
|
||||
Subject: [PATCH] iscsi: do not replace the configuration in the host system
|
||||
|
||||
ln: failed to create symbolic link '/usr/lib/systemd/system/sockets.target.wants/iscsid.socket': Permission denied
|
||||
ln: failed to create symbolic link '/usr/lib/systemd/system/sockets.target.wants/iscsiuio.socket': Permission denied
|
||||
|
||||
No way. Just ensure the links are there in the initramfs image. In fact,
|
||||
that is already the case for iscsiuio.socket. Add iscsid.socket too.
|
||||
---
|
||||
modules.d/95iscsi/module-setup.sh | 4 +---
|
||||
1 file changed, 1 insertion(+), 3 deletions(-)
|
||||
|
||||
diff --git a/modules.d/95iscsi/module-setup.sh b/modules.d/95iscsi/module-setup.sh
|
||||
index d8405fce..04beae4c 100755
|
||||
--- a/modules.d/95iscsi/module-setup.sh
|
||||
+++ b/modules.d/95iscsi/module-setup.sh
|
||||
@@ -208,9 +208,6 @@ install() {
|
||||
inst_libdir_file 'libgcc_s.so*'
|
||||
inst_multiple umount hostname iscsi-iname iscsiadm iscsid
|
||||
|
||||
- ln -sf $systemdsystemunitdir/iscsid.socket $systemdsystemunitdir/sockets.target.wants/iscsid.socket
|
||||
- ln -sf $systemdsystemunitdir/iscsiuio.socket $systemdsystemunitdir/sockets.target.wants/iscsiuio.socket
|
||||
-
|
||||
inst_multiple -o \
|
||||
$systemdsystemunitdir/iscsid.socket \
|
||||
$systemdsystemunitdir/iscsid.service \
|
||||
@@ -243,6 +240,7 @@ install() {
|
||||
|
||||
mkdir -p "${initdir}/$systemdsystemunitdir/sockets.target.wants"
|
||||
for i in \
|
||||
+ iscsid.socket \
|
||||
iscsiuio.socket \
|
||||
; do
|
||||
ln_r "$systemdsystemunitdir/${i}" "$systemdsystemunitdir/sockets.target.wants/${i}"
|
||||
|
29
0093.patch
29
0093.patch
@ -1,29 +0,0 @@
|
||||
From 5e615f4eb488e469395e7e30059a22d8225d9a0a Mon Sep 17 00:00:00 2001
|
||||
From: Lubomir Rintel <lkundrak@v3.sk>
|
||||
Date: Thu, 30 Aug 2018 18:38:34 +0200
|
||||
Subject: [PATCH] iscsi: do not install all of /etc/iscsi unless hostonly
|
||||
|
||||
/etc/iscsi/initiatorname.iscsi would leak the host initiator name (that
|
||||
is host configuration) to the initramfs. Perhaps other files too.
|
||||
---
|
||||
modules.d/95iscsi/module-setup.sh | 6 +++++-
|
||||
1 file changed, 5 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/modules.d/95iscsi/module-setup.sh b/modules.d/95iscsi/module-setup.sh
|
||||
index 04beae4c..5c2073bb 100755
|
||||
--- a/modules.d/95iscsi/module-setup.sh
|
||||
+++ b/modules.d/95iscsi/module-setup.sh
|
||||
@@ -216,7 +216,11 @@ install() {
|
||||
$systemdsystemunitdir/sockets.target.wants/iscsid.socket \
|
||||
$systemdsystemunitdir/sockets.target.wants/iscsiuio.socket
|
||||
|
||||
- [[ -d /etc/iscsi ]] && inst_dir $(/usr/bin/find /etc/iscsi)
|
||||
+ if [[ $hostonly ]]; then
|
||||
+ inst_dir $(/usr/bin/find /etc/iscsi)
|
||||
+ else
|
||||
+ inst_simple /etc/iscsi/iscsid.conf
|
||||
+ fi
|
||||
|
||||
# Detect iBFT and perform mandatory steps
|
||||
if [[ $hostonly_cmdline == "yes" ]] ; then
|
||||
|
27
0094.patch
27
0094.patch
@ -1,27 +0,0 @@
|
||||
From 0aa2e5f7280a0f88d5f8d69dd9467e7b81d6a231 Mon Sep 17 00:00:00 2001
|
||||
From: Lubomir Rintel <lkundrak@v3.sk>
|
||||
Date: Thu, 30 Aug 2018 18:41:37 +0200
|
||||
Subject: [PATCH] iscsi: start iscsid even w/o systemd
|
||||
|
||||
---
|
||||
modules.d/95iscsi/iscsiroot.sh | 6 ++++++
|
||||
1 file changed, 6 insertions(+)
|
||||
|
||||
diff --git a/modules.d/95iscsi/iscsiroot.sh b/modules.d/95iscsi/iscsiroot.sh
|
||||
index 76c8b3fe..4efc1d12 100755
|
||||
--- a/modules.d/95iscsi/iscsiroot.sh
|
||||
+++ b/modules.d/95iscsi/iscsiroot.sh
|
||||
@@ -194,6 +194,12 @@ handle_netroot()
|
||||
sleep 1
|
||||
fi
|
||||
fi
|
||||
+
|
||||
+ if [ -z "$DRACUT_SYSTEMD" ]; then
|
||||
+ iscsid
|
||||
+ sleep 2
|
||||
+ fi
|
||||
+
|
||||
# FIXME $iscsi_protocol??
|
||||
|
||||
if [ "$root" = "dhcp" ] || [ "$netroot" = "dhcp" ]; then
|
||||
|
23
0095.patch
23
0095.patch
@ -1,23 +0,0 @@
|
||||
From 1c4a51c39c8ed9908ae8118eff78d3476eaddf61 Mon Sep 17 00:00:00 2001
|
||||
From: Lubomir Rintel <lkundrak@v3.sk>
|
||||
Date: Fri, 31 Aug 2018 16:51:38 +0200
|
||||
Subject: [PATCH] network: fix an error message
|
||||
|
||||
---
|
||||
modules.d/40network/netroot.sh | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/modules.d/40network/netroot.sh b/modules.d/40network/netroot.sh
|
||||
index c80a59fe..207364cd 100755
|
||||
--- a/modules.d/40network/netroot.sh
|
||||
+++ b/modules.d/40network/netroot.sh
|
||||
@@ -46,7 +46,7 @@ if [ -z "$2" ]; then
|
||||
# we die. Otherwise we just warn
|
||||
if [ -z "$new_root_path" ] ; then
|
||||
[ -n "$BOOTDEV" ] && die "No dhcp root-path received for '$BOOTDEV'"
|
||||
- warn "No dhcp root-path received for '$BOOTDEV' trying other interfaces if available"
|
||||
+ warn "No dhcp root-path received for '$netif' trying other interfaces if available"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
|
287
0096.patch
287
0096.patch
@ -1,287 +0,0 @@
|
||||
From 734739187bfab24f063904ea18f0bdf03b4a136c Mon Sep 17 00:00:00 2001
|
||||
From: Lubomir Rintel <lkundrak@v3.sk>
|
||||
Date: Thu, 30 Aug 2018 16:44:22 +0200
|
||||
Subject: [PATCH] network-legacy: split off from network module
|
||||
|
||||
---
|
||||
dracut.spec | 1 +
|
||||
.../dhclient-script.sh | 0
|
||||
.../{40network => 35network-legacy}/dhclient.conf | 0
|
||||
.../{40network => 35network-legacy}/dhcp-root.sh | 0
|
||||
modules.d/{40network => 35network-legacy}/ifup.sh | 0
|
||||
.../kill-dhclient.sh | 0
|
||||
modules.d/35network-legacy/module-setup.sh | 93 ++++++++++++++++++++++
|
||||
.../net-genrules.sh | 0
|
||||
.../{40network => 35network-legacy}/parse-bond.sh | 0
|
||||
.../parse-bridge.sh | 0
|
||||
.../{40network => 35network-legacy}/parse-ibft.sh | 0
|
||||
.../parse-ifname.sh | 0
|
||||
.../parse-ip-opts.sh | 0
|
||||
.../{40network => 35network-legacy}/parse-team.sh | 0
|
||||
.../{40network => 35network-legacy}/parse-vlan.sh | 0
|
||||
modules.d/40network/module-setup.sh | 76 +-----------------
|
||||
16 files changed, 95 insertions(+), 75 deletions(-)
|
||||
|
||||
diff --git a/dracut.spec b/dracut.spec
|
||||
index d9cfdf1c..f6486d50 100644
|
||||
--- a/dracut.spec
|
||||
+++ b/dracut.spec
|
||||
@@ -419,6 +419,7 @@ install -m 0755 51-dracut-rescue-postinst.sh $RPM_BUILD_ROOT%{_sysconfdir}/kerne
|
||||
|
||||
%files network
|
||||
%{dracutlibdir}/modules.d/02systemd-networkd
|
||||
+%{dracutlibdir}/modules.d/35network-legacy
|
||||
%{dracutlibdir}/modules.d/40network
|
||||
%{dracutlibdir}/modules.d/45ifcfg
|
||||
%{dracutlibdir}/modules.d/90kernel-network-modules
|
||||
diff --git a/modules.d/40network/dhclient-script.sh b/modules.d/35network-legacy/dhclient-script.sh
|
||||
similarity index 100%
|
||||
rename from modules.d/40network/dhclient-script.sh
|
||||
rename to modules.d/35network-legacy/dhclient-script.sh
|
||||
diff --git a/modules.d/40network/dhclient.conf b/modules.d/35network-legacy/dhclient.conf
|
||||
similarity index 100%
|
||||
rename from modules.d/40network/dhclient.conf
|
||||
rename to modules.d/35network-legacy/dhclient.conf
|
||||
diff --git a/modules.d/40network/dhcp-root.sh b/modules.d/35network-legacy/dhcp-root.sh
|
||||
similarity index 100%
|
||||
rename from modules.d/40network/dhcp-root.sh
|
||||
rename to modules.d/35network-legacy/dhcp-root.sh
|
||||
diff --git a/modules.d/40network/ifup.sh b/modules.d/35network-legacy/ifup.sh
|
||||
similarity index 100%
|
||||
rename from modules.d/40network/ifup.sh
|
||||
rename to modules.d/35network-legacy/ifup.sh
|
||||
diff --git a/modules.d/40network/kill-dhclient.sh b/modules.d/35network-legacy/kill-dhclient.sh
|
||||
similarity index 100%
|
||||
rename from modules.d/40network/kill-dhclient.sh
|
||||
rename to modules.d/35network-legacy/kill-dhclient.sh
|
||||
diff --git a/modules.d/35network-legacy/module-setup.sh b/modules.d/35network-legacy/module-setup.sh
|
||||
new file mode 100755
|
||||
index 00000000..71abda36
|
||||
--- /dev/null
|
||||
+++ b/modules.d/35network-legacy/module-setup.sh
|
||||
@@ -0,0 +1,93 @@
|
||||
+#!/bin/bash
|
||||
+
|
||||
+# called by dracut
|
||||
+check() {
|
||||
+ local _program
|
||||
+
|
||||
+ require_binaries ip dhclient sed awk grep || return 1
|
||||
+ require_any_binary arping arping2 || return 1
|
||||
+
|
||||
+ return 255
|
||||
+}
|
||||
+
|
||||
+# called by dracut
|
||||
+depends() {
|
||||
+ return 0
|
||||
+}
|
||||
+
|
||||
+# called by dracut
|
||||
+installkernel() {
|
||||
+ return 0
|
||||
+}
|
||||
+
|
||||
+# called by dracut
|
||||
+install() {
|
||||
+ local _arch _i _dir
|
||||
+ inst_multiple ip dhclient sed awk grep
|
||||
+
|
||||
+ inst_multiple -o arping arping2
|
||||
+ strstr "$(arping 2>&1)" "ARPing 2" && mv "$initdir/bin/arping" "$initdir/bin/arping2"
|
||||
+
|
||||
+ inst_multiple -o ping ping6
|
||||
+ inst_multiple -o teamd teamdctl teamnl
|
||||
+ inst_simple /etc/libnl/classid
|
||||
+ inst_script "$moddir/ifup.sh" "/sbin/ifup"
|
||||
+ inst_script "$moddir/dhclient-script.sh" "/sbin/dhclient-script"
|
||||
+ inst_simple -H "/etc/dhclient.conf"
|
||||
+ cat "$moddir/dhclient.conf" >> "${initdir}/etc/dhclient.conf"
|
||||
+ inst_hook pre-udev 60 "$moddir/net-genrules.sh"
|
||||
+ inst_hook cmdline 91 "$moddir/dhcp-root.sh"
|
||||
+ inst_hook cmdline 92 "$moddir/parse-ibft.sh"
|
||||
+ inst_hook cmdline 95 "$moddir/parse-vlan.sh"
|
||||
+ inst_hook cmdline 96 "$moddir/parse-bond.sh"
|
||||
+ inst_hook cmdline 96 "$moddir/parse-team.sh"
|
||||
+ inst_hook cmdline 97 "$moddir/parse-bridge.sh"
|
||||
+ inst_hook cmdline 98 "$moddir/parse-ip-opts.sh"
|
||||
+ inst_hook cmdline 99 "$moddir/parse-ifname.sh"
|
||||
+ inst_hook cleanup 10 "$moddir/kill-dhclient.sh"
|
||||
+
|
||||
+ # install all config files for teaming
|
||||
+ unset TEAM_MASTER
|
||||
+ unset TEAM_CONFIG
|
||||
+ unset TEAM_PORT_CONFIG
|
||||
+ unset HWADDR
|
||||
+ unset SUBCHANNELS
|
||||
+ for i in /etc/sysconfig/network-scripts/ifcfg-*; do
|
||||
+ [ -e "$i" ] || continue
|
||||
+ case "$i" in
|
||||
+ *~ | *.bak | *.orig | *.rpmnew | *.rpmorig | *.rpmsave)
|
||||
+ continue
|
||||
+ ;;
|
||||
+ esac
|
||||
+ (
|
||||
+ . "$i"
|
||||
+ if ! [ "${ONBOOT}" = "no" -o "${ONBOOT}" = "NO" ] \
|
||||
+ && [ -n "${TEAM_MASTER}${TEAM_CONFIG}${TEAM_PORT_CONFIG}" ]; then
|
||||
+ if [ -n "$TEAM_CONFIG" ] && [ -n "$DEVICE" ]; then
|
||||
+ mkdir -p $initdir/etc/teamd
|
||||
+ printf -- "%s" "$TEAM_CONFIG" > "$initdir/etc/teamd/${DEVICE}.conf"
|
||||
+ elif [ -n "$TEAM_PORT_CONFIG" ]; then
|
||||
+ inst_simple "$i"
|
||||
+
|
||||
+ HWADDR="$(echo $HWADDR | sed 'y/ABCDEF/abcdef/')"
|
||||
+ if [ -n "$HWADDR" ]; then
|
||||
+ ln_r "$i" "/etc/sysconfig/network-scripts/mac-${HWADDR}.conf"
|
||||
+ fi
|
||||
+
|
||||
+ SUBCHANNELS="$(echo $SUBCHANNELS | sed 'y/ABCDEF/abcdef/')"
|
||||
+ if [ -n "$SUBCHANNELS" ]; then
|
||||
+ ln_r "$i" "/etc/sysconfig/network-scripts/ccw-${SUBCHANNELS}.conf"
|
||||
+ fi
|
||||
+ fi
|
||||
+ fi
|
||||
+ )
|
||||
+ done
|
||||
+
|
||||
+ _arch=$(uname -m)
|
||||
+
|
||||
+ inst_libdir_file {"tls/$_arch/",tls/,"$_arch/",}"libnss_dns.so.*" \
|
||||
+ {"tls/$_arch/",tls/,"$_arch/",}"libnss_mdns4_minimal.so.*"
|
||||
+
|
||||
+ dracut_need_initqueue
|
||||
+}
|
||||
+
|
||||
diff --git a/modules.d/40network/net-genrules.sh b/modules.d/35network-legacy/net-genrules.sh
|
||||
similarity index 100%
|
||||
rename from modules.d/40network/net-genrules.sh
|
||||
rename to modules.d/35network-legacy/net-genrules.sh
|
||||
diff --git a/modules.d/40network/parse-bond.sh b/modules.d/35network-legacy/parse-bond.sh
|
||||
similarity index 100%
|
||||
rename from modules.d/40network/parse-bond.sh
|
||||
rename to modules.d/35network-legacy/parse-bond.sh
|
||||
diff --git a/modules.d/40network/parse-bridge.sh b/modules.d/35network-legacy/parse-bridge.sh
|
||||
similarity index 100%
|
||||
rename from modules.d/40network/parse-bridge.sh
|
||||
rename to modules.d/35network-legacy/parse-bridge.sh
|
||||
diff --git a/modules.d/40network/parse-ibft.sh b/modules.d/35network-legacy/parse-ibft.sh
|
||||
similarity index 100%
|
||||
rename from modules.d/40network/parse-ibft.sh
|
||||
rename to modules.d/35network-legacy/parse-ibft.sh
|
||||
diff --git a/modules.d/40network/parse-ifname.sh b/modules.d/35network-legacy/parse-ifname.sh
|
||||
similarity index 100%
|
||||
rename from modules.d/40network/parse-ifname.sh
|
||||
rename to modules.d/35network-legacy/parse-ifname.sh
|
||||
diff --git a/modules.d/40network/parse-ip-opts.sh b/modules.d/35network-legacy/parse-ip-opts.sh
|
||||
similarity index 100%
|
||||
rename from modules.d/40network/parse-ip-opts.sh
|
||||
rename to modules.d/35network-legacy/parse-ip-opts.sh
|
||||
diff --git a/modules.d/40network/parse-team.sh b/modules.d/35network-legacy/parse-team.sh
|
||||
similarity index 100%
|
||||
rename from modules.d/40network/parse-team.sh
|
||||
rename to modules.d/35network-legacy/parse-team.sh
|
||||
diff --git a/modules.d/40network/parse-vlan.sh b/modules.d/35network-legacy/parse-vlan.sh
|
||||
similarity index 100%
|
||||
rename from modules.d/40network/parse-vlan.sh
|
||||
rename to modules.d/35network-legacy/parse-vlan.sh
|
||||
diff --git a/modules.d/40network/module-setup.sh b/modules.d/40network/module-setup.sh
|
||||
index a1010911..fbd43925 100755
|
||||
--- a/modules.d/40network/module-setup.sh
|
||||
+++ b/modules.d/40network/module-setup.sh
|
||||
@@ -1,18 +1,8 @@
|
||||
#!/bin/bash
|
||||
|
||||
-# called by dracut
|
||||
-check() {
|
||||
- local _program
|
||||
-
|
||||
- require_binaries ip dhclient sed awk grep || return 1
|
||||
- require_any_binary arping arping2 || return 1
|
||||
-
|
||||
- return 255
|
||||
-}
|
||||
-
|
||||
# called by dracut
|
||||
depends() {
|
||||
- echo "kernel-network-modules"
|
||||
+ echo "network-legacy"
|
||||
return 0
|
||||
}
|
||||
|
||||
@@ -24,74 +14,10 @@ installkernel() {
|
||||
# called by dracut
|
||||
install() {
|
||||
local _arch _i _dir
|
||||
- inst_multiple ip dhclient sed awk grep
|
||||
-
|
||||
- inst_multiple -o arping arping2
|
||||
- strstr "$(arping 2>&1)" "ARPing 2" && mv "$initdir/bin/arping" "$initdir/bin/arping2"
|
||||
|
||||
- inst_multiple -o ping ping6
|
||||
- inst_multiple -o teamd teamdctl teamnl
|
||||
- inst_simple /etc/libnl/classid
|
||||
- inst_script "$moddir/ifup.sh" "/sbin/ifup"
|
||||
inst_script "$moddir/netroot.sh" "/sbin/netroot"
|
||||
- inst_script "$moddir/dhclient-script.sh" "/sbin/dhclient-script"
|
||||
inst_simple "$moddir/net-lib.sh" "/lib/net-lib.sh"
|
||||
- inst_simple -H "/etc/dhclient.conf"
|
||||
- cat "$moddir/dhclient.conf" >> "${initdir}/etc/dhclient.conf"
|
||||
inst_hook pre-udev 50 "$moddir/ifname-genrules.sh"
|
||||
- inst_hook pre-udev 60 "$moddir/net-genrules.sh"
|
||||
- inst_hook cmdline 91 "$moddir/dhcp-root.sh"
|
||||
- inst_hook cmdline 92 "$moddir/parse-ibft.sh"
|
||||
- inst_hook cmdline 95 "$moddir/parse-vlan.sh"
|
||||
- inst_hook cmdline 96 "$moddir/parse-bond.sh"
|
||||
- inst_hook cmdline 96 "$moddir/parse-team.sh"
|
||||
- inst_hook cmdline 97 "$moddir/parse-bridge.sh"
|
||||
- inst_hook cmdline 98 "$moddir/parse-ip-opts.sh"
|
||||
- inst_hook cmdline 99 "$moddir/parse-ifname.sh"
|
||||
- inst_hook cleanup 10 "$moddir/kill-dhclient.sh"
|
||||
-
|
||||
- # install all config files for teaming
|
||||
- unset TEAM_MASTER
|
||||
- unset TEAM_CONFIG
|
||||
- unset TEAM_PORT_CONFIG
|
||||
- unset HWADDR
|
||||
- unset SUBCHANNELS
|
||||
- for i in /etc/sysconfig/network-scripts/ifcfg-*; do
|
||||
- [ -e "$i" ] || continue
|
||||
- case "$i" in
|
||||
- *~ | *.bak | *.orig | *.rpmnew | *.rpmorig | *.rpmsave)
|
||||
- continue
|
||||
- ;;
|
||||
- esac
|
||||
- (
|
||||
- . "$i"
|
||||
- if ! [ "${ONBOOT}" = "no" -o "${ONBOOT}" = "NO" ] \
|
||||
- && [ -n "${TEAM_MASTER}${TEAM_CONFIG}${TEAM_PORT_CONFIG}" ]; then
|
||||
- if [ -n "$TEAM_CONFIG" ] && [ -n "$DEVICE" ]; then
|
||||
- mkdir -p $initdir/etc/teamd
|
||||
- printf -- "%s" "$TEAM_CONFIG" > "$initdir/etc/teamd/${DEVICE}.conf"
|
||||
- elif [ -n "$TEAM_PORT_CONFIG" ]; then
|
||||
- inst_simple "$i"
|
||||
-
|
||||
- HWADDR="$(echo $HWADDR | sed 'y/ABCDEF/abcdef/')"
|
||||
- if [ -n "$HWADDR" ]; then
|
||||
- ln_r "$i" "/etc/sysconfig/network-scripts/mac-${HWADDR}.conf"
|
||||
- fi
|
||||
-
|
||||
- SUBCHANNELS="$(echo $SUBCHANNELS | sed 'y/ABCDEF/abcdef/')"
|
||||
- if [ -n "$SUBCHANNELS" ]; then
|
||||
- ln_r "$i" "/etc/sysconfig/network-scripts/ccw-${SUBCHANNELS}.conf"
|
||||
- fi
|
||||
- fi
|
||||
- fi
|
||||
- )
|
||||
- done
|
||||
-
|
||||
- _arch=$(uname -m)
|
||||
-
|
||||
- inst_libdir_file {"tls/$_arch/",tls/,"$_arch/",}"libnss_dns.so.*" \
|
||||
- {"tls/$_arch/",tls/,"$_arch/",}"libnss_mdns4_minimal.so.*"
|
||||
|
||||
dracut_need_initqueue
|
||||
}
|
||||
-
|
||||
|
133
0097.patch
133
0097.patch
@ -1,133 +0,0 @@
|
||||
From 08bdadbf315cced437385228b2434a02a19090e4 Mon Sep 17 00:00:00 2001
|
||||
From: Lubomir Rintel <lkundrak@v3.sk>
|
||||
Date: Thu, 30 Aug 2018 16:44:22 +0200
|
||||
Subject: [PATCH] network-manager: add module
|
||||
|
||||
---
|
||||
dracut.spec | 1 +
|
||||
modules.d/35network-manager/module-setup.sh | 52 +++++++++++++++++++++++++++++
|
||||
modules.d/35network-manager/nm-config.sh | 3 ++
|
||||
modules.d/35network-manager/nm-run.sh | 16 +++++++++
|
||||
modules.d/40network/module-setup.sh | 7 +++-
|
||||
5 files changed, 78 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/dracut.spec b/dracut.spec
|
||||
index f6486d50..b6099824 100644
|
||||
--- a/dracut.spec
|
||||
+++ b/dracut.spec
|
||||
@@ -419,6 +419,7 @@ install -m 0755 51-dracut-rescue-postinst.sh $RPM_BUILD_ROOT%{_sysconfdir}/kerne
|
||||
|
||||
%files network
|
||||
%{dracutlibdir}/modules.d/02systemd-networkd
|
||||
+%{dracutlibdir}/modules.d/35network-manager
|
||||
%{dracutlibdir}/modules.d/35network-legacy
|
||||
%{dracutlibdir}/modules.d/40network
|
||||
%{dracutlibdir}/modules.d/45ifcfg
|
||||
diff --git a/modules.d/35network-manager/module-setup.sh b/modules.d/35network-manager/module-setup.sh
|
||||
new file mode 100755
|
||||
index 00000000..62aba3c6
|
||||
--- /dev/null
|
||||
+++ b/modules.d/35network-manager/module-setup.sh
|
||||
@@ -0,0 +1,52 @@
|
||||
+#!/bin/bash
|
||||
+
|
||||
+# called by dracut
|
||||
+check() {
|
||||
+ local _program
|
||||
+
|
||||
+ require_binaries sed grep || return 1
|
||||
+
|
||||
+ # do not add this module by default
|
||||
+ return 255
|
||||
+}
|
||||
+
|
||||
+# called by dracut
|
||||
+depends() {
|
||||
+ return 0
|
||||
+}
|
||||
+
|
||||
+# called by dracut
|
||||
+installkernel() {
|
||||
+ return 0
|
||||
+}
|
||||
+
|
||||
+# called by dracut
|
||||
+install() {
|
||||
+ local _nm_version
|
||||
+
|
||||
+ _nm_version=$(NetworkManager --version)
|
||||
+
|
||||
+ inst_multiple sed grep
|
||||
+
|
||||
+ inst NetworkManager
|
||||
+ inst /usr/libexec/nm-initrd-generator
|
||||
+ inst_multiple -o teamd dhclient
|
||||
+ inst_hook cmdline 99 "$moddir/nm-config.sh"
|
||||
+ inst_hook initqueue/settled 99 "$moddir/nm-run.sh"
|
||||
+ inst_rules 85-nm-unmanaged.rules
|
||||
+ inst_libdir_file "NetworkManager/$_nm_version/libnm-device-plugin-team.so"
|
||||
+
|
||||
+ if [[ -x "$initdir/usr/sbin/dhclient" ]]; then
|
||||
+ inst /usr/libexec/nm-dhcp-helper
|
||||
+ elif ! [[ -e "$initdir/etc/machine-id" ]]; then
|
||||
+ # The internal DHCP client silently fails if we
|
||||
+ # have no machine-id
|
||||
+ systemd-machine-id-setup --root="$initdir"
|
||||
+ fi
|
||||
+
|
||||
+ # We don't install the ifcfg files from the host automatically.
|
||||
+ # But if the user chooses to include them, we pull in the machinery to read them.
|
||||
+ if ! [[ -d "$initdir/etc/sysconfig/network-scripts" ]]; then
|
||||
+ inst_libdir_file "NetworkManager/$_nm_version/libnm-settings-plugin-ifcfg-rh.so"
|
||||
+ fi
|
||||
+}
|
||||
diff --git a/modules.d/35network-manager/nm-config.sh b/modules.d/35network-manager/nm-config.sh
|
||||
new file mode 100755
|
||||
index 00000000..1339ebe7
|
||||
--- /dev/null
|
||||
+++ b/modules.d/35network-manager/nm-config.sh
|
||||
@@ -0,0 +1,3 @@
|
||||
+#!/bin/sh
|
||||
+
|
||||
+/usr/libexec/nm-initrd-generator -- $(getcmdline)
|
||||
diff --git a/modules.d/35network-manager/nm-run.sh b/modules.d/35network-manager/nm-run.sh
|
||||
new file mode 100755
|
||||
index 00000000..f6defa99
|
||||
--- /dev/null
|
||||
+++ b/modules.d/35network-manager/nm-run.sh
|
||||
@@ -0,0 +1,16 @@
|
||||
+#!/bin/sh
|
||||
+
|
||||
+if getargbool 0 rd.debug -d -y rdinitdebug -d -y rdnetdebug; then
|
||||
+ /usr/sbin/NetworkManager --configure-and-quit=initrd --debug --log-level=trace
|
||||
+else
|
||||
+ /usr/sbin/NetworkManager --configure-and-quit=initrd --no-daemon
|
||||
+fi
|
||||
+
|
||||
+for _i in /sys/class/net/*/
|
||||
+do
|
||||
+ state=/run/NetworkManager/devices/$(cat $_i/ifindex)
|
||||
+ grep -q managed=true $state 2>/dev/null || continue
|
||||
+ ifname=$(basename $_i)
|
||||
+ sed -n 's/root-path/new_root_path/p' <$state >/tmp/dhclient.$ifname.dhcpopts
|
||||
+ /sbin/netroot $ifname
|
||||
+done
|
||||
diff --git a/modules.d/40network/module-setup.sh b/modules.d/40network/module-setup.sh
|
||||
index fbd43925..57c0a45e 100755
|
||||
--- a/modules.d/40network/module-setup.sh
|
||||
+++ b/modules.d/40network/module-setup.sh
|
||||
@@ -2,7 +2,12 @@
|
||||
|
||||
# called by dracut
|
||||
depends() {
|
||||
- echo "network-legacy"
|
||||
+ echo -n "kernel-network-modules "
|
||||
+ if ! dracut_module_included "network-legacy" && [ -x "/usr/libexec/nm-initrd-generator" ] ; then
|
||||
+ echo "network-manager"
|
||||
+ else
|
||||
+ echo "network-legacy"
|
||||
+ fi
|
||||
return 0
|
||||
}
|
||||
|
||||
|
22
0098.patch
22
0098.patch
@ -1,22 +0,0 @@
|
||||
From 4be697e5c19f18a17ec18368ded0787d6f32baf5 Mon Sep 17 00:00:00 2001
|
||||
From: Harald Hoyer <harald@redhat.com>
|
||||
Date: Fri, 21 Sep 2018 12:41:00 +0200
|
||||
Subject: [PATCH] dracut.spec: fixed invalid spec line
|
||||
|
||||
---
|
||||
dracut.spec | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/dracut.spec b/dracut.spec
|
||||
index b6099824..c6fbdc77 100644
|
||||
--- a/dracut.spec
|
||||
+++ b/dracut.spec
|
||||
@@ -49,7 +49,7 @@ BuildRequires: docbook-style-xsl docbook-dtds libxslt
|
||||
%endif
|
||||
|
||||
%if 0%{?suse_version}
|
||||
--BuildRequires: docbook-xsl-stylesheets libxslt
|
||||
+BuildRequires: docbook-xsl-stylesheets libxslt
|
||||
%endif
|
||||
|
||||
BuildRequires: asciidoc
|
106
dracut.spec
106
dracut.spec
@ -5,10 +5,10 @@
|
||||
# strip the automatically generated dep here and instead co-own the
|
||||
# directory.
|
||||
%global __requires_exclude pkg-config
|
||||
%define dist_free_release 99.git20180921
|
||||
%define dist_free_release 1
|
||||
|
||||
Name: dracut
|
||||
Version: 048
|
||||
Version: 049
|
||||
Release: %{dist_free_release}%{?dist}
|
||||
|
||||
Summary: Initramfs generator using udev
|
||||
@ -28,104 +28,6 @@ URL: https://dracut.wiki.kernel.org/
|
||||
# Source can be generated by
|
||||
# http://git.kernel.org/?p=boot/dracut/dracut.git;a=snapshot;h=%%{version};sf=tgz
|
||||
Source0: http://www.kernel.org/pub/linux/utils/boot/dracut/dracut-%{version}.tar.xz
|
||||
Patch1: 0001.patch
|
||||
Patch2: 0002.patch
|
||||
Patch3: 0003.patch
|
||||
Patch4: 0004.patch
|
||||
Patch5: 0005.patch
|
||||
Patch6: 0006.patch
|
||||
Patch7: 0007.patch
|
||||
Patch8: 0008.patch
|
||||
Patch9: 0009.patch
|
||||
Patch10: 0010.patch
|
||||
Patch11: 0011.patch
|
||||
Patch12: 0012.patch
|
||||
Patch13: 0013.patch
|
||||
Patch14: 0014.patch
|
||||
Patch15: 0015.patch
|
||||
Patch16: 0016.patch
|
||||
Patch17: 0017.patch
|
||||
Patch18: 0018.patch
|
||||
Patch19: 0019.patch
|
||||
Patch20: 0020.patch
|
||||
Patch21: 0021.patch
|
||||
Patch22: 0022.patch
|
||||
Patch23: 0023.patch
|
||||
Patch24: 0024.patch
|
||||
Patch25: 0025.patch
|
||||
Patch26: 0026.patch
|
||||
Patch27: 0027.patch
|
||||
Patch28: 0028.patch
|
||||
Patch29: 0029.patch
|
||||
Patch30: 0030.patch
|
||||
Patch31: 0031.patch
|
||||
Patch32: 0032.patch
|
||||
Patch33: 0033.patch
|
||||
Patch34: 0034.patch
|
||||
Patch35: 0035.patch
|
||||
Patch36: 0036.patch
|
||||
Patch37: 0037.patch
|
||||
Patch38: 0038.patch
|
||||
Patch39: 0039.patch
|
||||
Patch40: 0040.patch
|
||||
Patch41: 0041.patch
|
||||
Patch42: 0042.patch
|
||||
Patch43: 0043.patch
|
||||
Patch44: 0044.patch
|
||||
Patch45: 0045.patch
|
||||
Patch46: 0046.patch
|
||||
Patch47: 0047.patch
|
||||
Patch48: 0048.patch
|
||||
Patch49: 0049.patch
|
||||
Patch50: 0050.patch
|
||||
Patch51: 0051.patch
|
||||
Patch52: 0052.patch
|
||||
Patch53: 0053.patch
|
||||
Patch54: 0054.patch
|
||||
Patch55: 0055.patch
|
||||
Patch56: 0056.patch
|
||||
Patch57: 0057.patch
|
||||
Patch58: 0058.patch
|
||||
Patch59: 0059.patch
|
||||
Patch60: 0060.patch
|
||||
Patch61: 0061.patch
|
||||
Patch62: 0062.patch
|
||||
Patch63: 0063.patch
|
||||
Patch64: 0064.patch
|
||||
Patch65: 0065.patch
|
||||
Patch66: 0066.patch
|
||||
Patch67: 0067.patch
|
||||
Patch68: 0068.patch
|
||||
Patch69: 0069.patch
|
||||
Patch70: 0070.patch
|
||||
Patch71: 0071.patch
|
||||
Patch72: 0072.patch
|
||||
Patch73: 0073.patch
|
||||
Patch74: 0074.patch
|
||||
Patch75: 0075.patch
|
||||
Patch76: 0076.patch
|
||||
Patch77: 0077.patch
|
||||
Patch78: 0078.patch
|
||||
Patch79: 0079.patch
|
||||
Patch80: 0080.patch
|
||||
Patch81: 0081.patch
|
||||
Patch82: 0082.patch
|
||||
Patch83: 0083.patch
|
||||
Patch84: 0084.patch
|
||||
Patch85: 0085.patch
|
||||
Patch86: 0086.patch
|
||||
Patch87: 0087.patch
|
||||
Patch88: 0088.patch
|
||||
Patch89: 0089.patch
|
||||
Patch90: 0090.patch
|
||||
Patch91: 0091.patch
|
||||
Patch92: 0092.patch
|
||||
Patch93: 0093.patch
|
||||
Patch94: 0094.patch
|
||||
Patch95: 0095.patch
|
||||
Patch96: 0096.patch
|
||||
Patch97: 0097.patch
|
||||
Patch98: 0098.patch
|
||||
|
||||
Source1: https://www.gnu.org/licenses/lgpl-2.1.txt
|
||||
|
||||
@ -449,6 +351,7 @@ install -m 0755 51-dracut-rescue-postinst.sh $RPM_BUILD_ROOT%{_sysconfdir}/kerne
|
||||
%{dracutlibdir}/modules.d/90dm
|
||||
%{dracutlibdir}/modules.d/90dmraid
|
||||
%{dracutlibdir}/modules.d/90kernel-modules
|
||||
%{dracutlibdir}/modules.d/90kernel-modules-extra
|
||||
%{dracutlibdir}/modules.d/90lvm
|
||||
%{dracutlibdir}/modules.d/90mdraid
|
||||
%{dracutlibdir}/modules.d/90multipath
|
||||
@ -570,6 +473,9 @@ install -m 0755 51-dracut-rescue-postinst.sh $RPM_BUILD_ROOT%{_sysconfdir}/kerne
|
||||
%endif
|
||||
|
||||
%changelog
|
||||
* Mon Oct 08 2018 Harald Hoyer <harald@redhat.com> - 049-1
|
||||
- version 049
|
||||
|
||||
* Fri Sep 21 2018 Harald Hoyer <harald@redhat.com> - 048-99.git20180921
|
||||
- git snapshot
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user