On Thu, Sep 08, 2016 at 11:26:01AM +0200, Elizabeth 'pidge' Flanagan wrote: > This commit pulls and extends the functionality of .oe-error-report into > local.conf. It maintains the functionality of .oe-error-report. > > It also enables report-error to automatically send error reports to a > specified error report server. This patch enables infrastructure ppl to > set development teams up so that we can gather error metrics automatically. > > This relies on a new set of variables: > > REPORTERROR[autosend]="yes|no|ask" > REPORTERROR[user]=username > REPORTERROR[email]=email > REPORTERROR[server]=error-report-web instance > > For autosend yes and no are pretty self explainatory. ask does not pass > the -y flag to send-error-report, thus enabling the end user to review > the report prior to submission.
The same functionality was sent more than 2 years ago, but it was rejected, so I'm carrying it in our own fork since then: http://lists.openembedded.org/pipermail/openembedded-core/2014-March/091222.html > Signed-off-by: Elizabeth 'pidge' Flanagan <[email protected]> > --- > meta/classes/report-error.bbclass | 41 > +++++++++++++++++++++++++++++++++++++-- > 1 file changed, 39 insertions(+), 2 deletions(-) > > diff --git a/meta/classes/report-error.bbclass > b/meta/classes/report-error.bbclass > index 82b5bcd..909adf0 100644 > --- a/meta/classes/report-error.bbclass > +++ b/meta/classes/report-error.bbclass > @@ -85,10 +85,47 @@ python errorreport_handler () { > bb.utils.unlockfile(lock) > failures = jsondata['failures'] > if(len(failures) > 0): > + > filename = "error_report_" + e.data.getVar("BUILDNAME", > True)+".txt" > datafile = errorreport_savedata(e, jsondata, filename) > - bb.note("The errors for this build are stored in %s\nYou can > send the errors to a reports server by running:\n send-error-report %s [-s > server]" % (datafile, datafile)) > - bb.note("The contents of these logs will be posted in public > if you use the above command with the default server. Please ensure you > remove any identifying or proprietary information when prompted before > sending.") > + > + cmd_s = "send-error-report %s" % datafile > + response_s = "The errors for this build are stored in %s\n" > % datafile > + sendit = False > + > + autosend = e.data.getVarFlag("REPORTERROR","autosend") > + user = e.data.getVarFlag("REPORTERROR","user") > + email = e.data.getVarFlag("REPORTERROR","email") > + server = e.data.getVarFlag("REPORTERROR","server") > + > + if user is not None: > + cmd_s += " -n %s" % user > + if email is not None: > + cmd_s += " -e %s" % email > + if server is not None: > + cmd_s += " -s %s" % server > + > + if autosend is not None: > + if autosend == "yes": > + response_s += "The errors for this build are set to > automatically be sent.\n" > + cmd_s += " -y" > + sendit = True > + elif autosend == "ask": > + response_s += "The errors for this build are set to > automatically be sent.\n" > + sendit = True > + elif autosend is None: > + response_s += "You can send the errors to a reports > server by running:\n %s\n" % cmd_s > + elif e.data.getVarFlags('REPORTERROR') is None: > + response_s += "You can send the errors to a reports > server by running:\n %s [-s server]\n" % cmd_s > + response_s += "The contents of these logs will be > posted in public if you use the above command with the default server.\n \ > + Please ensure you remove any identifying or > proprietary information when prompted before sending.\n" > + > + bb.note(response_s) > + > + if sendit == True: > + import shlex, subprocess > + args = shlex.split(cmd_s) > + subprocess.call(args) > } > > addhandler errorreport_handler > -- > 2.9.3 > > -- > _______________________________________________ > Openembedded-core mailing list > [email protected] > http://lists.openembedded.org/mailman/listinfo/openembedded-core -- Martin 'JaMa' Jansa jabber: [email protected]
signature.asc
Description: Digital signature
-- _______________________________________________ Openembedded-core mailing list [email protected] http://lists.openembedded.org/mailman/listinfo/openembedded-core
