<html xmlns:v="urn:schemas-microsoft-com:vml" xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:w="urn:schemas-microsoft-com:office:word" xmlns:m="http://schemas.microsoft.com/office/2004/12/omml" xmlns="http://www.w3.org/TR/REC-html40">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=us-ascii">
<meta name="Generator" content="Microsoft Word 15 (filtered medium)">
<style><!--
/* Font Definitions */
@font-face
        {font-family:"Cambria Math";
        panose-1:2 4 5 3 5 4 6 3 2 4;}
@font-face
        {font-family:Calibri;
        panose-1:2 15 5 2 2 2 4 3 2 4;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
        {margin:0in;
        margin-bottom:.0001pt;
        font-size:11.0pt;
        font-family:"Calibri",sans-serif;}
a:link, span.MsoHyperlink
        {mso-style-priority:99;
        color:#0563C1;
        text-decoration:underline;}
a:visited, span.MsoHyperlinkFollowed
        {mso-style-priority:99;
        color:#954F72;
        text-decoration:underline;}
span.EmailStyle17
        {mso-style-type:personal-compose;
        font-family:"Calibri",sans-serif;
        color:windowtext;}
.MsoChpDefault
        {mso-style-type:export-only;
        font-family:"Calibri",sans-serif;}
@page WordSection1
        {size:8.5in 11.0in;
        margin:1.0in 1.0in 1.0in 1.0in;}
div.WordSection1
        {page:WordSection1;}
--></style><!--[if gte mso 9]><xml>
<o:shapedefaults v:ext="edit" spidmax="1026" />
</xml><![endif]--><!--[if gte mso 9]><xml>
<o:shapelayout v:ext="edit">
<o:idmap v:ext="edit" data="1" />
</o:shapelayout></xml><![endif]-->
</head>
<body lang="EN-US" link="#0563C1" vlink="#954F72">
<div class="WordSection1">
<p class="MsoNormal">Hello,<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">I have been doing builds using a Docker setup on a VMware ESXi 6.5 virtual machine running Ubuntu 18.04 for the past year. I have been asked to move to building on a VM in Azure. I created a VM in Azure using the Ubuntu 18.04 image from
Canonical. When I try to do the same build in Azure, I get the following error messages:<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">=== Start ERROR messages ===<o:p></o:p></p>
<p class="MsoNormal">ERROR: docker-base-image-1.0-r0 do_image_wic: Function failed: do_image_wic (log file is located at /home/blah/build-0.0.13/tmp-glibc/work/intel_corei7_64-oe-linux/foo/1.0-r0/temp/log.do_image_wic.44033)<o:p></o:p></p>
<p class="MsoNormal">ERROR: Logfile of failure stored in: /home/blah/build-0.0.13/tmp-glibc/work/intel_corei7_64-oe-linux/foo/1.0-r0/temp/log.do_image_wic.44033<o:p></o:p></p>
<p class="MsoNormal">| OSError: [Errno 22] Invalid argument<o:p></o:p></p>
<p class="MsoNormal">| wic.filemap.Error: cannot get block size for '/home/blah/build-0.0.13/tmp-glibc/work/intel_corei7_64-oe-linux/foo/1.0-r0/deploy-foo-image-complete/foo-intel-corei7-64-0.0.13/tmp.wic.5lmon88k/boot.img': [Errno 22] Invalid argument<o:p></o:p></p>
<p class="MsoNormal">| ERROR: Function failed: do_image_wic (log file is located at /home/blah/build-0.0.13/tmp-glibc/work/intel_corei7_64-oe-linux/foo/1.0-r0/temp/log.do_image_wic.44033)<o:p></o:p></p>
<p class="MsoNormal">ERROR: Task (/home/blah/meta-stryker/common/recipes-common/images/foo.bb:do_image_wic) failed with exit code '1'<o:p></o:p></p>
<p class="MsoNormal">Summary: There was 1 ERROR message shown, returning a non-zero exit code.<o:p></o:p></p>
<p class="MsoNormal">ERROR: Ext4 filesystem name (/home/blah/build-0.0.13/tmp-glibc/deploy/images/intel-corei7-64/foo-intel-corei7-64-0.0.13.rootfs.ext4) does not exist.<o:p></o:p></p>
<p class="MsoNormal">=== End ERROR messages ===<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">The log.do_image_wic.44033 has the following stack trace.<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">=== Start log.do_image_wic.44033 stack trace ===<o:p></o:p></p>
<p class="MsoNormal">DEBUG: Python function extend_recipe_sysroot finished<o:p></o:p></p>
<p class="MsoNormal">DEBUG: Executing shell function do_image_wic<o:p></o:p></p>
<p class="MsoNormal">INFO: Creating image(s)...<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">WARNING: overhead-factor was specified, but size was not, so bitbake variables will be used for the size. In this case both IMAGE_OVERHEAD_FACTOR and --overhead-factor will be applied<o:p></o:p></p>
<p class="MsoNormal">Traceback (most recent call last):<o:p></o:p></p>
<p class="MsoNormal"> File "/home/blah/oe-core/scripts/lib/wic/filemap.py", line 97, in __init__<o:p></o:p></p>
<p class="MsoNormal"> self.block_size = get_block_size(self._f_image)<o:p></o:p></p>
<p class="MsoNormal"> File "/home/bruce/oe-core/scripts/lib/wic/filemap.py", line 40, in get_block_size<o:p></o:p></p>
<p class="MsoNormal"> binary_data = fcntl.ioctl(file_obj, 2, struct.pack('I', 0))<o:p></o:p></p>
<p class="MsoNormal">OSError: [Errno 22] Invalid argument<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">During handling of the above exception, another exception occurred:<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">Traceback (most recent call last):<o:p></o:p></p>
<p class="MsoNormal"> File "/home/blah/oe-core/scripts/wic", line 534, in <module><o:p></o:p></p>
<p class="MsoNormal"> sys.exit(main(sys.argv[1:]))<o:p></o:p></p>
<p class="MsoNormal"> File "/home/blah/oe-core/scripts/wic", line 529, in main<o:p></o:p></p>
<p class="MsoNormal"> return hlp.invoke_subcommand(args, parser, hlp.wic_help_usage, subcommands)<o:p></o:p></p>
<p class="MsoNormal"> File "/home/blah/oe-core/scripts/lib/wic/help.py", line 98, in invoke_subcommand<o:p></o:p></p>
<p class="MsoNormal"> subcmd[0](args, usage)<o:p></o:p></p>
<p class="MsoNormal"> File "/home/blah/oe-core/scripts/wic", line 234, in wic_create_subcommand<o:p></o:p></p>
<p class="MsoNormal"> native_sysroot, options)<o:p></o:p></p>
<p class="MsoNormal"> File "/home/blah/oe-core/scripts/lib/wic/engine.py", line 202, in wic_create<o:p></o:p></p>
<p class="MsoNormal"> plugin.do_create()<o:p></o:p></p>
<p class="MsoNormal"> File "/home/blah/oe-core/scripts/lib/wic/plugins/imager/direct.py", line 101, in do_create<o:p></o:p></p>
<p class="MsoNormal"> self.assemble()<o:p></o:p></p>
<p class="MsoNormal"> File "/home/blah/oe-core/scripts/lib/wic/plugins/imager/direct.py", line 218, in assemble<o:p></o:p></p>
<p class="MsoNormal"> self._image.assemble()<o:p></o:p></p>
<p class="MsoNormal"> File "/home/blah/oe-core/scripts/lib/wic/plugins/imager/direct.py", line 605, in assemble<o:p></o:p></p>
<p class="MsoNormal"> sparse_copy(source, self.path, seek=part.start * self.sector_size)<o:p></o:p></p>
<p class="MsoNormal"> File "/home/blah/oe-core/scripts/lib/wic/filemap.py", line 552, in sparse_copy<o:p></o:p></p>
<p class="MsoNormal"> fmap = api(src_fname)<o:p></o:p></p>
<p class="MsoNormal"> File "/home/blah/oe-core/scripts/lib/wic/filemap.py", line 534, in filemap<o:p></o:p></p>
<p class="MsoNormal"> return FilemapFiemap(image, log)<o:p></o:p></p>
<p class="MsoNormal"> File "/home/blah/oe-core/scripts/lib/wic/filemap.py", line 352, in __init__<o:p></o:p></p>
<p class="MsoNormal"> _FilemapBase.__init__(self, image, log)<o:p></o:p></p>
<p class="MsoNormal"> File "/home/blah/oe-core/scripts/lib/wic/filemap.py", line 100, in __init__<o:p></o:p></p>
<p class="MsoNormal"> % (self._image_path, err))<o:p></o:p></p>
<p class="MsoNormal">wic.filemap.Error: cannot get block size for '/home/blah/build-0.0.13/tmp-glibc/work/intel_corei7_64-oe-linux/foo/1.0-r0/deploy-foo-image-complete/foo-intel-corei7-64-0.0.13/tmp.wic.5lmon88k/boot.img': [Errno 22] Invalid argument<o:p></o:p></p>
<p class="MsoNormal">WARNING: exit code 1 from a shell command.<o:p></o:p></p>
<p class="MsoNormal">ERROR: Function failed: do_image_wic (log file is located at /home/blah/build-0.0.13/tmp-glibc/work/intel_corei7_64-oe-linux/foo/1.0-r0/temp/log.do_image_wic.44033)<o:p></o:p></p>
<p class="MsoNormal">=== End log.do_image_wic.44033 stack trace ===<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">For some reason, it looks like it appears on the Azure VM the build is looking for boot.img in a temporary directory, …/tmp-glibc/work/intel_corei7_64-oe-linux/foo/1.0-r0/deploy-foo-complete/foo-intel-corei7-64-0.0.13/tmp.wic.5lmon88k.
The tmp.wic.5lmon88k does not exist. However, in the …/foo-intel-corei7-64-0.0.13 there is a boot.img file.<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">So, I’m very confused as to why my build works on my VMware ESXi 6.5 VM but not on the Azure VM. I’m using docker-ce 18.09.1 on my VMware ESXi 6.5 VM. I am using docker-ce 19.03.3 on my Azure VM. The Dockerfile and all of the files I’m
copying into the Docker image are the same. I’ve done side by side builds. So, I’m very confident I’m downloading the same OpenEmbedded GIT repos. I’m guessing I’m missing something somewhere, but I do not know where.<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">If anyone can help me understand this, and give me guidance on how to fix this, it would be greatly appreciated.<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">Thank you<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">Lewis Muhlenkamp<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
</div>
Follow this link to read our <a href="https://www.stryker.com/content/stryker/gb/en/legal/global-policy-statement.html/">
Privacy Statement</a>
</body>
</html>