diff options
author | Jose Quaresma <quaresma.jose@gmail.com> | 2021-08-08 14:11:45 +0100 |
---|---|---|
committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2021-08-12 06:26:15 +0100 |
commit | 33ba016f4c5c6cb337a2e988d1880792f500647d (patch) | |
tree | 029d70e2f94840a5d0e1e732277a9872621e42a3 /meta/classes | |
parent | ea14728154f583341ee34d21a1b2305e14ca8588 (diff) | |
download | poky-33ba016f4c5c6cb337a2e988d1880792f500647d.tar.gz |
sstate.bbclass: fix error handling when sstate mirrors is ro
The commit dd555537fc35c5f934af09d601d70772eb5955ae
'sstate.bbclass: fix errors about read-only sstate mirrors'
adds an additional exception handler to silently mask read
only rootfs errors thrown during the touch.
The exception handler checks the error type with the python module errno
but this module needs to be imported as it don't exist.
Example of the error:
File: 'exec_python_func() autogenerated', lineno: 2, function: <module>
0001:
*** 0002:sstate_task_postfunc(d)
0003:
File: '/home/builder/src/base/poky/meta/classes/sstate.bbclass', lineno: 778, function: sstate_task_postfunc
0774:
0775: omask = os.umask(0o002)
0776: if omask != 0o002:
0777: bb.note("Using umask 0o002 (not %0o) for sstate packaging" % omask)
*** 0778: sstate_package(shared_state, d)
0779: os.umask(omask)
0780:
0781: sstateinst = d.getVar("SSTATE_INSTDIR")
0782: d.setVar('SSTATE_FIXMEDIR', shared_state['fixmedir'])
File: '/home/builder/src/base/poky/meta/classes/sstate.bbclass', lineno: 708, function: sstate_package
0704: except PermissionError:
0705: pass
0706: except OSError as e:
0707: # Handle read-only file systems gracefully
*** 0708: if e.errno != errno.EROFS:
0709: raise e
0710:
0711: return
0712:
Exception: NameError: name 'errno' is not defined
(From OE-Core rev: 15f30ad144fbe25e9a5e71bc7e42e746d2039992)
Signed-off-by: Jose Quaresma <quaresma.jose@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'meta/classes')
-rw-r--r-- | meta/classes/sstate.bbclass | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/meta/classes/sstate.bbclass b/meta/classes/sstate.bbclass index 554e401ee2..2175ace4c4 100644 --- a/meta/classes/sstate.bbclass +++ b/meta/classes/sstate.bbclass | |||
@@ -705,6 +705,7 @@ def sstate_package(ss, d): | |||
705 | pass | 705 | pass |
706 | except OSError as e: | 706 | except OSError as e: |
707 | # Handle read-only file systems gracefully | 707 | # Handle read-only file systems gracefully |
708 | import errno | ||
708 | if e.errno != errno.EROFS: | 709 | if e.errno != errno.EROFS: |
709 | raise e | 710 | raise e |
710 | 711 | ||
@@ -1152,6 +1153,7 @@ python sstate_eventhandler() { | |||
1152 | pass | 1153 | pass |
1153 | except OSError as e: | 1154 | except OSError as e: |
1154 | # Handle read-only file systems gracefully | 1155 | # Handle read-only file systems gracefully |
1156 | import errno | ||
1155 | if e.errno != errno.EROFS: | 1157 | if e.errno != errno.EROFS: |
1156 | raise e | 1158 | raise e |
1157 | 1159 | ||