public inbox for isar-users@googlegroups.com
 help / color / mirror / Atom feed
* [PATCH 1/2] isoimage-isohybrid-isar: fix error if source_param image_name is set
@ 2025-11-26 11:43 'Quirin Gylstorff' via isar-users
  2025-11-26 11:43 ` [PATCH 2/2] isoimage-isohybrid-isar: fix disk full if no initrd exists 'Quirin Gylstorff' via isar-users
  2025-11-28 16:07 ` [PATCH 1/2] isoimage-isohybrid-isar: fix error if source_param image_name is set Zhihang Wei
  0 siblings, 2 replies; 5+ messages in thread
From: 'Quirin Gylstorff' via isar-users @ 2025-11-26 11:43 UTC (permalink / raw)
  To: isar-users

From: Quirin Gylstorff <quirin.gylstorff@siemens.com>

This fixes the following error:

 ERROR: _exec_cmd: export PATH=//sbin://usr/sbin://usr/bin://usr/bin/None://bin:None:$PATH;/usr/bin/python3-native/python3 /usr/bin/bmaptool create /tmp/isar-image-base-debian-bookworm-qemuamd64-iso.wic/tmp.wic.h061sjt6/isohybrid-efi-202511201339-cd.direct -o /tmp/isar-image-base-debian-bookworm-qemuamd64-iso.wic/tmp.wic.h061sjt6/isohybrid-efi-202511201339-cd.direct.bmap returned '1' instead of 0
