| OLD | NEW |
| (Empty) |
| 1 /* | |
| 2 * Copyright (C) 2011 Google Inc. All rights reserved. | |
| 3 * | |
| 4 * Redistribution and use in source and binary forms, with or without | |
| 5 * modification, are permitted provided that the following conditions | |
| 6 * are met: | |
| 7 * 1. Redistributions of source code must retain the above copyright | |
| 8 * notice, this list of conditions and the following disclaimer. | |
| 9 * 2. Redistributions in binary form must reproduce the above copyright | |
| 10 * notice, this list of conditions and the following disclaimer in the | |
| 11 * documentation and/or other materials provided with the distribution. | |
| 12 * | |
| 13 * THIS SOFTWARE IS PROVIDED BY APPLE INC. AND ITS CONTRIBUTORS ``AS IS'' | |
| 14 * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, | |
| 15 * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR | |
| 16 * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR ITS CONTRIBUTORS | |
| 17 * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR | |
| 18 * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF | |
| 19 * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS | |
| 20 * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN | |
| 21 * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) | |
| 22 * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF | |
| 23 * THE POSSIBILITY OF SUCH DAMAGE. | |
| 24 */ | |
| 25 | |
| 26 var config = config || {}; | |
| 27 | |
| 28 (function() { | |
| 29 | |
| 30 config.kBuildNumberLimit = 20; | |
| 31 | |
| 32 config.kPlatforms = { | |
| 33 'apple' : { | |
| 34 label : 'Apple', | |
| 35 buildConsoleURL: 'http://build.webkit.org', | |
| 36 layoutTestResultsURL: 'http://build.webkit.org/results', | |
| 37 waterfallURL: 'http://build.webkit.org/waterfall', | |
| 38 builders: { | |
| 39 'Apple Lion Release WK1 (Tests)' : {version: 'lion' }, | |
| 40 'Apple Lion Debug WK1 (Tests)' : {version: 'lion', debug: true}, | |
| 41 'Apple Lion Release WK2 (Tests)' : {version: 'lion' }, | |
| 42 'Apple Lion Debug WK2 (Tests)' : {version: 'lion', debug: true}, | |
| 43 'Apple MountainLion Release WK1 (Tests)' : {version: 'mountainlion'
}, | |
| 44 'Apple MountainLion Debug WK1 (Tests)' : {version: 'mountainlion', d
ebug: true}, | |
| 45 'Apple MountainLion Release WK2 (Tests)' : {version: 'mountainlion'
}, | |
| 46 'Apple MountainLion Debug WK2 (Tests)' : {version: 'mountainlion', d
ebug: true}, | |
| 47 // 'Apple Win XP Debug (Tests)' : {version: 'xp',debug: true}, | |
| 48 // 'Apple Win 7 Release (Tests)' : {version: 'win7'}, | |
| 49 }, | |
| 50 haveBuilderAccumulatedResults : false, | |
| 51 useDirectoryListingForOldBuilds: false, | |
| 52 useFlakinessDashboard: false, | |
| 53 resultsDirectoryNameFromBuilderName: function(builderName) { | |
| 54 return encodeURIComponent(builderName); | |
| 55 }, | |
| 56 resultsDirectoryForBuildNumber: function(buildNumber, revision) { | |
| 57 return encodeURIComponent('r' + revision + ' (' + buildNumber + ')')
; | |
| 58 }, | |
| 59 _builderApplies: function(builderName) { | |
| 60 return builderName.indexOf('Apple') != -1; | |
| 61 }, | |
| 62 }, | |
| 63 'chromium' : { | |
| 64 label : 'Chromium', | |
| 65 buildConsoleURL: 'http://build.chromium.org/p/chromium.webkit', | |
| 66 layoutTestResultsURL: 'http://build.chromium.org/f/chromium/layout_test_
results', | |
| 67 waterfallURL: 'http://build.chromium.org/p/chromium.webkit/waterfall', | |
| 68 builders: { | |
| 69 'WebKit XP': {version: 'xp'}, | |
| 70 'WebKit Win7': {version: 'win7'}, | |
| 71 'WebKit Win7 (dbg)(1)': {version: 'win7', debug: true}, | |
| 72 'WebKit Win7 (dbg)(2)': {version: 'win7', debug: true}, | |
| 73 'WebKit Linux': {version: 'lucid', is64bit: true}, | |
| 74 'WebKit Linux 32': {version: 'lucid'}, | |
| 75 'WebKit Linux (dbg)': {version: 'lucid', is64bit: true, debug: true}
, | |
| 76 'WebKit Mac10.6': {version: 'snowleopard'}, | |
| 77 'WebKit Mac10.6 (dbg)': {version: 'snowleopard', debug: true}, | |
| 78 'WebKit Mac10.7': {version: 'lion'}, | |
| 79 'WebKit Mac10.7 (dbg)': {version: 'lion', debug: true}, | |
| 80 'WebKit Mac10.8': {version: 'mountainlion'}, | |
| 81 }, | |
| 82 haveBuilderAccumulatedResults : true, | |
| 83 useDirectoryListingForOldBuilds: true, | |
| 84 useFlakinessDashboard: true, | |
| 85 resultsDirectoryNameFromBuilderName: function(builderName) { | |
| 86 return base.underscoredBuilderName(builderName); | |
| 87 }, | |
| 88 resultsDirectoryForBuildNumber: function(buildNumber, revision) { | |
| 89 return buildNumber; | |
| 90 }, | |
| 91 _builderApplies: function(builderName) { | |
| 92 // FIXME: Should garden-o-matic show these? I can imagine showing th
e deps bots being useful at least so | |
| 93 // that the gardener only need to look at garden-o-matic and never a
t the waterfall. Not really sure who | |
| 94 // watches the GPU bots. | |
| 95 // The 10.8 Tests bot is really an FYI bot at this point | |
| 96 // WebKit Android doesn't upload its results yet. | |
| 97 return builderName.indexOf('GPU') == -1 && | |
| 98 builderName.indexOf('deps') == -1 && | |
| 99 builderName.indexOf('ASAN') == -1 && | |
| 100 builderName.indexOf('WebKit (Content Shell) Android') == -1 &
& | |
| 101 builderName.indexOf('Mac10.8 Tests') == -1 && | |
| 102 builderName.indexOf('WebKit Android') == -1; | |
| 103 }, | |
| 104 }, | |
| 105 'gtk' : { | |
| 106 label : 'GTK', | |
| 107 buildConsoleURL: 'http://build.webkit.org', | |
| 108 layoutTestResultsURL: 'http://build.webkit.org/results', | |
| 109 waterfallURL: 'http://build.webkit.org/waterfall', | |
| 110 builders: { | |
| 111 'GTK Linux 32-bit Release' : {version: '32-bit release'}, | |
| 112 'GTK Linux 64-bit Release' : {version: '64-bit release'}, | |
| 113 'GTK Linux 64-bit Debug' : {version: '64-bit debug', debug: true}, | |
| 114 }, | |
| 115 haveBuilderAccumulatedResults : false, | |
| 116 useDirectoryListingForOldBuilds: false, | |
| 117 useFlakinessDashboard: false, | |
| 118 resultsDirectoryNameFromBuilderName: function(builderName) { | |
| 119 return encodeURIComponent(builderName); | |
| 120 }, | |
| 121 resultsDirectoryForBuildNumber: function(buildNumber, revision) { | |
| 122 return encodeURIComponent('r' + revision + ' (' + buildNumber + ')')
; | |
| 123 }, | |
| 124 _builderApplies: function(builderName) { | |
| 125 return builderName.indexOf('GTK') != -1; | |
| 126 }, | |
| 127 }, | |
| 128 'qt' : { | |
| 129 label : 'Qt', | |
| 130 buildConsoleURL: 'http://build.webkit.org', | |
| 131 layoutTestResultsURL: 'http://build.webkit.org/results', | |
| 132 waterfallURL: 'http://build.webkit.org/waterfall', | |
| 133 builders: { | |
| 134 'Qt Linux Release' : {version : '32-bit release'}, | |
| 135 }, | |
| 136 haveBuilderAccumulatedResults : false, | |
| 137 useDirectoryListingForOldBuilds: false, | |
| 138 useFlakinessDashboard: false, | |
| 139 resultsDirectoryNameFromBuilderName: function(builderName) { | |
| 140 return encodeURIComponent(builderName); | |
| 141 }, | |
| 142 resultsDirectoryForBuildNumber: function(buildNumber, revision) { | |
| 143 return encodeURIComponent('r' + revision + ' (' + buildNumber + ')')
; | |
| 144 }, | |
| 145 _builderApplies: function(builderName) { | |
| 146 return builderName.indexOf('Qt') != -1; | |
| 147 }, | |
| 148 }, | |
| 149 'efl' : { | |
| 150 label : 'EFL', | |
| 151 buildConsoleURL: 'http://build.webkit.org', | |
| 152 layoutTestResultsURL: 'http://build.webkit.org/results', | |
| 153 waterfallURL: 'http://build.webkit.org/waterfall', | |
| 154 builders: { | |
| 155 'EFL Linux 64-bit Debug WK2' : {version : '64-bit WK2', debug: true}
, | |
| 156 'EFL Linux 64-bit Release WK2' : {version: '64-bit WK2'}, | |
| 157 'EFL Linux 64-bit Release' : {version: '64-bit'}, | |
| 158 }, | |
| 159 haveBuilderAccumulatedResults : false, | |
| 160 useDirectoryListingForOldBuilds: false, | |
| 161 useFlakinessDashboard: false, | |
| 162 resultsDirectoryNameFromBuilderName: function(builderName) { | |
| 163 return encodeURIComponent(builderName); | |
| 164 }, | |
| 165 resultsDirectoryForBuildNumber: function(buildNumber, revision) { | |
| 166 return encodeURIComponent('r' + revision + ' (' + buildNumber + ')')
; | |
| 167 }, | |
| 168 _builderApplies: function(builderName) { | |
| 169 return builderName.indexOf('EFL') != -1; | |
| 170 }, | |
| 171 }, | |
| 172 }; | |
| 173 | |
| 174 config.kBlinkSvnURL = 'svn://svn.chromium.org/blink/trunk'; | |
| 175 config.kBlinkRevisionURL = 'http://src.chromium.org/viewvc/blink'; | |
| 176 config.kSvnLogURL = 'http://build.chromium.org/cgi-bin/svn-log'; | |
| 177 config.kNumberOfRecentCommits = 50; | |
| 178 | |
| 179 config.kBugzillaURL = 'https://bugs.webkit.org'; | |
| 180 | |
| 181 config.kRevisionAttr = 'data-revision'; | |
| 182 config.kTestNameAttr = 'data-test-name'; | |
| 183 config.kBuilderNameAttr = 'data-builder-name'; | |
| 184 config.kFailureCountAttr = 'data-failure-count'; | |
| 185 config.kFailureTypesAttr = 'data-failure-types'; | |
| 186 config.kInfobarTypeAttr = 'data-infobar-type'; | |
| 187 | |
| 188 var kTenMinutesInMilliseconds = 10 * 60 * 1000; | |
| 189 config.kUpdateFrequency = kTenMinutesInMilliseconds; | |
| 190 config.kRelativeTimeUpdateFrequency = 1000 * 60; | |
| 191 | |
| 192 config.kExperimentalFeatures = window.location.search.search('enableExperiments=
1') != -1; | |
| 193 | |
| 194 config.currentPlatform = base.getURLParameter('platform') || 'chromium'; | |
| 195 | |
| 196 // FIXME: We should add a way to restrict the results to a subset of the builder
s | |
| 197 // (or maybe just a single builder) in the UI as well as via an URL parameter. | |
| 198 config.currentBuilder = base.getURLParameter('builder'); | |
| 199 | |
| 200 config.currentBuilders = function() { | |
| 201 var current_builders = {}; | |
| 202 if (config.currentBuilder) { | |
| 203 current_builders[config.currentBuilder] = config.kPlatforms[config.curre
ntPlatform].builders[config.currentBuilder]; | |
| 204 return current_builders; | |
| 205 } else { | |
| 206 return config.kPlatforms[config.currentPlatform].builders; | |
| 207 } | |
| 208 }; | |
| 209 | |
| 210 config.builderApplies = function(builderName) { | |
| 211 if (config.currentBuilder) | |
| 212 return builderName == config.currentBuilder; | |
| 213 return config.kPlatforms[config.currentPlatform]._builderApplies(builderName
); | |
| 214 }; | |
| 215 | |
| 216 config.setPlatform = function(platform) { | |
| 217 if (!this.kPlatforms[platform]) { | |
| 218 window.console.log(platform + ' is not a recognized platform'); | |
| 219 return; | |
| 220 } | |
| 221 config.currentPlatform = platform; | |
| 222 }; | |
| 223 | |
| 224 config.useLocalResults = Boolean(base.getURLParameter('useLocalResults')) || fal
se; | |
| 225 | |
| 226 })(); | |
| OLD | NEW |