1 <!DOCTYPE html> 2 {% autoescape true %} 3 <html> 4 <head> 5 <!-- [START css] --> 6 <link type="text/css" rel="stylesheet" href="/bootstrap/css/bootstrap.css"> 7 <link type="text/css" rel="stylesheet" href="/bootstrap/css/bootstrap-responsive.css"> 8 <!-- [END css] --> 9 <style type="text/css"> 10 body { 11 padding-top: 40px; 12 padding-bottom: 40px; 13 background-color: #f5f5f5; 14 } 15 blockquote { 16 margin-bottom: 10px; 17 border-left-color: #bbb; 18 } 19 form { 20 margin-top: 10px; 21 } 22 .form-signin input[type="text"] { 23 font-size: 16px; 24 height: auto; 25 margin-bottom: 15px; 26 padding: 7px 9px; 27 } 28 .row { 29 margin-left: 0px; 30 margin-top: 10px; 31 overflow: scroll; 32 } 33 </style> 34 </head> 35 <body> 36 <div class="navbar navbar-inverse navbar-fixed-top"> 37 <div class="navbar-inner"> 38 <div class="container"> 39 <button type="button" class="btn btn-navbar" data-toggle="collapse" 40 data-target=".nav-collapse"> 41 <span class="icon-bar"></span> 42 <span class="icon-bar"></span> 43 <span class="icon-bar"></span> 44 </button> 45 <a class="brand" href="#">VTS Test Scheduler</a> 46 <a class="brand" href="/result">Result</a> 47 <a class="brand" href="/build">Build</a> 48 <a class="brand" href="/schedule">Schedule</a> 49 <a class="brand" href="/device">Device & Lab</a> 50 <a class="brand" href="/job">Job Queue</a> 51 <div class="nav-collapse collapse pull-right"> 52 <a href="{{ url|safe }}" class="btn">{{ url_linktext }}</a> 53 </div> 54 </div> 55 </div> 56 </div> 57 <div class="container"> 58 <h1>Device List</h1> 59 <!-- [START greetings] --> 60 Now: {{ now }} 61 <table border=1> 62 <tr> 63 <td># 64 <td>Host 65 <td>Product 66 <td>Serial 67 <td>Status 68 <td>Scheduling Status 69 <td>Timestamp 70 </tr> 71 {% set index = 1 %} 72 {% for device in devices %} 73 <tr> 74 <td> 75 {{ index }} 76 {% set index = index + 1 %} 77 <td> 78 {{ device.hostname }} 79 <td> 80 {{ device.product }} 81 <td> 82 {{ device.serial }} 83 <td> 84 {{ {0: "unknown", 85 1: "fastboot", 86 2: "online", 87 3: "ready", 88 4: "use", 89 5: "error", 90 6: "no-response"}[device.status] | default("status key error") }} 91 <td> 92 {{ {0: "free", 93 1: "reserved", 94 2: "use"}[device.scheduling_status] | default("status key error") }} 95 <td> 96 {{ device.timestamp }} 97 </tr> 98 {% endfor %} 99 </table> 100 <!-- [END greetings] --> 101 <h1>Lab List</h1> 102 <!-- [START greetings] --> 103 <table border=1> 104 <tr> 105 <td># 106 <td>Name 107 <td>Owner 108 <td>Hostname 109 <td>IP 110 <td>Script 111 </tr> 112 {% set index = 1 %} 113 {% for lab in labs %} 114 <tr> 115 <td> 116 {{ index }} 117 {% set index = index + 1 %} 118 <td> 119 {{ lab.name }} 120 <td> 121 {{ lab.owner }} 122 <td> 123 {{ lab.hostname }} 124 <td> 125 {{ lab.ip }} 126 <td> 127 {{ lab.script }} 128 </tr> 129 {% endfor %} 130 </table> 131 <hr> 132 </div> 133 </body> 134 </html> 135 {% endautoescape %} 136