diff options
| author | Changqing Li <changqing.li@windriver.com> | 2019-09-18 09:31:25 +0800 |
|---|---|---|
| committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2019-09-19 10:54:32 +0100 |
| commit | 0f866a92e18f992ab3833ce5df79bdd24593b7ca (patch) | |
| tree | 16d626a6756b307e19049794fd0639599cad8ab6 | |
| parent | 9a6cfc0fee87519e835afa74a94f349b744c39a3 (diff) | |
| download | poky-0f866a92e18f992ab3833ce5df79bdd24593b7ca.tar.gz | |
report-error.bbclass: add local.conf/auto.conf into error report
sometimes, it is not enough to reproduce a failed build with current
info on error reports web, add local.conf/auto.conf into error
report to make it more easier to reproduce failed build
Note: this need work together with change in repo error-report-web,
which will display local.conf and auto.conf as Error Details
[YOCTO #13252]
(From OE-Core rev: 7adf9707c04d8ef6bcd8d8bda555687f705e6ee6)
Signed-off-by: Changqing Li <changqing.li@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
| -rw-r--r-- | meta/classes/report-error.bbclass | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/meta/classes/report-error.bbclass b/meta/classes/report-error.bbclass index 1c55abfbf3..ea043b23e1 100644 --- a/meta/classes/report-error.bbclass +++ b/meta/classes/report-error.bbclass | |||
| @@ -25,6 +25,19 @@ def errorreport_savedata(e, newdata, file): | |||
| 25 | json.dump(newdata, f, indent=4, sort_keys=True) | 25 | json.dump(newdata, f, indent=4, sort_keys=True) |
| 26 | return datafile | 26 | return datafile |
| 27 | 27 | ||
| 28 | def get_conf_data(e, filename): | ||
| 29 | builddir = e.data.getVar('TOPDIR') | ||
| 30 | filepath = os.path.join(builddir, "conf", filename) | ||
| 31 | jsonstring = "" | ||
| 32 | if os.path.exists(filepath): | ||
| 33 | with open(filepath, 'r') as f: | ||
| 34 | for line in f.readlines(): | ||
| 35 | if line.startswith("#") or len(line.strip()) == 0: | ||
| 36 | continue | ||
| 37 | else: | ||
| 38 | jsonstring=jsonstring + line | ||
| 39 | return jsonstring | ||
| 40 | |||
| 28 | python errorreport_handler () { | 41 | python errorreport_handler () { |
| 29 | import json | 42 | import json |
| 30 | import codecs | 43 | import codecs |
| @@ -51,6 +64,8 @@ python errorreport_handler () { | |||
| 51 | data['failures'] = [] | 64 | data['failures'] = [] |
| 52 | data['component'] = " ".join(e.getPkgs()) | 65 | data['component'] = " ".join(e.getPkgs()) |
| 53 | data['branch_commit'] = str(base_detect_branch(e.data)) + ": " + str(base_detect_revision(e.data)) | 66 | data['branch_commit'] = str(base_detect_branch(e.data)) + ": " + str(base_detect_revision(e.data)) |
| 67 | data['local_conf'] = get_conf_data(e, 'local.conf') | ||
| 68 | data['auto_conf'] = get_conf_data(e, 'auto.conf') | ||
| 54 | lock = bb.utils.lockfile(datafile + '.lock') | 69 | lock = bb.utils.lockfile(datafile + '.lock') |
| 55 | errorreport_savedata(e, data, "error-report.txt") | 70 | errorreport_savedata(e, data, "error-report.txt") |
| 56 | bb.utils.unlockfile(lock) | 71 | bb.utils.unlockfile(lock) |
