[PATCH 2/2] base_image: ensure base image permissions are set

Daniel Gomez <[email protected]> Mon, 29 Sep 2025 21:04:13 +0200
Newsgroups dev.linux.lists.kdevops
Message-ID <[email protected]>
From: Daniel Gomez <[email protected]>

Permissions should be set regardless of if we executed the copy task
or not.

Workflow:

TASK: Show the custom virt-builder database [localhost]
Custom virt-builder source:
/etc/virt-builder/repos.d/
kdevops-custom-images-debian-13-generic-arm64-daily.conf
Custom virt-builder index:
/var/lib/libvirt/images/kdevops/guestfs/custom_images/
debian-13-generic-arm64-daily/index
Custom virt-builder image:
/var/lib/libvirt/images/kdevops/guestfs/custom_images/
debian-13-generic-arm64-daily/debian-13-generic-arm64-daily.raw
TASK: Generating the index for debian-13-generic-arm64-daily [localhost]
⠀⠀✓ [localhost]
TASK: Copy custom image to base image location (with automatic reflink
optimization) [localhost]
⠀⠀⊘ [localhost]
TASK: Set proper permissions on base image [localhost]
⠀⠀⊘ [localhost]
TASK: Create the base OS image [localhost]
⠀⠀⊘ [localhost]

...

Fixes error:
TASK: Duplicate the root disk image for each target node
[dgc-testing-block,dgc-testing-nvme]
⠀⠀FAILED: [dgc-testing-block] => non-zero
return code STDERR: cp: cannot open
'/var/lib/libvirt/images/kdevops/guestfs/custom_images/
debian-13-generic-arm64-daily/debian-13-generic-arm64-daily.raw' for
reading: Permission denied
[ERROR]: Task failed: Module failed: non-zero return code
Origin:
/home/dagomez.linux/src/kdevops/playbooks/roles/guestfs/tasks/bringup/
main.yml:53:7

51       delegate_to: localhost
52
53     - name: Duplicate the root disk image for each target node
         ^ column 7

Fixes: f9ef79cb ("base_image: optimize VM image copying with reflinks
and fix same-file handling")
Signed-off-by: Daniel Gomez <[email protected]>
---
 playbooks/roles/base_image/tasks/custom-image.yml | 1 -
 1 file changed, 1 deletion(-)

diff --git a/playbooks/roles/base_image/tasks/custom-image.yml b/playbooks/roles/base_image/tasks/custom-image.yml
index bac834e8..121fa112 100644
--- a/playbooks/roles/base_image/tasks/custom-image.yml
+++ b/playbooks/roles/base_image/tasks/custom-image.yml
@@ -355,4 +355,3 @@
     mode: "u=rw,g=r,o=r"
   when:
     - custom_image_stat.stat.exists or custom_image_download is changed
-    - custom_image != base_image_pathname

-- 
2.50.1