Cleanup and document future work
This commit is contained in:
parent
3293f79619
commit
d444375df5
11
README.md
11
README.md
@ -1,12 +1,23 @@
|
|||||||
elasticRecheck
|
elasticRecheck
|
||||||
==============
|
==============
|
||||||
|
|
||||||
|
Classify tempest-devstack failures using a list of elastic search queries.
|
||||||
|
|
||||||
Idea
|
Idea
|
||||||
----
|
----
|
||||||
When a tempest job failure is detected, by monitoring gerrit (using gerritlib), a collection of logstash queries will be run on the failed job to detect what the bug was.
|
When a tempest job failure is detected, by monitoring gerrit (using gerritlib), a collection of logstash queries will be run on the failed job to detect what the bug was.
|
||||||
|
|
||||||
Eventually this can be tied into the rechecker tool and launchpad
|
Eventually this can be tied into the rechecker tool and launchpad
|
||||||
|
|
||||||
|
Future Work
|
||||||
|
------------
|
||||||
|
- [ ] IRC bot output to #openstack-qa with output
|
||||||
|
- [ ] Pull in list of queries from a more flexible source, so a commit isn't needed to update each time
|
||||||
|
- [ ] https://bugs.launchpad.net/openstack-ci/+bug/1225108
|
||||||
|
- [ ] Turn into a server app
|
||||||
|
- [ ] Comment on classified failures saying what the issue probably is
|
||||||
|
- [ ] Make unit tests robust and not need internet
|
||||||
|
|
||||||
Dependencies
|
Dependencies
|
||||||
------------
|
------------
|
||||||
- gerritlib
|
- gerritlib
|
||||||
|
@ -105,7 +105,6 @@ class Classifier():
|
|||||||
for x in self.queries:
|
for x in self.queries:
|
||||||
print "Looking for bug: https://bugs.launchpad.net/bugs/%s" % x['bug']
|
print "Looking for bug: https://bugs.launchpad.net/bugs/%s" % x['bug']
|
||||||
query = self._apply_template(self.general_template, x['query'])
|
query = self._apply_template(self.general_template, x['query'])
|
||||||
print query
|
|
||||||
results = self.es.search(query, size='10')
|
results = self.es.search(query, size='10')
|
||||||
self._parse_results(results)
|
self._parse_results(results)
|
||||||
|
|
||||||
@ -131,13 +130,11 @@ class Classifier():
|
|||||||
break
|
break
|
||||||
else:
|
else:
|
||||||
time.sleep(40)
|
time.sleep(40)
|
||||||
print "READY!"
|
|
||||||
for x in self.queries:
|
for x in self.queries:
|
||||||
print "Looking for bug: https://bugs.launchpad.net/bugs/%s" % x['bug']
|
print "Looking for bug: https://bugs.launchpad.net/bugs/%s" % x['bug']
|
||||||
query = self._apply_template(self.targeted_template, (x['query'],
|
query = self._apply_template(self.targeted_template, (x['query'],
|
||||||
change_number, patch_number))
|
change_number, patch_number))
|
||||||
results = self.es.search(query, size='1')
|
results = self.es.search(query, size='1')
|
||||||
print results
|
|
||||||
if results['hits']['total']>0:
|
if results['hits']['total']>0:
|
||||||
print "Found bug!"
|
print "Found bug!"
|
||||||
return x['bug']
|
return x['bug']
|
||||||
|
Loading…
x
Reference in New Issue
Block a user