On Fri, Jul 1, 2022 at 2:14 AM Marta Rybczynska <[email protected]> wrote:
>
> Hello all,
> We're trying to use create-spdx.bbclass with meta-zephyr. However,
> this is failing with errors like the one at the bottom of the message.
> While digging deeper, it is hard to reproduce reliably (but happens at
> different recipes and frequently enough to have it at every build).
> The workaround that works is to add:
> do_create_spdx[nostamp] = "1"
> which isn't great.
>
> Has anyone tried create-spdx.bbclass with meta-zephyr? Any insight?
>
> Kind regards,
> Marta
>
> And an example error message:
>
> ERROR: python3-native-3.10.4-r0 do_create_spdx: Error executing a
> python function in exec_func_python() autogenerated:
> The stack trace of python calls that resulted in this exception/failure was:
> File: 'exec_func_python() autogenerated', lineno: 2, function: <module>
> 0001:
> *** 0002:do_create_spdx(d)
> 0003:
> File: '/tmp/workspace.yd5o77EYlf/oe-core/meta/classes/create-spdx.bbclass',
> lineno: 516, function: do_create_spdx
> 0512:
> 0513: if archive is not None:
> 0514: recipe.packageFileName = str(recipe_archive.name)
> 0515:
> *** 0516: dep_recipes = collect_dep_recipes(d, doc, recipe)
> 0517:
> 0518: doc_sha1 = oe.sbom.write_doc(d, doc, "recipes")
> 0519: dep_recipes.append(oe.sbom.DepRecipe(doc, doc_sha1, recipe))
> 0520:
> File: '/tmp/workspace.yd5o77EYlf/oe-core/meta/classes/create-spdx.bbclass',
> lineno: 345, function: collect_dep_recipes
> 0341: ))
> 0342: for dep_pn in deps:
> 0343: dep_recipe_path = deploy_dir_spdx / "recipes" /
> ("recipe-%s.spdx.json" % dep_pn)
> 0344:
> *** 0345: spdx_dep_doc, spdx_dep_sha1 = oe.sbom.read_doc(dep_recipe_path)
> 0346:
> 0347: for pkg in spdx_dep_doc.packages:
> 0348: if pkg.name == dep_pn:
> 0349: spdx_dep_recipe = pkg
> File: '/tmp/workspace.yd5o77EYlf/oe-core/meta/lib/oe/sbom.py', lineno:
> 67, function: read_doc
> 0063: else:
> 0064: with fn.open("rb") as f:
> 0065: yield f
> 0066:
> *** 0067: with get_file() as f:
> 0068: sha1 = hashlib.sha1()
> 0069: while True:
> 0070: chunk = f.read(4096)
> 0071: if not chunk:
> File: '/usr/lib/python3.8/contextlib.py', lineno: 113, function: __enter__
> 0109: # do not keep args and kwds alive unnecessarily
> 0110: # they are only needed for recreation, which is not possible anymore
> 0111: del self.args, self.kwds, self.func
> 0112: try:
> *** 0113: return next(self.gen)
> 0114: except StopIteration:
> 0115: raise RuntimeError("generator didn't yield") from None
> 0116:
> 0117: def __exit__(self, type, value, traceback):
> File: '/tmp/workspace.yd5o77EYlf/oe-core/meta/lib/oe/sbom.py', lineno:
> 64, function: get_file
> 0060: def get_file():
> 0061: if isinstance(fn, io.IOBase):
> 0062: yield fn
> 0063: else:
> *** 0064: with fn.open("rb") as f:
> 0065: yield f
> 0066:
> 0067: with get_file() as f:
> 0068: sha1 = hashlib.sha1()
> File: '/usr/lib/python3.8/pathlib.py', lineno: 1222, function: open
> 1218: the built-in open() function does.
> 1219: """
> 1220: if self._closed:
> 1221: self._raise_closed()
> *** 1222: return io.open(self, mode, buffering, encoding, errors, newline,
> 1223: opener=self._opener)
> 1224:
> 1225: def read_bytes(self):
> 1226: """
> File: '/usr/lib/python3.8/pathlib.py', lineno: 1078, function: _opener
> 1074: raise ValueError("I/O operation on closed path")
> 1075:
> 1076: def _opener(self, name, flags, mode=0o666):
> 1077: # A stub for the opener argument to built-in open()
> *** 1078: return self._accessor.open(self, flags, mode)
> 1079:
> 1080: def _raw_open(self, flags, mode=0o777):
> 1081: """
> 1082: Open the file pointed by this path and return a file descriptor,
> Exception: FileNotFoundError: [Errno 2] No such file or directory:
> '/tmp/workspace.yd5o77EYlf/build/tmp-newlib/deploy/spdx/qemu-cortex-m3/recipes/recipe-gnu-config-native.spdx.json'

This appears to be the actual error: python3:do_create_spdx can't find
the recipe-gnu-config-native.spdx.json. I'm not sure why that would be
the case though; do_create_spdx for gnu-config-native should always
run before do_create_spdx for python3 since it's a deptask

> ERROR: Logfile of failure stored in:
> /tmp/workspace.yd5o77EYlf/build/tmp-newlib/work/x86_64-linux/python3-native/3.10.4-r0/temp/log.do_create_spdx.12842
> NOTE: recipe python3-native-3.10.4-r0: task do_create_spdx: Failed
> ERROR: Task 
> (virtual:native:/tmp/workspace.yd5o77EYlf/oe-core/meta/recipes-devtools/python/python3_3.10.4.bb:do_create_spdx)
> failed with exit code '1'
-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#167471): 
https://lists.openembedded.org/g/openembedded-core/message/167471
Mute This Topic: https://lists.openembedded.org/mt/92103691/21656
Group Owner: [email protected]
Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub 
[[email protected]]
-=-=-=-=-=-=-=-=-=-=-=-

Reply via email to