Browse Source

fix: shellcheck 0.7.2

github action `luizm/action-sh-checker@v0.2.2` uses `shellcheck-0.7.2`,
which detects more non-posix shell code and complains accordingly.
master
Harald Hoyer 3 years ago committed by Harald Hoyer
parent
commit
909961d048
  1. 4
      .github/workflows/lint.yml
  2. 15
      .shellcheckrc
  3. 3
      dracut.sh
  4. 2
      modules.d/01systemd-ask-password/module-setup.sh
  5. 2
      modules.d/01systemd-coredump/module-setup.sh
  6. 2
      modules.d/01systemd-repart/module-setup.sh
  7. 2
      modules.d/01systemd-sysctl/module-setup.sh
  8. 2
      modules.d/06dbus-broker/module-setup.sh
  9. 2
      modules.d/06dbus-daemon/module-setup.sh
  10. 2
      modules.d/09dbus/module-setup.sh
  11. 2
      modules.d/35network-legacy/dhcp-multi.sh
  12. 4
      modules.d/35network-legacy/ifup.sh
  13. 4
      modules.d/35network-legacy/module-setup.sh
  14. 14
      modules.d/35network-legacy/parse-ip-opts.sh
  15. 3
      modules.d/40network/module-setup.sh
  16. 4
      modules.d/40network/net-lib.sh
  17. 2
      modules.d/62bluetooth/module-setup.sh
  18. 2
      modules.d/81cio_ignore/parse-cio_accept.sh
  19. 2
      modules.d/90crypt/module-setup.sh
  20. 2
      modules.d/90dmsquash-live/dmsquash-generator.sh
  21. 2
      modules.d/90dmsquash-live/dmsquash-live-root.sh
  22. 2
      modules.d/90dmsquash-live/module-setup.sh
  23. 2
      modules.d/90livenet/livenet-generator.sh
  24. 2
      modules.d/90livenet/module-setup.sh
  25. 2
      modules.d/90lvm/parse-lvm.sh
  26. 2
      modules.d/90mdraid/parse-md.sh
  27. 4
      modules.d/95nbd/nbdroot.sh
  28. 1
      modules.d/95znet/module-setup.sh
  29. 2
      modules.d/95znet/parse-ccw.sh
  30. 2
      modules.d/98dracut-systemd/dracut-cmdline-ask.sh
  31. 2
      modules.d/99base/init.sh
  32. 3
      modules.d/99img-lib/img-lib.sh
  33. 3
      modules.d/99memstrack/memstrack-start.sh
  34. 2
      modules.d/99memstrack/module-setup.sh
  35. 2
      modules.d/99shutdown/shutdown.sh
  36. 2
      test/TEST-01-BASIC/test.sh
  37. 2
      test/TEST-02-SYSTEMD/test.sh
  38. 2
      test/TEST-03-USR-MOUNT/test.sh
  39. 2
      test/TEST-04-FULL-SYSTEMD/test.sh
  40. 2
      test/TEST-10-RAID/test.sh
  41. 2
      test/TEST-11-LVM/test.sh
  42. 2
      test/TEST-12-RAID-DEG/test.sh
  43. 6
      test/TEST-13-ENC-RAID-LVM/test.sh
  44. 2
      test/TEST-14-IMSM/test.sh
  45. 2
      test/TEST-15-BTRFSRAID/test.sh
  46. 2
      test/TEST-16-DMSQUASH/test.sh
  47. 2
      test/TEST-17-LVM-THIN/test.sh
  48. 7
      test/TEST-20-NFS/server-init.sh
  49. 4
      test/TEST-20-NFS/test.sh
  50. 5
      test/TEST-30-ISCSI/test.sh
  51. 2
      test/TEST-35-ISCSI-MULTI/server-init.sh
  52. 5
      test/TEST-35-ISCSI-MULTI/test.sh
  53. 5
      test/TEST-40-NBD/test.sh
  54. 4
      test/TEST-50-MULTINIC/client-init.sh
  55. 4
      test/TEST-50-MULTINIC/test.sh
  56. 2
      test/TEST-60-BONDBRIDGEVLANIFCFG/99-default.link
  57. 63
      test/TEST-60-BONDBRIDGEVLANIFCFG/server-init.sh
  58. 108
      test/TEST-60-BONDBRIDGEVLANIFCFG/test.sh
  59. 6
      test/TEST-60-BONDBRIDGEVLANIFCFG/wait-if-server.sh

4
.github/workflows/lint.yml

@ -29,10 +29,10 @@ jobs: @@ -29,10 +29,10 @@ jobs:
- uses: actions/checkout@v2

- name: shfmt
uses: luizm/action-sh-checker@v0.2.0
uses: luizm/action-sh-checker@v0.2.2
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
SHFMT_OPTS: -d -s # arguments to shfmt.
SHFMT_OPTS: -s # arguments to shfmt.
with:
sh_checker_shellcheck_disable: false
sh_checker_comment: true

15
.shellcheckrc

@ -17,3 +17,18 @@ disable=SC1091 @@ -17,3 +17,18 @@ disable=SC1091
# SC2174: When used with -p, -m only applies to the deepest directory.
# https://github.com/koalaman/shellcheck/wiki/SC2174
disable=SC2174

# SC3043: In POSIX sh, 'local' is undefined.
# https://github.com/koalaman/shellcheck/wiki/SC3043
# ... but dash supports it
disable=SC3043

# SC3013: In POSIX sh, -ef is undefined.
# https://github.com/koalaman/shellcheck/wiki/SC3013
# ... but dash supports it
disable=SC3013

# SC3045: In POSIX sh, read -p is undefined.
# https://github.com/koalaman/shellcheck/wiki/SC3045
# ... but dash supports it
disable=SC3045

3
dracut.sh

@ -30,6 +30,7 @@ if ((BASH_VERSINFO[0] < 4)); then @@ -30,6 +30,7 @@ if ((BASH_VERSINFO[0] < 4)); then
fi

dracut_args=("$@")
# shellcheck disable=SC2155
readonly dracut_cmd=$(readlink -f "$0")

set -o pipefail
@ -1111,6 +1112,7 @@ case "${drivers_dir}" in @@ -1111,6 +1112,7 @@ case "${drivers_dir}" in
;;
esac

# shellcheck disable=SC2155
readonly TMPDIR="$(realpath -e "$tmpdir")"
[ -d "$TMPDIR" ] || {
printf "%s\n" "dracut: Invalid tmpdir '$tmpdir'." >&2
@ -1122,6 +1124,7 @@ if findmnt --raw -n --target "$tmpdir" --output=options | grep -q noexec; then @@ -1122,6 +1124,7 @@ if findmnt --raw -n --target "$tmpdir" --output=options | grep -q noexec; then
noexec=1
fi

# shellcheck disable=SC2155
readonly DRACUT_TMPDIR="$(mktemp -p "$TMPDIR/" -d -t dracut.XXXXXX)"
[ -d "$DRACUT_TMPDIR" ] || {
printf "%s\n" "dracut: mktemp -p '$TMPDIR/' -d -t dracut.XXXXXX failed." >&2

2
modules.d/01systemd-ask-password/module-setup.sh

@ -1,4 +1,4 @@ @@ -1,4 +1,4 @@
#!/bin/sh
#!/bin/bash
# This file is part of dracut.
# SPDX-License-Identifier: GPL-2.0-or-later


2
modules.d/01systemd-coredump/module-setup.sh

@ -1,4 +1,4 @@ @@ -1,4 +1,4 @@
#!/bin/sh
#!/bin/bash
# This file is part of dracut.
# SPDX-License-Identifier: GPL-2.0-or-later


2
modules.d/01systemd-repart/module-setup.sh

@ -1,4 +1,4 @@ @@ -1,4 +1,4 @@
#!/bin/sh
#!/bin/bash
# This file is part of dracut.
# SPDX-License-Identifier: GPL-2.0-or-later


2
modules.d/01systemd-sysctl/module-setup.sh

@ -1,4 +1,4 @@ @@ -1,4 +1,4 @@
#!/bin/sh
#!/bin/bash
# This file is part of dracut.
# SPDX-License-Identifier: GPL-2.0-or-later


2
modules.d/06dbus-broker/module-setup.sh

@ -1,4 +1,4 @@ @@ -1,4 +1,4 @@
#!/bin/sh
#!/bin/bash
# This file is part of dracut.
# SPDX-License-Identifier: GPL-2.0-or-later


2
modules.d/06dbus-daemon/module-setup.sh

@ -1,4 +1,4 @@ @@ -1,4 +1,4 @@
#!/bin/sh
#!/bin/bash
# This file is part of dracut.
# SPDX-License-Identifier: GPL-2.0-or-later


2
modules.d/09dbus/module-setup.sh

@ -1,4 +1,4 @@ @@ -1,4 +1,4 @@
#!/bin/sh
#!/bin/bash
# This file is part of dracut.
# SPDX-License-Identifier: GPL-2.0-or-later


2
modules.d/35network-legacy/dhcp-multi.sh

@ -65,7 +65,7 @@ do_dhclient() { @@ -65,7 +65,7 @@ do_dhclient() {
warn "dhcp for interface $netif failed"
# nuke those files since we failed; we might retry dhcp again if it's e.g.
# `ip=dhcp,dhcp6` and we check for the PID file earlier
rm -f /tmp/dhclient."$netif".{pid,lease}
rm -f /tmp/dhclient."$netif".pid /tmp/dhclient."$netif".lease
return 1
}


4
modules.d/35network-legacy/ifup.sh

@ -96,7 +96,7 @@ do_dhcp() { @@ -96,7 +96,7 @@ do_dhcp() {
warn "dhcp for interface $netif failed"
# nuke those files since we failed; we might retry dhcp again if it's e.g.
# `ip=dhcp,dhcp6` and we check for the PID file at the top
rm -f "/tmp/dhclient.${netif}".{pid,lease}
rm -f /tmp/dhclient."$netif".pid /tmp/dhclient."$netif".lease
return 1
}

@ -268,7 +268,7 @@ if [ -z "$NO_BOND_MASTER" ]; then @@ -268,7 +268,7 @@ if [ -z "$NO_BOND_MASTER" ]; then
# shellcheck disable=SC1090
. "$i"
for testslave in $bondslaves; do
[ "$netif" != "testslave" ] && continue
[ "$netif" != "$testslave" ] && continue

# already setup
[ -e "/tmp/bond.$bondname.up" ] && exit 0

4
modules.d/35network-legacy/module-setup.sh

@ -2,7 +2,7 @@ @@ -2,7 +2,7 @@

# called by dracut
check() {
require_binaries ip dhclient sed awk grep pgrep tr || return 1
require_binaries ip dhclient sed awk grep pgrep tr expr || return 1
require_any_binary arping arping2 || return 1

return 255
@ -28,7 +28,7 @@ install() { @@ -28,7 +28,7 @@ install() {
[[ $hostonly ]] && inst_multiple -H -o "${systemdsystemconfdir}/network/*.link"
fi

inst_multiple ip dhclient sed awk grep pgrep tr
inst_multiple ip dhclient sed awk grep pgrep tr expr

inst_multiple -o arping arping2
strstr "$(arping 2>&1)" "ARPing 2" && mv "$initdir/bin/arping" "$initdir/bin/arping2"

14
modules.d/35network-legacy/parse-ip-opts.sh

@ -113,14 +113,16 @@ for p in $(getargs ip=); do @@ -113,14 +113,16 @@ for p in $(getargs ip=); do
fi

if str_starts "$dev" "enx" && [ ${#dev} -eq 15 ]; then
# shellcheck disable=SC2003
printf -- "ifname=%s:%s:%s:%s:%s:%s:%s\n" \
"$dev" \
"${dev:3:2}" \
"${dev:5:2}" \
"${dev:7:2}" \
"${dev:9:2}" \
"${dev:11:2}" \
"${dev:13:2}" >> /etc/cmdline.d/80-enx.conf
"$(expr substr "$dev" 3 2)" \
"$(expr substr "$dev" 5 2)" \
"$(expr substr "$dev" 7 2)" \
"$(expr substr "$dev" 9 2)" \
"$(expr substr "$dev" 11 2)" \
"$(expr substr "$dev" 13 2)" \
>> /etc/cmdline.d/80-enx.conf
fi
done


3
modules.d/40network/module-setup.sh

@ -42,6 +42,7 @@ install() { @@ -42,6 +42,7 @@ install() {
inst_simple "$moddir/net-lib.sh" "/lib/net-lib.sh"
inst_hook pre-udev 50 "$moddir/ifname-genrules.sh"
inst_hook cmdline 91 "$moddir/dhcp-root.sh"

inst_multiple ip sed awk grep pgrep tr
inst_multiple -o arping arping2
dracut_need_initqueue
}

4
modules.d/40network/net-lib.sh

@ -266,10 +266,10 @@ ibft_to_cmdline() { @@ -266,10 +266,10 @@ ibft_to_cmdline() {

[ -e "${iface}"/flags ] && read -r flags < "${iface}"/flags
# Skip invalid interfaces
((flags & 1)) || continue
awk -- 'BEGIN { exit (!and('"$flags"',1)) }' || continue
# Skip interfaces not used for booting unless using multipath
if ! getargbool 0 rd.iscsi.mp; then
((flags & 2)) || continue
awk -- 'BEGIN { exit (!and('"$flags"',2)) }' || continue
fi
[ -e "${iface}"/dhcp ] && read -r dhcp < "${iface}"/dhcp
[ -e "${iface}"/origin ] && read -r origin < "${iface}"/origin

2
modules.d/62bluetooth/module-setup.sh

@ -1,4 +1,4 @@ @@ -1,4 +1,4 @@
#!/bin/sh
#!/bin/bash
# This file is part of dracut.
# SPDX-License-Identifier: GPL-2.0-or-later


2
modules.d/81cio_ignore/parse-cio_accept.sh

@ -14,7 +14,7 @@ if [ -n "$CIO_ACCEPT" ]; then @@ -14,7 +14,7 @@ if [ -n "$CIO_ACCEPT" ]; then
IFS=,
# shellcheck disable=SC2086
set -- $CIO_ACCEPT
while (($# > 0)); do
while [ "$#" -gt 0 ]; do
info "Enabling device $1"
cio_ignore --remove "$1"
shift

2
modules.d/90crypt/module-setup.sh

@ -56,6 +56,7 @@ installkernel() { @@ -56,6 +56,7 @@ installkernel() {
# called by dracut
cmdline() {
local dev UUID
# shellcheck disable=SC2031
for dev in "${!host_fs_types[@]}"; do
[[ ${host_fs_types[$dev]} != "crypto_LUKS" ]] && continue

@ -130,6 +131,7 @@ install() { @@ -130,6 +131,7 @@ install() {
if [ "${forceentry}" = "yes" ]; then
echo "$_mapper $_dev $_luksfile $_luksoptions"
else
# shellcheck disable=SC2031
for _hdev in "${!host_fs_types[@]}"; do
[[ ${host_fs_types[$_hdev]} == "crypto_LUKS" ]] || continue
if [[ $_hdev -ef $_dev ]] || [[ /dev/block/$_hdev -ef $_dev ]]; then

2
modules.d/90dmsquash-live/dmsquash-generator.sh

@ -1,4 +1,4 @@ @@ -1,4 +1,4 @@
#!/bin/sh
#!/bin/bash

type getarg > /dev/null 2>&1 || . /lib/dracut-lib.sh


2
modules.d/90dmsquash-live/dmsquash-live-root.sh

@ -1,4 +1,4 @@ @@ -1,4 +1,4 @@
#!/bin/sh
#!/bin/bash

type getarg > /dev/null 2>&1 || . /lib/dracut-lib.sh


2
modules.d/90dmsquash-live/module-setup.sh

@ -11,7 +11,7 @@ check() { @@ -11,7 +11,7 @@ check() {
depends() {
# if dmsetup is not installed, then we cannot support fedora/red hat
# style live images
echo dm rootfs-block img-lib
echo dm rootfs-block img-lib bash
return 0
}


2
modules.d/90livenet/livenet-generator.sh

@ -1,4 +1,4 @@ @@ -1,4 +1,4 @@
#!/bin/sh
#!/bin/bash

type getarg > /dev/null 2>&1 || . /lib/dracut-lib.sh


2
modules.d/90livenet/module-setup.sh

@ -8,7 +8,7 @@ check() { @@ -8,7 +8,7 @@ check() {

# called by dracut
depends() {
echo network url-lib dmsquash-live img-lib
echo network url-lib dmsquash-live img-lib bash
return 0
}


2
modules.d/90lvm/parse-lvm.sh

@ -7,7 +7,7 @@ fi @@ -7,7 +7,7 @@ fi
LV_DEVS="$(getargs rd.lvm.vg -d rd_LVM_VG=) $(getargs rd.lvm.lv -d rd_LVM_LV=)"

if ! getargbool 1 rd.lvm -d -n rd_NO_LVM \
|| ([ -z "$LV_DEVS" ] && ! getargbool 0 rd.auto); then
|| { [ -z "$LV_DEVS" ] && ! getargbool 0 rd.auto; }; then
info "rd.lvm=0: removing LVM activation"
rm -f -- /etc/udev/rules.d/64-lvm*.rules
else

2
modules.d/90mdraid/parse-md.sh

@ -7,7 +7,7 @@ MD_UUID=$(getargs rd.md.uuid -d rd_MD_UUID=) @@ -7,7 +7,7 @@ MD_UUID=$(getargs rd.md.uuid -d rd_MD_UUID=)
MD_UUID=$(str_replace "$MD_UUID" "-" "")
MD_UUID=$(str_replace "$MD_UUID" ":" "")

if ([ -z "$MD_UUID" ] && ! getargbool 0 rd.auto) || ! getargbool 1 rd.md -d -n rd_NO_MD; then
if { [ -z "$MD_UUID" ] && ! getargbool 0 rd.auto; } || ! getargbool 1 rd.md -d -n rd_NO_MD; then
info "rd.md=0: removing MD RAID activation"
udevproperty rd_NO_MD=1
else

4
modules.d/95nbd/nbdroot.sh

@ -129,9 +129,7 @@ if strstr "$(nbd-client --help 2>&1)" "systemd-mark"; then @@ -129,9 +129,7 @@ if strstr "$(nbd-client --help 2>&1)" "systemd-mark"; then
preopts="-systemd-mark $preopts"
fi

if [ "$nbdport" -gt 0 ] 2> /dev/null; then
nbdport="$nbdport"
else
if ! [ "$nbdport" -gt 0 ] 2> /dev/null; then
nbdport="-name $nbdport"
fi


1
modules.d/95znet/module-setup.sh

@ -12,6 +12,7 @@ check() { @@ -12,6 +12,7 @@ check() {

# called by dracut
depends() {
echo bash
return 0
}


2
modules.d/95znet/parse-ccw.sh

@ -1,4 +1,4 @@ @@ -1,4 +1,4 @@
#!/bin/sh
#!/bin/bash

for ccw_arg in $(getargs rd.ccw -d 'rd_CCW=') $(getargs rd.znet -d 'rd_ZNET='); do
echo "$ccw_arg" >> /etc/ccw.conf

2
modules.d/98dracut-systemd/dracut-cmdline-ask.sh

@ -14,7 +14,7 @@ echo @@ -14,7 +14,7 @@ echo
echo
echo
echo "Enter additional kernel command line parameter (end with ctrl-d or .)"
while read -r -e -p "> " line || [ -n "$line" ]; do
while read -r -p "> " ${BASH:+-e} line || [ -n "$line" ]; do
[ "$line" = "." ] && break
[ -n "$line" ] && printf -- "%s\n" "$line" >> /etc/cmdline.d/99-cmdline-ask.conf
done

2
modules.d/99base/init.sh

@ -109,7 +109,7 @@ source_conf /etc/conf.d @@ -109,7 +109,7 @@ source_conf /etc/conf.d

if getarg "rd.cmdline=ask"; then
echo "Enter additional kernel command line parameter (end with ctrl-d or .)"
while read -r -p "> " line || [ -n "$line" ]; do
while read -r -p "> " ${BASH:+-e} line || [ -n "$line" ]; do
[ "$line" = "." ] && break
echo "$line" >> /etc/cmdline.d/99-cmdline-ask.conf
done

3
modules.d/99img-lib/img-lib.sh

@ -10,8 +10,11 @@ det_archive() { @@ -10,8 +10,11 @@ det_archive() {
local bz xz gz zs
local headerblock
bz="BZh"
# shellcheck disable=SC3037
xz="$(/bin/echo -e '\xfd7zXZ')"
# shellcheck disable=SC3037
gz="$(/bin/echo -e '\x1f\x8b')"
# shellcheck disable=SC3037
zs="$(/bin/echo -e '\x28\xB5\x2F\xFD')"
headerblock="$(dd ${1:+if=$1} bs=262 count=1 2> /dev/null | tr -d '\0')"
case "$headerblock" in

3
modules.d/99memstrack/memstrack-start.sh

@ -1,4 +1,4 @@ @@ -1,4 +1,4 @@
#!/bin/sh
#!/bin/bash
# Mount kernel debug fs so debug tools can work.
# memdebug=4 and memdebug=5 requires debug fs to be mounted.
# And there is no need to umount it.
@ -65,4 +65,5 @@ fi @@ -65,4 +65,5 @@ fi
sleep 1

echo $PID > /run/memstrack.pid
# bash specific - non posix
disown

2
modules.d/99memstrack/module-setup.sh

@ -11,7 +11,7 @@ check() { @@ -11,7 +11,7 @@ check() {
}

depends() {
echo systemd
echo systemd bash
return 0
}


2
modules.d/99shutdown/shutdown.sh

@ -12,7 +12,7 @@ ACTION="$1" @@ -12,7 +12,7 @@ ACTION="$1"
# the process will be killed when when running as PID 1.
# shellcheck disable=SC2217
[ -w /dev/console ] \
&& (echo < /dev/console &> /dev/null) \
&& (echo < /dev/console > /dev/null 2> /dev/null) \
&& exec < /dev/console >> /dev/console 2>> /dev/console

export TERM=linux

2
test/TEST-01-BASIC/test.sh

@ -18,7 +18,7 @@ test_run() { @@ -18,7 +18,7 @@ test_run() {
"$testdir"/run-qemu \
"${disk_args[@]}" \
-watchdog i6300esb -watchdog-action poweroff \
-append "panic=1 systemd.crash_reboot \"root=LABEL= rdinit=/bin/sh\" rw systemd.log_level=debug systemd.log_target=console rd.retry=3 rd.debug console=ttyS0,115200n81 rd.shell=0 $DEBUGFAIL" \
-append "panic=1 hung_task_panic=1 oops=panic softlockup_panic=1 systemd.crash_reboot \"root=LABEL= rdinit=/bin/sh\" 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 -U --binary-files=binary -F -m 1 -q dracut-root-block-success "$TESTDIR"/marker.img

2
test/TEST-02-SYSTEMD/test.sh

@ -16,7 +16,7 @@ test_run() { @@ -16,7 +16,7 @@ test_run() {

"$testdir"/run-qemu \
"${disk_args[@]}" \
-append "panic=1 systemd.crash_reboot root=LABEL=dracut rw loglevel=77 systemd.log_level=debug systemd.log_target=console rd.retry=3 rd.info console=ttyS0,115200n81 selinux=0 init=/sbin/init rd.shell=0 $DEBUGFAIL" \
-append "panic=1 hung_task_panic=1 oops=panic softlockup_panic=1 systemd.crash_reboot root=LABEL=dracut rw loglevel=77 systemd.log_level=debug systemd.log_target=console rd.retry=3 rd.info console=ttyS0,115200n81 selinux=0 init=/sbin/init rd.shell=0 $DEBUGFAIL" \
-initrd "$TESTDIR"/initramfs.testing || return 1

grep -U --binary-files=binary -F -m 1 -q dracut-root-block-success "$TESTDIR"/marker.img

2
test/TEST-03-USR-MOUNT/test.sh

@ -26,7 +26,7 @@ client_run() { @@ -26,7 +26,7 @@ client_run() {
"$testdir"/run-qemu \
"${disk_args[@]}" \
-watchdog i6300esb -watchdog-action poweroff \
-append "panic=1 systemd.crash_reboot root=LABEL=dracut $client_opts loglevel=7 rd.retry=3 rd.info console=ttyS0,115200n81 selinux=0 rd.debug rd.shell=0 $DEBUGFAIL" \
-append "panic=1 hung_task_panic=1 oops=panic softlockup_panic=1 systemd.crash_reboot root=LABEL=dracut $client_opts loglevel=7 rd.retry=3 rd.info console=ttyS0,115200n81 selinux=0 rd.debug rd.shell=0 $DEBUGFAIL" \
-initrd "$TESTDIR"/initramfs.testing || return 1

if ! grep -U --binary-files=binary -F -m 1 -q dracut-root-block-success "$TESTDIR"/marker.img; then

2
test/TEST-04-FULL-SYSTEMD/test.sh

@ -27,7 +27,7 @@ client_run() { @@ -27,7 +27,7 @@ client_run() {

"$testdir"/run-qemu \
"${disk_args[@]}" \
-append "panic=1 systemd.crash_reboot root=LABEL=dracut $client_opts rd.retry=3 console=ttyS0,115200n81 selinux=0 $DEBUGOUT rd.shell=0 $DEBUGFAIL" \
-append "panic=1 hung_task_panic=1 oops=panic softlockup_panic=1 systemd.crash_reboot root=LABEL=dracut $client_opts rd.retry=3 console=ttyS0,115200n81 selinux=0 $DEBUGOUT rd.shell=0 $DEBUGFAIL" \
-initrd "$TESTDIR"/initramfs.testing || return 1

if ! grep -U --binary-files=binary -F -m 1 -q dracut-root-block-success "$TESTDIR"/marker.img; then

2
test/TEST-10-RAID/test.sh

@ -19,7 +19,7 @@ test_run() { @@ -19,7 +19,7 @@ test_run() {

"$testdir"/run-qemu \
"${disk_args[@]}" \
-append "panic=1 systemd.crash_reboot root=/dev/dracut/root rd.auto rw rd.retry=10 console=ttyS0,115200n81 selinux=0 rd.shell=0 $DEBUGFAIL" \
-append "panic=1 hung_task_panic=1 oops=panic softlockup_panic=1 systemd.crash_reboot root=/dev/dracut/root rd.auto rw rd.retry=10 console=ttyS0,115200n81 selinux=0 rd.shell=0 $DEBUGFAIL" \
-initrd "$TESTDIR"/initramfs.testing || return 1

grep -U --binary-files=binary -F -m 1 -q dracut-root-block-success "$TESTDIR"/marker.img

2
test/TEST-11-LVM/test.sh

@ -20,7 +20,7 @@ test_run() { @@ -20,7 +20,7 @@ test_run() {

"$testdir"/run-qemu \
"${disk_args[@]}" \
-append "panic=1 systemd.crash_reboot root=/dev/dracut/root rw rd.auto=1 quiet rd.retry=3 rd.info console=ttyS0,115200n81 selinux=0 rd.debug rd.shell=0 $DEBUGFAIL" \
-append "panic=1 hung_task_panic=1 oops=panic softlockup_panic=1 systemd.crash_reboot root=/dev/dracut/root rw rd.auto=1 quiet rd.retry=3 rd.info console=ttyS0,115200n81 selinux=0 rd.debug rd.shell=0 $DEBUGFAIL" \
-initrd "$TESTDIR"/initramfs.testing || return 1

grep -U --binary-files=binary -F -m 1 -q dracut-root-block-success "$TESTDIR"/marker.img

2
test/TEST-12-RAID-DEG/test.sh

@ -24,7 +24,7 @@ client_run() { @@ -24,7 +24,7 @@ client_run() {

"$testdir"/run-qemu \
"${disk_args[@]}" \
-append "panic=1 systemd.crash_reboot $* systemd.log_target=kmsg root=LABEL=root rw rd.retry=10 rd.info console=ttyS0,115200n81 log_buf_len=2M selinux=0 rd.shell=0 $DEBUGFAIL " \
-append "panic=1 hung_task_panic=1 oops=panic softlockup_panic=1 systemd.crash_reboot $* systemd.log_target=kmsg root=LABEL=root rw rd.retry=10 rd.info console=ttyS0,115200n81 log_buf_len=2M selinux=0 rd.shell=0 $DEBUGFAIL " \
-initrd "$TESTDIR"/initramfs.testing

if ! grep -U --binary-files=binary -F -m 1 -q dracut-root-block-success "$TESTDIR"/marker.img; then

6
test/TEST-13-ENC-RAID-LVM/test.sh

@ -26,7 +26,7 @@ test_run() { @@ -26,7 +26,7 @@ test_run() {

"$testdir"/run-qemu \
"${disk_args[@]}" \
-append "panic=1 systemd.crash_reboot root=/dev/dracut/root rw rd.auto rd.retry=20 console=ttyS0,115200n81 selinux=0 rd.debug rootwait $LUKSARGS rd.shell=0 $DEBUGFAIL" \
-append "panic=1 hung_task_panic=1 oops=panic softlockup_panic=1 systemd.crash_reboot root=/dev/dracut/root rw rd.auto rd.retry=20 console=ttyS0,115200n81 selinux=0 rd.debug rootwait $LUKSARGS rd.shell=0 $DEBUGFAIL" \
-initrd "$TESTDIR"/initramfs.testing
grep -U --binary-files=binary -F -m 1 -q dracut-root-block-success "$TESTDIR"/marker.img || return 1
echo "CLIENT TEST END: [OK]"
@ -36,7 +36,7 @@ test_run() { @@ -36,7 +36,7 @@ test_run() {
echo "CLIENT TEST START: Any LUKS"
"$testdir"/run-qemu \
"${disk_args[@]}" \
-append "panic=1 systemd.crash_reboot root=/dev/dracut/root rw quiet rd.auto rd.retry=20 rd.info console=ttyS0,115200n81 selinux=0 rd.debug $DEBUGFAIL" \
-append "panic=1 hung_task_panic=1 oops=panic softlockup_panic=1 systemd.crash_reboot root=/dev/dracut/root rw quiet rd.auto rd.retry=20 rd.info console=ttyS0,115200n81 selinux=0 rd.debug $DEBUGFAIL" \
-initrd "$TESTDIR"/initramfs.testing
grep -U --binary-files=binary -F -m 1 -q dracut-root-block-success "$TESTDIR"/marker.img || return 1
echo "CLIENT TEST END: [OK]"
@ -46,7 +46,7 @@ test_run() { @@ -46,7 +46,7 @@ test_run() {
echo "CLIENT TEST START: Wrong LUKS UUID"
"$testdir"/run-qemu \
"${disk_args[@]}" \
-append "panic=1 systemd.crash_reboot root=/dev/dracut/root rw quiet rd.auto rd.retry=10 rd.info console=ttyS0,115200n81 selinux=0 rd.debug $DEBUGFAIL rd.luks.uuid=failme" \
-append "panic=1 hung_task_panic=1 oops=panic softlockup_panic=1 systemd.crash_reboot root=/dev/dracut/root rw quiet rd.auto rd.retry=10 rd.info console=ttyS0,115200n81 selinux=0 rd.debug $DEBUGFAIL rd.luks.uuid=failme" \
-initrd "$TESTDIR"/initramfs.testing
grep -U --binary-files=binary -F -m 1 -q dracut-root-block-success "$TESTDIR"/marker.img && return 1
echo "CLIENT TEST END: [OK]"

2
test/TEST-14-IMSM/test.sh

@ -21,7 +21,7 @@ client_run() { @@ -21,7 +21,7 @@ client_run() {

"$testdir"/run-qemu \
"${disk_args[@]}" \
-append "panic=1 systemd.crash_reboot $* root=LABEL=root rw debug rd.retry=5 rd.debug console=ttyS0,115200n81 selinux=0 rd.info rd.shell=0 $DEBUGFAIL" \
-append "panic=1 hung_task_panic=1 oops=panic softlockup_panic=1 systemd.crash_reboot $* root=LABEL=root rw debug rd.retry=5 rd.debug console=ttyS0,115200n81 selinux=0 rd.info rd.shell=0 $DEBUGFAIL" \
-initrd "$TESTDIR"/initramfs.testing || return 1

if ! grep -U --binary-files=binary -F -m 1 -q dracut-root-block-success "$TESTDIR"/marker.img; then

2
test/TEST-15-BTRFSRAID/test.sh

@ -19,7 +19,7 @@ test_run() { @@ -19,7 +19,7 @@ test_run() {

"$testdir"/run-qemu \
"${disk_args[@]}" \
-append "panic=1 systemd.crash_reboot root=LABEL=root rw rd.retry=3 rd.info console=ttyS0,115200n81 selinux=0 rd.shell=0 $DEBUGFAIL" \
-append "panic=1 hung_task_panic=1 oops=panic softlockup_panic=1 systemd.crash_reboot root=LABEL=root rw rd.retry=3 rd.info console=ttyS0,115200n81 selinux=0 rd.shell=0 $DEBUGFAIL" \
-initrd "$TESTDIR"/initramfs.testing
grep -U --binary-files=binary -F -m 1 -q dracut-root-block-success "$TESTDIR"/marker.img || return 1
}

2
test/TEST-16-DMSQUASH/test.sh

@ -30,7 +30,7 @@ test_run() { @@ -30,7 +30,7 @@ test_run() {
"$testdir"/run-qemu \
"${disk_args[@]}" \
-boot order=d \
-append "panic=1 systemd.crash_reboot root=live:CDLABEL=LiveCD live rw quiet rd.retry=3 rd.info console=ttyS0,115200n81 selinux=0 rd.shell=0 $DEBUGFAIL" \
-append "panic=1 hung_task_panic=1 oops=panic softlockup_panic=1 systemd.crash_reboot root=live:CDLABEL=LiveCD live rw quiet rd.retry=3 rd.info console=ttyS0,115200n81 selinux=0 rd.shell=0 $DEBUGFAIL" \
-initrd "$TESTDIR"/initramfs.testing

# mediacheck test with qemu GUI

2
test/TEST-17-LVM-THIN/test.sh

@ -19,7 +19,7 @@ test_run() { @@ -19,7 +19,7 @@ test_run() {

"$testdir"/run-qemu \
"${disk_args[@]}" \
-append "panic=1 systemd.crash_reboot root=/dev/dracut/root rw rd.auto=1 quiet rd.retry=3 rd.info console=ttyS0,115200n81 selinux=0 rd.debug rd.shell=0 $DEBUGFAIL" \
-append "panic=1 hung_task_panic=1 oops=panic softlockup_panic=1 systemd.crash_reboot root=/dev/dracut/root rw rd.auto=1 quiet rd.retry=3 rd.info console=ttyS0,115200n81 selinux=0 rd.debug rd.shell=0 $DEBUGFAIL" \
-initrd "$TESTDIR"/initramfs.testing || return 1
grep -U --binary-files=binary -F -m 1 -q dracut-root-block-success "$TESTDIR"/marker.img || return 1
}

7
test/TEST-20-NFS/server-init.sh

@ -15,10 +15,6 @@ wait_for_if_link() { @@ -15,10 +15,6 @@ wait_for_if_link() {
while [ $cnt -lt 600 ]; do
li=$(ip -o link show dev "$1" 2> /dev/null)
[ -n "$li" ] && return 0
if [[ $2 ]]; then
li=$(ip -o link show dev "$2" 2> /dev/null)
[ -n "$li" ] && return 0
fi
sleep 0.1
cnt=$((cnt + 1))
done
@ -52,11 +48,10 @@ linkup() { @@ -52,11 +48,10 @@ linkup() {
wait_for_if_link "$1" 2> /dev/null && ip link set "$1" up 2> /dev/null && wait_for_if_up "$1" 2> /dev/null
}

wait_for_if_link eth0 enp0s1
wait_for_if_link enp0s1

ip addr add 127.0.0.1/8 dev lo
ip link set lo up
ip link set dev eth0 name enp0s1
ip addr add 192.168.50.1/24 dev enp0s1
ip addr add 192.168.50.2/24 dev enp0s1
ip addr add 192.168.50.3/24 dev enp0s1

4
test/TEST-20-NFS/test.sh

@ -34,7 +34,7 @@ run_server() { @@ -34,7 +34,7 @@ run_server() {
-net nic,macaddr=52:54:00:12:34:56,model=e1000 \
-serial "${SERIAL:-"file:$TESTDIR/server.log"}" \
-watchdog i6300esb -watchdog-action poweroff \
-append "panic=1 quiet root=LABEL=dracut rootfstype=ext3 rw console=ttyS0,115200n81 selinux=0 $SERVER_DEBUG" \
-append "panic=1 hung_task_panic=1 oops=panic softlockup_panic=1 quiet root=LABEL=dracut rootfstype=ext3 rw console=ttyS0,115200n81 selinux=0 $SERVER_DEBUG" \
-initrd "$TESTDIR"/initramfs.server \
-pidfile "$TESTDIR"/server.pid -daemonize || return 1
chmod 644 "$TESTDIR"/server.pid || return 1
@ -79,7 +79,7 @@ client_test() { @@ -79,7 +79,7 @@ client_test() {
-net nic,macaddr="$mac",model=e1000 \
-net socket,connect=127.0.0.1:12320 \
-watchdog i6300esb -watchdog-action poweroff \
-append "panic=1 systemd.crash_reboot rd.shell=0 $cmdline $DEBUGFAIL rd.retry=10 quiet ro console=ttyS0,115200n81 selinux=0" \
-append "panic=1 hung_task_panic=1 oops=panic softlockup_panic=1 systemd.crash_reboot rd.shell=0 $cmdline $DEBUGFAIL rd.retry=10 quiet ro console=ttyS0,115200n81 selinux=0" \
-initrd "$TESTDIR"/initramfs.testing

# shellcheck disable=SC2181

5
test/TEST-30-ISCSI/test.sh

@ -36,7 +36,7 @@ run_server() { @@ -36,7 +36,7 @@ run_server() {
-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 \
-append "panic=1 quiet root=/dev/disk/by-id/ata-disk_serverroot rootfstype=ext3 rw console=ttyS0,115200n81 selinux=0 $SERVER_DEBUG" \
-append "panic=1 hung_task_panic=1 oops=panic softlockup_panic=1 quiet root=/dev/disk/by-id/ata-disk_serverroot rootfstype=ext3 rw console=ttyS0,115200n81 selinux=0 $SERVER_DEBUG" \
-initrd "$TESTDIR"/initramfs.server \
-pidfile "$TESTDIR"/server.pid -daemonize || return 1
chmod 644 "$TESTDIR"/server.pid || return 1
@ -74,7 +74,7 @@ run_client() { @@ -74,7 +74,7 @@ run_client() {
-net nic,macaddr=52:54:00:12:34:01,model=e1000 \
-net socket,connect=127.0.0.1:12330 \
-acpitable file=ibft.table \
-append "panic=1 systemd.crash_reboot rw rd.auto rd.retry=50 console=ttyS0,115200n81 selinux=0 rd.debug=0 rd.shell=0 $DEBUGFAIL $*" \
-append "panic=1 hung_task_panic=1 oops=panic softlockup_panic=1 systemd.crash_reboot rw rd.auto rd.retry=50 console=ttyS0,115200n81 selinux=0 rd.debug=0 rd.shell=0 $DEBUGFAIL $*" \
-initrd "$TESTDIR"/initramfs.testing

# shellcheck disable=SC2181
@ -227,6 +227,7 @@ test_setup() { @@ -227,6 +227,7 @@ test_setup() {
# Make server root
dd if=/dev/zero of="$TESTDIR"/server.ext3 bs=1M count=120

# shellcheck disable=SC2031
export kernel=$KVERSION
rm -rf -- "$TESTDIR"/overlay
(

2
test/TEST-35-ISCSI-MULTI/server-init.sh

@ -53,11 +53,9 @@ wait_for_if_link enp0s2 @@ -53,11 +53,9 @@ wait_for_if_link enp0s2
ip addr add 127.0.0.1/8 dev lo
ip link set lo up

ip link set dev eth0 name enp0s1
ip addr add 192.168.50.1/24 dev enp0s1
linkup enp0s1

ip link set dev eth1 name enp0s2
ip addr add 192.168.51.1/24 dev enp0s2
linkup enp0s2


5
test/TEST-35-ISCSI-MULTI/test.sh

@ -36,7 +36,7 @@ run_server() { @@ -36,7 +36,7 @@ run_server() {
-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:12331 \
-append "panic=1 systemd.crash_reboot root=/dev/disk/by-id/ata-disk_serverroot rootfstype=ext3 rw console=ttyS0,115200n81 selinux=0 $SERVER_DEBUG" \
-append "panic=1 hung_task_panic=1 oops=panic softlockup_panic=1 systemd.crash_reboot root=/dev/disk/by-id/ata-disk_serverroot rootfstype=ext3 rw console=ttyS0,115200n81 selinux=0 $SERVER_DEBUG" \
-initrd "$TESTDIR"/initramfs.server \
-pidfile "$TESTDIR"/server.pid -daemonize || return 1
chmod 644 "$TESTDIR"/server.pid || return 1
@ -72,7 +72,7 @@ run_client() { @@ -72,7 +72,7 @@ run_client() {
-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:12331 \
-append "panic=1 systemd.crash_reboot rw rd.auto rd.retry=50 console=ttyS0,115200n81 selinux=0 rd.debug=0 rd.shell=0 $DEBUGFAIL $*" \
-append "panic=1 hung_task_panic=1 oops=panic softlockup_panic=1 systemd.crash_reboot rw rd.auto rd.retry=50 console=ttyS0,115200n81 selinux=0 rd.debug=0 rd.shell=0 $DEBUGFAIL $*" \
-initrd "$TESTDIR"/initramfs.testing
if ! grep -U --binary-files=binary -F -m 1 -q iscsi-OK "$TESTDIR"/marker.img; then
echo "CLIENT TEST END: $test_name [FAILED - BAD EXIT]"
@ -231,6 +231,7 @@ test_setup() { @@ -231,6 +231,7 @@ test_setup() {
# Make server root
echo "MAKE SERVER ROOT"

# shellcheck disable=SC2031
export kernel=$KVERSION
rm -rf -- "$TESTDIR"/overlay
(

5
test/TEST-40-NBD/test.sh

@ -47,7 +47,7 @@ run_server() { @@ -47,7 +47,7 @@ run_server() {
-serial "${SERIAL:-"file:$TESTDIR/server.log"}" \
-net nic,macaddr=52:54:00:12:34:56,model=e1000 \
-net socket,listen=127.0.0.1:12340 \
-append "panic=1 rd.luks=0 systemd.crash_reboot quiet root=/dev/disk/by-id/ata-disk_serverroot rootfstype=ext3 rw console=ttyS0,115200n81 selinux=0 $SERVER_DEBUG" \
-append "panic=1 hung_task_panic=1 oops=panic softlockup_panic=1 rd.luks=0 systemd.crash_reboot quiet root=/dev/disk/by-id/ata-disk_serverroot rootfstype=ext3 rw console=ttyS0,115200n81 selinux=0 $SERVER_DEBUG" \
-initrd "$TESTDIR"/initramfs.server \
-pidfile "$TESTDIR"/server.pid -daemonize || return 1
chmod 644 "$TESTDIR"/server.pid || return 1
@ -90,7 +90,7 @@ client_test() { @@ -90,7 +90,7 @@ client_test() {
"${disk_args[@]}" \
-net nic,macaddr="$mac",model=e1000 \
-net socket,connect=127.0.0.1:12340 \
-append "panic=1 systemd.crash_reboot rd.shell=0 $cmdline $DEBUGFAIL rd.auto rd.info rd.retry=10 ro console=ttyS0,115200n81 selinux=0 " \
-append "panic=1 hung_task_panic=1 oops=panic softlockup_panic=1 systemd.crash_reboot rd.shell=0 $cmdline $DEBUGFAIL rd.auto rd.info rd.retry=10 ro console=ttyS0,115200n81 selinux=0 " \
-initrd "$TESTDIR"/initramfs.testing

# shellcheck disable=SC2181
@ -367,6 +367,7 @@ make_client_root() { @@ -367,6 +367,7 @@ make_client_root() {

make_server_root() {
rm -fr "$TESTDIR"/overlay
# shellcheck disable=SC2031
export kernel=$KVERSION
(
mkdir -p "$TESTDIR"/overlay/source

4
test/TEST-50-MULTINIC/client-init.sh

@ -15,14 +15,14 @@ for i in /sys/class/net/*; do @@ -15,14 +15,14 @@ for i in /sys/class/net/*; do
grep -q connection-uuid= "$state" 2> /dev/null || continue
i=${i##*/}
ip link show "$i" | grep -q master && continue
IFACES+="$i "
IFACES="${IFACES}${i} "
done
for i in /run/initramfs/net.*.did-setup; do
# booting with network-legacy module
[ -f "$i" ] || continue
strglobin "$i" ":*:*:*:*:" && continue
i=${i%.did-setup}
IFACES+="${i##*/net.} "
IFACES="${IFACES}${i##*/net.} "
done
{
echo "OK"

4
test/TEST-50-MULTINIC/test.sh

@ -32,7 +32,7 @@ run_server() { @@ -32,7 +32,7 @@ run_server() {
-net nic,macaddr=52:54:01:12:34:56,model=e1000 \
-serial "${SERIAL:-"file:$TESTDIR/server.log"}" \
-watchdog i6300esb -watchdog-action poweroff \
-append "panic=1 systemd.crash_reboot loglevel=7 root=LABEL=dracut rootfstype=ext3 rw console=ttyS0,115200n81 selinux=0" \
-append "panic=1 hung_task_panic=1 oops=panic softlockup_panic=1 systemd.crash_reboot loglevel=7 root=LABEL=dracut rootfstype=ext3 rw console=ttyS0,115200n81 selinux=0" \
-initrd "$TESTDIR"/initramfs.server \
-pidfile "$TESTDIR"/server.pid -daemonize || return 1

@ -82,7 +82,7 @@ client_test() { @@ -82,7 +82,7 @@ client_test() {
-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 \
-append "quiet rd.net.timeout.dhcp=3 panic=1 systemd.crash_reboot rd.shell=0 $cmdline $DEBUGFAIL rd.retry=5 ro console=ttyS0,115200n81 selinux=0 init=/sbin/init rd.debug systemd.log_target=console" \
-append "quiet rd.net.timeout.dhcp=3 panic=1 hung_task_panic=1 oops=panic softlockup_panic=1 systemd.crash_reboot rd.shell=0 $cmdline $DEBUGFAIL rd.retry=5 ro console=ttyS0,115200n81 selinux=0 init=/sbin/init rd.debug systemd.log_target=console" \
-initrd "$TESTDIR"/initramfs.testing || return 1

{

2
test/TEST-60-BONDBRIDGEVLANIFCFG/99-default.link

@ -2,5 +2,5 @@ @@ -2,5 +2,5 @@
OriginalName=*

[Link]
NamePolicy=keep kernel database onboard slot path
NamePolicy=mac
MACAddressPolicy=keep

63
test/TEST-60-BONDBRIDGEVLANIFCFG/server-init.sh

@ -17,10 +17,6 @@ wait_for_if_link() { @@ -17,10 +17,6 @@ wait_for_if_link() {

li=$(ip -o link show dev "$1" 2> /dev/null)
[ -n "$li" ] && return 0
if [[ $2 ]]; then
li=$(ip -o link show dev "$2" 2> /dev/null)
[ -n "$li" ] && return 0
fi
sleep 0.1
cnt=$((cnt + 1))
done
@ -58,38 +54,39 @@ udevadm settle @@ -58,38 +54,39 @@ udevadm settle

ip link show

wait_for_if_link eth0 ens3
wait_for_if_link eth1 ens4
wait_for_if_link eth2 ens5
wait_for_if_link eth3 ens6
wait_for_if_link enx525401123456
wait_for_if_link enx525401123457
wait_for_if_link enx525401123458
wait_for_if_link enx525401123459

ip link set dev enx525401123456 name net1
ip link set dev enx525401123457 name net2
ip link set dev enx525401123458 name net3
ip link set dev enx525401123459 name net4

modprobe --all -b -q 8021q ipvlan macvlan
: > /dev/watchdog
ip addr add 127.0.0.1/8 dev lo
linkup lo
ip link set dev eth0 name ens3
ip addr add 192.168.50.1/24 dev ens3
linkup ens3
: > /dev/watchdog
ip link set dev eth1 name ens4
ip link add dev ens4.1 link ens4 type vlan id 1
ip link add dev ens4.2 link ens4 type vlan id 2
ip link add dev ens4.3 link ens4 type vlan id 3
ip link add dev ens4.4 link ens4 type vlan id 4
ip addr add 192.168.54.1/24 dev ens4.1
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
ip link set dev eth3 name ens6
linkup ens6
ip addr add 192.168.50.1/24 dev net1
linkup net1
: > /dev/watchdog
ip link add dev net2.1 link net2 type vlan id 1
ip link add dev net2.2 link net2 type vlan id 2
ip link add dev net2.3 link net2 type vlan id 3
ip link add dev net2.4 link net2 type vlan id 4
ip addr add 192.168.54.1/24 dev net2.1
ip addr add 192.168.55.1/24 dev net2.2
ip addr add 192.168.56.1/24 dev net2.3
ip addr add 192.168.57.1/24 dev net2.4
linkup net2
ip link set dev net2.1 up
ip link set dev net2.2 up
ip link set dev net2.3 up
ip link set dev net2.4 up
ip addr add 192.168.51.1/24 dev net3
linkup net3
linkup net4
: > /dev/watchdog
modprobe af_packet
: > /dev/watchdog
@ -120,10 +117,10 @@ exportfs -r @@ -120,10 +117,10 @@ exportfs -r
: > /dev/watchdog
chmod 777 /var/lib/dhcpd/dhcpd.leases
: > /dev/watchdog
dhcpd -cf /etc/dhcpd.conf -lf /var/lib/dhcpd/dhcpd.leases ens3 ens5
dhcpd -cf /etc/dhcpd.conf -lf /var/lib/dhcpd/dhcpd.leases net1 net3
#echo -n 'V' : > /dev/watchdog
#sh -i
#tcpdump -i ens3
#tcpdump -i net1
# Wait forever for the VM to die
echo "Serving"
while :; do

108
test/TEST-60-BONDBRIDGEVLANIFCFG/test.sh

@ -25,18 +25,18 @@ run_server() { @@ -25,18 +25,18 @@ run_server() {
echo "MULTINIC TEST SETUP: Starting DHCP/NFS server"

"$testdir"/run-qemu \
-hda "$TESTDIR"/server.ext3 \
-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 \
-device virtio-net-pci,netdev=n0,mac=52:54:01:12:34:56 \
-device virtio-net-pci,netdev=n1,mac=52:54:01:12:34:57 \
-device virtio-net-pci,netdev=n2,mac=52:54:01:12:34:58 \
-device virtio-net-pci,netdev=n3,mac=52:54:01:12:34:59 \
-hda "$TESTDIR"/server.ext3 \
-serial "${SERIAL:-"file:$TESTDIR/server.log"}" \
-watchdog i6300esb -watchdog-action poweroff \
-append "panic=1 loglevel=7 root=LABEL=dracut rootfstype=ext3 rw console=ttyS0,115200n81 selinux=0 rd.debug" \
-append "panic=1 hung_task_panic=1 oops=panic softlockup_panic=1 loglevel=7 root=LABEL=dracut rootfstype=ext3 rw console=ttyS0,115200n81 selinux=0 rd.debug" \
-initrd "$TESTDIR"/initramfs.server \
-pidfile "$TESTDIR"/server.pid -daemonize || return 1
chmod 644 -- "$TESTDIR"/server.pid || return 1
@ -74,25 +74,33 @@ client_test() { @@ -74,25 +74,33 @@ client_test() {
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"
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"
nic1=("-netdev" "hubport,id=n1,hubid=2")
nic3=("-netdev" "hubport,id=n3,hubid=3")
fi

"$testdir"/run-qemu \
-hda "$TESTDIR"/client.img \
-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 \
-netdev hubport,hubid=1,id=h2 -device virtio-net-pci,mac=52:54:00:12:34:01,netdev=h2 \
-netdev hubport,hubid=1,id=h3 -device virtio-net-pci,mac=52:54:00:12:34:02,netdev=h3 \
"${nic1[@]}" -device virtio-net-pci,mac=52:54:00:12:34:03,netdev=n1 \
-netdev socket,connect=127.0.0.1:12372,id=n2 -device virtio-net-pci,mac=52:54:00:12:34:04,netdev=n2 \
"${nic3[@]}" -device virtio-net-pci,mac=52:54:00:12:34:05,netdev=n3 \
-hda "$TESTDIR"/client.img \
-watchdog i6300esb -watchdog-action poweroff \
-append "panic=1 $cmdline systemd.crash_reboot rd.debug $DEBUGFAIL rd.retry=5 rw console=ttyS0,115200n81 selinux=0 init=/sbin/init" \
-initrd "$TESTDIR"/initramfs.testing
-append "
panic=1 hung_task_panic=1 oops=panic softlockup_panic=1
ifname=net1:52:54:00:12:34:01
ifname=net2:52:54:00:12:34:02
ifname=net3:52:54:00:12:34:03
ifname=net4:52:54:00:12:34:04
ifname=net5:52:54:00:12:34:05
$cmdline rd.net.timeout.dhcp=3 systemd.crash_reboot rd.debug
$DEBUGFAIL rd.retry=5 rw console=ttyS0,115200n81 selinux=0 init=/sbin/init" \
-initrd "$TESTDIR"/initramfs.testing || return 1

{
read -r OK _
@ -133,40 +141,40 @@ test_run() { @@ -133,40 +141,40 @@ test_run() {

test_client() {
if [[ $NM ]]; then
EXPECT='ens3 ens5.0004 ens5.3 vlan0001 vlan2 /run/initramfs/state/etc/sysconfig/network-scripts/ifcfg-* EOF '
EXPECT='net1 net3.0004 net3.3 vlan0001 vlan2 /run/initramfs/state/etc/sysconfig/network-scripts/ifcfg-* EOF '
else
EXPECT='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 '
EXPECT='net1 net3.0004 net3.3 vlan0001 vlan2 /run/initramfs/state/etc/sysconfig/network-scripts/ifcfg-net1 # Generated by dracut initrd NAME="net1" HWADDR="52:54:00:12:34:01" DEVICE="net1" ONBOOT=yes NETBOOT=yes IPV6INIT=yes BOOTPROTO=dhcp TYPE=Ethernet /run/initramfs/state/etc/sysconfig/network-scripts/ifcfg-net3.0004 # Generated by dracut initrd NAME="net3.0004" ONBOOT=yes NETBOOT=yes BOOTPROTO=none IPADDR="192.168.57.104" PREFIX="24" GATEWAY="192.168.57.1" TYPE=Vlan DEVICE="net3.0004" VLAN=yes PHYSDEV="net3" /run/initramfs/state/etc/sysconfig/network-scripts/ifcfg-net3.3 # Generated by dracut initrd NAME="net3.3" ONBOOT=yes NETBOOT=yes BOOTPROTO=none IPADDR="192.168.56.103" PREFIX="24" GATEWAY="192.168.56.1" TYPE=Vlan DEVICE="net3.3" VLAN=yes PHYSDEV="net3" /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="net3" /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="net3" EOF '
fi

client_test "Multiple VLAN" \
"yes" \
"
vlan=vlan0001:ens5
vlan=vlan2:ens5
vlan=ens5.3:ens5
vlan=ens5.0004:ens5
ip=ens3:dhcp
vlan=vlan0001:net3
vlan=vlan2:net3
vlan=net3.3:net3
vlan=net3.0004:net3
ip=net1: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:ens5.3:none
ip=192.168.57.104::192.168.57.1:24:test:ens5.0004:none
ip=192.168.56.103::192.168.56.1:24:test:net3.3:none
ip=192.168.57.104::192.168.57.1:24:test:net3.0004:none
rd.neednet=1
root=nfs:192.168.50.1:/nfs/client bootdev=ens3
root=nfs:192.168.50.1:/nfs/client bootdev=net1
" \
"$EXPECT" \
|| return 1

if [[ $NM ]]; then
EXPECT='bond0 bond1 /run/initramfs/state/etc/sysconfig/network-scripts/ifcfg-* EOF '
EXPECT='bond0 /run/initramfs/state/etc/sysconfig/network-scripts/ifcfg-* EOF '
else
EXPECT='bond0 bond1 /run/initramfs/state/etc/sysconfig/network-scripts/ifcfg-bond0 # Generated by dracut initrd NAME="bond0" DEVICE="bond0" ONBOOT=yes NETBOOT=yes IPV6INIT=yes BOOTPROTO=dhcp BONDING_OPTS="" NAME="bond0" TYPE=Bond /run/initramfs/state/etc/sysconfig/network-scripts/ifcfg-bond1 # Generated by dracut initrd NAME="bond1" DEVICE="bond1" ONBOOT=yes NETBOOT=yes IPV6INIT=yes BOOTPROTO=dhcp BONDING_OPTS="" NAME="bond1" TYPE=Bond /run/initramfs/state/etc/sysconfig/network-scripts/ifcfg-ens3 # Generated by dracut initrd NAME="ens3" TYPE=Ethernet ONBOOT=yes NETBOOT=yes SLAVE=yes MASTER="bond0" DEVICE="ens3" /run/initramfs/state/etc/sysconfig/network-scripts/ifcfg-ens4 # Generated by dracut initrd NAME="ens4" TYPE=Ethernet ONBOOT=yes NETBOOT=yes SLAVE=yes MASTER="bond0" DEVICE="ens4" /run/initramfs/state/etc/sysconfig/network-scripts/ifcfg-ens6 # Generated by dracut initrd NAME="ens6" TYPE=Ethernet ONBOOT=yes NETBOOT=yes SLAVE=yes MASTER="bond1" DEVICE="ens6" /run/initramfs/state/etc/sysconfig/network-scripts/ifcfg-ens7 # Generated by dracut initrd NAME="ens7" TYPE=Ethernet ONBOOT=yes NETBOOT=yes SLAVE=yes MASTER="bond1" DEVICE="ens7" EOF '
EXPECT='bond0 bond1 /run/initramfs/state/etc/sysconfig/network-scripts/ifcfg-bond0 # Generated by dracut initrd NAME="bond0" DEVICE="bond0" ONBOOT=yes NETBOOT=yes IPV6INIT=yes BOOTPROTO=dhcp BONDING_OPTS="" NAME="bond0" TYPE=Bond /run/initramfs/state/etc/sysconfig/network-scripts/ifcfg-bond1 # Generated by dracut initrd NAME="bond1" DEVICE="bond1" ONBOOT=yes NETBOOT=yes IPV6INIT=yes BOOTPROTO=dhcp BONDING_OPTS="" NAME="bond1" TYPE=Bond /run/initramfs/state/etc/sysconfig/network-scripts/ifcfg-net1 # Generated by dracut initrd NAME="net1" HWADDR="52:54:00:12:34:01" TYPE=Ethernet ONBOOT=yes NETBOOT=yes SLAVE=yes MASTER="bond0" DEVICE="net1" /run/initramfs/state/etc/sysconfig/network-scripts/ifcfg-net2 # Generated by dracut initrd NAME="net2" HWADDR="52:54:00:12:34:02" TYPE=Ethernet ONBOOT=yes NETBOOT=yes SLAVE=yes MASTER="bond0" DEVICE="net2" /run/initramfs/state/etc/sysconfig/network-scripts/ifcfg-net4 # Generated by dracut initrd NAME="net4" HWADDR="52:54:00:12:34:04" TYPE=Ethernet ONBOOT=yes NETBOOT=yes SLAVE=yes MASTER="bond1" DEVICE="net4" /run/initramfs/state/etc/sysconfig/network-scripts/ifcfg-net5 # Generated by dracut initrd NAME="net5" TYPE=Ethernet ONBOOT=yes NETBOOT=yes SLAVE=yes MASTER="bond1" DEVICE="net5" EOF '
fi

client_test "Multiple Bonds" \
"yes" \
"
bond=bond0:ens3,ens4
bond=bond1:ens6,ens7
bond=bond0:net1,net2:miimon=100
bond=bond1:net4,net5:miimon=100
ip=bond0:dhcp
ip=bond1:dhcp
rd.neednet=1
@ -178,14 +186,14 @@ root=nfs:192.168.50.1:/nfs/client bootdev=bond0 @@ -178,14 +186,14 @@ root=nfs:192.168.50.1:/nfs/client bootdev=bond0
if [[ $NM ]]; then
EXPECT='br0 br1 /run/initramfs/state/etc/sysconfig/network-scripts/ifcfg-* EOF '
else
EXPECT='br0 br1 /run/initramfs/state/etc/sysconfig/network-scripts/ifcfg-br0 # Generated by dracut initrd NAME="br0" DEVICE="br0" ONBOOT=yes NETBOOT=yes IPV6INIT=yes BOOTPROTO=dhcp TYPE=Bridge NAME="br0" /run/initramfs/state/etc/sysconfig/network-scripts/ifcfg-br1 # Generated by dracut initrd NAME="br1" DEVICE="br1" ONBOOT=yes NETBOOT=yes IPV6INIT=yes BOOTPROTO=dhcp TYPE=Bridge NAME="br1" /run/initramfs/state/etc/sysconfig/network-scripts/ifcfg-ens3 # Generated by dracut initrd NAME="ens3" TYPE=Ethernet ONBOOT=yes NETBOOT=yes BRIDGE="br0" DEVICE="ens3" /run/initramfs/state/etc/sysconfig/network-scripts/ifcfg-ens4 # Generated by dracut initrd NAME="ens4" TYPE=Ethernet ONBOOT=yes NETBOOT=yes BRIDGE="br0" DEVICE="ens4" /run/initramfs/state/etc/sysconfig/network-scripts/ifcfg-ens6 # Generated by dracut initrd NAME="ens6" TYPE=Ethernet ONBOOT=yes NETBOOT=yes BRIDGE="br1" DEVICE="ens6" /run/initramfs/state/etc/sysconfig/network-scripts/ifcfg-ens7 # Generated by dracut initrd NAME="ens7" TYPE=Ethernet ONBOOT=yes NETBOOT=yes BRIDGE="br1" DEVICE="ens7" EOF '
EXPECT='br0 br1 /run/initramfs/state/etc/sysconfig/network-scripts/ifcfg-br0 # Generated by dracut initrd NAME="br0" DEVICE="br0" ONBOOT=yes NETBOOT=yes IPV6INIT=yes BOOTPROTO=dhcp TYPE=Bridge NAME="br0" /run/initramfs/state/etc/sysconfig/network-scripts/ifcfg-br1 # Generated by dracut initrd NAME="br1" DEVICE="br1" ONBOOT=yes NETBOOT=yes IPV6INIT=yes BOOTPROTO=dhcp TYPE=Bridge NAME="br1" /run/initramfs/state/etc/sysconfig/network-scripts/ifcfg-net1 # Generated by dracut initrd NAME="net1" HWADDR="52:54:00:12:34:01" TYPE=Ethernet ONBOOT=yes NETBOOT=yes BRIDGE="br0" DEVICE="net1" /run/initramfs/state/etc/sysconfig/network-scripts/ifcfg-net2 # Generated by dracut initrd NAME="net2" HWADDR="52:54:00:12:34:02" TYPE=Ethernet ONBOOT=yes NETBOOT=yes BRIDGE="br0" DEVICE="net2" /run/initramfs/state/etc/sysconfig/network-scripts/ifcfg-net4 # Generated by dracut initrd NAME="net4" TYPE=Ethernet ONBOOT=yes NETBOOT=yes BRIDGE="br1" DEVICE="net4" /run/initramfs/state/etc/sysconfig/network-scripts/ifcfg-net5 # Generated by dracut initrd NAME="net5" TYPE=Ethernet ONBOOT=yes NETBOOT=yes BRIDGE="br1" DEVICE="net5" EOF '
fi

client_test "Multiple Bridges" \
"no" \
"
bridge=br0:ens3,ens4
bridge=br1:ens6,ens7
bridge=br0:net1,net2
bridge=br1:net4,net5
ip=br0:dhcp
ip=br1:dhcp
rd.neednet=1
@ -193,6 +201,7 @@ root=nfs:192.168.50.1:/nfs/client bootdev=br0 @@ -193,6 +201,7 @@ root=nfs:192.168.50.1:/nfs/client bootdev=br0
" \
"$EXPECT" \
|| return 1

kill_server
return 0
}
@ -343,30 +352,37 @@ test_setup() { @@ -343,30 +352,37 @@ test_setup() {
# Make an overlay with needed tools for the test harness
(
# shellcheck disable=SC2031
# shellcheck disable=SC2030
export initdir="$TESTDIR"/overlay
# shellcheck disable=SC1090
. "$basedir"/dracut-init.sh
inst_multiple poweroff shutdown
inst_hook emergency 000 ./hard-off.sh
inst_simple ./99-default.link /etc/systemd/network/99-default.link
)

# Make server's dracut image
"$basedir"/dracut.sh -l -i "$TESTDIR"/overlay / \
--no-early-microcode \
-m "udev-rules base rootfs-block fs-lib debug kernel-modules watchdog qemu" \
-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

# Make client's dracut image
"$basedir"/dracut.sh -l -i "$TESTDIR"/overlay / \
--no-early-microcode \
-o "plymouth ${OMIT_NETWORK}" \
-a "debug ${USE_NETWORK}" \
-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" \
-d "ipvlan macvlan af_packet piix sd_mod sr_mod ata_piix ide-gd_mod virtio-net nfsv2 nfsv3 nfsv4 nfs_acl nfs_layout_nfsv41_files sunrpc i6300esb ib700wdt" \
--no-hostonly-cmdline -N \
-f "$TESTDIR"/initramfs.testing "$KVERSION" || return 1

(
# shellcheck disable=SC2031
export initdir="$TESTDIR"/overlay
# shellcheck disable=SC1090
. "$basedir"/dracut-init.sh
inst_simple ./99-default.link /etc/systemd/network/99-default.link
inst_hook pre-mount 99 ./wait-if-server.sh
)
# Make server's dracut image
"$basedir"/dracut.sh -l -i "$TESTDIR"/overlay / \
--no-early-microcode \
-m "udev-rules base rootfs-block fs-lib debug kernel-modules watchdog qemu network network-legacy" \
-d "ipvlan macvlan af_packet piix ide-gd_mod ata_piix ext3 sd_mod nfsv2 nfsv3 nfsv4 nfs_acl nfs_layout_nfsv41_files nfsd virtio-net i6300esb ib700wdt" \
--no-hostonly-cmdline -N \
-f "$TESTDIR"/initramfs.server "$KVERSION" || return 1
}

kill_server() {

6
test/TEST-60-BONDBRIDGEVLANIFCFG/wait-if-server.sh

@ -0,0 +1,6 @@ @@ -0,0 +1,6 @@
#!/bin/sh
. /lib/net-lib.sh
wait_for_if_link enx525401123456
wait_for_if_link enx525401123457
wait_for_if_link enx525401123458
wait_for_if_link enx525401123459
Loading…
Cancel
Save