Merge lp:~gesha/linaro-android-frontend/add-toolchain-tab into lp:linaro-android-frontend

Proposed by Georgy Redkozubov
Status: Merged
Merged at revision: 297
Proposed branch: lp:~gesha/linaro-android-frontend/add-toolchain-tab
Merge into: lp:linaro-android-frontend
Diff against target: 174 lines (+94/-7)
2 files modified
android_build/templates/index.html (+49/-1)
static/index.js (+45/-6)
To merge this branch: bzr merge lp:~gesha/linaro-android-frontend/add-toolchain-tab
Reviewer Review Type Date Requested Status
Paul Sokolovsky Approve
Linaro Infrastructure Pending
Review via email: mp+144078@code.launchpad.net

Description of the change

This branch adds toolchain tabs to Android-build UI.

To post a comment you must log in.
Revision history for this message
Paul Sokolovsky (pfalcon) wrote :

Categorization logic starts to look really complicated. It may also starting to be a performance penalty to re-evaluate all those boolean functions for each item, might be better idea to just have single functions which analyzes items and return category where it should go. Those are mostly comments for any future work, looks good for what it is now.

review: Approve

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
=== modified file 'android_build/templates/index.html'
--- android_build/templates/index.html 2012-12-28 12:09:58 +0000
+++ android_build/templates/index.html 2013-01-21 10:42:22 +0000
@@ -243,6 +243,7 @@
243 <ul>243 <ul>
244 <li><a id="engineer-tab" href="#engineer-tab">Engineer Builds</a></li>244 <li><a id="engineer-tab" href="#engineer-tab">Engineer Builds</a></li>
245 <li><a id="member-tab" href="#member-tab">Member Builds</a></li>245 <li><a id="member-tab" href="#member-tab">Member Builds</a></li>
246 <li><a id="toolchain-tab" href="#toolchain-tab">Toolchain Builds</a></li>
246 <li><a id="user-tab" href="#user-tab">User Builds</a></li>247 <li><a id="user-tab" href="#user-tab">User Builds</a></li>
247 <li><a id="community-tab" href="#community-tab">Community Builds</a></li>248 <li><a id="community-tab" href="#community-tab">Community Builds</a></li>
248 <li><a id="archive-tab" href="#archive-tab">Archive Builds</a></li>249 <li><a id="archive-tab" href="#archive-tab">Archive Builds</a></li>
@@ -298,7 +299,7 @@
298 <div id="member-tab">299 <div id="member-tab">
299 <div id="msubteams">300 <div id="msubteams">
300 <ul>301 <ul>
301 <li><a id="mti" href=#mti"><em>TI</em></a></li>302 <li><a id="mti" href="#mti"><em>TI</em></a></li>
302 <li><a id="msamsung" href="#msamsung"><em>Samsung</em></a></li>303 <li><a id="msamsung" href="#msamsung"><em>Samsung</em></a></li>
303 <li><a id="marm" href="#marm"><em>ARM</em></a></li>304 <li><a id="marm" href="#marm"><em>ARM</em></a></li>
304 <li><a id="mste" href="#mste"><em>ST-E</em></a></li>305 <li><a id="mste" href="#mste"><em>ST-E</em></a></li>
@@ -495,6 +496,53 @@
495 </div>496 </div>
496 </div>497 </div>
497 </div>498 </div>
499 <div id="toolchain-tab">
500 <div id="tsubteams">
501 <ul>
502 <li><a href="#tdaily-tab"><em>Daily</em></a></li>
503 <li><a href="#trelease-tab"><em>Release</em></a></li>
504 <li><a href="#trestricted-tab"><em>Restricted</em></a></li>
505 </ul>
506 <div>
507 <div id="tdaily-tab">
508 Search: <input class="search" />
509 Status: <select>
510 <option value="Any" selected="selected">Any</option>
511 <option value="OK">Success</option>
512 <option value="FAILED">Failure</option>
513 <option value="ABORTED">Aborted</option>
514 <option value="RUNNING">Building</option>
515 <option value="">Never built</option>
516 </select>
517 <div class="build-table" id="toolchain-build-table"></div>
518 </div>
519 <div id="trelease-tab">
520 Search: <input class="search" />
521 Status: <select>
522 <option value="Any" selected="selected">Any</option>
523 <option value="OK">Success</option>
524 <option value="FAILED">Failure</option>
525 <option value="ABORTED">Aborted</option>
526 <option value="RUNNING">Building</option>
527 <option value="">Never built</option>
528 </select>
529 <div class="build-table" id="toolchain-release-build-table"></div>
530 </div>
531 <div id="trestricted-tab">
532 Search: <input class="search" />
533 Status: <select>
534 <option value="Any" selected="selected">Any</option>
535 <option value="OK">Success</option>
536 <option value="FAILED">Failure</option>
537 <option value="ABORTED">Aborted</option>
538 <option value="RUNNING">Building</option>
539 <option value="">Never built</option>
540 </select>
541 <div class="build-table" id="toolchain-restricted-build-table"></div>
542 </div>
543 </div>
544 </div>
545 </div>
498 <div id="user-tab">546 <div id="user-tab">
499 Search: <input class="search" />547 Search: <input class="search" />
500 Status: <select>548 Status: <select>
501549
=== modified file 'static/index.js'
--- static/index.js 2012-12-26 07:59:57 +0000
+++ static/index.js 2013-01-21 10:42:22 +0000
@@ -16,6 +16,8 @@
16 msubteam_tabview.render();16 msubteam_tabview.render();
17 asubteam_tabview = new Y.TabView({ srcNode: '#asubteams' });17 asubteam_tabview = new Y.TabView({ srcNode: '#asubteams' });
18 asubteam_tabview.render();18 asubteam_tabview.render();
19 tsubteam_tabview = new Y.TabView({ srcNode: '#tsubteams' });
20 tsubteam_tabview.render();
19 team_tabview = new Y.TabView({srcNode: '#team-tabs'});21 team_tabview = new Y.TabView({srcNode: '#team-tabs'});
20 team_tabview.render();22 team_tabview.render();
2123
@@ -91,6 +93,18 @@
91 }93 }
92 });94 });
9395
96 tsubteam_tabview.on(
97 'render',
98 function (e) {
99 if (!globalConfig.userName || !in_array(groupsArray, 'linaro-toolchain-restricted')) {
100 var restrictedBuildsTab = tsubteam_tabview.item(2);
101 restrictedBuildsTab.on('click', function (e) { e.preventDefault(); });
102 var restrictedlink = restrictedBuildsTab.get('boundingBox').one('a');
103 restrictedlink.setStyle('color', 'grey');
104 restrictedlink.setAttribute('href', globalConfig.loginURL + '?next=' + location.pathname + '%23teams=toolchain');
105 }
106 });
107
94 mti_tabview.on(108 mti_tabview.on(
95 'render',109 'render',
96 function (e) {110 function (e) {
@@ -355,17 +369,21 @@
355 makeDT(369 makeDT(
356 "#engineering-daily-build-table",370 "#engineering-daily-build-table",
357 function (item) { 371 function (item) {
358 return item.getValue('name').search(/^~linaro-android\/(?!.*release).*$/) == 0; 372 var group = 'linaro-android';
373 var pattern = new RegExp("^~" + group + "\/(?!.*release).*$");
374 return item.getValue('name').search(pattern) == 0 && item.getValue('name').search(/toolchain/) == -1;
359 }),375 }),
360 makeDT(376 makeDT(
361 "#engineering-release-build-table",377 "#engineering-release-build-table",
362 function (item) { 378 function (item) {
363 return item.getValue('name').search(/^~linaro-android\/.*?(?:release).*$/) == 0; 379 var group = 'linaro-android';
380 var pattern = new RegExp("^~" + group + "\/.*?(?:release).*$");
381 return item.getValue('name').search(pattern) == 0 && item.getValue('name').search(/toolchain/) == -1;
364 }),382 }),
365 makeDT(383 makeDT(
366 "#engineering-restricted-build-table",384 "#engineering-restricted-build-table",
367 function (item) { 385 function (item) {
368 return item.getValue('name').search(/^~linaro-android-restricted\//) == 0; 386 return item.getValue('name').search(/^~linaro-android-restricted\//) == 0 && item.getValue('name').search(/toolchain/) == -1;
369 }),387 }),
370 makeDT(388 makeDT(
371 "#member-ti-build-table",389 "#member-ti-build-table",
@@ -382,7 +400,7 @@
382 makeDT(400 makeDT(
383 "#member-ti-restricted-build-table",401 "#member-ti-restricted-build-table",
384 function (item) { 402 function (item) {
385 return item.getValue('name').search(/^~linaro-android-member-ti-restricted\//) == 0;403 return item.getValue('name').search(/^~linaro-android-member-ti-restricted\//) == 0;
386 }),404 }),
387 makeDT(405 makeDT(
388 "#member-samsung-build-table",406 "#member-samsung-build-table",
@@ -441,10 +459,31 @@
441 function (item) { return item.getValue('name').search(userRegexp) == 0; } :459 function (item) { return item.getValue('name').search(userRegexp) == 0; } :
442 function (item) { return false; })460 function (item) { return false; })
443 ),461 ),
462 makeDT(
463 "#toolchain-build-table",
464 function (item) {
465 var group = 'linaro-android';
466 var pattern = new RegExp("^~" + group + "\/(?!.*201?\.??).*$");
467 return item.getValue('name').search(pattern) == 0 && item.getValue('name').search(/toolchain/) > 0 && item.getValue('name').search(/aarch64/) == -1;
468 }),
469 makeDT(
470 "#toolchain-release-build-table",
471 function (item) {
472 var group = 'linaro-android';
473 var pattern = new RegExp("^~" + group + "\/.*?(?:201?\.??).*$");
474 return item.getValue('name').search(pattern) == 0 && item.getValue('name').search(/toolchain/) > 0 && item.getValue('name').search(/aarch64/) == -1;
475 }),
476 makeDT(
477 "#toolchain-restricted-build-table",
478 function (item) {
479 var group = 'linaro-android';
480 var pattern = new RegExp("^~" + group + "\/.*?(?:aarch64).*$");
481 return item.getValue('name').search(pattern) == 0 && item.getValue('name').search(/toolchain/) > 0;
482 }),
444 makeDT("#archive-all-build-table",483 makeDT("#archive-all-build-table",
445 function (item) { return item.getValue('name').search(/^~linaro-android\//) == 0; }),484 function (item) { return item.getValue('name').search(/^~linaro-android-archive\//) == 0; }),
446 makeDT("#archive-restricted-build-table",485 makeDT("#archive-restricted-build-table",
447 function (item) { return item.getValue('name').search(/^~linaro-android-restricted\//) == 0; }),486 function (item) { return item.getValue('name').search(/^~linaro-android-archive-restricted\//) == 0; }),
448 makeDT("#community-build-table", 487 makeDT("#community-build-table",
449 function (item) { 488 function (item) {
450 return item.getValue('name').search(/^~linaro-android-community\//) == 0;})489 return item.getValue('name').search(/^~linaro-android-community\//) == 0;})

Subscribers

People subscribed via source and target branches