← Back to team overview

kubuntu-council team mailing list archive

[Merge] ~cpete/ubuntu-manual-tests:cpete/update-amd64-netboot-tests into ubuntu-manual-tests:main

 

Chris Peterson has proposed merging ~cpete/ubuntu-manual-tests:cpete/update-amd64-netboot-tests into ubuntu-manual-tests:main.

Requested reviews:
  Steve Langasek (vorlon)

For more details, see:
https://code.launchpad.net/~cpete/ubuntu-manual-tests/+git/ubuntu-manual-tests/+merge/453468

These changes update the amd64 pxe netboot tests, for both UEFI and BIOS. I have re-written the instructions to direct the tester to only download the netboot artifacts, which should be now be included in the Ubuntu Server Subiquity product on the iso tracker. (At least for amd64) 

Additionally, I have removed references to apache, configuring autoinstall, and downloading the ISO. The netboot artifacts are always generated with the ISO build, and the bootloader configurations provided contain the URL to the respective ISO hosted on cdimage (the same url in the test download information). This means the test machine will download the correct iso directly without the user having to set up apache and serve it themselves. This also means we lose out on the simplicity of autoinstall, but I think the overall simplification of the test case is well worth it.  

Lastly, I have changed the names of the test files (but not the test case numbers) to be uniform with the other Ubuntu Server Subiquity amd64 testcases. This may require remapping these tests in the isotracker.
-- 
Your team Ubuntu Testcase Admins is subscribed to branch ubuntu-manual-tests:main.
diff --git a/testcases/image/1734_Netinstall (amd64 server live) b/testcases/image/1734_Netinstall (amd64 server live)
deleted file mode 100644
index 12c6e11..0000000
--- a/testcases/image/1734_Netinstall (amd64 server live)
+++ /dev/null
@@ -1,37 +0,0 @@
-This testcase is to run netboot installation on amd64 machines with live images. You need an installed Ubuntu machine in the same network.
-
-<em>Proceed in your native language if you wish. Instructions will remain in English.</em>
-
-RELEASE is the current development codename.
-HOST is the IP address of installed Ubuntu machine.
-On your installed Ubuntu machine.
-
-<dl>
-    <dt>sudo apt install -y tftpd-hpa apache2</dt>
-    <dt>sudo curl http://cdimage.ubuntu.com/ubuntu-server/daily-live/current/RELEASE-live-server-amd64.iso -o /var/www/html/test-live-server-amd64.iso</dt>
-    <dt>sudo mkdir /srv/tftp/grub</dt>
-    <dt>sudo mount -o loop,ro /var/www/html/test-live-server-amd64.iso /mnt</dt>
-    <dt>sudo cp /mnt/casper/initrd /srv/tftp</dt>
-    <dt>sudo cp /mnt/casper/vmlinuz /srv/tftp</dt>
-    <dt>sudo curl http://archive.ubuntu.com/ubuntu/dists/RELEASE/main/uefi/grub2-amd64/current/grubnetx64.efi -o /srv/tftp/grubnetx64.efi</dt>
-    <dt>echo "menuentry \"Netboot from Ubuntu Live image\" {" | sudo tee /srv/tftp/grub/grub.cfg</dt>
-    <dt>echo "  set gfxpayload=keep" | sudo tee -a /srv/tftp/grub/grub.cfg</dt>
-    <dt>echo "  linux /vmlinuz url=http://HOST/test-live-server-amd64.iso only-ubiquity ip=dhcp ---" | sudo tee -a /srv/tftp/grub/grub.cfg</dt>
-    <dt>echo "  initrd /initrd" | sudo tee -a /srv/tftp/grub/grub.cfg</dt>
-    <dt>echo "}" | sudo tee -a /srv/tftp/grub/grub.cfg</dt>
-</dl>
-
-You might also need to append machine specific kernel cmdline into grub.cfg. e.g. console=ttyS0,115200n8.
-
-Reconfigure the dhcp server for grubnetx64.efi as filename and next-server as installed Ubuntu machine. e.g.
-
-host testbed {
-  hardware ethernet 00:00:00:11:22:33;
-  next-server <host>;
-  filename "grubnetx64.efi";
-}
-
-Power on your amd64 machine and boot from ethernet. Connect to console output and you shall see grub menu. Press ENTER to load kernel and finish the installation.
-
-<strong>If you finish the installation, please <a href="results#add_result">submit</a> a 'passed' result.
-    If any action fails, or produces an unexpected result, please <a href="results#add_result">submit</a> a 'failed' result and <a href="../../buginstructions">file a bug</a>. Please be sure to include the bug number when you <a href="results#add_result">submit</a> your result.</strong>
diff --git a/testcases/image/1734_PXE UEFI Netboot (Server live) b/testcases/image/1734_PXE UEFI Netboot (Server live)
new file mode 100644
index 0000000..8b6d576
--- /dev/null
+++ b/testcases/image/1734_PXE UEFI Netboot (Server live)
@@ -0,0 +1,63 @@
+<p>
+This testcase is to run netboot installation on amd64 machines with <b>UEFI</b>
+firmware using live images. You need an installed Ubuntu machine in the same
+network, configured with a static IP, which will be functioning as a PXE server
+with DHCP.
+</p>
+
+<em>
+    Proceed in your native language if you wish. Instructions will remain in
+    English.
+</em>
+
+<dl>
+    <dt>HOST is the IP address of the machine acting as the PXE/DHCP server.</dt>
+    <dt>NETBOOT-URL is the compressed netboot artifacts archive, as listed in the
+        download links for the test case.</dt>
+    <dt>INTERFACE is the relevant network interface on the HOST.</dt>
+    <dt>STARTADDR and ENDADDR are the start and end points for dhcp addresses to
+        be handed out on this test network.  Choose appropriate values to match
+        the static network configuration of the HOST, and see the manpage for
+        dnsmasq for more details.</dt>
+</dl>
+
+
+<p>Install packages for the various services:</p>
+<dl>
+    <dt>sudo apt install -y curl dnsmasq tftpd-hpa</dt>
+</dl>
+
+<p>Configure /etc/dnsmasq.d/pxe.conf:</p>
+
+<pre>
+interface=INTERFACE,lo
+bind-interfaces
+dhcp-range=INTERFACE,STARTADDR,ENDADDR
+dhcp-boot=bootx64.efi
+enable-tftp
+tftp-root=/srv/tftp
+</pre>
+
+<p>Restart dnsmasq:</p>
+
+<dl>
+    <dt>sudo systemctl restart dnsmasq.service</dt>
+</dl>
+
+<p>Download the netboot artifacts:</p>
+<dl>
+    <dt>sudo curl NETBOOT-URL -o /tmp/netboot-artifacts.tar.gz</dt>
+    <dt>sudo tar -zxvf /tmp/netboot-artifacts.tar.gz --strip-components=2 -C /srv/tftp/</dt>
+</dl>
+
+
+
+<p>
+Power on the test machine and ensure that it boots PXE. Complete the installation
+(using the provided defaults where possible) and remove the device from the network once it's finished. Reboot the machine
+and ensure that you can log into the system with the username and password you
+provided.
+</p>
+
+<strong>If you finish the installation, please <a href="results#add_result">submit</a> a 'passed' result.
+    If any action fails, or produces an unexpected result, please <a href="results#add_result">submit</a> a 'failed' result and <a href="../../buginstructions">file a bug</a>. Please be sure to include the bug number when you <a href="results#add_result">submit</a> your result.</strong>
diff --git a/testcases/image/1759_PXE BIOS Netboot (Server live) b/testcases/image/1759_PXE BIOS Netboot (Server live)
new file mode 100644
index 0000000..a6d7adc
--- /dev/null
+++ b/testcases/image/1759_PXE BIOS Netboot (Server live)
@@ -0,0 +1,63 @@
+<p>
+This testcase is to run netboot installation on amd64 machines with <b>BIOS</b>
+firmware using live images. You need an installed Ubuntu machine in the same
+network, configured with a static IP, which will be functioning as a PXE server
+with DHCP.
+</p>
+
+<em>
+    Proceed in your native language if you wish. Instructions will remain in
+    English.
+</em>
+
+<dl>
+    <dt>HOST is the IP address of the machine acting as the PXE/DHCP server.</dt>
+    <dt>NETBOOT-URL is the compressed netboot artifacts archive, as listed in the
+        download links for the test case.</dt>
+    <dt>INTERFACE is the relevant network interface on the HOST.</dt>
+    <dt>STARTADDR and ENDADDR are the start and end points for dhcp addresses to
+        be handed out on this test network.  Choose appropriate values to match
+        the static network configuration of the HOST, and see the manpage for
+        dnsmasq for more details.</dt>
+</dl>
+
+
+<p>Install packages for the various services:</p>
+<dl>
+    <dt>sudo apt install -y curl dnsmasq tftpd-hpa</dt>
+</dl>
+
+<p>Configure /etc/dnsmasq.d/pxe.conf:</p>
+
+<pre>
+interface=INTERFACE,lo
+bind-interfaces
+dhcp-range=INTERFACE,STARTADDR,ENDADDR
+dhcp-boot=pxelinux.0
+enable-tftp
+tftp-root=/srv/tftp
+</pre>
+
+<p>Restart dnsmasq:</p>
+
+<dl>
+    <dt>sudo systemctl restart dnsmasq.service</dt>
+</dl>
+
+<p>Download the netboot artifacts:</p>
+<dl>
+    <dt>sudo curl NETBOOT-URL -o /tmp/netboot-artifacts.tar.gz</dt>
+    <dt>sudo tar -zxvf /tmp/netboot-artifacts.tar.gz --strip-components=2 -C /srv/tftp/</dt>
+</dl>
+
+
+
+<p>
+Power on the test machine and ensure that it boots PXE. Complete the installation
+(using the provided defaults where possible) and remove the device from the network once it's finished. Reboot the machine
+and ensure that you can log into the system with the username and password you
+provided.
+</p>
+
+<strong>If you finish the installation, please <a href="results#add_result">submit</a> a 'passed' result.
+    If any action fails, or produces an unexpected result, please <a href="results#add_result">submit</a> a 'failed' result and <a href="../../buginstructions">file a bug</a>. Please be sure to include the bug number when you <a href="results#add_result">submit</a> your result.</strong>
diff --git a/testcases/image/1759_PXE Netboot Live Server Autoinstall b/testcases/image/1759_PXE Netboot Live Server Autoinstall
deleted file mode 100644
index 6a31db6..0000000
--- a/testcases/image/1759_PXE Netboot Live Server Autoinstall
+++ /dev/null
@@ -1,80 +0,0 @@
-<p>
-This testcase is to run netboot installation on amd64 machines with live
-images. You need an installed Ubuntu machine in the same network, configured
-with a static IP, which will be functioning as a PXE server with DHCP.
-</p>
-
-<em>
-Proceed in your native language if you wish. Instructions will remain in
-English.
-</em>
-
-<dl>
- <dt>HOST is the IP address of the machine acting as the PXE/DHCP/HTTP
-     server.</dt>
- <dt>URL is the ISO being tested, as listed in the download links for
-     the test case.</dt>
- <dt>INTERFACE is the relevant network interface on the HOST.</dt>
- <dt>STARTADDR and ENDADDR are the start and end points for dhcp addresses to
-     be handed out on this test network.  Choose appropriate values to match
-     the static network configuration of the HOST, and see the manpage for
-     dnsmasq for more details.</dt>
-</dl>
-
-<p>Setup the various services:</p>
-<dl>
- <dt>sudo apt install -y curl dnsmasq apache2 syslinux-common</dt>
- <dt>sudo curl URL -o /var/www/html/test-live-server-amd64.iso</dt>
- <dt>sudo mkdir -p /srv/tftp/pxelinux.cfg</dt>
- <dt>sudo mount -o loop,ro /var/www/html/test-live-server-amd64.iso /mnt</dt>
- <dt>sudo cp /mnt/casper/initrd /srv/tftp</dt>
- <dt>sudo cp /mnt/casper/vmlinuz /srv/tftp</dt>
- <dt>sudo cp /usr/lib/syslinux/modules/bios/ldlinux.c32 /srv/tftp</dt>
- <dt>sudo curl http://archive.ubuntu.com/ubuntu/dists/focal/main/installer-amd64/current/legacy-images/netboot/pxelinux.0 -o /srv/tftp/pxelinux.0</dt>
- <dt>sudo systemctl restart dnsmasq.service</dt>
-</dl>
-
-<p>
-Configure /etc/dnsmasq.d/pxe.conf:
-</p>
-<pre>
-interface=INTERFACE,lo
-bind-interfaces
-dhcp-range=INTERFACE,STARTADDR,ENDADDR
-dhcp-boot=pxelinux.0
-enable-tftp
-tftp-root=/srv/tftp
-</pre>
-
-<p>Configure /var/www/html/autoinstall.yaml:</p>
-<pre>
-#cloud-config
-autoinstall:
- version: 1
- identity:
-  hostname: live-server
-  # This password is ubuntu
-  # To use a different password, set the appropriate hash here.
-  # `mkpasswd`, from the 'whois' package, can help with hash creation.
-  password: $1$glNWVUKh$VxFYudlLU5FR9WDGXOK761
-  username: ubuntu
- apt:
-  fallback: offline-install
-</pre>
-
-<p>Configure /srv/tftp/pxelinux.cfg/default:</p>
-<pre>
-DEFAULT install
-LABEL install
-  KERNEL vmlinuz
-  INITRD initrd
-  APPEND root=/dev/ram0 ramdisk_size=1500000 ip=dhcp cloud-config-url=http://HOST/autoinstall.yaml url=http://HOST/test-live-server-amd64.iso autoinstall
-</pre>
-
-<p>
-Power on the test machine and ensure that it boots PXE. The install should
-complete without further interaction.
-</p>
-
-<strong>If you finish the installation, please <a href="results#add_result">submit</a> a 'passed' result.
-    If any action fails, or produces an unexpected result, please <a href="results#add_result">submit</a> a 'failed' result and <a href="../../buginstructions">file a bug</a>. Please be sure to include the bug number when you <a href="results#add_result">submit</a> your result.</strong>

Follow ups