| output: bmaptool: ERROR: An error occurred, here is the traceback:
| Traceback (most recent call last):
|   File "/usr/lib/python3/dist-packages/bmaptools/BmapCreate.py", line 200, in _open_image_file
|     self._f_image = open(self._image_path, 'rb')
|                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
| FileNotFoundError: [Errno 2] No such file or directory: '/tmp/isar-image-base-debian-bookworm-qemuamd64-iso.wic/tmp.wic.h061sjt6/isohybrid-efi-202511201339-cd.direct'
|
| During handling of the above exception, another exception occurred:
|
| Traceback (most recent call last):
|   File "/usr/lib/python3/dist-packages/bmaptools/CLI.py", line 555, in create_command
|     creator = BmapCreate.BmapCreate(args.image, output, "sha256")
|               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|   File "/usr/lib/python3/dist-packages/bmaptools/BmapCreate.py", line 166, in __init__
|     self._open_image_file()
|   File "/usr/lib/python3/dist-packages/bmaptools/BmapCreate.py", line 202, in _open_image_file
|     raise Error("cannot open image file '%s': %s"
|
| bmaptool: ERROR: cannot open image file '/tmp/isar-image-base-debian-bookworm-qemuamd64-iso.wic/tmp.wic.h061sjt6/isohybrid-efi-202511201339-cd.direct': [Errno 2] No such file or directory: '/tmp/isar-image-base-debian-bookworm-qemuamd64-iso.wic/tmp.wic.h061sjt6/isohybrid-efi-202511201339-cd.direct'

Tested-by:     Herbert Bernecker <herbert.bernecker@siemens.com>
Signed-off-by: Quirin Gylstorff <quirin.gylstorff@siemens.com>
---

This is already broken in bitbake upstream and I will also sent the patch there.
Quirin
 meta/scripts/lib/wic/plugins/source/isoimage-isohybrid-isar.py | 1 +
 1 file changed, 1 insertion(+)

diff --git a/meta/scripts/lib/wic/plugins/source/isoimage-isohybrid-isar.py b/meta/scripts/lib/wic/plugins/source/isoimage-isohybrid-isar.py
index b46527b8..690e291e 100644
--- a/meta/scripts/lib/wic/plugins/source/isoimage-isohybrid-isar.py
+++ b/meta/scripts/lib/wic/plugins/source/isoimage-isohybrid-isar.py
@@ -533,3 +533,4 @@ class IsoImagePlugin(SourcePlugin):
         os.remove(disk.path)
         shutil.copy2(iso_img, full_path_iso)
         shutil.copy2(full_path_iso, full_path)
+        disk.path=full_path
-- 
2.51.2

-- 
You received this message because you are subscribed to the Google Groups "isar-users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to isar-users+unsubscribe@googlegroups.com.
To view this discussion visit https://groups.google.com/d/msgid/isar-users/20251126114431.20236-1-Quirin.Gylstorff%40siemens.com.

^ permalink raw reply	[flat|nested] 5+ messages in thread

* [PATCH 2/2] isoimage-isohybrid-isar: fix disk full if no initrd exists
  2025-11-26 11:43 [PATCH 1/2] isoimage-isohybrid-isar: fix error if source_param image_name is set 'Quirin Gylstorff' via isar-users
@ 2025-11-26 11:43 ` 'Quirin Gylstorff' via isar-users
  2025-11-27 11:10   ` 'Quirin Gylstorff' via isar-users
  2025-11-28 16:07 ` [PATCH 1/2] isoimage-isohybrid-isar: fix error if source_param image_name is set Zhihang Wei
  1 sibling, 1 reply; 5+ messages in thread
From: 'Quirin Gylstorff' via isar-users @ 2025-11-26 11:43 UTC (permalink / raw)
  To: isar-users

From: Quirin Gylstorff <quirin.gylstorff@siemens.com>

If no initrd was generated during the rootfs build the wic plugin
uses the existing rootfs as initrd. The plugin uses shutil.copytree
to copy the rootfs to a new folder. As the rootfs contains `/dev/full`
this will fill the disk until it is full.

To avoid this error ignore all files in `/dev/` of the rootfs.

Tested-by:    Herbert Bernecker <herbert.bernecker@siemens.com>
Signed-off-by: Quirin Gylstorff <quirin.gylstorff@siemens.com>
---
 .../lib/wic/plugins/source/isoimage-isohybrid-isar.py     | 8 +++++++-
 1 file changed, 7 insertions(+), 1 deletion(-)

diff --git a/meta/scripts/lib/wic/plugins/source/isoimage-isohybrid-isar.py b/meta/scripts/lib/wic/plugins/source/isoimage-isohybrid-isar.py
index 690e291e..fb6c6b39 100644
--- a/meta/scripts/lib/wic/plugins/source/isoimage-isohybrid-isar.py
+++ b/meta/scripts/lib/wic/plugins/source/isoimage-isohybrid-isar.py
@@ -203,8 +203,14 @@ class IsoImagePlugin(SourcePlugin):
             # Create initrd from rootfs directory
             initrd = "%s/initrd.cpio.gz" % cr_workdir
             initrd_dir = "%s/INITRD" % cr_workdir
+            def ignore_contents(src, names):
+                if os.path.basename(src) == 'dev':
+                    return names
+                return []
+
             shutil.copytree("%s" % rootfs_dir, \
-                            "%s" % initrd_dir, symlinks=True)
+                            "%s" % initrd_dir, \
+                            ignore=ignore_contents, symlinks=True)
 
             if os.path.isfile("%s/init" % rootfs_dir):
                 shutil.copy2("%s/init" % rootfs_dir, "%s/init" % initrd_dir)
-- 
2.51.2

-- 
You received this message because you are subscribed to the Google Groups "isar-users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to isar-users+unsubscribe@googlegroups.com.
To view this discussion visit https://groups.google.com/d/msgid/isar-users/20251126114431.20236-2-Quirin.Gylstorff%40siemens.com.

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [PATCH 2/2] isoimage-isohybrid-isar: fix disk full if no initrd exists
  2025-11-26 11:43 ` [PATCH 2/2] isoimage-isohybrid-isar: fix disk full if no initrd exists 'Quirin Gylstorff' via isar-users
@ 2025-11-27 11:10   ` 'Quirin Gylstorff' via isar-users
  2025-11-28  9:02     ` Zhihang Wei
  0 siblings, 1 reply; 5+ messages in thread
From: 'Quirin Gylstorff' via isar-users @ 2025-11-27 11:10 UTC (permalink / raw)
  To: isar-users



On 11/26/25 12:43, 'Quirin Gylstorff' via isar-users wrote:
> From: Quirin Gylstorff <quirin.gylstorff@siemens.com>
> 
> If no initrd was generated during the rootfs build the wic plugin
> uses the existing rootfs as initrd. The plugin uses shutil.copytree
> to copy the rootfs to a new folder. As the rootfs contains `/dev/full`
> this will fill the disk until it is full.
> 
> To avoid this error ignore all files in `/dev/` of the rootfs.
> 
> Tested-by:    Herbert Bernecker <herbert.bernecker@siemens.com>
> Signed-off-by: Quirin Gylstorff <quirin.gylstorff@siemens.com>
> ---
/dev should be populate by mmdebstrap so another way should be
--skip=output/mknod or  --skip=output/dev  but during the initial
testing these option broke package builds.

Quirin

>   .../lib/wic/plugins/source/isoimage-isohybrid-isar.py     | 8 +++++++-
>   1 file changed, 7 insertions(+), 1 deletion(-)
> 
> diff --git a/meta/scripts/lib/wic/plugins/source/isoimage-isohybrid-isar.py b/meta/scripts/lib/wic/plugins/source/isoimage-isohybrid-isar.py
> index 690e291e..fb6c6b39 100644
> --- a/meta/scripts/lib/wic/plugins/source/isoimage-isohybrid-isar.py
> +++ b/meta/scripts/lib/wic/plugins/source/isoimage-isohybrid-isar.py
> @@ -203,8 +203,14 @@ class IsoImagePlugin(SourcePlugin):
>               # Create initrd from rootfs directory
>               initrd = "%s/initrd.cpio.gz" % cr_workdir
>               initrd_dir = "%s/INITRD" % cr_workdir
> +            def ignore_contents(src, names):
> +                if os.path.basename(src) == 'dev':
> +                    return names
> +                return []
> +
>               shutil.copytree("%s" % rootfs_dir, \
> -                            "%s" % initrd_dir, symlinks=True)
> +                            "%s" % initrd_dir, \
> +                            ignore=ignore_contents, symlinks=True)
>   
>               if os.path.isfile("%s/init" % rootfs_dir):
>                   shutil.copy2("%s/init" % rootfs_dir, "%s/init" % initrd_dir)

