OLD | NEW |
1 #!/bin/sh | 1 #!/bin/sh |
2 # Copyright (c) 2012 The Chromium Authors. All rights reserved. | 2 # Copyright (c) 2012 The Chromium Authors. All rights reserved. |
3 # Use of this source code is governed by a BSD-style license that can be | 3 # Use of this source code is governed by a BSD-style license that can be |
4 # found in the LICENSE file. | 4 # found in the LICENSE file. |
5 | 5 |
6 # Scape errors from the valgrind bots, reproduce them locally, | 6 # Scape errors from the valgrind bots, reproduce them locally, |
7 # save logs as regrind-TESTNAME.log, and display any errors found. | 7 # save logs as regrind-TESTNAME.log, and display any errors found. |
8 # Also save files regrind-failed.txt listing failed tests, | 8 # Also save files regrind-failed.txt listing failed tests, |
9 # and regrind-failed-map.txt showing which bot URLs have which failed tests | 9 # and regrind-failed-map.txt showing which bot URLs have which failed tests |
10 # (handy when filing bugs). | 10 # (handy when filing bugs). |
(...skipping 24 matching lines...) Expand all Loading... |
35 # Given a log on stdin, list all the tests that failed in that log. | 35 # Given a log on stdin, list all the tests that failed in that log. |
36 layout_list_failed_tests() { | 36 layout_list_failed_tests() { |
37 grep "Command:.*LayoutTests" | | 37 grep "Command:.*LayoutTests" | |
38 sed 's/<.*>//' | | 38 sed 's/<.*>//' | |
39 sed 's/.*LayoutTests/LayoutTests/' | | 39 sed 's/.*LayoutTests/LayoutTests/' | |
40 sort -u | | 40 sort -u | |
41 tr -d '\015' | 41 tr -d '\015' |
42 } | 42 } |
43 | 43 |
44 # Generate a list of failed tests in regrind-failed.txt by scraping bot. | 44 # Generate a list of failed tests in regrind-failed.txt by scraping bot. |
45 # Scrape most recent first, so if user interrupts, he is left with fresh-ish dat
a. | 45 # Scrape most recent first, so if user interrupts, they are left with fresh-ish |
| 46 # data. |
46 scrape_layout() { | 47 scrape_layout() { |
47 rm -f regrind-*.tmp* regrind-failed.txt regrind-failed-map.txt | 48 rm -f regrind-*.tmp* regrind-failed.txt regrind-failed-map.txt |
48 touch regrind-failed.txt | 49 touch regrind-failed.txt |
49 | 50 |
50 # First, grab the number of the latest complete build. | 51 # First, grab the number of the latest complete build. |
51 wget -q -O regrind-builds.html "$LAYOUT_URL" | 52 wget -q -O regrind-builds.html "$LAYOUT_URL" |
52 latest=`grep "<li><font .*" < regrind-builds.html | head -1 | sed 's/.*#//;s/<
.*//'` | 53 latest=`grep "<li><font .*" < regrind-builds.html | head -1 | sed 's/.*#//;s/<
.*//'` |
53 | 54 |
54 echo "Fetching $LAYOUT_COUNT logs from bot" | 55 echo "Fetching $LAYOUT_COUNT logs from bot" |
55 # Scrape the desired number of runs (150 is about one cycle) | 56 # Scrape the desired number of runs (150 is about one cycle) |
(...skipping 73 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
129 | 130 |
130 if test $do_repro = 1 | 131 if test $do_repro = 1 |
131 then | 132 then |
132 repro_layout | 133 repro_layout |
133 fi | 134 fi |
134 | 135 |
135 if test $do_cleanup = 1 | 136 if test $do_cleanup = 1 |
136 then | 137 then |
137 rm -f regrind-errfiles.txt regrind-*.tmp* | 138 rm -f regrind-errfiles.txt regrind-*.tmp* |
138 fi | 139 fi |
OLD | NEW |