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]] -=-=-=-=-=-=-=-=-=-=-=-
