aboutsummaryrefslogtreecommitdiffstats
path: root/meta/classes
diff options
context:
space:
mode:
authorMartin Jansa <martin.jansa@gmail.com>2015-09-04 14:22:09 +0200
committerRichard Purdie <richard.purdie@linuxfoundation.org>2015-09-06 15:24:20 +0100
commit3544b4d4d72330eb12bb3cda25cb99ed52c8a2eb (patch)
treee7003eaaba9729562710045626de6cae34201746 /meta/classes
parent2daab2114a0bee1268ce8f7d973ea81d5a530dfd (diff)
downloadopenembedded-core-contrib-3544b4d4d72330eb12bb3cda25cb99ed52c8a2eb.tar.gz
report-error: send only last 5242000 characters in error logs
* otherwise whole build report submission is rejected because it's too big Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'meta/classes')
-rw-r--r--meta/classes/report-error.bbclass15
1 files changed, 12 insertions, 3 deletions
diff --git a/meta/classes/report-error.bbclass b/meta/classes/report-error.bbclass
index cabd98cc32..040c29ea24 100644
--- a/meta/classes/report-error.bbclass
+++ b/meta/classes/report-error.bbclass
@@ -54,13 +54,22 @@ python errorreport_handler () {
if log:
try:
logFile = open(log, 'r')
- taskdata['log'] = logFile.read().decode('utf-8')
+ logdata = logFile.read().decode('utf-8')
logFile.close()
except:
- taskdata['log'] = "Unable to read log file"
+ logdata = "Unable to read log file"
else:
- taskdata['log'] = "No Log"
+ logdata = "No Log"
+
+ # server will refuse failures longer than param specified in project.settings.py
+ # MAX_UPLOAD_SIZE = "5242880"
+ # use lower value, because 650 chars can be spent in task, package, version
+ max_logdata_size = 5242000
+ # upload last max_logdata_size characters
+ if len(logdata) > max_logdata_size:
+ logdata = "..." + logdata[-max_logdata_size:]
+ taskdata['log'] = logdata
lock = bb.utils.lockfile(datafile + '.lock')
jsondata = json.loads(errorreport_getdata(e))
jsondata['failures'].append(taskdata)