Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,7 @@
_obj
_test
.idea/
.vscode/

# Architecture specific extensions/prefixes
*.[568vq]
Expand Down
123 changes: 123 additions & 0 deletions app/cloud_impressive.html
Original file line number Diff line number Diff line change
@@ -0,0 +1,123 @@
<html ng-app="showfast">

<head>
<title>ShowFast</title>
<link rel="stylesheet" href="/static/css/vendor/bootstrap.min.css" />
<link rel="stylesheet" href="/static/css/admin.css" />
<link rel="stylesheet" href="/static/css/cloud_impressive.css" />
<link rel="stylesheet" href="/static/css/tablesort.css" />

<script type="text/javascript" src="/static/js/vendor/jquery.min.js"></script>
<script type="text/javascript" src="/static/js/vendor/bootstrap.min.js"></script>
<script type="text/javascript" src="/static/js/vendor/angular.min.js"></script>
<script type="text/javascript" src="/static/js/vendor/angular-tablesort.js"></script>
<script type="text/javascript" src="/static/js/cloud_impressive.js"></script>
</head>

<body ng-controller="ImpressiveCtrl">
<div class="masthead text-center">
<h2>Cloud Impressive</h2>


<div class="text-center">
<div class="btn-group" data-toggle="buttons">
<label
ng-repeat="(id, component) in components"
ng-class="{active: id === activeComponent}"
ng-click="setActiveComponent(id)"
class="btn btn-success">
<input type="radio">{{component.title}}
</label>
</div>

<div class="btn-group" data-toggle="buttons">
<label
ng-repeat="mode in ['Active','All']"
ng-class="{active: mode === activeMode}"
ng-click="setActiveMode(mode)"
class="btn btn-warning">
<input type="radio">{{mode}}
</label>
</div>

</div>

<div>
<table style="width:200px" class="table-borderless t-inventory">
<colgroup>
<col span="1" style="width: 10%;">
<col span="1" style="width: 10%;">
</colgroup>

<tbody class="t-data">
<tr>
<td class=text-total>Total:</td>
<td class=text-total>{{summaryTotal}}</td>
</tr>
<tr>
<td class="text-completed">Completed:</td>
<td class="text-completed">{{summaryCompleted}}</td>
</tr>
<tr>
<td class="text-missing">Missing:</td>
<td class="text-missing">{{summaryMissing}}</td>
</tr>
</tbody>
</table>
</div>


<div>
<table class="table-striped table-bordered table-condensed t-inventory" ts-wrapper>
<colgroup>
<col span="1" style="width: 10%;">
<col span="1" style="width: 60%;">
<col span="1" style="width: 8%;">
<col span="1" style="width: 8%;">
<col span="1" style="width: 14%;">
</colgroup>

<thead class="t-header">
<tr>
<th ts-criteria="category">Category</th>
<th ts-criteria="title" ts-default>Test</th>
<th ts-criteria="b1" ts-default>
<select class="form-control" ng-model="lhb" ng-options="build for build in builds"></select>
</th>
<th ts-criteria="b2" ts-default>
<select class="form-control" ng-model="rhb" ng-options="build for build in builds"></select>
</th>
<th ts-criteria="b2" ts-default>Delta</th>

<th></th>
</tr>
</thead>

<tbody class="t-data">
<tr ng-repeat="test in tests" ts-repeat>
<td class="{{ GetRowStyle(test.active, test.windows) }}">{{test.category}}</td>
<td class="{{ GetRowStyle(test.active, test.windows) }}">{{test.title}} <br/> <font color="#ABB2B9">{{test.metric}}</font> </td>

<td class="{{ GetRowStyle(test.active, test.windows) }}" ng-if="test.b1 != ''"><a target="_blank" href="/#/runs/{{ test.metric }}/{{ test.b1 }}">{{test.v1}}</a></td>
<td class="{{ GetRowStyle(test.active, test.windows) }}" ng-if="test.b1 == '' && (test.jobUrl1 == '' || test.windows)"><font color="red"><strong>NONE</strong></font></td>
<td class="{{ GetRowStyle(test.active, test.windows) }}" ng-if="test.b1 == '' && test.jobUrl1 != '' && !test.windows">
<a href="{{ test.jobUrl1 }}"> <font color="red"><strong>Failed </strong></font></td></a>

<td class="{{ GetRowStyle(test.active, test.windows) }}" ng-if="test.b2 != ''"><a target="_blank" href="/#/runs/{{ test.metric }}/{{ test.b2 }}">{{test.v2}}</a></td>
<td class="{{ GetRowStyle(test.active, test.windows) }}" ng-if="test.b2 == '' && (test.jobUrl2 == '' || test.windows)"><font color="red"><strong>NONE</strong></font></td>
<td class="{{ GetRowStyle(test.active, test.windows) }}" ng-if="test.b2 == '' && test.jobUrl2 != '' && !test.windows ">
<a href="{{ test.jobUrl2 }}"> <font color="red"><strong>Failed </strong></font></td></a>

<td class="{{ GetRowStyle(test.active, test.windows) }}" ng-if="test.b1 != '' && test.b2 != ''">
<div class="{{ calcWidthClass(test.v1, test.v2) }} bar1">{{ fmtDiff(test.v1, test.v2) }} % </div>
</td>
<td class="{{ GetRowStyle(test.active) }}" ng-if="test.b1 == '' || test.b2 == ''"></td>
</tr>
</tbody>
</table>
</div>
</div>
</body>