-- 
You received this message because you are subscribed to the Google Groups "isar-users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to isar-users+unsubscribe@googlegroups.com.
To view this discussion visit https://groups.google.com/d/msgid/isar-users/05eee0e1-bbe2-492b-b94a-2bf082259f69%40siemens.com.

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [PATCH 2/2] isoimage-isohybrid-isar: fix disk full if no initrd exists
  2025-11-27 11:10   ` 'Quirin Gylstorff' via isar-users
@ 2025-11-28  9:02     ` Zhihang Wei
  0 siblings, 0 replies; 5+ messages in thread
From: Zhihang Wei @ 2025-11-28  9:02 UTC (permalink / raw)
  To: Quirin Gylstorff, isar-users



On 11/27/25 12:10, 'Quirin Gylstorff' via isar-users wrote:
>
>
> On 11/26/25 12:43, 'Quirin Gylstorff' via isar-users wrote:
>> From: Quirin Gylstorff <quirin.gylstorff@siemens.com>
>>
>> If no initrd was generated during the rootfs build the wic plugin
>> uses the existing rootfs as initrd. The plugin uses shutil.copytree
>> to copy the rootfs to a new folder. As the rootfs contains `/dev/full`
>> this will fill the disk until it is full.
>>
>> To avoid this error ignore all files in `/dev/` of the rootfs.
>>
>> Tested-by:    Herbert Bernecker <herbert.bernecker@siemens.com>
>> Signed-off-by: Quirin Gylstorff <quirin.gylstorff@siemens.com>
>> ---
> /dev should be populate by mmdebstrap so another way should be
> --skip=output/mknod or  --skip=output/dev  but during the initial
> testing these option broke package builds.
>
> Quirin
>
This patch has passed CI and LGTM. We'll merge this by end of this 
workday if no more discussion is coming.

Zhihang
>> .../lib/wic/plugins/source/isoimage-isohybrid-isar.py     | 8 +++++++-
>>   1 file changed, 7 insertions(+), 1 deletion(-)
>>
>> diff --git 
>> a/meta/scripts/lib/wic/plugins/source/isoimage-isohybrid-isar.py 
>> b/meta/scripts/lib/wic/plugins/source/isoimage-isohybrid-isar.py
>> index 690e291e..fb6c6b39 100644
>> --- a/meta/scripts/lib/wic/plugins/source/isoimage-isohybrid-isar.py
>> +++ b/meta/scripts/lib/wic/plugins/source/isoimage-isohybrid-isar.py
>> @@ -203,8 +203,14 @@ class IsoImagePlugin(SourcePlugin):
>>               # Create initrd from rootfs directory
>>               initrd = "%s/initrd.cpio.gz" % cr_workdir
>>               initrd_dir = "%s/INITRD" % cr_workdir
>> +            def ignore_contents(src, names):
>> +                if os.path.basename(src) == 'dev':
>> +                    return names
>> +                return []
>> +
>>               shutil.copytree("%s" % rootfs_dir, \
>> -                            "%s" % initrd_dir, symlinks=True)
>> +                            "%s" % initrd_dir, \
>> +                            ignore=ignore_contents, symlinks=True)
>>                 if os.path.isfile("%s/init" % rootfs_dir):
>>                   shutil.copy2("%s/init" % rootfs_dir, "%s/init" % 
>> initrd_dir)
>

-- 
You received this message because you are subscribed to the Google Groups "isar-users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to isar-users+unsubscribe@googlegroups.com.
To view this discussion visit https://groups.google.com/d/msgid/isar-users/204e36db-d3a1-4ec1-ac3b-c09a1ffc841a%40ilbers.de.

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [PATCH 1/2] isoimage-isohybrid-isar: fix error if source_param image_name is set
  2025-11-26 11:43 [PATCH 1/2] isoimage-isohybrid-isar: fix error if source_param image_name is set 'Quirin Gylstorff' via isar-users
  2025-11-26 11:43 ` [PATCH 2/2] isoimage-isohybrid-isar: fix disk full if no initrd exists 'Quirin Gylstorff' via isar-users
@ 2025-11-28 16:07 ` Zhihang Wei
  1 sibling, 0 replies; 5+ messages in thread
