| 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 |