</html>

70 changes: 69 additions & 1 deletion app/cloud_menu.json
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,7 @@
],
"providers": [
"Provisioned",
"Columnar",
"Serverless",
"Simulated"
],
Expand Down Expand Up @@ -202,6 +203,14 @@
"GCP",
"AZURE"
]
},{
"id": "vectordb",
"title": "VectorDBBench",
"subCategories": [
"AWS",
"GCP",
"AZURE"
]
}
]
},
Expand Down Expand Up @@ -258,6 +267,15 @@
"AZURE"
]
},
{
"id": "ch2",
"title": "CH2",
"subCategories": [
"AWS",
"GCP",
"AZURE"
]
},
{
"id": "rebalance",
"title": "Rebalance",
Expand Down Expand Up @@ -423,6 +441,56 @@
}
]
},
"aiservices": {
"title": "AI Services",
"categories": [
{
"id": "models",
"title": "Model Services/ AI Gateway",
"subCategories": [
"AWS",
"GCP",
"AZURE"
]
},
{
"id": "uds",
"title": "UDS",
"subCategories": [
"AWS",
"GCP",
"AZURE"
]
},
{
"id": "functions",
"title": "AI Functions",
"subCategories": [
"AWS",
"GCP",
"AZURE"
]
},
{
"id": "catalog",
"title": "Agent Catalog",
"subCategories": [
"AWS",
"GCP",
"AZURE"
]
},
{
"id": "e2e",
"title": "E2E",
"subCategories": [
"AWS",
"GCP",
"AZURE"
]
}
]
},
"cloud": {
"title": "Deprecated",
"categories": [
Expand Down Expand Up @@ -551,4 +619,4 @@
]
}
}
}
}
7 changes: 5 additions & 2 deletions app/cloud_timeline.html
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
<div class="links">
<a target="_blank" href="/comparison">Build Comparison</a> | <a target="_blank" href="/daily">Daily</a> | <a target="_blank" href="/weekly">Weekly</a> | <a target="_blank" href="/impressive">Impressive</a> | <a target="_blank" href="https://hub.internal.couchbase.com/confluence/display/PERF/Clusters+Info">Clusters Info</a> | <a href="#/"><strong>On-prem Dashboard</strong></a>
<a target="_blank" href="/comparison">Build Comparison</a> | <a target="_blank" href="/daily">Daily</a> | <a target="_blank" href="/weekly">Weekly</a> | <a target="_blank" href="/impressive">Impressive</a> | <a target="_blank" href="/cloud_impressive">Cloud Impressive</a> | <a target="_blank" href="https://hub.internal.couchbase.com/confluence/display/PERF/Clusters+Info">Clusters Info</a> | <a href="#/"><strong>On-prem Dashboard</strong></a>
</div>

<div class="masthead text-center">
Expand Down Expand Up @@ -63,9 +63,12 @@ <h2>Performance Cloud Dashboard</h2>
<input type="radio">{{choice}}
</label>
</div>
<div class="search-container">
<input type="text" placeholder="Search from titles..." ng-model="searchQuery" />
</div>
</div>

<div class="masthead metric" id="cont_{{metric.id}}" ng-repeat="metric in metrics | filter:byOS | filter:bySubCategory | filter:byTestType | filter:byProvider | orderBy:'orderBy' ">
<div class="masthead metric" id="cont_{{metric.id}}" ng-repeat="metric in metrics | filter:byOS | filter:bySubCategory | filter:byTestType | filter:byProvider | filter:searchFilter(searchQuery) | orderBy:'orderBy' ">
<hr/>
<h4 class="metric-title">
<span id="{{metric.id}}">
Expand Down
46 changes: 46 additions & 0 deletions app/css/cloud_impressive.css
Original file line number Diff line number Diff line change
@@ -0,0 +1,46 @@

.t-nonactivetest {
background-color:#E5E8E8;
}

.t-activetest {
background-color:white;
}

.t-windowstest {
background-color:rgb(255, 255, 239);
}

.bar-good, .bar-bad {
color: white;
padding-top: 2px;
padding-bottom: 2px;
padding-left: 2px;
}

.bar-good {
background-color: #337ab7;
align-content: "left";
}

.bar-bad {
background-color: #c9302c;
align-content: "left";
}

.text-total {
font-weight: bold;
font-size: 100%;
}

.text-missing {
font-weight: bold;
color: rgb(230, 158, 3);
font-size: 100%;
}

.text-completed {
font-weight: bold;
color: rgb(1, 104, 1);
font-size: 100%;
}
20 changes: 20 additions & 0 deletions app/css/main.css
Original file line number Diff line number Diff line change
Expand Up @@ -90,3 +90,23 @@ hr {
.active-anchor {
color: #333 !important;
}

.search-container {
margin-bottom: 20px;
}

.search-container input[type="text"] {
width: 100%;
padding: 10px;
font-size: 16px;
border: 1px solid #ccc;
border-radius: 4px;
box-shadow: inset 0 1px 3px rgba(0, 0, 0, 0.1);
transition: border-color 0.3s;
}

.search-container input[type="text"]:focus {
border-color: #66afe9;
outline: none;
box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 8px rgba(102, 175, 233, 0.6);
}
Loading