You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@aurora.apache.org by jc...@apache.org on 2015/08/05 23:16:45 UTC
aurora git commit: Add indications of continued activity to the
Update page.
Repository: aurora
Updated Branches:
refs/heads/master 8a8ed2d1d -> 8adc9bd87
Add indications of continued activity to the Update page.
Bugs closed: AURORA-1125
Reviewed at https://reviews.apache.org/r/37137/
Project: http://git-wip-us.apache.org/repos/asf/aurora/repo
Commit: http://git-wip-us.apache.org/repos/asf/aurora/commit/8adc9bd8
Tree: http://git-wip-us.apache.org/repos/asf/aurora/tree/8adc9bd8
Diff: http://git-wip-us.apache.org/repos/asf/aurora/diff/8adc9bd8
Branch: refs/heads/master
Commit: 8adc9bd87a526272e788a065673a491351b6ecc7
Parents: 8a8ed2d
Author: Joshua Cohen <jc...@apache.org>
Authored: Wed Aug 5 16:16:24 2015 -0500
Committer: Joshua Cohen <jc...@apache.org>
Committed: Wed Aug 5 16:16:24 2015 -0500
----------------------------------------------------------------------
src/main/resources/scheduler/assets/css/app.css | 62 ++++++++++++++++++++
.../resources/scheduler/assets/js/directives.js | 7 +++
.../scheduler/assets/loadingFooter.html | 18 ++++++
src/main/resources/scheduler/assets/update.html | 56 ++++++++++--------
4 files changed, 120 insertions(+), 23 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/aurora/blob/8adc9bd8/src/main/resources/scheduler/assets/css/app.css
----------------------------------------------------------------------
diff --git a/src/main/resources/scheduler/assets/css/app.css b/src/main/resources/scheduler/assets/css/app.css
index ba26acc..a4735ef 100644
--- a/src/main/resources/scheduler/assets/css/app.css
+++ b/src/main/resources/scheduler/assets/css/app.css
@@ -281,6 +281,42 @@ div.pagination {
stroke-width: 2;
}
+@-webkit-keyframes pulse {
+ 0% {
+ box-shadow: 0 0 15px 1px darkseagreen;
+ background-color: darkseagreen;
+ }
+ 50% {
+ box-shadow: none;
+ background-color: khaki;
+ }
+ 100% {
+ box-shadow: 0 0 15px 1px darkseagreen;
+ background-color: darkseagreen;
+ }
+}
+
+@keyframes pulse {
+ 0% {
+ box-shadow: 0 0 15px 1px darkseagreen;
+ background-color: darkseagreen;
+ }
+ 50% {
+ box-shadow: none;
+ background-color: khaki;
+ }
+ 100% {
+ box-shadow: 0 0 15px 1px darkseagreen;
+ background-color: darkseagreen;
+ }
+}
+
+.instance-updating {
+ box-shadow: none;
+ -webkit-animation: pulse 2s infinite;
+ animation: pulse 2s infinite;
+}
+
.instance-updating, .instance-added, .instance-rolling-back {
background-color: khaki;
fill: rgba(240, 230, 140, 0.5);
@@ -395,4 +431,30 @@ li.instance-rolled-back {
.progress {
margin-top: 10px;
+}
+
+@-webkit-keyframes spin {
+ 0% {
+ -webkit-transform: rotate(0deg);
+ }
+ 100% {
+ -webkit-transform: rotate(360deg);
+ }
+}
+@keyframes spin {
+ 0% {
+ transform: rotate(0deg);
+ }
+ 100% {
+ transform: rotate(360deg);
+ }
+}
+
+.loading {
+ text-align: center;
+}
+
+.loading span {
+ -webkit-animation: spin 1.1s infinite linear;
+ animation: spin 1.1s infinite linear;
}
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/aurora/blob/8adc9bd8/src/main/resources/scheduler/assets/js/directives.js
----------------------------------------------------------------------
diff --git a/src/main/resources/scheduler/assets/js/directives.js b/src/main/resources/scheduler/assets/js/directives.js
index 408ee21..d8f722c 100644
--- a/src/main/resources/scheduler/assets/js/directives.js
+++ b/src/main/resources/scheduler/assets/js/directives.js
@@ -199,4 +199,11 @@
templateUrl: '/assets/latestUpdates.html'
};
});
+
+ auroraUI.directive('loadingFooter', function () {
+ return {
+ restrict: 'A',
+ templateUrl: '/assets/loadingFooter.html'
+ };
+ });
})();
http://git-wip-us.apache.org/repos/asf/aurora/blob/8adc9bd8/src/main/resources/scheduler/assets/loadingFooter.html
----------------------------------------------------------------------
diff --git a/src/main/resources/scheduler/assets/loadingFooter.html b/src/main/resources/scheduler/assets/loadingFooter.html
new file mode 100644
index 0000000..910271a
--- /dev/null
+++ b/src/main/resources/scheduler/assets/loadingFooter.html
@@ -0,0 +1,18 @@
+<!--
+ Licensed under the Apache License, Version 2.0 (the "License");
+ you may not use this file except in compliance with the License.
+ You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+ -->
+<tr>
+ <td colspan="4" class="loading">
+ <span class="glyphicon glyphicon-refresh" aria-hidden="true"></span>
+ </td>
+</tr>
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/aurora/blob/8adc9bd8/src/main/resources/scheduler/assets/update.html
----------------------------------------------------------------------
diff --git a/src/main/resources/scheduler/assets/update.html b/src/main/resources/scheduler/assets/update.html
index a5c27f3..3750aab 100644
--- a/src/main/resources/scheduler/assets/update.html
+++ b/src/main/resources/scheduler/assets/update.html
@@ -84,37 +84,47 @@
<div class="col-md-6">
<h4>Update Events</h4>
<table class="table table-bordered table-striped">
- <tr>
- <th>event</th>
- <th>time</th>
- <th>user</th>
- <th>message</th>
- </tr>
- <tr ng-repeat="e in update.updateEvents">
- <td>{{e.status | toNiceStatus}}</td>
- <td><span tooltip="{{e.timestampMs | toUtcTime}}">{{e.timestampMs | toElapsedTime }} ago</span></td>
- <td>{{e.user}}</td>
- <td>{{e.message}}</td>
- </tr>
+ <thead>
+ <tr>
+ <th>event</th>
+ <th>time</th>
+ <th>user</th>
+ <th>message</th>
+ </tr>
+ </thead>
+ <tbody>
+ <tr ng-repeat="e in update.updateEvents">
+ <td>{{e.status | toNiceStatus}}</td>
+ <td><span tooltip="{{e.timestampMs | toUtcTime}}">{{e.timestampMs | toElapsedTime }} ago</span></td>
+ <td>{{e.user}}</td>
+ <td>{{e.message}}</td>
+ </tr>
+ </tbody>
+ <tfoot loading-footer ng-if="inProgress"></tfoot>
</table>
</div>
<div class="col-md-6">
<h4>Instance Events</h4>
<table class="table table-bordered table-striped">
- <tr>
- <th>instance</th>
- <th>event</th>
- <th>time</th>
- </tr>
- <tr ng-repeat="e in instanceEvents">
- <td>{{e.instanceId}}</td>
- <td>{{e.action | toNiceAction}}</td>
- <td><span tooltip="{{e.timestampMs | toUtcTime}}">{{e.timestampMs | toElapsedTime}} ago</span></td>
- </tr>
+ <thead>
+ <tr>
+ <th>instance</th>
+ <th>event</th>
+ <th>time</th>
+ </tr>
+ </thead>
+ <tbody>
+ <tr ng-repeat="e in instanceEvents">
+ <td>{{e.instanceId}}</td>
+ <td>{{e.action | toNiceAction}}</td>
+ <td><span tooltip="{{e.timestampMs | toUtcTime}}">{{e.timestampMs | toElapsedTime}} ago</span></td>
+ </tr>
+ </tbody>
+ <tfoot loading-footer ng-if="inProgress"></tfoot>
</table>
- <pagination ng-change="changeInstancePage()" max-size="5" total-items="totalEvents" ng-model="currentPage" items-per-page="eventsPerPage"></pagination>
+ <pagination ng-change="changeInstancePage()" max-size="5" total-items="totalEvents" ng-model="currentPage" items-per-page="eventsPerPage"></pagination>
</div>
</div>
</div>