** Description changed: - ======WIP============ - - [Impact] + [ Impact ] + This release contains both bug-fixes and new features and we would like to make sure all of our supported customers have - access to these improvements. The notable ones are: - - *** <TODO: list any LP: # included> - - See the changelog entry below for a full list of changes and bugs. - - [Test Case] - The following development and SRU process was followed: - https://documentation.ubuntu.com/sru/en/latest/reference/exception-azure-vm-utils-Updates - - The Microsoft team will execute their testsuite, against the azure-vm-utils - that is in -proposed. A successful run will be required before the proposed - azure-vm-utils can be let into -updates. - - The CPC team will be in charge of attaching a summary of testing to the bug. - CPC team members will not mark ‘verification-done’ until this has happened. + access to these improvements. + + Full release notes are available at: + https://github.com/Azure/azure-vm-utils/releases/tag/v0.6.0 + + + [ Test Plan ] + + A) Ensure the selftests run at autopkgtest time, and pass. + B) Check installation/upgrade/removal in Azure VM machine + C) Manual testing in Azure VM machines (hardware dependent) composed of + 1. For any MANA, mlx4, or mlx5 SR-IOV devices with the IFF_SLAVE flag + set: + (a) The appropriate udev properties should be configured; and + (b) systemd-networkd should report these devices as unmanaged + + 2. Any network devices not matching the above criteria are left + unaffected. + 3. Manually check that the command `DEVNAME=<nvme device name> azure- + nvme-id --udev gives correct output for some device. Only Direct + Disk v2 is fully supported for now. + 4. Check that expected /dev/disk/azure symlinks are created for the + device. + 5. Use unmkintramfs to ensure that the udev rules are copied to the + initrd correctly. + + Detailed commands can be found below. A) y B) are not detailed - it is + understood that the reviewer or tester knows how to do it. + + Results of this test plan should be attached to the bug in comments per + target series of the SRU for the SRU Team (Andreas Hasenack) to review. + + Requeriments: + + Some azure VM are required to test this package, as it contains + specific configurations for Ubuntu on Azure. An Azure account and + access to the Azure portal is needed. + + azure-cli package is needed for command line VM creation ( https://packages.microsoft.com/repos/azure-cli/ ). + + Preparing the manual testing: + + ## 0.0 ## AZURE VM CREATION: selection of VM's family size depending on what disk and net driver we need to check: + + For Microsoft NVMe Direct Disk v2, MSFT NVMe Accelerator v1.0 + and networking on mellanox v5 -> az vm create --resource-group miriam- + azure-vm-utils --name nmve_direct --image + "Canonical:ubuntu-25_10-daily:server:latest" --ssh-key-values + ~/.ssh/id_rsa.pub --size Standard_E2ads_v6 --admin-username ubuntu + + For Microsoft NVMe Direct Disk -> az vm create --resource-group + miriam-azure-vm-utils --name nmve_direct_noversion --image + "Canonical:ubuntu-25_10-daily:server:latest" --ssh-key-values + ~/.ssh/id_rsa.pub --size Standard_D2alds_v6 --admin-username ubuntu + + For Net mana driver -> az vm create --resource-group miriam-azure-vm-utils --name nmvemana --image "Canonical:ubuntu-25_10-daily:server:latest" --ssh-key-values ~/.ssh/id_rsa.pub --size Standard_D2ls_v6 --admin-username ubuntu + + Note: Earlier v2/v3/v4 sizes with AN enabled is most likely to result in mlx4, but there's no guarantee. Therefore, we may never have the opportunity to test mlx4 for sure. + + ## 0.1 ## CHECK DEVICES IN ORIGINAL STATE + + # DISKS + + $ nvme list | grep -e "Microsoft NVMe Direct Disk v2" -e "MSFT NVMe Accelerator v1.0" -e "Microsoft NVMe Direct Disk" + + # NETWORK + + To record differences before and after installing the package plus + rebooting, the following command + + $ networkctl status -a -l | grep -v Jul | tee net_{before,after}.txt + + was used. Please, change the month in the second part of the command to + fit the actual month the manual testing is being done. Note that actual + differences are occasioned by the rebooting of systemd-networkd , not by + the deployment of the azure-vm-utils package. However, we include the + step for a sanity check. + + To check driver presence (mana, mlx4, mlx5) + + $ networkctl status $(ip a | grep SLAVE | cut -d':' -f2 | xargs) | grep -i driver | grep -e mana -e mlx + + + To check udev rules (at this stage, only showing the driver): + + $ udevadm info /sys/class/net/$(ip a | grep SLAVE | cut -d':' -f2 | xargs) | grep -e AZURE_UNMANAGED_SRIOV -e ID_NET_MANAGED_BY -e ID_NET_DRIVER + + ## 0.2 ## INSTALLING PACKAGE + + $ sudo apt install azure-vm-utils + + checking all went well: + + $ dpkg -l azure-vm-utils | grep ii + + ## 0. 3 ## ENABLING SYSTEMD-NETWORKD IN DEBUG MODE + + $ sudo mkdir -p /etc/systemd/system/systemd-networkd.service.d/ + + $ sudo cat > /etc/systemd/system/systemd-networkd.service.d/10-debug.conf <<EOF + [Service] + Environment=SYSTEMD_LOG_LEVEL=debug + EOF + + ## 0. 4 ## REBOOTING + + $ sudo shutdown -r now + + Performing manual testing C): + + ## 1.a ## UDEV CONFIGURED + + $ udevadm info /sys/class/net/$(ip a | grep SLAVE | cut -d':' -f2 | xargs) | grep -e AZURE_UNMANAGED_SRIOV -e ID_NET_MANAGED_BY -e ID_NET_DRIVER + + ## 1.b ## NETWORKD-SYSTEMD PROCESS THE FILE FOR SRI-OV DEVICES AND RETURNS THEM UNMANAGED + + $ sudo journalctl -b -u systemd-networkd | grep azure + + $ sudo journalctl -b -u systemd-networkd | grep $(ip a | grep SLAVE | cut -d':' -f2 | xargs) | grep -e SLAVE -e unmanaged + + + ## 2 ## NO OTHER NETWORKING ITEMS AFFECTED + + $ networkctl status -a -l | grep -v Jul | tee net_after.txt + + $ diff net_before.txt net_after.txt + + The output should be something similar to: + + 17c17 + < Link File: /usr/lib/systemd/network/99-default.link + --- + > Link File: /run/systemd/network/10-netplan-eth0.link + 24d23 + < Alternative Names: enx002248814532 + 52a52 + > enx002248814532 + + ## 3 ## azure-nvme UTIL WORKS FOR NMVE DISK V2 + + $ sudo DEVNAME=$(nvme list | grep v2 | cut -d' ' -f1) azure-nvme-id --udev + + ## 4 ## SYMLINKS ARE CREATED FOR THE NVME DEVICES + + $ udevadm info $(nvme list | grep v2 | cut -d' ' -f1) | grep -i -e model -e azure + + ## 5 ## UDEV RULES ARE COPIED TO INITRD + + $ unmkinitramfs /boot/initrd.img-$(uname -r) initramfs/ + + $ ls initramfs/lib/udev/rules.d/*0*azure* | wc -l # it should return only 2 + + + + [ Where problems could occur ] + + Although azure-vm-utils is a package to be used intentionally for Ubuntu on + Azure, this package could be installed on all Ubuntu systems by users, which + should remain unaffected by any changes made to this package. + + Sometimes this extends beyond what we might consider supportable + configurations; we try to stretch ourselves so that no user who apparently + has an otherwise functional system is affected by this package or changes + to it. + + This mainly includes regressions caused by the introduction of new udev rules + that conflict with the existing mapping, specially netplan configurations + generated by cloud-init. + + The test plan above is intended to foresee this situation and prevent any + risk. In addition, due to hardware constraints and awareness of the above, + upstream performs a test with a custom netplan configuration that enables DHCP + on all Ethernet devices and validates that the interface is unmanaged. + + + [ Other Info ] + + The QA process consists of three stages: pre-SRU tests (the [Test Plan] + section), SRU tests and SRU Verification. + + Output reports per target series of the [Test Plan] should be attached + to this bug before them can be reviewed by the SRU team. + + + SRU Test Cases + .............. + + The following will be executed for representative combinations of supported + architectures, image types and machine sizes: + + 1.) Build new cloud image with -proposed package + 2.) Boot machine from image + 3.) Run all CPC image tests against machine + + SRU Verification + ................ + + When a new version of azure-vm-utils is uploaded to -proposed, there will be + validate actions performed by the CPC azure squad and others from Microsoft + maintainers. Therefore, the following will be done: + + - By The CPC Azure squad team + + - the CPC azure squad team will write new automated tests to cover new + testable functionality (if any) in the new package + - the automated testing that the CPC team normally runs against Azure + images before they are published will be run against the -proposed + package. + - The new package candidate version is built in devel-proposed and tested + on the target suite. This will involve one or both of: + - Installing the devel-proposed packages on an Azure VM, manually + restoring the VM to a first boot state and rebooting it, + - Generating a fresh image with the devel-proposed package version + preinstalled and testing that directly + - Once the manual packaging tests pass successfully and the package + requires no further changes, it will be marked as such on the tracking + bug. On the development release, this is done by removing the + *block-proposed* tag. + + - By the Microsoft team maintaining the Azure VM Utils project(upstream + QA) + + - that the new package addresses the issues it is expected to address, and + - that the new package passes their internal image validation + + **If appropriate due to the nature of the changes (functional embargo on publication), the steps above may be done in a private PPA prior to landing in devel-proposed.** + + The CPC team will be responsible for attaching a summary of testing to the bug. + CPC team members will not mark ‘verification-done’ until this has happened.
** Changed in: azure-vm-utils (Ubuntu Noble) Assignee: (unassigned) => Miriam España Acebal (mirespace) ** Changed in: azure-vm-utils (Ubuntu Jammy) Assignee: (unassigned) => Miriam España Acebal (mirespace) ** Changed in: azure-vm-utils (Ubuntu) Status: New => In Progress ** Changed in: azure-vm-utils (Ubuntu Jammy) Status: New => In Progress ** Changed in: azure-vm-utils (Ubuntu Noble) Status: New => In Progress ** Changed in: azure-vm-utils (Ubuntu Plucky) Status: New => In Progress -- You received this bug notification because you are a member of Ubuntu Bugs, which is subscribed to Ubuntu. https://bugs.launchpad.net/bugs/2116077 Title: [SRU] azure-vm-utils updates To manage notifications about this bug go to: https://bugs.launchpad.net/ubuntu/+source/azure-vm-utils/+bug/2116077/+subscriptions -- ubuntu-bugs mailing list ubuntu-bugs@lists.ubuntu.com https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs