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 |