From: Zhihang Wei @ 2025-11-28 16:07 UTC (permalink / raw)
  To: Quirin Gylstorff, isar-users

Applied to next, thanks.

Zhihang

On 11/26/25 12:43, 'Quirin Gylstorff' via isar-users wrote:
> From: Quirin Gylstorff <quirin.gylstorff@siemens.com>
>
> This fixes the following error:
>
>   ERROR: _exec_cmd: export PATH=//sbin://usr/sbin://usr/bin://usr/bin/None://bin:None:$PATH;/usr/bin/python3-native/python3 /usr/bin/bmaptool create /tmp/isar-image-base-debian-bookworm-qemuamd64-iso.wic/tmp.wic.h061sjt6/isohybrid-efi-202511201339-cd.direct -o /tmp/isar-image-base-debian-bookworm-qemuamd64-iso.wic/tmp.wic.h061sjt6/isohybrid-efi-202511201339-cd.direct.bmap returned '1' instead of 0
> | output: bmaptool: ERROR: An error occurred, here is the traceback:
> | Traceback (most recent call last):
> |   File "/usr/lib/python3/dist-packages/bmaptools/BmapCreate.py", line 200, in _open_image_file
> |     self._f_image = open(self._image_path, 'rb')
> |                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
> | FileNotFoundError: [Errno 2] No such file or directory: '/tmp/isar-image-base-debian-bookworm-qemuamd64-iso.wic/tmp.wic.h061sjt6/isohybrid-efi-202511201339-cd.direct'
> |
> | During handling of the above exception, another exception occurred:
> |
> | Traceback (most recent call last):
> |   File "/usr/lib/python3/dist-packages/bmaptools/CLI.py", line 555, in create_command
> |     creator = BmapCreate.BmapCreate(args.image, output, "sha256")
> |               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
> |   File "/usr/lib/python3/dist-packages/bmaptools/BmapCreate.py", line 166, in __init__
> |     self._open_image_file()
> |   File "/usr/lib/python3/dist-packages/bmaptools/BmapCreate.py", line 202, in _open_image_file
> |     raise Error("cannot open image file '%s': %s"
> |
> | bmaptool: ERROR: cannot open image file '/tmp/isar-image-base-debian-bookworm-qemuamd64-iso.wic/tmp.wic.h061sjt6/isohybrid-efi-202511201339-cd.direct': [Errno 2] No such file or directory: '/tmp/isar-image-base-debian-bookworm-qemuamd64-iso.wic/tmp.wic.h061sjt6/isohybrid-efi-202511201339-cd.direct'
>
> Tested-by:     Herbert Bernecker <herbert.bernecker@siemens.com>
> Signed-off-by: Quirin Gylstorff <quirin.gylstorff@siemens.com>
> ---
>
> This is already broken in bitbake upstream and I will also sent the patch there.
> Quirin
>   meta/scripts/lib/wic/plugins/source/isoimage-isohybrid-isar.py | 1 +
>   1 file changed, 1 insertion(+)
>
> diff --git a/meta/scripts/lib/wic/plugins/source/isoimage-isohybrid-isar.py b/meta/scripts/lib/wic/plugins/source/isoimage-isohybrid-isar.py
> index b46527b8..690e291e 100644
> --- a/meta/scripts/lib/wic/plugins/source/isoimage-isohybrid-isar.py
> +++ b/meta/scripts/lib/wic/plugins/source/isoimage-isohybrid-isar.py
> @@ -533,3 +533,4 @@ class IsoImagePlugin(SourcePlugin):
>           os.remove(disk.path)
>           shutil.copy2(iso_img, full_path_iso)
>           shutil.copy2(full_path_iso, full_path)
> +        disk.path=full_path

-- 
You received this message because you are subscribed to the Google Groups "isar-users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to isar-users+unsubscribe@googlegroups.com.
To view this discussion visit https://groups.google.com/d/msgid/isar-users/4c894100-c066-42f0-883f-f1ac568d6b52%40ilbers.de.

^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2025-11-28 16:07 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2025-11-26 11:43 [PATCH 1/2] isoimage-isohybrid-isar: fix error if source_param image_name is set 'Quirin Gylstorff' via isar-users
2025-11-26 11:43 ` [PATCH 2/2] isoimage-isohybrid-isar: fix disk full if no initrd exists 'Quirin Gylstorff' via isar-users
2025-11-27 11:10   ` 'Quirin Gylstorff' via isar-users
2025-11-28  9:02     ` Zhihang Wei
2025-11-28 16:07 ` [PATCH 1/2] isoimage-isohybrid-isar: fix error if source_param image_name is set Zhihang Wei

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox