Conversation
There was a problem hiding this comment.
Pull request overview
This PR updates the ubuntu24-x86_64-minimal-ptl-m9 image template with changes that extend well beyond the "docker fix" mentioned in the title. The changes include Docker package updates, package repository modifications, kernel driver switching (i915 to xe), NPU driver installation changes, and numerous package version updates.
Changes:
- Updated Docker packages from standalone docker-compose to docker-compose-plugin, and added containerd.io
- Switched kernel configuration from i915 to xe GPU driver
- Updated package repository URLs and removed three repositories
- Modified NPU driver installation from tarball-based to dpkg-based approach
- Updated numerous pinned package versions across mesa, gstreamer, qemu, and Intel driver packages
- Removed manageability packages (inbm-*, mqtt, tpm-provision, etc.)
- Added network configuration files and NTP/timezone setup
Comments suppressed due to low confidence (10)
image-templates/ubuntu24-x86_64-minimal-ptl-m9.yml:274
- The xdp-tools package was changed from a pinned version (xdp-tools_1.2.8-1ppa1~noble2) to an unpinned version (xdp-tools). This inconsistency with the rest of the pinned packages in this section could lead to version drift. If a specific version is no longer required, this should be documented. Otherwise, consider specifying the desired version to maintain consistency with the other pinned packages.
- xdp-tools
image-templates/ubuntu24-x86_64-minimal-ptl-m9.yml:433
- The NPU driver has been downgraded from version 1.30.0 (dated 20251128) to version 1.28.0 (dated 20251218). While the date is newer, the version number is lower, which suggests this might be a different release branch or a rollback due to issues with 1.30.0. This should be verified and documented in the PR description to explain why a version downgrade is being performed.
- cmd: "cd /tmp/npu-drv-package && wget https://af01p-ir.devtools.intel.com/artifactory/drivers_vpu_linux_client-ir-local/builds/opensource-linux-vpu-driver/ci/opensource_main/npu-linux-driver-ci-1.28.0.20251218-20347000698/linux-npu-driver-v1.28.0.20251218-20347000698-ubuntu2404.tar.gz"
- cmd: "cd /tmp/npu-drv-package && tar -xf linux-npu-driver-v1.28.0.20251218-20347000698-ubuntu2404.tar.gz"
- cmd: "cd /tmp/npu-drv-package && dpkg -i *.deb"
image-templates/ubuntu24-x86_64-minimal-ptl-m9.yml:3
- The PR title "M9 docker fix" suggests focused Docker-related changes, but the PR modifies many aspects beyond Docker: package repository URLs, removes manageability packages, changes kernel configuration from i915 to xe driver, updates numerous pinned package versions, modifies NPU driver installation, adds network configuration files, changes SSH enablement method, and adds NTP/timezone configuration. The PR description is also empty. Please provide a comprehensive description explaining all these changes and their rationale, or consider splitting this into multiple focused PRs.
image:
name: minimal-desktop-ubuntu-ptl
version: "24.04"
image-templates/ubuntu24-x86_64-minimal-ptl-m9.yml:3
- According to the template conventions documented in ADR template-enriched-rag.md, image templates should include a metadata section with description, use_cases, and keywords for discoverability and AI-powered template generation. This template is missing this metadata section entirely. Refer to image-templates/ubuntu24-x86_64-minimal-raw.yml or ubuntu24-x86_64-dlstreamer.yml for examples.
image:
name: minimal-desktop-ubuntu-ptl
version: "24.04"
image-templates/ubuntu24-x86_64-minimal-ptl-m9.yml:398
- The groups field for the rbfadmin user has been removed. This user previously had access to the "docker" and "render" groups. Without the "docker" group, rbfadmin will not be able to manage Docker containers without sudo. If this is intentional to restrict Docker access, it should be documented in the PR description. Otherwise, this is likely an unintended regression.
- name: rbfadmin
password: "jaiZ6dai"
image-templates/ubuntu24-x86_64-minimal-ptl-m9.yml:2
- The image name has been changed from "minimal-desktop-ubuntu-ptl-m9" to "minimal-desktop-ubuntu-ptl", but the template filename is "ubuntu24-x86_64-minimal-ptl-m9.yml". This creates an inconsistency where the filename suggests an M9 variant but the image name does not. This could cause confusion when managing multiple template variants. Consider either: (1) reverting the name to include "-m9" suffix, or (2) renaming the template file to match the new image name.
name: minimal-desktop-ubuntu-ptl
image-templates/ubuntu24-x86_64-minimal-ptl-m9.yml:272
- Several core system packages have been explicitly added (dash, hostname, login, passwd, sed) that are typically included as dependencies of ubuntu-minimal or other base packages. Explicitly listing these creates maintenance overhead and potential conflicts with dependency resolution. Unless there's a specific version pinning requirement for these packages, consider removing them from the explicit package list and relying on the dependency resolution of the base system packages.
- dash
- hostname
- login
- passwd
- sed
- network-manager-config-connectivity-ubuntu
- cloud-init
- network-manager
- systemd-timesyncd
image-templates/ubuntu24-x86_64-minimal-ptl-m9.yml:428
- The SSH service enablement has been changed from
systemctl enable sshto manually creating a symlink. While this approach works, using systemctl is more robust and idiomatic as it handles any additional service dependencies or wants correctly. The manual symlink approach bypasses systemd's enable logic. Unless there's a specific reason for this change (e.g., systemctl not working in the chroot environment), consider reverting to the systemctl approach or documenting why the manual approach is necessary.
# Enable SSH service to start automatically on boot
- cmd: "ln -sf /lib/systemd/system/ssh.service /etc/systemd/system/multi-user.target.wants/ssh.service"
image-templates/ubuntu24-x86_64-minimal-ptl-m9.yml:379
- The template references additional files from
../additionalfiles/ptl/directory, but this directory does not exist in the repository. This will cause the image build to fail when attempting to copy these files. Either add the missing files to the repository or remove these additionalFiles entries.
additionalFiles:
- local: ../additionalfiles/ptl/01-network-manager-all.yaml
final: /etc/netplan/01-network-manager-all.yaml
- local: ../additionalfiles/ptl/50-cloud-init.yaml
final: /etc/netplan/50-cloud-init.yaml
image-templates/ubuntu24-x86_64-minimal-ptl-m9.yml:433
- The NPU driver installation has been changed from downloading and patching a tarball to using wget and dpkg with a specific package URL. However, this introduces several issues: (1) The wget command downloads to the current working directory which may not be /tmp/npu-drv-package (cd doesn't persist across separate cmd entries), (2) The tar extraction and dpkg commands similarly assume they're in /tmp/npu-drv-package, but each cmd runs independently. These commands should be combined into a single cmd entry using && to ensure they execute in sequence in the same shell session, or the paths should be made absolute.
- cmd: "mkdir -p /tmp/npu-drv-package"
- cmd: "cd /tmp/npu-drv-package && wget https://af01p-ir.devtools.intel.com/artifactory/drivers_vpu_linux_client-ir-local/builds/opensource-linux-vpu-driver/ci/opensource_main/npu-linux-driver-ci-1.28.0.20251218-20347000698/linux-npu-driver-v1.28.0.20251218-20347000698-ubuntu2404.tar.gz"
- cmd: "cd /tmp/npu-drv-package && tar -xf linux-npu-driver-v1.28.0.20251218-20347000698-ubuntu2404.tar.gz"
- cmd: "cd /tmp/npu-drv-package && dpkg -i *.deb"
Merge Checklist
All boxes should be checked before merging the PR
Description
Any Newly Introduced Dependencies
How Has This Been Tested?