testsuite: refactor qemu options
- refactor common qemu options - fix the ens[0-9] interface shift - add split network-[legacy|network] testsmaster
parent
4b60a34715
commit
a3f73298f2
|
@ -17,7 +17,30 @@ jobs:
|
||||||
timeout-minutes: 30
|
timeout-minutes: 30
|
||||||
strategy:
|
strategy:
|
||||||
matrix:
|
matrix:
|
||||||
test: [ "01", "02", "03", "04", "10", "11", "12", "13", "14", "15", "17", "20", "30", "31", "40", "50", "60" ]
|
test: [
|
||||||
|
"01",
|
||||||
|
"02",
|
||||||
|
"03",
|
||||||
|
"04",
|
||||||
|
"10",
|
||||||
|
"11",
|
||||||
|
"12",
|
||||||
|
"13",
|
||||||
|
"14",
|
||||||
|
"15",
|
||||||
|
"17",
|
||||||
|
"20",
|
||||||
|
"30",
|
||||||
|
"31",
|
||||||
|
"35",
|
||||||
|
"36",
|
||||||
|
"40",
|
||||||
|
"41",
|
||||||
|
"50",
|
||||||
|
"51",
|
||||||
|
"60",
|
||||||
|
"61"
|
||||||
|
]
|
||||||
fail-fast: false
|
fail-fast: false
|
||||||
steps:
|
steps:
|
||||||
- name: "Checkout Repository"
|
- name: "Checkout Repository"
|
||||||
|
|
|
@ -17,7 +17,31 @@ jobs:
|
||||||
timeout-minutes: 30
|
timeout-minutes: 30
|
||||||
strategy:
|
strategy:
|
||||||
matrix:
|
matrix:
|
||||||
test: [ "01", "02", "03", "04", "10", "11", "12", "13", "14", "15", "17", "20", "30", "31", "40", "50", "60" ]
|
test: [
|
||||||
|
"01",
|
||||||
|
"02",
|
||||||
|
"03",
|
||||||
|
"04",
|
||||||
|
"10",
|
||||||
|
"11",
|
||||||
|
"12",
|
||||||
|
"13",
|
||||||
|
"14",
|
||||||
|
"15",
|
||||||
|
"17",
|
||||||
|
"20",
|
||||||
|
"21",
|
||||||
|
"30",
|
||||||
|
"31",
|
||||||
|
"35",
|
||||||
|
"36",
|
||||||
|
"40",
|
||||||
|
"41",
|
||||||
|
"50",
|
||||||
|
"51",
|
||||||
|
"60",
|
||||||
|
"61"
|
||||||
|
]
|
||||||
fail-fast: false
|
fail-fast: false
|
||||||
steps:
|
steps:
|
||||||
- name: "Checkout Repository"
|
- name: "Checkout Repository"
|
||||||
|
|
|
@ -9,11 +9,17 @@ env:
|
||||||
- IMAGE=latest TESTS=01
|
- IMAGE=latest TESTS=01
|
||||||
- IMAGE=latest TESTS=12
|
- IMAGE=latest TESTS=12
|
||||||
- IMAGE=latest TESTS=20
|
- IMAGE=latest TESTS=20
|
||||||
|
- IMAGE=latest TESTS=21
|
||||||
- IMAGE=latest TESTS=50
|
- IMAGE=latest TESTS=50
|
||||||
|
- IMAGE=latest TESTS=51
|
||||||
- IMAGE=latest TESTS=30
|
- IMAGE=latest TESTS=30
|
||||||
- IMAGE=latest TESTS=31
|
- IMAGE=latest TESTS=31
|
||||||
|
- IMAGE=latest TESTS=35
|
||||||
|
- IMAGE=latest TESTS=36
|
||||||
- IMAGE=latest TESTS=40
|
- IMAGE=latest TESTS=40
|
||||||
|
- IMAGE=latest TESTS=41
|
||||||
- IMAGE=latest TESTS=60
|
- IMAGE=latest TESTS=60
|
||||||
|
- IMAGE=latest TESTS=61
|
||||||
- IMAGE=latest TESTS=99
|
- IMAGE=latest TESTS=99
|
||||||
- IMAGE=latest TESTS=02
|
- IMAGE=latest TESTS=02
|
||||||
- IMAGE=latest TESTS=03
|
- IMAGE=latest TESTS=03
|
||||||
|
|
|
@ -11,10 +11,7 @@ test_run() {
|
||||||
$testdir/run-qemu \
|
$testdir/run-qemu \
|
||||||
-drive format=raw,index=0,media=disk,file=$TESTDIR/root.ext3 \
|
-drive format=raw,index=0,media=disk,file=$TESTDIR/root.ext3 \
|
||||||
-drive format=raw,index=1,media=disk,file=$TESTDIR/result \
|
-drive format=raw,index=1,media=disk,file=$TESTDIR/result \
|
||||||
-m 512M -smp 2 -nographic \
|
|
||||||
-net none \
|
|
||||||
-watchdog i6300esb -watchdog-action poweroff \
|
-watchdog i6300esb -watchdog-action poweroff \
|
||||||
-no-reboot \
|
|
||||||
-append "panic=1 systemd.crash_reboot root=LABEL=dracut rw systemd.log_level=debug systemd.log_target=console rd.retry=3 rd.debug console=ttyS0,115200n81 rd.shell=0 $DEBUGFAIL" \
|
-append "panic=1 systemd.crash_reboot 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
|
-initrd $TESTDIR/initramfs.testing || return 1
|
||||||
grep -F -m 1 -q dracut-root-block-success $TESTDIR/result || return 1
|
grep -F -m 1 -q dracut-root-block-success $TESTDIR/result || return 1
|
||||||
|
@ -80,7 +77,6 @@ test_setup() {
|
||||||
|
|
||||||
$testdir/run-qemu \
|
$testdir/run-qemu \
|
||||||
-drive format=raw,index=0,media=disk,file=$TESTDIR/root.ext3 \
|
-drive format=raw,index=0,media=disk,file=$TESTDIR/root.ext3 \
|
||||||
-m 512M -smp 2 -nographic -net none \
|
|
||||||
-append "root=/dev/dracut/root rw rootfstype=ext3 quiet console=ttyS0,115200n81 selinux=0" \
|
-append "root=/dev/dracut/root rw rootfstype=ext3 quiet console=ttyS0,115200n81 selinux=0" \
|
||||||
-initrd $TESTDIR/initramfs.makeroot || return 1
|
-initrd $TESTDIR/initramfs.makeroot || return 1
|
||||||
grep -F -m 1 -q dracut-root-block-created $TESTDIR/root.ext3 || return 1
|
grep -F -m 1 -q dracut-root-block-created $TESTDIR/root.ext3 || return 1
|
||||||
|
|
|
@ -8,9 +8,6 @@ KVERSION="${KVERSION-$(uname -r)}"
|
||||||
test_run() {
|
test_run() {
|
||||||
$testdir/run-qemu \
|
$testdir/run-qemu \
|
||||||
-drive format=raw,index=0,media=disk,file=$TESTDIR/root.ext3 \
|
-drive format=raw,index=0,media=disk,file=$TESTDIR/root.ext3 \
|
||||||
-m 512M -smp 2 -nographic \
|
|
||||||
-net none \
|
|
||||||
-no-reboot \
|
|
||||||
-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 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
|
-initrd $TESTDIR/initramfs.testing
|
||||||
grep -F -m 1 -q dracut-root-block-success $TESTDIR/root.ext3 || return 1
|
grep -F -m 1 -q dracut-root-block-success $TESTDIR/root.ext3 || return 1
|
||||||
|
@ -77,7 +74,6 @@ test_setup() {
|
||||||
|
|
||||||
$testdir/run-qemu \
|
$testdir/run-qemu \
|
||||||
-drive format=raw,index=0,media=disk,file=$TESTDIR/root.ext3 \
|
-drive format=raw,index=0,media=disk,file=$TESTDIR/root.ext3 \
|
||||||
-m 512M -smp 2 -nographic -net none \
|
|
||||||
-append "root=/dev/fakeroot rw rootfstype=ext3 quiet console=ttyS0,115200n81 selinux=0" \
|
-append "root=/dev/fakeroot rw rootfstype=ext3 quiet console=ttyS0,115200n81 selinux=0" \
|
||||||
-initrd $TESTDIR/initramfs.makeroot || return 1
|
-initrd $TESTDIR/initramfs.makeroot || return 1
|
||||||
grep -F -m 1 -q dracut-root-block-created $TESTDIR/root.ext3 || return 1
|
grep -F -m 1 -q dracut-root-block-created $TESTDIR/root.ext3 || return 1
|
||||||
|
|
|
@ -18,10 +18,7 @@ client_run() {
|
||||||
-drive format=raw,index=0,media=disk,file=$TESTDIR/root.btrfs \
|
-drive format=raw,index=0,media=disk,file=$TESTDIR/root.btrfs \
|
||||||
-drive format=raw,index=1,media=disk,file=$TESTDIR/usr.btrfs \
|
-drive format=raw,index=1,media=disk,file=$TESTDIR/usr.btrfs \
|
||||||
-drive format=raw,index=2,media=disk,file=$TESTDIR/result \
|
-drive format=raw,index=2,media=disk,file=$TESTDIR/result \
|
||||||
-m 512M -smp 2 -nographic \
|
|
||||||
-net none \
|
|
||||||
-watchdog i6300esb -watchdog-action poweroff \
|
-watchdog i6300esb -watchdog-action poweroff \
|
||||||
-no-reboot \
|
|
||||||
-append "panic=1 systemd.crash_reboot root=LABEL=dracut $client_opts quiet rd.retry=3 rd.info console=ttyS0,115200n81 selinux=0 rd.debug rd.shell=0 $DEBUGFAIL" \
|
-append "panic=1 systemd.crash_reboot root=LABEL=dracut $client_opts quiet rd.retry=3 rd.info console=ttyS0,115200n81 selinux=0 rd.debug rd.shell=0 $DEBUGFAIL" \
|
||||||
-initrd $TESTDIR/initramfs.testing
|
-initrd $TESTDIR/initramfs.testing
|
||||||
|
|
||||||
|
@ -115,7 +112,6 @@ test_setup() {
|
||||||
$testdir/run-qemu \
|
$testdir/run-qemu \
|
||||||
-drive format=raw,index=0,media=disk,file=$TESTDIR/root.btrfs \
|
-drive format=raw,index=0,media=disk,file=$TESTDIR/root.btrfs \
|
||||||
-drive format=raw,index=1,media=disk,file=$TESTDIR/usr.btrfs \
|
-drive format=raw,index=1,media=disk,file=$TESTDIR/usr.btrfs \
|
||||||
-m 512M -smp 2 -nographic -net none \
|
|
||||||
-append "root=/dev/dracut/root rw rootfstype=btrfs quiet console=ttyS0,115200n81 selinux=0" \
|
-append "root=/dev/dracut/root rw rootfstype=btrfs quiet console=ttyS0,115200n81 selinux=0" \
|
||||||
-initrd $TESTDIR/initramfs.makeroot || return 1
|
-initrd $TESTDIR/initramfs.makeroot || return 1
|
||||||
if ! grep -F -m 1 -q dracut-root-block-created $TESTDIR/root.btrfs; then
|
if ! grep -F -m 1 -q dracut-root-block-created $TESTDIR/root.btrfs; then
|
||||||
|
|
|
@ -20,9 +20,6 @@ client_run() {
|
||||||
-drive format=raw,index=0,media=disk,file=$TESTDIR/root.btrfs \
|
-drive format=raw,index=0,media=disk,file=$TESTDIR/root.btrfs \
|
||||||
-drive format=raw,index=1,media=disk,file=$TESTDIR/usr.btrfs \
|
-drive format=raw,index=1,media=disk,file=$TESTDIR/usr.btrfs \
|
||||||
-drive format=raw,index=2,media=disk,file=$TESTDIR/result \
|
-drive format=raw,index=2,media=disk,file=$TESTDIR/result \
|
||||||
-m 512M -smp 2 -nographic \
|
|
||||||
-net none \
|
|
||||||
-no-reboot \
|
|
||||||
-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 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
|
-initrd $TESTDIR/initramfs.testing
|
||||||
|
|
||||||
|
@ -253,7 +250,6 @@ EOF
|
||||||
$testdir/run-qemu \
|
$testdir/run-qemu \
|
||||||
-drive format=raw,index=0,media=disk,file=$TESTDIR/root.btrfs \
|
-drive format=raw,index=0,media=disk,file=$TESTDIR/root.btrfs \
|
||||||
-drive format=raw,index=1,media=disk,file=$TESTDIR/usr.btrfs \
|
-drive format=raw,index=1,media=disk,file=$TESTDIR/usr.btrfs \
|
||||||
-m 512M -smp 2 -nographic -net none \
|
|
||||||
-append "root=/dev/fakeroot rw rootfstype=btrfs quiet console=ttyS0,115200n81 selinux=0" \
|
-append "root=/dev/fakeroot rw rootfstype=btrfs quiet console=ttyS0,115200n81 selinux=0" \
|
||||||
-initrd $TESTDIR/initramfs.makeroot || return 1
|
-initrd $TESTDIR/initramfs.makeroot || return 1
|
||||||
if ! grep -F -m 1 -q dracut-root-block-created $TESTDIR/root.btrfs; then
|
if ! grep -F -m 1 -q dracut-root-block-created $TESTDIR/root.btrfs; then
|
||||||
|
|
|
@ -10,9 +10,6 @@ test_run() {
|
||||||
DISKIMAGE=$TESTDIR/TEST-10-RAID-root.img
|
DISKIMAGE=$TESTDIR/TEST-10-RAID-root.img
|
||||||
$testdir/run-qemu \
|
$testdir/run-qemu \
|
||||||
-drive format=raw,index=0,media=disk,file=$DISKIMAGE \
|
-drive format=raw,index=0,media=disk,file=$DISKIMAGE \
|
||||||
-m 512M -smp 2 -nographic \
|
|
||||||
-net none \
|
|
||||||
-no-reboot \
|
|
||||||
-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 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
|
-initrd $TESTDIR/initramfs.testing
|
||||||
grep -F -m 1 -q dracut-root-block-success $DISKIMAGE || return 1
|
grep -F -m 1 -q dracut-root-block-success $DISKIMAGE || return 1
|
||||||
|
@ -77,7 +74,6 @@ test_setup() {
|
||||||
# Invoke KVM and/or QEMU to actually create the target filesystem.
|
# Invoke KVM and/or QEMU to actually create the target filesystem.
|
||||||
$testdir/run-qemu \
|
$testdir/run-qemu \
|
||||||
-drive format=raw,index=0,media=disk,file=$DISKIMAGE \
|
-drive format=raw,index=0,media=disk,file=$DISKIMAGE \
|
||||||
-m 512M -smp 2 -nographic -net none \
|
|
||||||
-append "root=/dev/cannotreach rw rootfstype=ext2 console=ttyS0,115200n81 selinux=0" \
|
-append "root=/dev/cannotreach rw rootfstype=ext2 console=ttyS0,115200n81 selinux=0" \
|
||||||
-initrd $TESTDIR/initramfs.makeroot || return 1
|
-initrd $TESTDIR/initramfs.makeroot || return 1
|
||||||
grep -F -m 1 -q dracut-root-block-created $DISKIMAGE || return 1
|
grep -F -m 1 -q dracut-root-block-created $DISKIMAGE || return 1
|
||||||
|
|
|
@ -9,9 +9,6 @@ KVERSION=${KVERSION-$(uname -r)}
|
||||||
test_run() {
|
test_run() {
|
||||||
$testdir/run-qemu \
|
$testdir/run-qemu \
|
||||||
-drive format=raw,index=0,media=disk,file=$TESTDIR/root.ext2 \
|
-drive format=raw,index=0,media=disk,file=$TESTDIR/root.ext2 \
|
||||||
-m 512M -smp 2 -nographic \
|
|
||||||
-net none \
|
|
||||||
-no-reboot \
|
|
||||||
-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 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
|
-initrd $TESTDIR/initramfs.testing
|
||||||
grep -F -m 1 -q dracut-root-block-success $TESTDIR/root.ext2 || return 1
|
grep -F -m 1 -q dracut-root-block-success $TESTDIR/root.ext2 || return 1
|
||||||
|
@ -72,7 +69,7 @@ test_setup() {
|
||||||
-f $TESTDIR/initramfs.makeroot $KVERSION || return 1
|
-f $TESTDIR/initramfs.makeroot $KVERSION || return 1
|
||||||
rm -rf -- $TESTDIR/overlay
|
rm -rf -- $TESTDIR/overlay
|
||||||
# Invoke KVM and/or QEMU to actually create the target filesystem.
|
# Invoke KVM and/or QEMU to actually create the target filesystem.
|
||||||
$testdir/run-qemu -drive format=raw,index=0,media=disk,file=$TESTDIR/root.ext2 -m 512M -smp 2 -nographic -net none \
|
$testdir/run-qemu -drive format=raw,index=0,media=disk,file=$TESTDIR/root.ext2 \
|
||||||
-append "root=/dev/fakeroot rw rootfstype=ext2 quiet console=ttyS0,115200n81 selinux=0" \
|
-append "root=/dev/fakeroot rw rootfstype=ext2 quiet console=ttyS0,115200n81 selinux=0" \
|
||||||
-initrd $TESTDIR/initramfs.makeroot || return 1
|
-initrd $TESTDIR/initramfs.makeroot || return 1
|
||||||
grep -F -m 1 -q dracut-root-block-created $TESTDIR/root.ext2 || return 1
|
grep -F -m 1 -q dracut-root-block-created $TESTDIR/root.ext2 || return 1
|
||||||
|
|
|
@ -15,11 +15,9 @@ client_run() {
|
||||||
cp --sparse=always --reflink=auto $TESTDIR/disk3.img $TESTDIR/disk3.img.new
|
cp --sparse=always --reflink=auto $TESTDIR/disk3.img $TESTDIR/disk3.img.new
|
||||||
|
|
||||||
$testdir/run-qemu \
|
$testdir/run-qemu \
|
||||||
-drive format=raw,index=0,media=disk,file=$TESTDIR/root.ext2 -m 512M -nographic -smp 2 \
|
-drive format=raw,index=0,media=disk,file=$TESTDIR/root.ext2 \
|
||||||
-drive format=raw,index=2,media=disk,file=$TESTDIR/disk2.img.new \
|
-drive format=raw,index=2,media=disk,file=$TESTDIR/disk2.img.new \
|
||||||
-drive format=raw,index=3,media=disk,file=$TESTDIR/disk3.img.new \
|
-drive format=raw,index=3,media=disk,file=$TESTDIR/disk3.img.new \
|
||||||
-net none \
|
|
||||||
-no-reboot \
|
|
||||||
-append "panic=1 systemd.crash_reboot $* systemd.log_target=kmsg loglevel=7 root=LABEL=root rw rd.retry=20 rd.info console=ttyS0,115200n81 log_buf_len=2M selinux=0 rd.debug rd.shell=0 $DEBUGFAIL " \
|
-append "panic=1 systemd.crash_reboot $* systemd.log_target=kmsg loglevel=7 root=LABEL=root rw rd.retry=20 rd.info console=ttyS0,115200n81 log_buf_len=2M selinux=0 rd.debug rd.shell=0 $DEBUGFAIL " \
|
||||||
-initrd $TESTDIR/initramfs.testing
|
-initrd $TESTDIR/initramfs.testing
|
||||||
if ! grep -F -m 1 -q dracut-root-block-success $TESTDIR/root.ext2; then
|
if ! grep -F -m 1 -q dracut-root-block-success $TESTDIR/root.ext2; then
|
||||||
|
@ -117,7 +115,6 @@ test_setup() {
|
||||||
-drive format=raw,index=1,media=disk,file=$TESTDIR/disk1.img \
|
-drive format=raw,index=1,media=disk,file=$TESTDIR/disk1.img \
|
||||||
-drive format=raw,index=2,media=disk,file=$TESTDIR/disk2.img \
|
-drive format=raw,index=2,media=disk,file=$TESTDIR/disk2.img \
|
||||||
-drive format=raw,index=3,media=disk,file=$TESTDIR/disk3.img \
|
-drive format=raw,index=3,media=disk,file=$TESTDIR/disk3.img \
|
||||||
-m 512M -smp 2 -nographic -net none \
|
|
||||||
-append "root=/dev/fakeroot rw rootfstype=ext2 quiet console=ttyS0,115200n81 selinux=0" \
|
-append "root=/dev/fakeroot rw rootfstype=ext2 quiet console=ttyS0,115200n81 selinux=0" \
|
||||||
-initrd $TESTDIR/initramfs.makeroot || return 1
|
-initrd $TESTDIR/initramfs.makeroot || return 1
|
||||||
|
|
||||||
|
|
|
@ -17,9 +17,6 @@ test_run() {
|
||||||
$testdir/run-qemu \
|
$testdir/run-qemu \
|
||||||
-drive format=raw,index=0,media=disk,file=$TESTDIR/root.ext2 \
|
-drive format=raw,index=0,media=disk,file=$TESTDIR/root.ext2 \
|
||||||
-drive format=raw,index=1,media=disk,file=$TESTDIR/check-success.img \
|
-drive format=raw,index=1,media=disk,file=$TESTDIR/check-success.img \
|
||||||
-m 1024M -smp 2 -nographic \
|
|
||||||
-net none \
|
|
||||||
-no-reboot \
|
|
||||||
-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 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
|
-initrd $TESTDIR/initramfs.testing
|
||||||
grep -F -m 1 -q dracut-root-block-success $TESTDIR/check-success.img || return 1
|
grep -F -m 1 -q dracut-root-block-success $TESTDIR/check-success.img || return 1
|
||||||
|
@ -31,9 +28,6 @@ test_run() {
|
||||||
$testdir/run-qemu \
|
$testdir/run-qemu \
|
||||||
-drive format=raw,index=0,media=disk,file=$TESTDIR/root.ext2 \
|
-drive format=raw,index=0,media=disk,file=$TESTDIR/root.ext2 \
|
||||||
-drive format=raw,index=1,media=disk,file=$TESTDIR/check-success.img \
|
-drive format=raw,index=1,media=disk,file=$TESTDIR/check-success.img \
|
||||||
-m 1024M -smp 2 -nographic \
|
|
||||||
-net none \
|
|
||||||
-no-reboot \
|
|
||||||
-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 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
|
-initrd $TESTDIR/initramfs.testing
|
||||||
grep -F -m 1 -q dracut-root-block-success $TESTDIR/check-success.img || return 1
|
grep -F -m 1 -q dracut-root-block-success $TESTDIR/check-success.img || return 1
|
||||||
|
@ -45,9 +39,6 @@ test_run() {
|
||||||
$testdir/run-qemu \
|
$testdir/run-qemu \
|
||||||
-drive format=raw,index=0,media=disk,file=$TESTDIR/root.ext2 \
|
-drive format=raw,index=0,media=disk,file=$TESTDIR/root.ext2 \
|
||||||
-drive format=raw,index=1,media=disk,file=$TESTDIR/check-success.img \
|
-drive format=raw,index=1,media=disk,file=$TESTDIR/check-success.img \
|
||||||
-m 1024M -smp 2 -nographic \
|
|
||||||
-net none \
|
|
||||||
-no-reboot \
|
|
||||||
-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 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
|
-initrd $TESTDIR/initramfs.testing
|
||||||
grep -F -m 1 -q dracut-root-block-success $TESTDIR/check-success.img && return 1
|
grep -F -m 1 -q dracut-root-block-success $TESTDIR/check-success.img && return 1
|
||||||
|
@ -111,7 +102,7 @@ test_setup() {
|
||||||
-f $TESTDIR/initramfs.makeroot $KVERSION || return 1
|
-f $TESTDIR/initramfs.makeroot $KVERSION || return 1
|
||||||
rm -rf -- $TESTDIR/overlay
|
rm -rf -- $TESTDIR/overlay
|
||||||
# Invoke KVM and/or QEMU to actually create the target filesystem.
|
# Invoke KVM and/or QEMU to actually create the target filesystem.
|
||||||
$testdir/run-qemu -drive format=raw,index=0,media=disk,file=$TESTDIR/root.ext2 -m 512M -smp 2 -nographic -net none \
|
$testdir/run-qemu -drive format=raw,index=0,media=disk,file=$TESTDIR/root.ext2 \
|
||||||
-append "root=/dev/fakeroot rw rootfstype=ext2 quiet console=ttyS0,115200n81 selinux=0" \
|
-append "root=/dev/fakeroot rw rootfstype=ext2 quiet console=ttyS0,115200n81 selinux=0" \
|
||||||
-initrd $TESTDIR/initramfs.makeroot || return 1
|
-initrd $TESTDIR/initramfs.makeroot || return 1
|
||||||
grep -F -m 1 -q dracut-root-block-created $TESTDIR/root.ext2 || return 1
|
grep -F -m 1 -q dracut-root-block-created $TESTDIR/root.ext2 || return 1
|
||||||
|
|
|
@ -13,9 +13,6 @@ client_run() {
|
||||||
-drive format=raw,index=0,media=disk,file=$TESTDIR/root.ext2 \
|
-drive format=raw,index=0,media=disk,file=$TESTDIR/root.ext2 \
|
||||||
-drive format=raw,index=1,media=disk,file=$TESTDIR/disk1 \
|
-drive format=raw,index=1,media=disk,file=$TESTDIR/disk1 \
|
||||||
-drive format=raw,index=2,media=disk,file=$TESTDIR/disk2 \
|
-drive format=raw,index=2,media=disk,file=$TESTDIR/disk2 \
|
||||||
-m 512M -smp 2 -nographic \
|
|
||||||
-net none \
|
|
||||||
-no-reboot \
|
|
||||||
-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 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
|
-initrd $TESTDIR/initramfs.testing
|
||||||
if ! grep -F -m 1 -q dracut-root-block-success $TESTDIR/root.ext2; then
|
if ! grep -F -m 1 -q dracut-root-block-success $TESTDIR/root.ext2; then
|
||||||
|
@ -109,7 +106,6 @@ test_setup() {
|
||||||
-drive format=raw,index=0,media=disk,file=$TESTDIR/root.ext2 \
|
-drive format=raw,index=0,media=disk,file=$TESTDIR/root.ext2 \
|
||||||
-drive format=raw,index=1,media=disk,file=$TESTDIR/disk1 \
|
-drive format=raw,index=1,media=disk,file=$TESTDIR/disk1 \
|
||||||
-drive format=raw,index=2,media=disk,file=$TESTDIR/disk2 \
|
-drive format=raw,index=2,media=disk,file=$TESTDIR/disk2 \
|
||||||
-m 512M -nographic -net none \
|
|
||||||
-append "root=/dev/dracut/root rw rootfstype=ext2 quiet console=ttyS0,115200n81 selinux=0" \
|
-append "root=/dev/dracut/root rw rootfstype=ext2 quiet console=ttyS0,115200n81 selinux=0" \
|
||||||
-initrd $TESTDIR/initramfs.makeroot || return 1
|
-initrd $TESTDIR/initramfs.makeroot || return 1
|
||||||
grep -F -m 1 -q dracut-root-block-created $TESTDIR/root.ext2 || return 1
|
grep -F -m 1 -q dracut-root-block-created $TESTDIR/root.ext2 || return 1
|
||||||
|
|
|
@ -12,9 +12,6 @@ test_run() {
|
||||||
$testdir/run-qemu \
|
$testdir/run-qemu \
|
||||||
-drive format=raw,index=0,media=disk,file=$MARKER_DISKIMAGE \
|
-drive format=raw,index=0,media=disk,file=$MARKER_DISKIMAGE \
|
||||||
-drive format=raw,index=1,media=disk,file=$DISKIMAGE \
|
-drive format=raw,index=1,media=disk,file=$DISKIMAGE \
|
||||||
-m 512M -smp 2 -nographic \
|
|
||||||
-net none \
|
|
||||||
-no-reboot \
|
|
||||||
-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 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
|
-initrd $TESTDIR/initramfs.testing
|
||||||
grep -F -m 1 -q dracut-root-block-success $MARKER_DISKIMAGE || return 1
|
grep -F -m 1 -q dracut-root-block-success $MARKER_DISKIMAGE || return 1
|
||||||
|
@ -81,7 +78,6 @@ test_setup() {
|
||||||
# Invoke KVM and/or QEMU to actually create the target filesystem.
|
# Invoke KVM and/or QEMU to actually create the target filesystem.
|
||||||
$testdir/run-qemu \
|
$testdir/run-qemu \
|
||||||
-drive format=raw,index=0,media=disk,file=$DISKIMAGE \
|
-drive format=raw,index=0,media=disk,file=$DISKIMAGE \
|
||||||
-m 512M -smp 2 -nographic -net none \
|
|
||||||
-append "root=/dev/fakeroot rw quiet console=ttyS0,115200n81 selinux=0" \
|
-append "root=/dev/fakeroot rw quiet console=ttyS0,115200n81 selinux=0" \
|
||||||
-initrd $TESTDIR/initramfs.makeroot || return 1
|
-initrd $TESTDIR/initramfs.makeroot || return 1
|
||||||
|
|
||||||
|
|
|
@ -22,10 +22,6 @@ test_run() {
|
||||||
-boot order=d \
|
-boot order=d \
|
||||||
-drive format=raw,bps=1000000,index=0,media=disk,file="$TESTDIR"/livecd.iso \
|
-drive format=raw,bps=1000000,index=0,media=disk,file="$TESTDIR"/livecd.iso \
|
||||||
-drive format=raw,index=1,media=disk,file="$TESTDIR"/root.img \
|
-drive format=raw,index=1,media=disk,file="$TESTDIR"/root.img \
|
||||||
-m 512M -smp 2 \
|
|
||||||
-nographic \
|
|
||||||
-net none \
|
|
||||||
-no-reboot \
|
|
||||||
-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 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
|
-initrd "$TESTDIR"/initramfs.testing
|
||||||
|
|
||||||
|
|
|
@ -9,9 +9,6 @@ KVERSION=${KVERSION-$(uname -r)}
|
||||||
test_run() {
|
test_run() {
|
||||||
$testdir/run-qemu \
|
$testdir/run-qemu \
|
||||||
-drive format=raw,index=0,media=disk,file=$TESTDIR/root.ext2 \
|
-drive format=raw,index=0,media=disk,file=$TESTDIR/root.ext2 \
|
||||||
-m 512M -smp 2 -nographic \
|
|
||||||
-net none \
|
|
||||||
-no-reboot \
|
|
||||||
-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 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
|
-initrd $TESTDIR/initramfs.testing
|
||||||
grep -F -m 1 -q dracut-root-block-success $TESTDIR/root.ext2 || return 1
|
grep -F -m 1 -q dracut-root-block-success $TESTDIR/root.ext2 || return 1
|
||||||
|
@ -72,7 +69,7 @@ test_setup() {
|
||||||
-f $TESTDIR/initramfs.makeroot $KVERSION || return 1
|
-f $TESTDIR/initramfs.makeroot $KVERSION || return 1
|
||||||
rm -rf -- $TESTDIR/overlay
|
rm -rf -- $TESTDIR/overlay
|
||||||
# Invoke KVM and/or QEMU to actually create the target filesystem.
|
# Invoke KVM and/or QEMU to actually create the target filesystem.
|
||||||
$testdir/run-qemu -drive format=raw,index=0,media=disk,file=$TESTDIR/root.ext2 -m 512M -smp 2 -nographic -net none \
|
$testdir/run-qemu -drive format=raw,index=0,media=disk,file=$TESTDIR/root.ext2 \
|
||||||
-append "root=/dev/fakeroot rw rootfstype=ext2 quiet console=ttyS0,115200n81 selinux=0" \
|
-append "root=/dev/fakeroot rw rootfstype=ext2 quiet console=ttyS0,115200n81 selinux=0" \
|
||||||
-initrd $TESTDIR/initramfs.makeroot || return 1
|
-initrd $TESTDIR/initramfs.makeroot || return 1
|
||||||
grep -F -m 1 -q dracut-root-block-created $TESTDIR/root.ext2 || return 1
|
grep -F -m 1 -q dracut-root-block-created $TESTDIR/root.ext2 || return 1
|
||||||
|
|
|
@ -54,15 +54,15 @@ linkup() {
|
||||||
&& wait_for_if_up $1 2>/dev/null
|
&& wait_for_if_up $1 2>/dev/null
|
||||||
}
|
}
|
||||||
|
|
||||||
wait_for_if_link eth0 ens3
|
wait_for_if_link eth0 ens2
|
||||||
|
|
||||||
ip addr add 127.0.0.1/8 dev lo
|
ip addr add 127.0.0.1/8 dev lo
|
||||||
ip link set lo up
|
ip link set lo up
|
||||||
ip link set dev eth0 name ens3
|
ip link set dev eth0 name ens2
|
||||||
ip addr add 192.168.50.1/24 dev ens3
|
ip addr add 192.168.50.1/24 dev ens2
|
||||||
ip addr add 192.168.50.2/24 dev ens3
|
ip addr add 192.168.50.2/24 dev ens2
|
||||||
ip addr add 192.168.50.3/24 dev ens3
|
ip addr add 192.168.50.3/24 dev ens2
|
||||||
linkup ens3
|
linkup ens2
|
||||||
|
|
||||||
echo > /dev/watchdog
|
echo > /dev/watchdog
|
||||||
modprobe af_packet
|
modprobe af_packet
|
||||||
|
|
|
@ -1,5 +1,14 @@
|
||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
TEST_DESCRIPTION="root filesystem on NFS"
|
|
||||||
|
if [[ $NM ]]; then
|
||||||
|
USE_NETWORK="network-manager"
|
||||||
|
OMIT_NETWORK="network-legacy"
|
||||||
|
else
|
||||||
|
USE_NETWORK="network-legacy"
|
||||||
|
OMIT_NETWORK="network-manager"
|
||||||
|
fi
|
||||||
|
|
||||||
|
TEST_DESCRIPTION="root filesystem on NFS with $USE_NETWORK"
|
||||||
|
|
||||||
KVERSION=${KVERSION-$(uname -r)}
|
KVERSION=${KVERSION-$(uname -r)}
|
||||||
|
|
||||||
|
@ -17,14 +26,11 @@ run_server() {
|
||||||
fsck -a $TESTDIR/server.ext3 || return 1
|
fsck -a $TESTDIR/server.ext3 || return 1
|
||||||
$testdir/run-qemu \
|
$testdir/run-qemu \
|
||||||
-drive format=raw,index=0,media=disk,file=$TESTDIR/server.ext3 \
|
-drive format=raw,index=0,media=disk,file=$TESTDIR/server.ext3 \
|
||||||
-m 512M -smp 2 \
|
|
||||||
-display none \
|
|
||||||
-net socket,listen=127.0.0.1:12320 \
|
-net socket,listen=127.0.0.1:12320 \
|
||||||
-net nic,macaddr=52:54:00:12:34:56,model=e1000 \
|
-net nic,macaddr=52:54:00:12:34:56,model=e1000 \
|
||||||
${SERIAL:+-serial "$SERIAL"} \
|
${SERIAL:+-serial "$SERIAL"} \
|
||||||
${SERIAL:--serial file:"$TESTDIR"/server.log} \
|
${SERIAL:--serial file:"$TESTDIR"/server.log} \
|
||||||
-watchdog i6300esb -watchdog-action poweroff \
|
-watchdog i6300esb -watchdog-action poweroff \
|
||||||
-no-reboot \
|
|
||||||
-append "panic=1 quiet root=/dev/sda rootfstype=ext3 rw console=ttyS0,115200n81 selinux=0" \
|
-append "panic=1 quiet root=/dev/sda rootfstype=ext3 rw console=ttyS0,115200n81 selinux=0" \
|
||||||
-initrd $TESTDIR/initramfs.server \
|
-initrd $TESTDIR/initramfs.server \
|
||||||
-pidfile $TESTDIR/server.pid -daemonize || return 1
|
-pidfile $TESTDIR/server.pid -daemonize || return 1
|
||||||
|
@ -34,9 +40,9 @@ run_server() {
|
||||||
tty -s && stty sane
|
tty -s && stty sane
|
||||||
|
|
||||||
if ! [[ $SERIAL ]]; then
|
if ! [[ $SERIAL ]]; then
|
||||||
echo "Waiting for the server to startup"
|
|
||||||
while : ; do
|
while : ; do
|
||||||
grep Serving "$TESTDIR"/server.log && break
|
grep Serving "$TESTDIR"/server.log && break
|
||||||
|
echo "Waiting for the server to startup"
|
||||||
sleep 1
|
sleep 1
|
||||||
done
|
done
|
||||||
else
|
else
|
||||||
|
@ -56,19 +62,17 @@ client_test() {
|
||||||
echo "CLIENT TEST START: $test_name"
|
echo "CLIENT TEST START: $test_name"
|
||||||
|
|
||||||
# Need this so kvm-qemu will boot (needs non-/dev/zero local disk)
|
# Need this so kvm-qemu will boot (needs non-/dev/zero local disk)
|
||||||
if ! dd if=/dev/zero of=$TESTDIR/client.img bs=1M count=1; then
|
if ! dd if=/dev/zero of=$TESTDIR/client.img bs=1M count=1 &>/dev/null; then
|
||||||
echo "Unable to make client sda image" 1>&2
|
echo "Unable to make client sda image" 1>&2
|
||||||
return 1
|
return 1
|
||||||
fi
|
fi
|
||||||
|
|
||||||
$testdir/run-qemu \
|
$testdir/run-qemu \
|
||||||
-drive format=raw,index=0,media=disk,file=$TESTDIR/client.img \
|
-drive format=raw,index=0,media=disk,file=$TESTDIR/client.img \
|
||||||
-m 512M -smp 2 -nographic \
|
|
||||||
-net nic,macaddr=$mac,model=e1000 \
|
-net nic,macaddr=$mac,model=e1000 \
|
||||||
-net socket,connect=127.0.0.1:12320 \
|
-net socket,connect=127.0.0.1:12320 \
|
||||||
-watchdog i6300esb -watchdog-action poweroff \
|
-watchdog i6300esb -watchdog-action poweroff \
|
||||||
-no-reboot \
|
-append "rd.net.timeout.dhcp=3 panic=1 systemd.crash_reboot rd.shell=0 $cmdline $DEBUGFAIL rd.retry=10 quiet ro console=ttyS0,115200n81 selinux=0" \
|
||||||
-append "panic=1 systemd.crash_reboot rd.shell=0 $cmdline $DEBUGFAIL rd.retry=10 quiet ro console=ttyS0,115200n81 selinux=0" \
|
|
||||||
-initrd $TESTDIR/initramfs.testing
|
-initrd $TESTDIR/initramfs.testing
|
||||||
|
|
||||||
if [[ $? -ne 0 ]] || ! grep -F -m 1 -q nfs-OK $TESTDIR/client.img; then
|
if [[ $? -ne 0 ]] || ! grep -F -m 1 -q nfs-OK $TESTDIR/client.img; then
|
||||||
|
@ -163,7 +167,7 @@ test_nfsv3() {
|
||||||
52:54:00:12:34:05 "root=dhcp" 192.168.50.1 wsize=4096 || return 1
|
52:54:00:12:34:05 "root=dhcp" 192.168.50.1 wsize=4096 || return 1
|
||||||
|
|
||||||
client_test "NFSv3 Bridge Customized root=dhcp DHCP path,options" \
|
client_test "NFSv3 Bridge Customized root=dhcp DHCP path,options" \
|
||||||
52:54:00:12:34:05 "root=dhcp bridge=foobr0:ens3" 192.168.50.1 wsize=4096 || return 1
|
52:54:00:12:34:05 "root=dhcp bridge=foobr0:ens2" 192.168.50.1 wsize=4096 || return 1
|
||||||
|
|
||||||
client_test "NFSv3 root=dhcp DHCP IP:path,options" \
|
client_test "NFSv3 root=dhcp DHCP IP:path,options" \
|
||||||
52:54:00:12:34:06 "root=dhcp" 192.168.50.2 wsize=4096 || return 1
|
52:54:00:12:34:06 "root=dhcp" 192.168.50.2 wsize=4096 || return 1
|
||||||
|
@ -365,8 +369,8 @@ test_setup() {
|
||||||
|
|
||||||
# Make client's dracut image
|
# Make client's dracut image
|
||||||
$basedir/dracut.sh -l -i $TESTDIR/overlay / \
|
$basedir/dracut.sh -l -i $TESTDIR/overlay / \
|
||||||
-o "plymouth dash" \
|
-o "plymouth dash ${OMIT_NETWORK}" \
|
||||||
-a "debug watchdog" \
|
-a "debug watchdog ${USE_NETWORK}" \
|
||||||
-d "af_packet piix ide-gd_mod ata_piix sd_mod e1000 nfs sunrpc i6300esb" \
|
-d "af_packet piix ide-gd_mod ata_piix sd_mod e1000 nfs sunrpc i6300esb" \
|
||||||
--no-hostonly-cmdline -N \
|
--no-hostonly-cmdline -N \
|
||||||
-f $TESTDIR/initramfs.testing $KVERSION || return 1
|
-f $TESTDIR/initramfs.testing $KVERSION || return 1
|
||||||
|
|
|
@ -0,0 +1,12 @@
|
||||||
|
.PHONY: all setup clean run
|
||||||
|
|
||||||
|
BASETEST=../TEST-20-NFS
|
||||||
|
|
||||||
|
all:
|
||||||
|
@$(MAKE) NM=1 -s --no-print-directory -C $(BASETEST) all
|
||||||
|
setup:
|
||||||
|
@$(MAKE) NM=1 -s --no-print-directory -C $(BASETEST) setup
|
||||||
|
clean:
|
||||||
|
@$(MAKE) NM=1 -s --no-print-directory -C $(BASETEST) clean
|
||||||
|
run:
|
||||||
|
@$(MAKE) NM=1 -s --no-print-directory -C $(BASETEST) run
|
|
@ -24,17 +24,17 @@ wait_for_if_link() {
|
||||||
return 1
|
return 1
|
||||||
}
|
}
|
||||||
|
|
||||||
wait_for_if_link eth0 ens3
|
wait_for_if_link eth0 ens2
|
||||||
wait_for_if_link eth1 ens4
|
wait_for_if_link eth1 ens3
|
||||||
|
|
||||||
ip addr add 127.0.0.1/8 dev lo
|
ip addr add 127.0.0.1/8 dev lo
|
||||||
ip link set lo up
|
ip link set lo up
|
||||||
ip link set dev eth0 name ens3
|
ip link set dev eth0 name ens2
|
||||||
ip addr add 192.168.50.1/24 dev ens3
|
ip addr add 192.168.50.1/24 dev ens2
|
||||||
|
ip link set ens2 up
|
||||||
|
ip link set dev eth1 name ens3
|
||||||
|
ip addr add 192.168.51.1/24 dev ens3
|
||||||
ip link set ens3 up
|
ip link set ens3 up
|
||||||
ip link set dev eth1 name ens4
|
|
||||||
ip addr add 192.168.51.1/24 dev ens4
|
|
||||||
ip link set ens4 up
|
|
||||||
>/var/lib/dhcpd/dhcpd.leases
|
>/var/lib/dhcpd/dhcpd.leases
|
||||||
chmod 777 /var/lib/dhcpd/dhcpd.leases
|
chmod 777 /var/lib/dhcpd/dhcpd.leases
|
||||||
dhcpd -d -cf /etc/dhcpd.conf -lf /var/lib/dhcpd/dhcpd.leases &
|
dhcpd -d -cf /etc/dhcpd.conf -lf /var/lib/dhcpd/dhcpd.leases &
|
||||||
|
|
|
@ -1,5 +1,14 @@
|
||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
TEST_DESCRIPTION="root filesystem over iSCSI"
|
|
||||||
|
if [[ $NM ]]; then
|
||||||
|
USE_NETWORK="network-manager"
|
||||||
|
OMIT_NETWORK="network-legacy"
|
||||||
|
else
|
||||||
|
USE_NETWORK="network-legacy"
|
||||||
|
OMIT_NETWORK="network-manager"
|
||||||
|
fi
|
||||||
|
|
||||||
|
TEST_DESCRIPTION="root filesystem over iSCSI with $USE_NETWORK"
|
||||||
|
|
||||||
KVERSION=${KVERSION-$(uname -r)}
|
KVERSION=${KVERSION-$(uname -r)}
|
||||||
|
|
||||||
|
@ -18,14 +27,11 @@ run_server() {
|
||||||
-drive format=raw,index=1,media=disk,file=$TESTDIR/root.ext3 \
|
-drive format=raw,index=1,media=disk,file=$TESTDIR/root.ext3 \
|
||||||
-drive format=raw,index=2,media=disk,file=$TESTDIR/iscsidisk2.img \
|
-drive format=raw,index=2,media=disk,file=$TESTDIR/iscsidisk2.img \
|
||||||
-drive format=raw,index=3,media=disk,file=$TESTDIR/iscsidisk3.img \
|
-drive format=raw,index=3,media=disk,file=$TESTDIR/iscsidisk3.img \
|
||||||
-m 512M -smp 2 \
|
|
||||||
-display none \
|
|
||||||
${SERIAL:+-serial "$SERIAL"} \
|
${SERIAL:+-serial "$SERIAL"} \
|
||||||
${SERIAL:--serial file:"$TESTDIR"/server.log} \
|
${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:56,model=e1000 \
|
||||||
-net nic,macaddr=52:54:00:12:34:57,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:12330 \
|
||||||
-no-reboot \
|
|
||||||
-append "panic=1 quiet root=/dev/sda rootfstype=ext3 rw console=ttyS0,115200n81 selinux=0 $SERVER_DEBUG" \
|
-append "panic=1 quiet root=/dev/sda rootfstype=ext3 rw console=ttyS0,115200n81 selinux=0 $SERVER_DEBUG" \
|
||||||
-initrd $TESTDIR/initramfs.server \
|
-initrd $TESTDIR/initramfs.server \
|
||||||
-pidfile $TESTDIR/server.pid -daemonize || return 1
|
-pidfile $TESTDIR/server.pid -daemonize || return 1
|
||||||
|
@ -55,11 +61,9 @@ run_client() {
|
||||||
|
|
||||||
$testdir/run-qemu \
|
$testdir/run-qemu \
|
||||||
-drive format=raw,index=0,media=disk,file=$TESTDIR/client.img \
|
-drive format=raw,index=0,media=disk,file=$TESTDIR/client.img \
|
||||||
-m 512M -smp 2 -nographic \
|
|
||||||
-net nic,macaddr=52:54:00:12:34:00,model=e1000 \
|
-net nic,macaddr=52:54:00:12:34:00,model=e1000 \
|
||||||
-net nic,macaddr=52:54:00:12:34:01,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:12330 \
|
||||||
-no-reboot \
|
|
||||||
-acpitable file=ibft.table \
|
-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 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
|
-initrd $TESTDIR/initramfs.testing
|
||||||
|
@ -76,13 +80,13 @@ do_test_run() {
|
||||||
initiator=$(iscsi-iname)
|
initiator=$(iscsi-iname)
|
||||||
|
|
||||||
run_client "root=dhcp" \
|
run_client "root=dhcp" \
|
||||||
"root=/dev/root netroot=dhcp ip=ens3:dhcp" \
|
"root=/dev/root netroot=dhcp ip=ens2:dhcp" \
|
||||||
"rd.iscsi.initiator=$initiator" \
|
"rd.iscsi.initiator=$initiator" \
|
||||||
|| return 1
|
|| return 1
|
||||||
|
|
||||||
run_client "netroot=iscsi target0"\
|
run_client "netroot=iscsi target0"\
|
||||||
"root=LABEL=singleroot netroot=iscsi:192.168.50.1::::iqn.2009-06.dracut:target0" \
|
"root=LABEL=singleroot netroot=iscsi:192.168.50.1::::iqn.2009-06.dracut:target0" \
|
||||||
"ip=192.168.50.101::192.168.50.1:255.255.255.0:iscsi-1:ens3:off" \
|
"ip=192.168.50.101::192.168.50.1:255.255.255.0:iscsi-1:ens2:off" \
|
||||||
"rd.iscsi.initiator=$initiator" \
|
"rd.iscsi.initiator=$initiator" \
|
||||||
|| return 1
|
|| return 1
|
||||||
|
|
||||||
|
@ -131,6 +135,7 @@ test_setup() {
|
||||||
|
|
||||||
kernel=$KVERSION
|
kernel=$KVERSION
|
||||||
# Create what will eventually be our root filesystem onto an overlay
|
# Create what will eventually be our root filesystem onto an overlay
|
||||||
|
rm -rf -- $TESTDIR/overlay
|
||||||
(
|
(
|
||||||
export initdir=$TESTDIR/overlay/source
|
export initdir=$TESTDIR/overlay/source
|
||||||
. $basedir/dracut-init.sh
|
. $basedir/dracut-init.sh
|
||||||
|
@ -187,25 +192,10 @@ test_setup() {
|
||||||
-drive format=raw,index=1,media=disk,file=$TESTDIR/client.img \
|
-drive format=raw,index=1,media=disk,file=$TESTDIR/client.img \
|
||||||
-drive format=raw,index=2,media=disk,file=$TESTDIR/iscsidisk2.img \
|
-drive format=raw,index=2,media=disk,file=$TESTDIR/iscsidisk2.img \
|
||||||
-drive format=raw,index=3,media=disk,file=$TESTDIR/iscsidisk3.img \
|
-drive format=raw,index=3,media=disk,file=$TESTDIR/iscsidisk3.img \
|
||||||
-smp 2 -m 512M -nographic -net none \
|
|
||||||
-append "root=/dev/fakeroot rw rootfstype=ext3 quiet console=ttyS0,115200n81 selinux=0" \
|
-append "root=/dev/fakeroot rw rootfstype=ext3 quiet console=ttyS0,115200n81 selinux=0" \
|
||||||
-initrd $TESTDIR/initramfs.makeroot || return 1
|
-initrd $TESTDIR/initramfs.makeroot || return 1
|
||||||
grep -F -m 1 -q dracut-root-block-created $TESTDIR/client.img || return 1
|
grep -F -m 1 -q dracut-root-block-created $TESTDIR/client.img || return 1
|
||||||
rm -- $TESTDIR/client.img
|
rm -- $TESTDIR/client.img
|
||||||
(
|
|
||||||
export initdir=$TESTDIR/overlay
|
|
||||||
. $basedir/dracut-init.sh
|
|
||||||
inst_multiple poweroff shutdown
|
|
||||||
inst_hook shutdown-emergency 000 ./hard-off.sh
|
|
||||||
inst_hook emergency 000 ./hard-off.sh
|
|
||||||
inst_simple ./99-idesymlinks.rules /etc/udev/rules.d/99-idesymlinks.rules
|
|
||||||
)
|
|
||||||
$basedir/dracut.sh -l -i $TESTDIR/overlay / \
|
|
||||||
-o "dash plymouth dmraid nfs" \
|
|
||||||
-a "debug" \
|
|
||||||
-d "af_packet piix ide-gd_mod ata_piix ext3 sd_mod" \
|
|
||||||
--no-hostonly-cmdline -N \
|
|
||||||
-f $TESTDIR/initramfs.testing $KVERSION || return 1
|
|
||||||
|
|
||||||
# Make server root
|
# Make server root
|
||||||
dd if=/dev/null of=$TESTDIR/server.ext3 bs=1M seek=60
|
dd if=/dev/null of=$TESTDIR/server.ext3 bs=1M seek=60
|
||||||
|
@ -214,6 +204,7 @@ test_setup() {
|
||||||
mount -o loop $TESTDIR/server.ext3 $TESTDIR/mnt
|
mount -o loop $TESTDIR/server.ext3 $TESTDIR/mnt
|
||||||
|
|
||||||
kernel=$KVERSION
|
kernel=$KVERSION
|
||||||
|
rm -rf -- $TESTDIR/overlay
|
||||||
(
|
(
|
||||||
export initdir=$TESTDIR/mnt
|
export initdir=$TESTDIR/mnt
|
||||||
. $basedir/dracut-init.sh
|
. $basedir/dracut-init.sh
|
||||||
|
@ -256,6 +247,25 @@ test_setup() {
|
||||||
-d "af_packet piix ide-gd_mod ata_piix ext3 sd_mod e1000 drbg" \
|
-d "af_packet piix ide-gd_mod ata_piix ext3 sd_mod e1000 drbg" \
|
||||||
--no-hostonly-cmdline -N \
|
--no-hostonly-cmdline -N \
|
||||||
-f $TESTDIR/initramfs.server $KVERSION || return 1
|
-f $TESTDIR/initramfs.server $KVERSION || return 1
|
||||||
|
rm -rf -- $TESTDIR/overlay
|
||||||
|
|
||||||
|
# Make client dracut image
|
||||||
|
rm -rf -- $TESTDIR/overlay
|
||||||
|
(
|
||||||
|
export initdir=$TESTDIR/overlay
|
||||||
|
. $basedir/dracut-init.sh
|
||||||
|
inst_multiple poweroff shutdown
|
||||||
|
inst_hook shutdown-emergency 000 ./hard-off.sh
|
||||||
|
inst_hook emergency 000 ./hard-off.sh
|
||||||
|
inst_simple ./99-idesymlinks.rules /etc/udev/rules.d/99-idesymlinks.rules
|
||||||
|
)
|
||||||
|
$basedir/dracut.sh -l -i $TESTDIR/overlay / \
|
||||||
|
-o "dash plymouth dmraid nfs ${OMIT_NETWORK}" \
|
||||||
|
-a "debug ${USE_NETWORK}" \
|
||||||
|
-d "af_packet piix ide-gd_mod ata_piix ext3 sd_mod" \
|
||||||
|
--no-hostonly-cmdline -N \
|
||||||
|
-f $TESTDIR/initramfs.testing $KVERSION || return 1
|
||||||
|
rm -rf -- $TESTDIR/overlay
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -0,0 +1,12 @@
|
||||||
|
.PHONY: all setup clean run
|
||||||
|
|
||||||
|
BASETEST=../TEST-30-ISCSI
|
||||||
|
|
||||||
|
all:
|
||||||
|
@$(MAKE) NM=1 -s --no-print-directory -C $(BASETEST) all
|
||||||
|
setup:
|
||||||
|
@$(MAKE) NM=1 -s --no-print-directory -C $(BASETEST) setup
|
||||||
|
clean:
|
||||||
|
@$(MAKE) NM=1 -s --no-print-directory -C $(BASETEST) clean
|
||||||
|
run:
|
||||||
|
@$(MAKE) NM=1 -s --no-print-directory -C $(BASETEST) run
|
|
@ -53,17 +53,17 @@ linkup() {
|
||||||
&& wait_for_if_up $1 2>/dev/null
|
&& wait_for_if_up $1 2>/dev/null
|
||||||
}
|
}
|
||||||
|
|
||||||
wait_for_if_link eth0 ens3
|
wait_for_if_link eth0 ens2
|
||||||
wait_for_if_link eth1 ens4
|
wait_for_if_link eth1 ens3
|
||||||
|
|
||||||
ip addr add 127.0.0.1/8 dev lo
|
ip addr add 127.0.0.1/8 dev lo
|
||||||
ip link set lo up
|
ip link set lo up
|
||||||
ip link set dev eth0 name ens3
|
ip link set dev eth0 name ens2
|
||||||
ip addr add 192.168.50.1/24 dev ens3
|
ip addr add 192.168.50.1/24 dev ens2
|
||||||
|
linkup ens2
|
||||||
|
ip link set dev eth1 name ens3
|
||||||
|
ip addr add 192.168.51.1/24 dev ens3
|
||||||
linkup ens3
|
linkup ens3
|
||||||
ip link set dev eth1 name ens4
|
|
||||||
ip addr add 192.168.51.1/24 dev ens4
|
|
||||||
linkup ens4
|
|
||||||
|
|
||||||
>/var/lib/dhcpd/dhcpd.leases
|
>/var/lib/dhcpd/dhcpd.leases
|
||||||
chmod 777 /var/lib/dhcpd/dhcpd.leases
|
chmod 777 /var/lib/dhcpd/dhcpd.leases
|
|
@ -1,5 +1,14 @@
|
||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
TEST_DESCRIPTION="root filesystem over multiple iSCSI"
|
|
||||||
|
if [[ $NM ]]; then
|
||||||
|
USE_NETWORK="network-manager"
|
||||||
|
OMIT_NETWORK="network-legacy"
|
||||||
|
else
|
||||||
|
USE_NETWORK="network-legacy"
|
||||||
|
OMIT_NETWORK="network-manager"
|
||||||
|
fi
|
||||||
|
|
||||||
|
TEST_DESCRIPTION="root filesystem over multiple iSCSI with $USE_NETWORK"
|
||||||
|
|
||||||
KVERSION=${KVERSION-$(uname -r)}
|
KVERSION=${KVERSION-$(uname -r)}
|
||||||
|
|
||||||
|
@ -18,14 +27,11 @@ run_server() {
|
||||||
-drive format=raw,index=1,media=disk,file=$TESTDIR/root.ext3 \
|
-drive format=raw,index=1,media=disk,file=$TESTDIR/root.ext3 \
|
||||||
-drive format=raw,index=2,media=disk,file=$TESTDIR/iscsidisk2.img \
|
-drive format=raw,index=2,media=disk,file=$TESTDIR/iscsidisk2.img \
|
||||||
-drive format=raw,index=3,media=disk,file=$TESTDIR/iscsidisk3.img \
|
-drive format=raw,index=3,media=disk,file=$TESTDIR/iscsidisk3.img \
|
||||||
-m 512M -smp 2 \
|
|
||||||
-display none \
|
|
||||||
${SERIAL:+-serial "$SERIAL"} \
|
${SERIAL:+-serial "$SERIAL"} \
|
||||||
${SERIAL:--serial file:"$TESTDIR"/server.log} \
|
${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:56,model=e1000 \
|
||||||
-net nic,macaddr=52:54:00:12:34:57,model=e1000 \
|
-net nic,macaddr=52:54:00:12:34:57,model=e1000 \
|
||||||
-net socket,listen=127.0.0.1:12331 \
|
-net socket,listen=127.0.0.1:12331 \
|
||||||
-no-reboot \
|
|
||||||
-append "panic=1 systemd.crash_reboot root=/dev/sda rootfstype=ext3 rw console=ttyS0,115200n81 selinux=0 $SERVER_DEBUG" \
|
-append "panic=1 systemd.crash_reboot root=/dev/sda rootfstype=ext3 rw console=ttyS0,115200n81 selinux=0 $SERVER_DEBUG" \
|
||||||
-initrd $TESTDIR/initramfs.server \
|
-initrd $TESTDIR/initramfs.server \
|
||||||
-pidfile $TESTDIR/server.pid -daemonize || return 1
|
-pidfile $TESTDIR/server.pid -daemonize || return 1
|
||||||
|
@ -35,9 +41,10 @@ run_server() {
|
||||||
tty -s && stty sane
|
tty -s && stty sane
|
||||||
|
|
||||||
if ! [[ $SERIAL ]]; then
|
if ! [[ $SERIAL ]]; then
|
||||||
echo "Waiting for the server to startup"
|
|
||||||
while : ; do
|
while : ; do
|
||||||
grep Serving "$TESTDIR"/server.log && break
|
grep Serving "$TESTDIR"/server.log && break
|
||||||
|
echo "Waiting for the server to startup"
|
||||||
|
tail "$TESTDIR"/server.log
|
||||||
sleep 1
|
sleep 1
|
||||||
done
|
done
|
||||||
else
|
else
|
||||||
|
@ -54,11 +61,9 @@ run_client() {
|
||||||
|
|
||||||
$testdir/run-qemu \
|
$testdir/run-qemu \
|
||||||
-drive format=raw,index=0,media=disk,file=$TESTDIR/client.img \
|
-drive format=raw,index=0,media=disk,file=$TESTDIR/client.img \
|
||||||
-m 512M -smp 2 -nographic \
|
|
||||||
-net nic,macaddr=52:54:00:12:34:00,model=e1000 \
|
-net nic,macaddr=52:54:00:12:34:00,model=e1000 \
|
||||||
-net nic,macaddr=52:54:00:12:34:01,model=e1000 \
|
-net nic,macaddr=52:54:00:12:34:01,model=e1000 \
|
||||||
-net socket,connect=127.0.0.1:12331 \
|
-net socket,connect=127.0.0.1:12331 \
|
||||||
-no-reboot \
|
|
||||||
-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 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
|
-initrd $TESTDIR/initramfs.testing
|
||||||
if ! grep -F -m 1 -q iscsi-OK $TESTDIR/client.img; then
|
if ! grep -F -m 1 -q iscsi-OK $TESTDIR/client.img; then
|
||||||
|
@ -74,8 +79,8 @@ do_test_run() {
|
||||||
initiator=$(iscsi-iname)
|
initiator=$(iscsi-iname)
|
||||||
run_client "netroot=iscsi target1 target2" \
|
run_client "netroot=iscsi target1 target2" \
|
||||||
"root=LABEL=sysroot" \
|
"root=LABEL=sysroot" \
|
||||||
"ip=192.168.50.101:::255.255.255.0::ens3:off" \
|
"ip=192.168.50.101:::255.255.255.0::ens2:off" \
|
||||||
"ip=192.168.51.101:::255.255.255.0::ens4:off" \
|
"ip=192.168.51.101:::255.255.255.0::ens3:off" \
|
||||||
"netroot=iscsi:192.168.51.1::::iqn.2009-06.dracut:target1" \
|
"netroot=iscsi:192.168.51.1::::iqn.2009-06.dracut:target1" \
|
||||||
"netroot=iscsi:192.168.50.1::::iqn.2009-06.dracut:target2" \
|
"netroot=iscsi:192.168.50.1::::iqn.2009-06.dracut:target2" \
|
||||||
"rd.iscsi.initiator=$initiator" \
|
"rd.iscsi.initiator=$initiator" \
|
||||||
|
@ -83,8 +88,8 @@ do_test_run() {
|
||||||
|
|
||||||
run_client "netroot=iscsi target1 target2 rd.iscsi.waitnet=0" \
|
run_client "netroot=iscsi target1 target2 rd.iscsi.waitnet=0" \
|
||||||
"root=LABEL=sysroot" \
|
"root=LABEL=sysroot" \
|
||||||
"ip=192.168.50.101:::255.255.255.0::ens3:off" \
|
"ip=192.168.50.101:::255.255.255.0::ens2:off" \
|
||||||
"ip=192.168.51.101:::255.255.255.0::ens4:off" \
|
"ip=192.168.51.101:::255.255.255.0::ens3:off" \
|
||||||
"netroot=iscsi:192.168.51.1::::iqn.2009-06.dracut:target1" \
|
"netroot=iscsi:192.168.51.1::::iqn.2009-06.dracut:target1" \
|
||||||
"netroot=iscsi:192.168.50.1::::iqn.2009-06.dracut:target2" \
|
"netroot=iscsi:192.168.50.1::::iqn.2009-06.dracut:target2" \
|
||||||
"rd.iscsi.firmware" \
|
"rd.iscsi.firmware" \
|
||||||
|
@ -94,8 +99,8 @@ do_test_run() {
|
||||||
|
|
||||||
run_client "netroot=iscsi target1 target2 rd.iscsi.waitnet=0 rd.iscsi.testroute=0" \
|
run_client "netroot=iscsi target1 target2 rd.iscsi.waitnet=0 rd.iscsi.testroute=0" \
|
||||||
"root=LABEL=sysroot" \
|
"root=LABEL=sysroot" \
|
||||||
"ip=192.168.50.101:::255.255.255.0::ens3:off" \
|
"ip=192.168.50.101:::255.255.255.0::ens2:off" \
|
||||||
"ip=192.168.51.101:::255.255.255.0::ens4:off" \
|
"ip=192.168.51.101:::255.255.255.0::ens3:off" \
|
||||||
"netroot=iscsi:192.168.51.1::::iqn.2009-06.dracut:target1" \
|
"netroot=iscsi:192.168.51.1::::iqn.2009-06.dracut:target1" \
|
||||||
"netroot=iscsi:192.168.50.1::::iqn.2009-06.dracut:target2" \
|
"netroot=iscsi:192.168.50.1::::iqn.2009-06.dracut:target2" \
|
||||||
"rd.iscsi.firmware" \
|
"rd.iscsi.firmware" \
|
||||||
|
@ -105,8 +110,8 @@ do_test_run() {
|
||||||
|
|
||||||
run_client "netroot=iscsi target1 target2 rd.iscsi.waitnet=0 rd.iscsi.testroute=0 default GW" \
|
run_client "netroot=iscsi target1 target2 rd.iscsi.waitnet=0 rd.iscsi.testroute=0 default GW" \
|
||||||
"root=LABEL=sysroot" \
|
"root=LABEL=sysroot" \
|
||||||
"ip=192.168.50.101::192.168.50.1:255.255.255.0::ens3:off" \
|
"ip=192.168.50.101::192.168.50.1:255.255.255.0::ens2:off" \
|
||||||
"ip=192.168.51.101::192.168.51.1:255.255.255.0::ens4:off" \
|
"ip=192.168.51.101::192.168.51.1:255.255.255.0::ens3:off" \
|
||||||
"netroot=iscsi:192.168.51.1::::iqn.2009-06.dracut:target1" \
|
"netroot=iscsi:192.168.51.1::::iqn.2009-06.dracut:target1" \
|
||||||
"netroot=iscsi:192.168.50.1::::iqn.2009-06.dracut:target2" \
|
"netroot=iscsi:192.168.50.1::::iqn.2009-06.dracut:target2" \
|
||||||
"rd.iscsi.firmware" \
|
"rd.iscsi.firmware" \
|
||||||
|
@ -145,6 +150,7 @@ test_setup() {
|
||||||
|
|
||||||
kernel=$KVERSION
|
kernel=$KVERSION
|
||||||
# Create what will eventually be our root filesystem onto an overlay
|
# Create what will eventually be our root filesystem onto an overlay
|
||||||
|
rm -rf -- $TESTDIR/overlay
|
||||||
(
|
(
|
||||||
export initdir=$TESTDIR/overlay/source
|
export initdir=$TESTDIR/overlay/source
|
||||||
. $basedir/dracut-init.sh
|
. $basedir/dracut-init.sh
|
||||||
|
@ -201,25 +207,10 @@ test_setup() {
|
||||||
-drive format=raw,index=1,media=disk,file=$TESTDIR/client.img \
|
-drive format=raw,index=1,media=disk,file=$TESTDIR/client.img \
|
||||||
-drive format=raw,index=2,media=disk,file=$TESTDIR/iscsidisk2.img \
|
-drive format=raw,index=2,media=disk,file=$TESTDIR/iscsidisk2.img \
|
||||||
-drive format=raw,index=3,media=disk,file=$TESTDIR/iscsidisk3.img \
|
-drive format=raw,index=3,media=disk,file=$TESTDIR/iscsidisk3.img \
|
||||||
-smp 2 -m 512M -nographic -net none \
|
|
||||||
-append "root=/dev/fakeroot rw rootfstype=ext3 quiet console=ttyS0,115200n81 selinux=0" \
|
-append "root=/dev/fakeroot rw rootfstype=ext3 quiet console=ttyS0,115200n81 selinux=0" \
|
||||||
-initrd $TESTDIR/initramfs.makeroot || return 1
|
-initrd $TESTDIR/initramfs.makeroot || return 1
|
||||||
grep -F -m 1 -q dracut-root-block-created $TESTDIR/client.img || return 1
|
grep -F -m 1 -q dracut-root-block-created $TESTDIR/client.img || return 1
|
||||||
rm -- $TESTDIR/client.img
|
rm -- $TESTDIR/client.img
|
||||||
(
|
|
||||||
export initdir=$TESTDIR/overlay
|
|
||||||
. $basedir/dracut-init.sh
|
|
||||||
inst_multiple poweroff shutdown
|
|
||||||
inst_hook shutdown-emergency 000 ./hard-off.sh
|
|
||||||
inst_hook emergency 000 ./hard-off.sh
|
|
||||||
inst_simple ./99-idesymlinks.rules /etc/udev/rules.d/99-idesymlinks.rules
|
|
||||||
)
|
|
||||||
$basedir/dracut.sh -l -i $TESTDIR/overlay / \
|
|
||||||
-o "dash plymouth dmraid nfs" \
|
|
||||||
-a "debug" \
|
|
||||||
-d "af_packet piix ide-gd_mod ata_piix ext3 sd_mod" \
|
|
||||||
--no-hostonly-cmdline -N \
|
|
||||||
-f $TESTDIR/initramfs.testing $KVERSION || return 1
|
|
||||||
|
|
||||||
# Make server root
|
# Make server root
|
||||||
dd if=/dev/null of=$TESTDIR/server.ext3 bs=1M seek=60
|
dd if=/dev/null of=$TESTDIR/server.ext3 bs=1M seek=60
|
||||||
|
@ -228,6 +219,7 @@ test_setup() {
|
||||||
mount -o loop $TESTDIR/server.ext3 $TESTDIR/mnt
|
mount -o loop $TESTDIR/server.ext3 $TESTDIR/mnt
|
||||||
|
|
||||||
kernel=$KVERSION
|
kernel=$KVERSION
|
||||||
|
rm -rf -- $TESTDIR/overlay
|
||||||
(
|
(
|
||||||
export initdir=$TESTDIR/mnt
|
export initdir=$TESTDIR/mnt
|
||||||
. $basedir/dracut-init.sh
|
. $basedir/dracut-init.sh
|
||||||
|
@ -271,6 +263,25 @@ test_setup() {
|
||||||
--no-hostonly-cmdline -N \
|
--no-hostonly-cmdline -N \
|
||||||
-f $TESTDIR/initramfs.server $KVERSION || return 1
|
-f $TESTDIR/initramfs.server $KVERSION || return 1
|
||||||
|
|
||||||
|
|
||||||
|
# Make client dracut image
|
||||||
|
rm -rf -- $TESTDIR/overlay
|
||||||
|
(
|
||||||
|
export initdir=$TESTDIR/overlay
|
||||||
|
. $basedir/dracut-init.sh
|
||||||
|
inst_multiple poweroff shutdown
|
||||||
|
inst_hook shutdown-emergency 000 ./hard-off.sh
|
||||||
|
inst_hook emergency 000 ./hard-off.sh
|
||||||
|
inst_simple ./99-idesymlinks.rules /etc/udev/rules.d/99-idesymlinks.rules
|
||||||
|
)
|
||||||
|
$basedir/dracut.sh -l -i $TESTDIR/overlay / \
|
||||||
|
-o "dash plymouth dmraid nfs ${OMIT_NETWORK}" \
|
||||||
|
-a "debug ${USE_NETWORK}" \
|
||||||
|
-d "af_packet piix ide-gd_mod ata_piix ext3 sd_mod" \
|
||||||
|
--no-hostonly-cmdline -N \
|
||||||
|
-f $TESTDIR/initramfs.testing $KVERSION || return 1
|
||||||
|
|
||||||
|
rm -rf -- $TESTDIR/overlay
|
||||||
}
|
}
|
||||||
|
|
||||||
test_cleanup() {
|
test_cleanup() {
|
|
@ -0,0 +1,12 @@
|
||||||
|
.PHONY: all setup clean run
|
||||||
|
|
||||||
|
BASETEST=../TEST-35-ISCSI-MULTI
|
||||||
|
|
||||||
|
all:
|
||||||
|
@$(MAKE) NM=1 -s --no-print-directory -C $(BASETEST) all
|
||||||
|
setup:
|
||||||
|
@$(MAKE) NM=1 -s --no-print-directory -C $(BASETEST) setup
|
||||||
|
clean:
|
||||||
|
@$(MAKE) NM=1 -s --no-print-directory -C $(BASETEST) clean
|
||||||
|
run:
|
||||||
|
@$(MAKE) NM=1 -s --no-print-directory -C $(BASETEST) run
|
|
@ -33,13 +33,10 @@ run_server() {
|
||||||
-drive format=raw,index=0,media=disk,file=$TESTDIR/server.ext2 \
|
-drive format=raw,index=0,media=disk,file=$TESTDIR/server.ext2 \
|
||||||
-drive format=raw,index=1,media=disk,file=$TESTDIR/nbd.ext2 \
|
-drive format=raw,index=1,media=disk,file=$TESTDIR/nbd.ext2 \
|
||||||
-drive format=raw,index=2,media=disk,file=$TESTDIR/encrypted.ext2 \
|
-drive format=raw,index=2,media=disk,file=$TESTDIR/encrypted.ext2 \
|
||||||
-m 512M -smp 2 \
|
|
||||||
-display none \
|
|
||||||
-net nic,macaddr=52:54:00:12:34:56,model=e1000 \
|
-net nic,macaddr=52:54:00:12:34:56,model=e1000 \
|
||||||
-net socket,listen=127.0.0.1:12340 \
|
-net socket,listen=127.0.0.1:12340 \
|
||||||
${SERIAL:+-serial "$SERIAL"} \
|
${SERIAL:+-serial "$SERIAL"} \
|
||||||
${SERIAL:--serial file:"$TESTDIR"/server.log} \
|
${SERIAL:--serial file:"$TESTDIR"/server.log} \
|
||||||
-no-reboot \
|
|
||||||
-append "panic=1 systemd.crash_reboot root=/dev/sda rootfstype=ext2 rw quiet console=ttyS0,115200n81 selinux=0" \
|
-append "panic=1 systemd.crash_reboot root=/dev/sda rootfstype=ext2 rw quiet console=ttyS0,115200n81 selinux=0" \
|
||||||
-initrd $TESTDIR/initramfs.server -pidfile $TESTDIR/server.pid -daemonize || return 1
|
-initrd $TESTDIR/initramfs.server -pidfile $TESTDIR/server.pid -daemonize || return 1
|
||||||
chmod 644 $TESTDIR/server.pid || return 1
|
chmod 644 $TESTDIR/server.pid || return 1
|
||||||
|
@ -80,11 +77,8 @@ client_test() {
|
||||||
|
|
||||||
$testdir/run-qemu \
|
$testdir/run-qemu \
|
||||||
-drive format=raw,index=0,media=disk,file=$TESTDIR/flag.img \
|
-drive format=raw,index=0,media=disk,file=$TESTDIR/flag.img \
|
||||||
-m 512M -smp 2 \
|
|
||||||
-nographic \
|
|
||||||
-net nic,macaddr=$mac,model=e1000 \
|
-net nic,macaddr=$mac,model=e1000 \
|
||||||
-net socket,connect=127.0.0.1:12340 \
|
-net socket,connect=127.0.0.1:12340 \
|
||||||
-no-reboot \
|
|
||||||
-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 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
|
-initrd $TESTDIR/initramfs.testing
|
||||||
|
|
||||||
|
@ -279,8 +273,6 @@ make_encrypted_root() {
|
||||||
$testdir/run-qemu \
|
$testdir/run-qemu \
|
||||||
-drive format=raw,index=0,media=disk,file=$TESTDIR/flag.img \
|
-drive format=raw,index=0,media=disk,file=$TESTDIR/flag.img \
|
||||||
-drive format=raw,index=1,media=disk,file=$TESTDIR/encrypted.ext2 \
|
-drive format=raw,index=1,media=disk,file=$TESTDIR/encrypted.ext2 \
|
||||||
-m 512M -smp 2\
|
|
||||||
-nographic -net none \
|
|
||||||
-append "root=/dev/fakeroot rw quiet console=ttyS0,115200n81 selinux=0" \
|
-append "root=/dev/fakeroot rw quiet console=ttyS0,115200n81 selinux=0" \
|
||||||
-initrd $TESTDIR/initramfs.makeroot || return 1
|
-initrd $TESTDIR/initramfs.makeroot || return 1
|
||||||
grep -F -m 1 -q dracut-root-block-created $TESTDIR/flag.img || return 1
|
grep -F -m 1 -q dracut-root-block-created $TESTDIR/flag.img || return 1
|
||||||
|
|
|
@ -0,0 +1,12 @@
|
||||||
|
.PHONY: all setup clean run
|
||||||
|
|
||||||
|
BASETEST=../TEST-20-NFS
|
||||||
|
|
||||||
|
all:
|
||||||
|
@$(MAKE) NM=1 -s --no-print-directory -C $(BASETEST) all
|
||||||
|
setup:
|
||||||
|
@$(MAKE) NM=1 -s --no-print-directory -C $(BASETEST) setup
|
||||||
|
clean:
|
||||||
|
@$(MAKE) NM=1 -s --no-print-directory -C $(BASETEST) clean
|
||||||
|
run:
|
||||||
|
@$(MAKE) NM=1 -s --no-print-directory -C $(BASETEST) run
|
|
@ -84,7 +84,7 @@ rpc.nfsd
|
||||||
>/dev/watchdog
|
>/dev/watchdog
|
||||||
rpc.mountd
|
rpc.mountd
|
||||||
>/dev/watchdog
|
>/dev/watchdog
|
||||||
rpc.idmapd
|
rpc.idmapd -S
|
||||||
>/dev/watchdog
|
>/dev/watchdog
|
||||||
exportfs -r
|
exportfs -r
|
||||||
>/dev/watchdog
|
>/dev/watchdog
|
||||||
|
|
|
@ -1,5 +1,14 @@
|
||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
TEST_DESCRIPTION="root filesystem on NFS with multiple nics"
|
|
||||||
|
if [[ $NM ]]; then
|
||||||
|
USE_NETWORK="network-manager"
|
||||||
|
OMIT_NETWORK="network-legacy"
|
||||||
|
else
|
||||||
|
USE_NETWORK="network-legacy"
|
||||||
|
OMIT_NETWORK="network-manager"
|
||||||
|
fi
|
||||||
|
|
||||||
|
TEST_DESCRIPTION="root filesystem on NFS with multiple nics with $USE_NETWORK"
|
||||||
|
|
||||||
KVERSION=${KVERSION-$(uname -r)}
|
KVERSION=${KVERSION-$(uname -r)}
|
||||||
|
|
||||||
|
@ -15,14 +24,11 @@ run_server() {
|
||||||
|
|
||||||
$testdir/run-qemu \
|
$testdir/run-qemu \
|
||||||
-drive format=raw,index=0,media=disk,file="$TESTDIR"/server.ext3 \
|
-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 socket,listen=127.0.0.1:12350 \
|
||||||
-net nic,macaddr=52:54:01:12:34:56,model=e1000 \
|
-net nic,macaddr=52:54:01:12:34:56,model=e1000 \
|
||||||
${SERIAL:+-serial "$SERIAL"} \
|
${SERIAL:+-serial "$SERIAL"} \
|
||||||
${SERIAL:--serial file:"$TESTDIR"/server.log} \
|
${SERIAL:--serial file:"$TESTDIR"/server.log} \
|
||||||
-watchdog i6300esb -watchdog-action poweroff \
|
-watchdog i6300esb -watchdog-action poweroff \
|
||||||
-no-reboot \
|
|
||||||
-append "panic=1 systemd.crash_reboot loglevel=7 root=/dev/sda rootfstype=ext3 rw console=ttyS0,115200n81 selinux=0" \
|
-append "panic=1 systemd.crash_reboot loglevel=7 root=/dev/sda rootfstype=ext3 rw console=ttyS0,115200n81 selinux=0" \
|
||||||
-initrd "$TESTDIR"/initramfs.server \
|
-initrd "$TESTDIR"/initramfs.server \
|
||||||
-pidfile "$TESTDIR"/server.pid -daemonize || return 1
|
-pidfile "$TESTDIR"/server.pid -daemonize || return 1
|
||||||
|
@ -33,9 +39,9 @@ run_server() {
|
||||||
tty -s && stty sane
|
tty -s && stty sane
|
||||||
|
|
||||||
if ! [[ $SERIAL ]]; then
|
if ! [[ $SERIAL ]]; then
|
||||||
echo "Waiting for the server to startup"
|
|
||||||
while : ; do
|
while : ; do
|
||||||
grep Serving "$TESTDIR"/server.log && break
|
grep Serving "$TESTDIR"/server.log && break
|
||||||
|
echo "Waiting for the server to startup"
|
||||||
sleep 1
|
sleep 1
|
||||||
done
|
done
|
||||||
else
|
else
|
||||||
|
@ -60,7 +66,7 @@ client_test() {
|
||||||
return 1
|
return 1
|
||||||
fi
|
fi
|
||||||
|
|
||||||
$testdir/run-qemu -drive format=raw,index=0,media=disk,file="$TESTDIR"/client.img -m 512M -smp 2 -nographic \
|
$testdir/run-qemu -drive format=raw,index=0,media=disk,file="$TESTDIR"/client.img \
|
||||||
-net socket,connect=127.0.0.1:12350 \
|
-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:$mac1,model=e1000 \
|
||||||
-net nic,macaddr=52:54:00:12:34:$mac2,model=e1000 \
|
-net nic,macaddr=52:54:00:12:34:$mac2,model=e1000 \
|
||||||
|
@ -70,8 +76,7 @@ client_test() {
|
||||||
-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 \
|
-device e1000,netdev=n2,mac=52:54:00:12:34:99 \
|
||||||
-watchdog i6300esb -watchdog-action poweroff \
|
-watchdog i6300esb -watchdog-action poweroff \
|
||||||
-no-reboot \
|
-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 "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 loglevel=7" \
|
|
||||||
-initrd "$TESTDIR"/initramfs.testing
|
-initrd "$TESTDIR"/initramfs.testing
|
||||||
|
|
||||||
{ read OK; read IFACES; } < "$TESTDIR"/client.img
|
{ read OK; read IFACES; } < "$TESTDIR"/client.img
|
||||||
|
@ -122,45 +127,46 @@ test_client() {
|
||||||
client_test "MULTINIC root=nfs BOOTIF=" \
|
client_test "MULTINIC root=nfs BOOTIF=" \
|
||||||
00 01 02 \
|
00 01 02 \
|
||||||
"root=nfs:192.168.50.1:/nfs/client BOOTIF=52-54-00-12-34-00" \
|
"root=nfs:192.168.50.1:/nfs/client BOOTIF=52-54-00-12-34-00" \
|
||||||
"ens3" || return 1
|
"ens2" || return 1
|
||||||
|
|
||||||
client_test "MULTINIC root=nfs BOOTIF= ip=ens4:dhcp" \
|
client_test "MULTINIC root=nfs BOOTIF= ip=ens4:dhcp" \
|
||||||
00 01 02 \
|
00 01 02 \
|
||||||
"root=nfs:192.168.50.1:/nfs/client BOOTIF=52-54-00-12-34-00 ip=ens4:dhcp" \
|
"root=nfs:192.168.50.1:/nfs/client BOOTIF=52-54-00-12-34-00 ip=ens3:dhcp" \
|
||||||
"ens3 ens4" || return 1
|
"ens2 ens3" || return 1
|
||||||
|
|
||||||
# PXE Style BOOTIF= with dhcp root-path
|
# PXE Style BOOTIF= with dhcp root-path
|
||||||
client_test "MULTINIC root=dhcp BOOTIF=" \
|
client_test "MULTINIC root=dhcp BOOTIF=" \
|
||||||
00 01 02 \
|
00 01 02 \
|
||||||
"root=dhcp BOOTIF=52-54-00-12-34-02" \
|
"root=dhcp BOOTIF=52-54-00-12-34-02" \
|
||||||
"ens5" || return 1
|
"ens4" || return 1
|
||||||
|
|
||||||
# Multinic case, where only one nic works
|
# Multinic case, where only one nic works
|
||||||
client_test "MULTINIC root=nfs ip=dhcp" \
|
client_test "MULTINIC root=nfs ip=dhcp" \
|
||||||
FF 00 FE \
|
FF 00 FE \
|
||||||
"root=nfs:192.168.50.1:/nfs/client ip=dhcp" \
|
"root=nfs:192.168.50.1:/nfs/client ip=dhcp" \
|
||||||
"ens4" || return 1
|
"ens3" || return 1
|
||||||
|
|
||||||
# Require two interfaces
|
# Require two interfaces
|
||||||
client_test "MULTINIC root=nfs ip=ens4:dhcp ip=ens5:dhcp bootdev=ens4" \
|
client_test "MULTINIC root=nfs ip=ens3:dhcp ip=ens4:dhcp bootdev=ens3" \
|
||||||
00 01 02 \
|
00 01 02 \
|
||||||
"root=nfs:192.168.50.1:/nfs/client ip=ens4:dhcp ip=ens5:dhcp bootdev=ens4" \
|
"root=nfs:192.168.50.1:/nfs/client ip=ens3:dhcp ip=ens4:dhcp bootdev=ens3" \
|
||||||
"ens4 ens5" || return 1
|
"ens3 ens4" || return 1
|
||||||
|
|
||||||
# Require three interfaces with dhcp root-path
|
# Require three interfaces with dhcp root-path
|
||||||
client_test "MULTINIC root=dhcp ip=ens3:dhcp ip=ens4:dhcp ip=ens5:dhcp bootdev=ens5" \
|
client_test "MULTINIC root=dhcp ip=ens2:dhcp ip=ens3:dhcp ip=ens4:dhcp bootdev=ens4" \
|
||||||
00 01 02 \
|
00 01 02 \
|
||||||
"root=dhcp ip=ens3:dhcp ip=ens4:dhcp ip=ens5:dhcp bootdev=ens5" \
|
"root=dhcp ip=ens2:dhcp ip=ens3:dhcp ip=ens4:dhcp bootdev=ens4" \
|
||||||
"ens3 ens4 ens5" || return 1
|
"ens2 ens3 ens4" || return 1
|
||||||
|
|
||||||
client_test "MULTINIC bonding" \
|
client_test "MULTINIC bonding" \
|
||||||
00 01 02 \
|
00 01 02 \
|
||||||
"root=nfs:192.168.50.1:/nfs/client ip=bond0:dhcp bond=bond0:ens3,ens4,ens5:mode=balance-rr" \
|
"root=nfs:192.168.50.1:/nfs/client ip=bond0:dhcp bond=bond0:ens2,ens3,ens4:mode=balance-rr" \
|
||||||
"bond0" || return 1
|
"bond0" || return 1
|
||||||
|
|
||||||
|
# bridge, where only one interface is actually connected
|
||||||
client_test "MULTINIC bridging" \
|
client_test "MULTINIC bridging" \
|
||||||
00 01 02 \
|
00 01 02 \
|
||||||
"root=nfs:192.168.50.1:/nfs/client ip=bridge0:dhcp bridge=bridge0:ens3,ens6,ens7" \
|
"root=nfs:192.168.50.1:/nfs/client ip=bridge0:dhcp bridge=bridge0:ens2,ens6,ens7" \
|
||||||
"bridge0" || return 1
|
"bridge0" || return 1
|
||||||
return 0
|
return 0
|
||||||
}
|
}
|
||||||
|
@ -303,8 +309,8 @@ test_setup() {
|
||||||
# Make client's dracut image
|
# Make client's dracut image
|
||||||
$basedir/dracut.sh \
|
$basedir/dracut.sh \
|
||||||
-l -i "$TESTDIR"/overlay / \
|
-l -i "$TESTDIR"/overlay / \
|
||||||
-o "plymouth" \
|
-o "plymouth ${OMIT_NETWORK}" \
|
||||||
-a "debug" \
|
-a "debug ${USE_NETWORK}" \
|
||||||
-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 "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 \
|
--no-hostonly-cmdline -N \
|
||||||
-f "$TESTDIR"/initramfs.testing "$KVERSION" || return 1
|
-f "$TESTDIR"/initramfs.testing "$KVERSION" || return 1
|
||||||
|
|
|
@ -0,0 +1,12 @@
|
||||||
|
.PHONY: all setup clean run
|
||||||
|
|
||||||
|
BASETEST=../TEST-50-MULTINIC
|
||||||
|
|
||||||
|
all:
|
||||||
|
@$(MAKE) NM=1 -s --no-print-directory -C $(BASETEST) all
|
||||||
|
setup:
|
||||||
|
@$(MAKE) NM=1 -s --no-print-directory -C $(BASETEST) setup
|
||||||
|
clean:
|
||||||
|
@$(MAKE) NM=1 -s --no-print-directory -C $(BASETEST) clean
|
||||||
|
run:
|
||||||
|
@$(MAKE) NM=1 -s --no-print-directory -C $(BASETEST) run
|
|
@ -12,8 +12,8 @@ echo "made it to the rootfs! Powering down."
|
||||||
echo OK
|
echo OK
|
||||||
ip -o -4 address show scope global | while read n if rest; do echo $if;done | sort
|
ip -o -4 address show scope global | while read n if rest; do echo $if;done | sort
|
||||||
for i in /run/initramfs/state/etc/sysconfig/network-scripts/ifcfg-*; do
|
for i in /run/initramfs/state/etc/sysconfig/network-scripts/ifcfg-*; do
|
||||||
echo $i
|
echo $i
|
||||||
grep -v 'UUID=' $i
|
grep -v 'UUID=' $i
|
||||||
done
|
done
|
||||||
echo EOF
|
echo EOF
|
||||||
) > /dev/sda
|
) > /dev/sda
|
||||||
|
|
|
@ -53,38 +53,38 @@ linkup() {
|
||||||
&& wait_for_if_up $1 2>/dev/null
|
&& wait_for_if_up $1 2>/dev/null
|
||||||
}
|
}
|
||||||
|
|
||||||
wait_for_if_link eth0 ens3
|
wait_for_if_link eth0 ens2
|
||||||
wait_for_if_link eth1 ens4
|
wait_for_if_link eth1 ens3
|
||||||
wait_for_if_link eth2 ens5
|
wait_for_if_link eth2 ens4
|
||||||
wait_for_if_link eth3 ens6
|
wait_for_if_link eth3 ens5
|
||||||
|
|
||||||
modprobe --all -b -q 8021q ipvlan macvlan
|
modprobe --all -b -q 8021q ipvlan macvlan
|
||||||
>/dev/watchdog
|
>/dev/watchdog
|
||||||
ip addr add 127.0.0.1/8 dev lo
|
ip addr add 127.0.0.1/8 dev lo
|
||||||
linkup lo
|
linkup lo
|
||||||
ip link set dev eth0 name ens3
|
ip link set dev eth0 name ens2
|
||||||
ip addr add 192.168.50.1/24 dev ens3
|
ip addr add 192.168.50.1/24 dev ens2
|
||||||
linkup ens3
|
linkup ens2
|
||||||
>/dev/watchdog
|
>/dev/watchdog
|
||||||
ip link set dev eth1 name ens4
|
ip link set dev eth1 name ens3
|
||||||
ip link add dev ens4.1 link ens4 type vlan id 1
|
ip link add dev ens3.1 link ens3 type vlan id 1
|
||||||
ip link add dev ens4.2 link ens4 type vlan id 2
|
ip link add dev ens3.2 link ens3 type vlan id 2
|
||||||
ip link add dev ens4.3 link ens4 type vlan id 3
|
ip link add dev ens3.3 link ens3 type vlan id 3
|
||||||
ip link add dev ens4.4 link ens4 type vlan id 4
|
ip link add dev ens3.4 link ens3 type vlan id 4
|
||||||
ip addr add 192.168.54.1/24 dev ens4.1
|
ip addr add 192.168.54.1/24 dev ens3.1
|
||||||
ip addr add 192.168.55.1/24 dev ens4.2
|
ip addr add 192.168.55.1/24 dev ens3.2
|
||||||
ip addr add 192.168.56.1/24 dev ens4.3
|
ip addr add 192.168.56.1/24 dev ens3.3
|
||||||
ip addr add 192.168.57.1/24 dev ens4.4
|
ip addr add 192.168.57.1/24 dev ens3.4
|
||||||
|
linkup ens3
|
||||||
|
ip link set dev ens3.1 up
|
||||||
|
ip link set dev ens3.2 up
|
||||||
|
ip link set dev ens3.3 up
|
||||||
|
ip link set dev ens3.4 up
|
||||||
|
ip link set dev eth2 name ens4
|
||||||
|
ip addr add 192.168.51.1/24 dev ens4
|
||||||
linkup ens4
|
linkup ens4
|
||||||
ip link set dev ens4.1 up
|
ip link set dev eth3 name ens5
|
||||||
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
|
linkup ens5
|
||||||
ip link set dev eth3 name ens6
|
|
||||||
linkup ens6
|
|
||||||
>/dev/watchdog
|
>/dev/watchdog
|
||||||
modprobe af_packet
|
modprobe af_packet
|
||||||
> /dev/watchdog
|
> /dev/watchdog
|
||||||
|
@ -107,7 +107,7 @@ rpc.nfsd
|
||||||
>/dev/watchdog
|
>/dev/watchdog
|
||||||
rpc.mountd
|
rpc.mountd
|
||||||
>/dev/watchdog
|
>/dev/watchdog
|
||||||
rpc.idmapd
|
rpc.idmapd -S
|
||||||
>/dev/watchdog
|
>/dev/watchdog
|
||||||
exportfs -r
|
exportfs -r
|
||||||
>/dev/watchdog
|
>/dev/watchdog
|
||||||
|
@ -115,10 +115,10 @@ exportfs -r
|
||||||
>/dev/watchdog
|
>/dev/watchdog
|
||||||
chmod 777 /var/lib/dhcpd/dhcpd.leases
|
chmod 777 /var/lib/dhcpd/dhcpd.leases
|
||||||
>/dev/watchdog
|
>/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 ens2 ens4
|
||||||
#echo -n 'V' > /dev/watchdog
|
#echo -n 'V' > /dev/watchdog
|
||||||
#sh -i
|
#sh -i
|
||||||
#tcpdump -i ens3
|
#tcpdump -i ens2
|
||||||
# Wait forever for the VM to die
|
# Wait forever for the VM to die
|
||||||
echo "Serving"
|
echo "Serving"
|
||||||
while :; do
|
while :; do
|
||||||
|
|
|
@ -1,7 +1,18 @@
|
||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
# -*- mode: shell-script; indent-tabs-mode: nil; sh-basic-offset: 4; -*-
|
# -*- mode: shell-script; indent-tabs-mode: nil; sh-basic-offset: 4; -*-
|
||||||
# ex: ts=8 sw=4 sts=4 et filetype=sh
|
# ex: ts=8 sw=4 sts=4 et filetype=sh
|
||||||
TEST_DESCRIPTION="root filesystem on NFS with bridging/bonding/vlan"
|
|
||||||
|
|
||||||
|
if [[ $NM ]]; then
|
||||||
|
USE_NETWORK="network-manager"
|
||||||
|
OMIT_NETWORK="network-legacy"
|
||||||
|
else
|
||||||
|
USE_NETWORK="network-legacy"
|
||||||
|
OMIT_NETWORK="network-manager"
|
||||||
|
fi
|
||||||
|
|
||||||
|
TEST_DESCRIPTION="root filesystem on NFS with bridging/bonding/vlan with $USE_NETWORK"
|
||||||
|
|
||||||
KVERSION=${KVERSION-$(uname -r)}
|
KVERSION=${KVERSION-$(uname -r)}
|
||||||
|
|
||||||
# Uncomment this to debug failures
|
# Uncomment this to debug failures
|
||||||
|
@ -17,8 +28,6 @@ run_server() {
|
||||||
|
|
||||||
$testdir/run-qemu \
|
$testdir/run-qemu \
|
||||||
-hda "$TESTDIR"/server.ext3 \
|
-hda "$TESTDIR"/server.ext3 \
|
||||||
-m 512M -smp 2 \
|
|
||||||
-display none \
|
|
||||||
-netdev socket,id=n0,listen=127.0.0.1:12370 \
|
-netdev socket,id=n0,listen=127.0.0.1:12370 \
|
||||||
-netdev socket,id=n1,listen=127.0.0.1:12371 \
|
-netdev socket,id=n1,listen=127.0.0.1:12371 \
|
||||||
-netdev socket,id=n2,listen=127.0.0.1:12372 \
|
-netdev socket,id=n2,listen=127.0.0.1:12372 \
|
||||||
|
@ -30,7 +39,6 @@ run_server() {
|
||||||
${SERIAL:+-serial "$SERIAL"} \
|
${SERIAL:+-serial "$SERIAL"} \
|
||||||
${SERIAL:--serial file:"$TESTDIR"/server.log} \
|
${SERIAL:--serial file:"$TESTDIR"/server.log} \
|
||||||
-watchdog i6300esb -watchdog-action poweroff \
|
-watchdog i6300esb -watchdog-action poweroff \
|
||||||
-no-reboot \
|
|
||||||
-append "panic=1 loglevel=7 root=/dev/sda rootfstype=ext3 rw console=ttyS0,115200n81 selinux=0 rd.debug" \
|
-append "panic=1 loglevel=7 root=/dev/sda rootfstype=ext3 rw console=ttyS0,115200n81 selinux=0 rd.debug" \
|
||||||
-initrd "$TESTDIR"/initramfs.server \
|
-initrd "$TESTDIR"/initramfs.server \
|
||||||
-pidfile "$TESTDIR"/server.pid -daemonize || return 1
|
-pidfile "$TESTDIR"/server.pid -daemonize || return 1
|
||||||
|
@ -75,37 +83,18 @@ client_test() {
|
||||||
nic3=" -netdev hubport,id=n3,hubid=3"
|
nic3=" -netdev hubport,id=n3,hubid=3"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
if $testdir/run-qemu --help | grep -qF -m1 'netdev hubport,id=str,hubid=n[,netdev=nd]' && echo OK; then
|
$testdir/run-qemu \
|
||||||
$testdir/run-qemu \
|
-hda "$TESTDIR"/client.img \
|
||||||
-hda "$TESTDIR"/client.img -m 512M -smp 2 -nographic \
|
-netdev socket,connect=127.0.0.1:12370,id=s1 \
|
||||||
-netdev socket,connect=127.0.0.1:12370,id=s1 \
|
-netdev hubport,hubid=1,id=h1,netdev=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=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 \
|
||||||
-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 \
|
||||||
$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 \
|
||||||
-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 \
|
||||||
$nic3 -device e1000,mac=52:54:00:12:34:05,netdev=n3 \
|
-watchdog i6300esb -watchdog-action poweroff \
|
||||||
-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" \
|
||||||
-no-reboot \
|
-initrd "$TESTDIR"/initramfs.testing
|
||||||
-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
|
|
||||||
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 systemd.crash_reboot rd.debug $DEBUGFAIL rd.retry=5 rw console=ttyS0,115200n81 selinux=0 init=/sbin/init" \
|
|
||||||
-initrd "$TESTDIR"/initramfs.testing
|
|
||||||
fi
|
|
||||||
|
|
||||||
{
|
{
|
||||||
read OK
|
read OK
|
||||||
|
@ -143,51 +132,12 @@ test_run() {
|
||||||
}
|
}
|
||||||
|
|
||||||
test_client() {
|
test_client() {
|
||||||
if $testdir/run-qemu --help | grep -qF -m1 'netdev hubport,id=str,hubid=n[,netdev=nd]'; then
|
if [[ $NM ]]; then
|
||||||
client_test "Multiple VLAN" \
|
EXPECT='ens3 ens5.0004 ens5.3 vlan0001 vlan2 /run/initramfs/state/etc/sysconfig/network-scripts/ifcfg-* EOF '
|
||||||
"yes" \
|
|
||||||
"
|
|
||||||
vlan=vlan0001:ens6
|
|
||||||
vlan=vlan2:ens6
|
|
||||||
vlan=ens6.3:ens6
|
|
||||||
vlan=ens6.0004:ens6
|
|
||||||
ip=ens4: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:ens6.3:none
|
|
||||||
ip=192.168.57.104::192.168.57.1:24:test:ens6.0004:none
|
|
||||||
rd.neednet=1
|
|
||||||
root=nfs:192.168.50.1:/nfs/client bootdev=ens4
|
|
||||||
" \
|
|
||||||
'ens4 ens6.0004 ens6.3 vlan0001 vlan2 /run/initramfs/state/etc/sysconfig/network-scripts/ifcfg-ens4 # Generated by dracut initrd NAME="ens4" DEVICE="ens4" ONBOOT=yes NETBOOT=yes IPV6INIT=yes BOOTPROTO=dhcp TYPE=Ethernet /run/initramfs/state/etc/sysconfig/network-scripts/ifcfg-ens6.0004 # Generated by dracut initrd NAME="ens6.0004" ONBOOT=yes NETBOOT=yes BOOTPROTO=none IPADDR="192.168.57.104" PREFIX="24" GATEWAY="192.168.57.1" TYPE=Vlan DEVICE="ens6.0004" VLAN=yes PHYSDEV="ens6" /run/initramfs/state/etc/sysconfig/network-scripts/ifcfg-ens6.3 # Generated by dracut initrd NAME="ens6.3" ONBOOT=yes NETBOOT=yes BOOTPROTO=none IPADDR="192.168.56.103" PREFIX="24" GATEWAY="192.168.56.1" TYPE=Vlan DEVICE="ens6.3" VLAN=yes PHYSDEV="ens6" /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="ens6" /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="ens6" EOF ' \
|
|
||||||
|| return 1
|
|
||||||
|
|
||||||
client_test "Multiple Bonds" \
|
|
||||||
"yes" \
|
|
||||||
"
|
|
||||||
bond=bond0:ens4,ens5
|
|
||||||
bond=bond1:ens7,ens8
|
|
||||||
ip=bond0:dhcp
|
|
||||||
ip=bond1:dhcp
|
|
||||||
rd.neednet=1
|
|
||||||
root=nfs:192.168.50.1:/nfs/client bootdev=bond0
|
|
||||||
" \
|
|
||||||
'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-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-ens5 # Generated by dracut initrd NAME="ens5" TYPE=Ethernet ONBOOT=yes NETBOOT=yes SLAVE=yes MASTER="bond0" DEVICE="ens5" /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" /run/initramfs/state/etc/sysconfig/network-scripts/ifcfg-ens8 # Generated by dracut initrd NAME="ens8" TYPE=Ethernet ONBOOT=yes NETBOOT=yes SLAVE=yes MASTER="bond1" DEVICE="ens8" EOF ' \
|
|
||||||
|| return 1
|
|
||||||
|
|
||||||
client_test "Multiple Bridges" \
|
|
||||||
"no" \
|
|
||||||
"
|
|
||||||
bridge=br0:ens4,ens5
|
|
||||||
bridge=br1:ens7,ens8
|
|
||||||
ip=br0:dhcp
|
|
||||||
ip=br1:dhcp
|
|
||||||
rd.neednet=1
|
|
||||||
root=nfs:192.168.50.1:/nfs/client bootdev=br0
|
|
||||||
" \
|
|
||||||
'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-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-ens5 # Generated by dracut initrd NAME="ens5" TYPE=Ethernet ONBOOT=yes NETBOOT=yes BRIDGE="br0" DEVICE="ens5" /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" /run/initramfs/state/etc/sysconfig/network-scripts/ifcfg-ens8 # Generated by dracut initrd NAME="ens8" TYPE=Ethernet ONBOOT=yes NETBOOT=yes BRIDGE="br1" DEVICE="ens8" EOF ' \
|
|
||||||
|| return 1
|
|
||||||
else
|
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 '
|
||||||
|
fi
|
||||||
|
|
||||||
client_test "Multiple VLAN" \
|
client_test "Multiple VLAN" \
|
||||||
"yes" \
|
"yes" \
|
||||||
"
|
"
|
||||||
|
@ -203,35 +153,46 @@ ip=192.168.57.104::192.168.57.1:24:test:ens5.0004:none
|
||||||
rd.neednet=1
|
rd.neednet=1
|
||||||
root=nfs:192.168.50.1:/nfs/client bootdev=ens3
|
root=nfs:192.168.50.1:/nfs/client bootdev=ens3
|
||||||
" \
|
" \
|
||||||
'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" \
|
||||||
|| return 1
|
|| return 1
|
||||||
|
|
||||||
|
if [[ $NM ]]; then
|
||||||
|
EXPECT='bond0 bond1 /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 '
|
||||||
|
fi
|
||||||
|
|
||||||
client_test "Multiple Bonds" \
|
client_test "Multiple Bonds" \
|
||||||
"yes" \
|
"yes" \
|
||||||
"
|
"
|
||||||
bond=bond0:ens4,ens5
|
bond=bond0:ens3,ens4
|
||||||
bond=bond1:ens6,ens7
|
bond=bond1:ens6,ens7
|
||||||
ip=bond0:dhcp
|
ip=bond0:dhcp
|
||||||
ip=bond1:dhcp
|
ip=bond1:dhcp
|
||||||
rd.neednet=1
|
rd.neednet=1
|
||||||
root=nfs:192.168.50.1:/nfs/client bootdev=bond0
|
root=nfs:192.168.50.1:/nfs/client bootdev=bond0
|
||||||
" \
|
" \
|
||||||
'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-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-ens5 # Generated by dracut initrd NAME="ens5" TYPE=Ethernet ONBOOT=yes NETBOOT=yes SLAVE=yes MASTER="bond0" DEVICE="ens5" /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" \
|
||||||
|| return 1
|
|| return 1
|
||||||
|
|
||||||
|
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 '
|
||||||
|
fi
|
||||||
|
|
||||||
client_test "Multiple Bridges" \
|
client_test "Multiple Bridges" \
|
||||||
"no" \
|
"no" \
|
||||||
"
|
"
|
||||||
bridge=br0:ens4,ens5
|
bridge=br0:ens3,ens4
|
||||||
bridge=br1:ens6,ens7
|
bridge=br1:ens6,ens7
|
||||||
ip=br0:dhcp
|
ip=br0:dhcp
|
||||||
ip=br1:dhcp
|
ip=br1:dhcp
|
||||||
rd.neednet=1
|
rd.neednet=1
|
||||||
root=nfs:192.168.50.1:/nfs/client bootdev=br0
|
root=nfs:192.168.50.1:/nfs/client bootdev=br0
|
||||||
" \
|
" \
|
||||||
'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-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-ens5 # Generated by dracut initrd NAME="ens5" TYPE=Ethernet ONBOOT=yes NETBOOT=yes BRIDGE="br0" DEVICE="ens5" /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" \
|
||||||
|| return 1
|
|| return 1
|
||||||
fi
|
|
||||||
kill_server
|
kill_server
|
||||||
return 0
|
return 0
|
||||||
}
|
}
|
||||||
|
@ -369,8 +330,8 @@ test_setup() {
|
||||||
# Make client's dracut image
|
# Make client's dracut image
|
||||||
$basedir/dracut.sh -l -i "$TESTDIR"/overlay / \
|
$basedir/dracut.sh -l -i "$TESTDIR"/overlay / \
|
||||||
--no-early-microcode \
|
--no-early-microcode \
|
||||||
-o "plymouth" \
|
-o "plymouth ${OMIT_NETWORK}" \
|
||||||
-a "debug network-legacy" \
|
-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 e1000 nfsv2 nfsv3 nfsv4 nfs_acl nfs_layout_nfsv41_files sunrpc i6300esb ib700wdt" \
|
||||||
--no-hostonly-cmdline -N \
|
--no-hostonly-cmdline -N \
|
||||||
-f "$TESTDIR"/initramfs.testing "$KVERSION" || return 1
|
-f "$TESTDIR"/initramfs.testing "$KVERSION" || return 1
|
||||||
|
|
|
@ -0,0 +1,12 @@
|
||||||
|
.PHONY: all setup clean run
|
||||||
|
|
||||||
|
BASETEST=../TEST-60-BONDBRIDGEVLANIFCFG
|
||||||
|
|
||||||
|
all:
|
||||||
|
@$(MAKE) NM=1 -s --no-print-directory -C $(BASETEST) all
|
||||||
|
setup:
|
||||||
|
@$(MAKE) NM=1 -s --no-print-directory -C $(BASETEST) setup
|
||||||
|
clean:
|
||||||
|
@$(MAKE) NM=1 -s --no-print-directory -C $(BASETEST) clean
|
||||||
|
run:
|
||||||
|
@$(MAKE) NM=1 -s --no-print-directory -C $(BASETEST) run
|
|
@ -3,12 +3,12 @@
|
||||||
# We prefer kvm, kqemu, userspace in that order.
|
# We prefer kvm, kqemu, userspace in that order.
|
||||||
export PATH=/sbin:/bin:/usr/sbin:/usr/bin
|
export PATH=/sbin:/bin:/usr/sbin:/usr/bin
|
||||||
|
|
||||||
[[ -x /usr/bin/qemu ]] && BIN=/usr/bin/qemu && ARGS=""
|
[[ -x /usr/bin/qemu ]] && BIN=/usr/bin/qemu && ARGS="-cpu max"
|
||||||
$(lsmod | grep -q '^kqemu ') && BIN=/usr/bin/qemu && ARGS="-kernel-kqemu -cpu host"
|
$(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/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/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"
|
[[ -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=""
|
[[ -x /usr/bin/qemu-system-$(uname -i) ]] && BIN=/usr/bin/qemu-system-$(uname -i) && ARGS="-cpu max"
|
||||||
[[ -c /dev/kvm && -x /usr/bin/qemu-system-$(uname -i) ]] && BIN=/usr/bin/qemu-system-$(uname -i) && ARGS="-enable-kvm -cpu host"
|
[[ -c /dev/kvm && -x /usr/bin/qemu-system-$(uname -i) ]] && BIN=/usr/bin/qemu-system-$(uname -i) && ARGS="-enable-kvm -cpu host"
|
||||||
|
|
||||||
[[ $BIN ]] || {
|
[[ $BIN ]] || {
|
||||||
|
@ -17,8 +17,12 @@ $(lsmod | grep -q '^kqemu ') && BIN=/usr/bin/qemu && ARGS="-kernel-kqemu -cpu ho
|
||||||
exit 1
|
exit 1
|
||||||
}
|
}
|
||||||
|
|
||||||
# Provide rng device sourcing the hosts /dev/urandom
|
# Provide rng device sourcing the hosts /dev/urandom and other standard parameters
|
||||||
ARGS="$ARGS -device virtio-rng-pci"
|
ARGS="$ARGS -smp 2 -m 512 -nodefaults -vga none -display none -no-reboot -device virtio-rng-pci"
|
||||||
|
|
||||||
|
if ! [[ $* = *-daemonize* ]] && ! [[ $* = *-daemonize* ]]; then
|
||||||
|
ARGS="$ARGS -serial stdio"
|
||||||
|
fi
|
||||||
|
|
||||||
KVERSION=${KVERSION-$(uname -r)}
|
KVERSION=${KVERSION-$(uname -r)}
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue