diff options
author | Mingli Yu <mingli.yu@windriver.com> | 2023-04-03 17:35:51 +0800 |
---|---|---|
committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2023-04-04 13:11:50 +0100 |
commit | 93196f698a7aab014d3999e3d21dd4ffd7a05d79 (patch) | |
tree | dd7141bb5d16ba693028b79222b71fea23ab6931 /meta/classes | |
parent | 6cfa4e540c99ed434b3bf76e91f013691bb5c37e (diff) | |
download | poky-93196f698a7aab014d3999e3d21dd4ffd7a05d79.tar.gz |
report-error: catch Nothing PROVIDES error
Make the report-error catch Nothing PROVIDES error and then
we can check it directly via error report web.
(From OE-Core rev: a57d8f82b83554c821a83eacc02f9c73b263ff02)
Signed-off-by: Mingli Yu <mingli.yu@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'meta/classes')
-rw-r--r-- | meta/classes/report-error.bbclass | 27 |
1 files changed, 26 insertions, 1 deletions
diff --git a/meta/classes/report-error.bbclass b/meta/classes/report-error.bbclass index 2f692fbbcc..2b2ad56514 100644 --- a/meta/classes/report-error.bbclass +++ b/meta/classes/report-error.bbclass | |||
@@ -107,6 +107,31 @@ python errorreport_handler () { | |||
107 | errorreport_savedata(e, jsondata, "error-report.txt") | 107 | errorreport_savedata(e, jsondata, "error-report.txt") |
108 | bb.utils.unlockfile(lock) | 108 | bb.utils.unlockfile(lock) |
109 | 109 | ||
110 | elif isinstance(e, bb.event.NoProvider): | ||
111 | bb.utils.mkdirhier(logpath) | ||
112 | data = {} | ||
113 | machine = e.data.getVar("MACHINE") | ||
114 | data['machine'] = machine | ||
115 | data['build_sys'] = e.data.getVar("BUILD_SYS") | ||
116 | data['nativelsb'] = nativelsb() | ||
117 | data['distro'] = e.data.getVar("DISTRO") | ||
118 | data['target_sys'] = e.data.getVar("TARGET_SYS") | ||
119 | data['failures'] = [] | ||
120 | data['component'] = str(e._item) | ||
121 | data['branch_commit'] = str(oe.buildcfg.detect_branch(e.data)) + ": " + str(oe.buildcfg.detect_revision(e.data)) | ||
122 | data['bitbake_version'] = e.data.getVar("BB_VERSION") | ||
123 | data['layer_version'] = get_layers_branch_rev(e.data) | ||
124 | data['local_conf'] = get_conf_data(e, 'local.conf') | ||
125 | data['auto_conf'] = get_conf_data(e, 'auto.conf') | ||
126 | taskdata={} | ||
127 | taskdata['log'] = str(e) | ||
128 | taskdata['package'] = str(e._item) | ||
129 | taskdata['task'] = "Nothing provides " + "'" + str(e._item) + "'" | ||
130 | data['failures'].append(taskdata) | ||
131 | lock = bb.utils.lockfile(datafile + '.lock') | ||
132 | errorreport_savedata(e, data, "error-report.txt") | ||
133 | bb.utils.unlockfile(lock) | ||
134 | |||
110 | elif isinstance(e, bb.event.BuildCompleted): | 135 | elif isinstance(e, bb.event.BuildCompleted): |
111 | lock = bb.utils.lockfile(datafile + '.lock') | 136 | lock = bb.utils.lockfile(datafile + '.lock') |
112 | jsondata = json.loads(errorreport_getdata(e)) | 137 | jsondata = json.loads(errorreport_getdata(e)) |
@@ -120,4 +145,4 @@ python errorreport_handler () { | |||
120 | } | 145 | } |
121 | 146 | ||
122 | addhandler errorreport_handler | 147 | addhandler errorreport_handler |
123 | errorreport_handler[eventmask] = "bb.event.BuildStarted bb.event.BuildCompleted bb.build.TaskFailed" | 148 | errorreport_handler[eventmask] = "bb.event.BuildStarted bb.event.BuildCompleted bb.build.TaskFailed bb.event.NoProvider" |