Use jdm's tracker

This commit is contained in:
Manish Goregaokar 2016-11-28 13:29:10 -08:00
parent 4f021d3c53
commit c0c65ea637
2 changed files with 27 additions and 16 deletions

View file

@ -2,7 +2,7 @@ mac-rel-wpt1:
- ./mach build --release - ./mach build --release
- ./mach test-wpt-failure - ./mach test-wpt-failure
- ./mach test-wpt --release --processes 8 --total-chunks 2 --this-chunk 1 --log-raw test-wpt.log --log-errorsummary wpt-errorsummary.log --always-succeed - ./mach test-wpt --release --processes 8 --total-chunks 2 --this-chunk 1 --log-raw test-wpt.log --log-errorsummary wpt-errorsummary.log --always-succeed
- ./mach filter-intermittents wpt-errorsummary.log --output filtered-wpt-errorsummary.log - ./mach filter-intermittents wpt-errorsummary.log --output filtered-wpt-errorsummary.log --use-tracker
- ./mach test-wpt --release --binary-arg=--multiprocess --processes 8 --log-raw test-wpt-mp.log --log-errorsummary wpt-mp-errorsummary.log eventsource - ./mach test-wpt --release --binary-arg=--multiprocess --processes 8 --log-raw test-wpt-mp.log --log-errorsummary wpt-mp-errorsummary.log eventsource
- ./mach build-cef --release - ./mach build-cef --release
- bash ./etc/ci/lockfile_changed.sh - bash ./etc/ci/lockfile_changed.sh
@ -10,7 +10,8 @@ mac-rel-wpt1:
mac-rel-wpt2: mac-rel-wpt2:
- ./mach build --release - ./mach build --release
- ./mach test-wpt --release --processes 8 --total-chunks 2 --this-chunk 2 --log-raw test-wpt.log --log-errorsummary wpt-errorsummary.log - ./mach test-wpt --release --processes 8 --total-chunks 2 --this-chunk 2 --log-raw test-wpt.log --log-errorsummary wpt-errorsummary.log --always-succeed
- ./mach filter-intermittents wpt-errorsummary.log --output filtered-wpt-errorsummary.log --use-tracker
mac-dev-unit: mac-dev-unit:
- ./mach build --dev - ./mach build --dev
@ -23,7 +24,7 @@ mac-dev-unit:
mac-rel-css: mac-rel-css:
- ./mach build --release - ./mach build --release
- ./mach test-css --release --processes 4 --log-raw test-css.log --log-errorsummary css-errorsummary.log --always-succeed - ./mach test-css --release --processes 4 --log-raw test-css.log --log-errorsummary css-errorsummary.log --always-succeed
- ./mach filter-intermittents css-errorsummary.log --output filtered-css-errorsummary.log - ./mach filter-intermittents css-errorsummary.log --output filtered-css-errorsummary.log --use-tracker
- ./mach build-geckolib --release - ./mach build-geckolib --release
- bash ./etc/ci/lockfile_changed.sh - bash ./etc/ci/lockfile_changed.sh
- bash ./etc/ci/manifest_changed.sh - bash ./etc/ci/manifest_changed.sh
@ -60,13 +61,13 @@ linux-rel-wpt:
- ./mach build --release --with-debug-assertions - ./mach build --release --with-debug-assertions
- ./mach test-wpt-failure - ./mach test-wpt-failure
- ./mach test-wpt --release --processes 24 --log-raw test-wpt.log --log-errorsummary wpt-errorsummary.log --always-succeed - ./mach test-wpt --release --processes 24 --log-raw test-wpt.log --log-errorsummary wpt-errorsummary.log --always-succeed
- ./mach filter-intermittents wpt-errorsummary.log --output filtered-wpt-errorsummary.log - ./mach filter-intermittents wpt-errorsummary.log --output filtered-wpt-errorsummary.log --use-tracker
- ./mach test-wpt --release --binary-arg=--multiprocess --processes 24 --log-raw test-wpt-mp.log --log-errorsummary wpt-mp-errorsummary.log eventsource - ./mach test-wpt --release --binary-arg=--multiprocess --processes 24 --log-raw test-wpt-mp.log --log-errorsummary wpt-mp-errorsummary.log eventsource
linux-rel-css: linux-rel-css:
- ./mach build --release --with-debug-assertions - ./mach build --release --with-debug-assertions
- ./mach test-css --release --processes 16 --log-raw test-css.log --log-errorsummary css-errorsummary.log --always-succeed - ./mach test-css --release --processes 16 --log-raw test-css.log --log-errorsummary css-errorsummary.log --always-succeed
- ./mach filter-intermittents css-errorsummary.log --output filtered-css-errorsummary.log - ./mach filter-intermittents css-errorsummary.log --output filtered-css-errorsummary.log --use-tracker
- ./mach build-cef --release --with-debug-assertions - ./mach build-cef --release --with-debug-assertions
- ./mach build-geckolib --release - ./mach build-geckolib --release
- ./mach test-stylo --release - ./mach test-stylo --release

View file

@ -488,7 +488,9 @@ class MachCommands(CommandBase):
help='Print filtered log to file') help='Print filtered log to file')
@CommandArgument('--auth', default=None, @CommandArgument('--auth', default=None,
help='File containing basic authorization credentials for Github API (format `username:password`)') help='File containing basic authorization credentials for Github API (format `username:password`)')
def filter_intermittents(self, summary, output, auth): @CommandArgument('--use-tracker', default=False, action='store_true',
help='Use https://www.joshmatthews.net/intermittent-tracker')
def filter_intermittents(self, summary, output, auth, use_tracker):
encoded_auth = None encoded_auth = None
if auth: if auth:
with open(auth, "r") as file: with open(auth, "r") as file:
@ -501,16 +503,24 @@ class MachCommands(CommandBase):
failures += [line_json] failures += [line_json]
actual_failures = [] actual_failures = []
for failure in failures: for failure in failures:
qstr = "repo:servo/servo+label:I-intermittent+type:issue+state:open+%s" % failure['test'] if use_tracker:
# we want `/` to get quoted, but not `+` (github's API doesn't like that), so we set `safe` to `+` query = urllib2.quote(failure['test'], safe='')
query = urllib2.quote(qstr, safe='+') request = urllib2.Request("https://www.joshmatthews.net/intermittent-tracker/query.py?name=%s" % query)
request = urllib2.Request("https://api.github.com/search/issues?q=%s" % query) search = urllib2.urlopen(request)
if encoded_auth: data = json.load(search)
request.add_header("Authorization", "Basic %s" % encoded_auth) if len(data) == 0:
search = urllib2.urlopen(request) actual_failures += [failure]
data = json.load(search) else:
if data['total_count'] == 0: qstr = "repo:servo/servo+label:I-intermittent+type:issue+state:open+%s" % failure['test']
actual_failures += [failure] # we want `/` to get quoted, but not `+` (github's API doesn't like that), so we set `safe` to `+`
query = urllib2.quote(qstr, safe='+')
request = urllib2.Request("https://api.github.com/search/issues?q=%s" % query)
if encoded_auth:
request.add_header("Authorization", "Basic %s" % encoded_auth)
search = urllib2.urlopen(request)
data = json.load(search)
if data['total_count'] == 0:
actual_failures += [failure]
if len(actual_failures) == 0: if len(actual_failures) == 0:
return 0 return 0