dracut - 048-99.git20180921
- git snapshot
This commit is contained in:
parent
f97365c3db
commit
9d5d7534b9
@ -58,3 +58,4 @@ index 754ed3c9..9b9d497a 100644
|
|||||||
%{dracutlibdir}/dracut.conf.d/02-rescue.conf
|
%{dracutlibdir}/dracut.conf.d/02-rescue.conf
|
||||||
%if 0%{?fedora} || 0%{?rhel}
|
%if 0%{?fedora} || 0%{?rhel}
|
||||||
%{_prefix}/lib/kernel/install.d/51-dracut-rescue.install
|
%{_prefix}/lib/kernel/install.d/51-dracut-rescue.install
|
||||||
|
|
||||||
|
32
0014.patch
Normal file
32
0014.patch
Normal file
@ -0,0 +1,32 @@
|
|||||||
|
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
Normal file
45
0015.patch
Normal file
@ -0,0 +1,45 @@
|
|||||||
|
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
Normal file
34
0016.patch
Normal file
@ -0,0 +1,34 @@
|
|||||||
|
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
Normal file
43
0017.patch
Normal file
@ -0,0 +1,43 @@
|
|||||||
|
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
Normal file
23
0018.patch
Normal file
@ -0,0 +1,23 @@
|
|||||||
|
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
Normal file
79
0019.patch
Normal file
@ -0,0 +1,79 @@
|
|||||||
|
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
Normal file
70
0020.patch
Normal file
@ -0,0 +1,70 @@
|
|||||||
|
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
Normal file
32
0021.patch
Normal file
@ -0,0 +1,32 @@
|
|||||||
|
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
Normal file
24
0022.patch
Normal file
@ -0,0 +1,24 @@
|
|||||||
|
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
Normal file
150
0023.patch
Normal file
@ -0,0 +1,150 @@
|
|||||||
|
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
Normal file
48
0024.patch
Normal file
@ -0,0 +1,48 @@
|
|||||||
|
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
Normal file
32
0025.patch
Normal file
@ -0,0 +1,32 @@
|
|||||||
|
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
Normal file
231
0026.patch
Normal file
@ -0,0 +1,231 @@
|
|||||||
|
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
Normal file
23
0027.patch
Normal file
@ -0,0 +1,23 @@
|
|||||||
|
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
Normal file
34
0028.patch
Normal file
@ -0,0 +1,34 @@
|
|||||||
|
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
Normal file
23
0029.patch
Normal file
@ -0,0 +1,23 @@
|
|||||||
|
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
Normal file
338
0030.patch
Normal file
@ -0,0 +1,338 @@
|
|||||||
|
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
Normal file
23
0031.patch
Normal file
@ -0,0 +1,23 @@
|
|||||||
|
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
Normal file
37
0032.patch
Normal file
@ -0,0 +1,37 @@
|
|||||||
|
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
Normal file
21
0033.patch
Normal file
@ -0,0 +1,21 @@
|
|||||||
|
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
Normal file
86
0034.patch
Normal file
@ -0,0 +1,86 @@
|
|||||||
|
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
Normal file
26
0035.patch
Normal file
@ -0,0 +1,26 @@
|
|||||||
|
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
Normal file
93
0036.patch
Normal file
@ -0,0 +1,93 @@
|
|||||||
|
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
Normal file
44
0037.patch
Normal file
@ -0,0 +1,44 @@
|
|||||||
|
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
Normal file
23
0038.patch
Normal file
@ -0,0 +1,23 @@
|
|||||||
|
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
Normal file
51
0039.patch
Normal file
@ -0,0 +1,51 @@
|
|||||||
|
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
Normal file
67
0040.patch
Normal file
@ -0,0 +1,67 @@
|
|||||||
|
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
Normal file
23
0041.patch
Normal file
@ -0,0 +1,23 @@
|
|||||||
|
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
Normal file
25
0042.patch
Normal file
@ -0,0 +1,25 @@
|
|||||||
|
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
Normal file
23
0043.patch
Normal file
@ -0,0 +1,23 @@
|
|||||||
|
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
Normal file
26
0044.patch
Normal file
@ -0,0 +1,26 @@
|
|||||||
|
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
Normal file
94
0045.patch
Normal file
@ -0,0 +1,94 @@
|
|||||||
|
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
Normal file
94
0046.patch
Normal file
@ -0,0 +1,94 @@
|
|||||||
|
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
Normal file
24
0047.patch
Normal file
@ -0,0 +1,24 @@
|
|||||||
|
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
Normal file
49
0048.patch
Normal file
@ -0,0 +1,49 @@
|
|||||||
|
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
Normal file
52
0049.patch
Normal file
@ -0,0 +1,52 @@
|
|||||||
|
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
Normal file
32
0050.patch
Normal file
@ -0,0 +1,32 @@
|
|||||||
|
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
Normal file
46
0051.patch
Normal file
@ -0,0 +1,46 @@
|
|||||||
|
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
Normal file
149
0052.patch
Normal file
@ -0,0 +1,149 @@
|
|||||||
|
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
Normal file
24
0053.patch
Normal file
@ -0,0 +1,24 @@
|
|||||||
|
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
Normal file
39
0054.patch
Normal file
@ -0,0 +1,39 @@
|
|||||||
|
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
Normal file
26
0055.patch
Normal file
@ -0,0 +1,26 @@
|
|||||||
|
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
Normal file
22
0056.patch
Normal file
@ -0,0 +1,22 @@
|
|||||||
|
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
Normal file
38
0057.patch
Normal file
@ -0,0 +1,38 @@
|
|||||||
|
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
Normal file
66
0058.patch
Normal file
@ -0,0 +1,66 @@
|
|||||||
|
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
Normal file
55
0059.patch
Normal file
@ -0,0 +1,55 @@
|
|||||||
|
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
Normal file
30
0060.patch
Normal file
@ -0,0 +1,30 @@
|
|||||||
|
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
Normal file
23
0061.patch
Normal file
@ -0,0 +1,23 @@
|
|||||||
|
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
Normal file
65
0062.patch
Normal file
@ -0,0 +1,65 @@
|
|||||||
|
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
Normal file
45
0063.patch
Normal file
@ -0,0 +1,45 @@
|
|||||||
|
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
Normal file
23
0064.patch
Normal file
@ -0,0 +1,23 @@
|
|||||||
|
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
Normal file
50
0065.patch
Normal file
@ -0,0 +1,50 @@
|
|||||||
|
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
Normal file
29
0066.patch
Normal file
@ -0,0 +1,29 @@
|
|||||||
|
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
Normal file
31
0067.patch
Normal file
@ -0,0 +1,31 @@
|
|||||||
|
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
Normal file
34
0068.patch
Normal file
@ -0,0 +1,34 @@
|
|||||||
|
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
Normal file
30
0069.patch
Normal file
@ -0,0 +1,30 @@
|
|||||||
|
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
Normal file
44
0070.patch
Normal file
@ -0,0 +1,44 @@
|
|||||||
|
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
Normal file
41
0071.patch
Normal file
@ -0,0 +1,41 @@
|
|||||||
|
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
Normal file
142
0072.patch
Normal file
@ -0,0 +1,142 @@
|
|||||||
|
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
Normal file
44
0073.patch
Normal file
@ -0,0 +1,44 @@
|
|||||||
|
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
Normal file
42
0074.patch
Normal file
@ -0,0 +1,42 @@
|
|||||||
|
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
Normal file
129
0075.patch
Normal file
@ -0,0 +1,129 @@
|
|||||||
|
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
Normal file
361
0076.patch
Normal file
@ -0,0 +1,361 @@
|
|||||||
|
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
Normal file
193
0077.patch
Normal file
@ -0,0 +1,193 @@
|
|||||||
|
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
Normal file
29
0078.patch
Normal file
@ -0,0 +1,29 @@
|
|||||||
|
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
Normal file
24
0079.patch
Normal file
@ -0,0 +1,24 @@
|
|||||||
|
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
Normal file
35
0080.patch
Normal file
@ -0,0 +1,35 @@
|
|||||||
|
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
Normal file
106
0081.patch
Normal file
@ -0,0 +1,106 @@
|
|||||||
|
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
Normal file
46
0082.patch
Normal file
@ -0,0 +1,46 @@
|
|||||||
|
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
Normal file
88
0083.patch
Normal file
@ -0,0 +1,88 @@
|
|||||||
|
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
Normal file
72
0084.patch
Normal file
@ -0,0 +1,72 @@
|
|||||||
|
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
Normal file
24
0085.patch
Normal file
@ -0,0 +1,24 @@
|
|||||||
|
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
Normal file
67
0086.patch
Normal file
@ -0,0 +1,67 @@
|
|||||||
|
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
Normal file
32
0087.patch
Normal file
@ -0,0 +1,32 @@
|
|||||||
|
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
Normal file
24
0088.patch
Normal file
@ -0,0 +1,24 @@
|
|||||||
|
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
Normal file
349
0089.patch
Normal file
@ -0,0 +1,349 @@
|
|||||||
|
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
Normal file
43
0090.patch
Normal file
@ -0,0 +1,43 @@
|
|||||||
|
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
Normal file
30
0091.patch
Normal file
@ -0,0 +1,30 @@
|
|||||||
|
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
Normal file
37
0092.patch
Normal file
@ -0,0 +1,37 @@
|
|||||||
|
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
Normal file
29
0093.patch
Normal file
@ -0,0 +1,29 @@
|
|||||||
|
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
Normal file
27
0094.patch
Normal file
@ -0,0 +1,27 @@
|
|||||||
|
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
Normal file
23
0095.patch
Normal file
@ -0,0 +1,23 @@
|
|||||||
|
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
Normal file
287
0096.patch
Normal file
@ -0,0 +1,287 @@
|
|||||||
|
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
Normal file
133
0097.patch
Normal file
@ -0,0 +1,133 @@
|
|||||||
|
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
Normal file
22
0098.patch
Normal file
@ -0,0 +1,22 @@
|
|||||||
|
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
|
120
dracut.spec
120
dracut.spec
@ -5,7 +5,7 @@
|
|||||||
# strip the automatically generated dep here and instead co-own the
|
# strip the automatically generated dep here and instead co-own the
|
||||||
# directory.
|
# directory.
|
||||||
%global __requires_exclude pkg-config
|
%global __requires_exclude pkg-config
|
||||||
%define dist_free_release 14.git20180726
|
%define dist_free_release 99.git20180921
|
||||||
|
|
||||||
Name: dracut
|
Name: dracut
|
||||||
Version: 048
|
Version: 048
|
||||||
@ -41,6 +41,91 @@ Patch10: 0010.patch
|
|||||||
Patch11: 0011.patch
|
Patch11: 0011.patch
|
||||||
Patch12: 0012.patch
|
Patch12: 0012.patch
|
||||||
Patch13: 0013.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
|
Source1: https://www.gnu.org/licenses/lgpl-2.1.txt
|
||||||
|
|
||||||
@ -63,7 +148,7 @@ BuildRequires: docbook-style-xsl docbook-dtds libxslt
|
|||||||
%endif
|
%endif
|
||||||
|
|
||||||
%if 0%{?suse_version}
|
%if 0%{?suse_version}
|
||||||
-BuildRequires: docbook-xsl-stylesheets libxslt
|
BuildRequires: docbook-xsl-stylesheets libxslt
|
||||||
%endif
|
%endif
|
||||||
|
|
||||||
BuildRequires: asciidoc
|
BuildRequires: asciidoc
|
||||||
@ -192,6 +277,16 @@ Requires: %{name} = %{version}-%{release}
|
|||||||
%description tools
|
%description tools
|
||||||
This package contains tools to assemble the local initrd and host configuration.
|
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
|
%prep
|
||||||
%autosetup -n %{name}-%{version} -S git_am
|
%autosetup -n %{name}-%{version} -S git_am
|
||||||
cp %{SOURCE1} .
|
cp %{SOURCE1} .
|
||||||
@ -249,6 +344,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
|
||||||
rm -fr -- $RPM_BUILD_ROOT/%{dracutlibdir}/modules.d/95zfcp_rules
|
rm -fr -- $RPM_BUILD_ROOT/%{dracutlibdir}/modules.d/95zfcp_rules
|
||||||
rm -fr -- $RPM_BUILD_ROOT/%{dracutlibdir}/modules.d/95znet
|
rm -fr -- $RPM_BUILD_ROOT/%{dracutlibdir}/modules.d/95znet
|
||||||
|
%else
|
||||||
|
rm -fr -- $RPM_BUILD_ROOT/%{dracutlibdir}/modules.d/00warpclock
|
||||||
%endif
|
%endif
|
||||||
|
|
||||||
mkdir -p $RPM_BUILD_ROOT/boot/dracut
|
mkdir -p $RPM_BUILD_ROOT/boot/dracut
|
||||||
@ -330,7 +427,12 @@ install -m 0755 51-dracut-rescue-postinst.sh $RPM_BUILD_ROOT%{_sysconfdir}/kerne
|
|||||||
%endif
|
%endif
|
||||||
%{dracutlibdir}/modules.d/00bash
|
%{dracutlibdir}/modules.d/00bash
|
||||||
%{dracutlibdir}/modules.d/00systemd
|
%{dracutlibdir}/modules.d/00systemd
|
||||||
|
%ifnarch s390 s390x
|
||||||
%{dracutlibdir}/modules.d/00warpclock
|
%{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/01systemd-initrd
|
||||||
%{dracutlibdir}/modules.d/03modsign
|
%{dracutlibdir}/modules.d/03modsign
|
||||||
%{dracutlibdir}/modules.d/03rescue
|
%{dracutlibdir}/modules.d/03rescue
|
||||||
@ -414,13 +516,10 @@ install -m 0755 51-dracut-rescue-postinst.sh $RPM_BUILD_ROOT%{_sysconfdir}/kerne
|
|||||||
%{_prefix}/lib/kernel/install.d/50-dracut.install
|
%{_prefix}/lib/kernel/install.d/50-dracut.install
|
||||||
%endif
|
%endif
|
||||||
|
|
||||||
%if 0%{?fedora} || 0%{?rhel} || 0%{?suse_version}
|
|
||||||
%defattr(-,root,root,0755)
|
|
||||||
%{dracutlibdir}/modules.d/01fips
|
|
||||||
%endif
|
|
||||||
|
|
||||||
%files network
|
%files network
|
||||||
%{dracutlibdir}/modules.d/02systemd-networkd
|
%{dracutlibdir}/modules.d/02systemd-networkd
|
||||||
|
%{dracutlibdir}/modules.d/35network-manager
|
||||||
|
%{dracutlibdir}/modules.d/35network-legacy
|
||||||
%{dracutlibdir}/modules.d/40network
|
%{dracutlibdir}/modules.d/40network
|
||||||
%{dracutlibdir}/modules.d/45ifcfg
|
%{dracutlibdir}/modules.d/45ifcfg
|
||||||
%{dracutlibdir}/modules.d/90kernel-network-modules
|
%{dracutlibdir}/modules.d/90kernel-network-modules
|
||||||
@ -447,11 +546,13 @@ install -m 0755 51-dracut-rescue-postinst.sh $RPM_BUILD_ROOT%{_sysconfdir}/kerne
|
|||||||
%{dracutlibdir}/modules.d/90livenet
|
%{dracutlibdir}/modules.d/90livenet
|
||||||
|
|
||||||
%files tools
|
%files tools
|
||||||
|
|
||||||
%if %{with doc}
|
%if %{with doc}
|
||||||
%doc %{_mandir}/man8/dracut-catimages.8*
|
%doc %{_mandir}/man8/dracut-catimages.8*
|
||||||
%endif
|
%endif
|
||||||
|
|
||||||
|
%files squash
|
||||||
|
%{dracutlibdir}/modules.d/99squash
|
||||||
|
|
||||||
%{_bindir}/dracut-catimages
|
%{_bindir}/dracut-catimages
|
||||||
%dir /boot/dracut
|
%dir /boot/dracut
|
||||||
%dir /var/lib/dracut
|
%dir /var/lib/dracut
|
||||||
@ -469,6 +570,9 @@ install -m 0755 51-dracut-rescue-postinst.sh $RPM_BUILD_ROOT%{_sysconfdir}/kerne
|
|||||||
%endif
|
%endif
|
||||||
|
|
||||||
%changelog
|
%changelog
|
||||||
|
* Fri Sep 21 2018 Harald Hoyer <harald@redhat.com> - 048-99.git20180921
|
||||||
|
- git snapshot
|
||||||
|
|
||||||
* Thu Jul 26 2018 Harald Hoyer <harald@redhat.com> - 048-14.git20180726
|
* Thu Jul 26 2018 Harald Hoyer <harald@redhat.com> - 048-14.git20180726
|
||||||
- bring back 51-dracut-rescue-postinst.sh
|
- bring back 51-dracut-rescue-postinst.sh
|
||||||
|
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
|
|
||||||
if [[ -e "$HOME/git/dracut/$1" ]]; then
|
if [[ -f "$HOME/git/dracut/$1" ]]; then
|
||||||
srcrpm="$HOME/git/dracut/$1"
|
srcrpm="$HOME/git/dracut/$1"
|
||||||
else
|
else
|
||||||
srcrpm="$1"
|
srcrpm="$1"
|
||||||
|
Loading…
Reference in New Issue
Block a user