You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@mesos.apache.org by bm...@apache.org on 2018/04/11 22:37:19 UTC

[07/22] mesos git commit: Restructured Web UI.

http://git-wip-us.apache.org/repos/asf/mesos/blob/c7685917/src/webui/master/static/fonts/glyphicons-halflings-regular.woff
----------------------------------------------------------------------
diff --git a/src/webui/master/static/fonts/glyphicons-halflings-regular.woff b/src/webui/master/static/fonts/glyphicons-halflings-regular.woff
deleted file mode 100644
index 9e61285..0000000
Binary files a/src/webui/master/static/fonts/glyphicons-halflings-regular.woff and /dev/null differ

http://git-wip-us.apache.org/repos/asf/mesos/blob/c7685917/src/webui/master/static/fonts/glyphicons-halflings-regular.woff2
----------------------------------------------------------------------
diff --git a/src/webui/master/static/fonts/glyphicons-halflings-regular.woff2 b/src/webui/master/static/fonts/glyphicons-halflings-regular.woff2
deleted file mode 100644
index 64539b5..0000000
Binary files a/src/webui/master/static/fonts/glyphicons-halflings-regular.woff2 and /dev/null differ

http://git-wip-us.apache.org/repos/asf/mesos/blob/c7685917/src/webui/master/static/framework.html
----------------------------------------------------------------------
diff --git a/src/webui/master/static/framework.html b/src/webui/master/static/framework.html
deleted file mode 100644
index 82f6b27..0000000
--- a/src/webui/master/static/framework.html
+++ /dev/null
@@ -1,261 +0,0 @@
-<ol class="breadcrumb">
-  <li>
-    <a class="badge badge-type" href="#">Master</a>
-  </li>
-  <li class="active">
-    <span class="badge badge-type">Framework</span>
-    {{framework.id}}
-  </li>
-</ol>
-
-<div class="alert alert-error hidden" id="alert">
-  <button class="close" data-dismiss="alert">×</button>
-  <strong>{{alert_message}}</strong>
-</div>
-
-<div class="row" id="framework">
-  <div class="col-md-3">
-    <div class="well">
-      <dl class="inline clearfix">
-        <dt>Name:</dt>
-        <dd>{{framework.name}}</dd>
-        <dt ng-show="framework.webui_url">Web UI:</dt>
-        <dd ng-show="framework.webui_url"><a href="{{framework.webui_url}}">{{framework.webui_url}}</a></dd>
-        <dt>User:</dt>
-        <dd>{{framework.user}}</dd>
-        <!-- TODO(bmahler): Consider having a break between each role
-             in order to increase readability. Also, this doesn't
-             display well when there are a lot of roles (e.g. a large
-             organization with a lot of teams & services, using roles
-             like /engineering/frontend/webserver, etc). -->
-        <dt>Roles:</dt>
-        <dd>{{framework.roles.toString()}}</dd>
-        <dt>Principal:</dt>
-        <dd>{{framework.principal}}</dd>
-        <dt>Registered:</dt>
-        <dd>
-          <m-timestamp value="{{framework.registered_time * 1000}}"></m-timestamp>
-        </dd>
-        <dt>Re-registered:</dt>
-        <dd ng-if="!framework.reregistered_time">-</dd>
-        <dd ng-if="framework.reregistered_time">
-          <m-timestamp value="{{framework.reregistered_time * 1000}}"></m-timestamp>
-        </dd>
-        <dt>Active tasks:</dt>
-        <dd>{{framework.tasks.length | number}}</dd>
-      </dl>
-
-      <h4>Tasks</h4>
-      <table class="table table-condensed">
-        <tbody>
-          <tr>
-            <td>Staging</td>
-            <td class="text-right">{{framework.staging_tasks | number}}</td>
-          </tr>
-          <tr>
-            <td>Starting</td>
-            <td class="text-right">{{framework.starting_tasks | number}}</td>
-          </tr>
-          <tr>
-            <td>Running</td>
-            <td class="text-right">{{framework.running_tasks | number}}</td>
-          </tr>
-          <tr>
-            <td>Unreachable</td>
-            <td class="text-right">{{framework.unreachable_tasks.length | number}}</td>
-          </tr>
-          <tr>
-            <td>Killing</td>
-            <td class="text-right">{{framework.killing_tasks | number}}</td>
-          </tr>
-          <tr>
-            <td>Finished</td>
-            <td class="text-right">{{framework.finished_tasks | number}}</td>
-          </tr>
-          <tr>
-            <td>Killed</td>
-            <td class="text-right">{{framework.killed_tasks | number}}</td>
-          </tr>
-          <tr>
-            <td>Failed</td>
-            <td class="text-right">{{framework.failed_tasks | number}}</td>
-          </tr>
-          <tr>
-            <td>Lost</td>
-            <td class="text-right">{{framework.lost_tasks | number}}</td>
-          </tr>
-        </tbody>
-      </table>
-
-      <h4>Resources</h4>
-      <table class="table table-condensed">
-        <thead>
-          <tr>
-            <td></td>
-            <td class="text-right">Allocated</td>
-            <td class="text-right">Offered</td>
-          </tr>
-        </thead>
-        <tbody>
-          <tr>
-            <td>CPUs</td>
-            <td class="text-right">
-              {{framework.used_resources.cpus | number}}
-            </td>
-            <td class="text-right">
-              {{framework.offered_resources.cpus | number}}
-            </td>
-          </tr>
-          <tr>
-            <td>GPUs</td>
-            <td class="text-right">
-              {{framework.used_resources.gpus | number}}
-            </td>
-            <td class="text-right">
-              {{framework.offered_resources.gpus | number}}
-            </td>
-          </tr>
-          <tr>
-            <td>Memory</td>
-            <td class="text-right">
-              {{framework.used_resources.mem * (1024 * 1024) | dataSize}}
-            </td>
-            <td class="text-right">
-              {{framework.offered_resources.mem * (1024 * 1024) | dataSize}}
-            </td>
-          </tr>
-          <tr>
-            <td>Disk</td>
-            <td class="text-right">
-              {{framework.used_resources.mem * (1024 * 1024) | dataSize}}
-            </td>
-            <td class="text-right">
-              {{framework.offered_resources.mem * (1024 * 1024) | dataSize}}
-            </td>
-          </tr>
-        </tbody>
-      </table>
-    </div>
-  </div>
-
-  <div class="col-md-9">
-    <table m-table table-content="framework.tasks" title="Active Tasks"
-      class="table table-striped table-bordered table-condensed">
-      <thead>
-        <tr>
-          <th data-key="id">ID</th>
-          <th data-key="name">Name</th>
-          <th data-key="role">Role</th>
-          <th data-key="state">State</th>
-          <th data-key="healthy">Health</th>
-          <th data-key="start_time">Started</th>
-          <th data-key="host">Host</th>
-          <th></th>
-        </tr>
-      </thead>
-      <tbody>
-        <tr ng-repeat="task in $data">
-          <td>
-            <a href="#/agents/{{task.slave_id}}/frameworks/{{task.framework_id}}/executors/{{task.executor_id}}">
-              {{task.id}}
-            </a>
-          </td>
-          <td>{{task.name}}</td>
-          <td>{{task.role}}</td>
-          <td>{{task.state | truncateMesosState}}</td>
-          <td class="task-{{task.healthy | taskHealth}}">{{task.healthy | taskHealth}}</td>
-          <td>
-            <m-timestamp value="{{task.start_time}}"></m-timestamp>
-          </td>
-          <td>
-            <span data-ng-show="agents[task.slave_id]">
-              {{agents[task.slave_id].hostname}}
-            </span>
-            <span class="text-muted" data-ng-show="!agents[task.slave_id]">
-              Agent offline
-            </span>
-          </td>
-          <td>
-            <a data-ng-show="agents[task.slave_id]" href="#/agents/{{task.slave_id}}/frameworks/{{task.framework_id}}/executors/{{task.executor_id}}/tasks/{{task.id}}/browse">
-              Sandbox
-            </a>
-            <span class="text-muted" data-ng-show="!agents[task.slave_id]">
-              Agent offline
-            </span>
-          </td>
-        </tr>
-      </tbody>
-    </table>
-
-    <table m-table table-content="framework.unreachable_tasks" title="Unreachable Tasks"
-      class="table table-striped table-bordered table-condensed">
-      <thead>
-        <tr>
-          <th data-key="id">ID</th>
-          <th data-key="name">Name</th>
-          <th data-key="role">Role</th>
-          <th data-key="start_time">Started</th>
-          <th data-key="agent_id">Agent ID</th>
-        </tr>
-      </thead>
-      <tbody>
-        <tr ng-repeat="task in $data">
-          <td>{{task.id}}</td>
-          <td>{{task.name}}</td>
-          <td>{{task.role}}</td>
-          <td>
-            <m-timestamp value="{{task.start_time}}"></m-timestamp>
-          </td>
-          <td>{{task.slave_id}}</td>
-        </tr>
-      </tbody>
-    </table>
-
-    <table m-table table-content="framework.completed_tasks" title="Completed Tasks"
-      class="table table-striped table-bordered table-condensed">
-      <thead>
-        <tr>
-          <th data-key="id">ID</th>
-          <th data-key="name">Name</th>
-          <th data-key="role">Role</th>
-          <th data-key="state">State</th>
-          <th data-key="start_time">Started</th>
-          <th data-key="finish_time">Stopped</th>
-          <th data-key="host">Host</th>
-          <th></th>
-        </tr>
-      </thead>
-      <tbody>
-        <tr ng-repeat="task in $data">
-          <td>{{task.id}}</td>
-          <td>{{task.name}}</td>
-          <td>{{task.role}}</td>
-          <td>{{task.state | truncateMesosState}}</td>
-          <td>
-            <m-timestamp value="{{task.start_time}}"></m-timestamp>
-          </td>
-          <td>
-            <m-timestamp value="{{task.finish_time}}"></m-timestamp>
-          </td>
-          <td>
-            <a data-ng-show="agents[task.slave_id]"
-                href="#/agents/{{task.slave_id}}/frameworks/{{task.framework_id}}/executors/{{task.executor_id}}">
-              {{agents[task.slave_id].hostname}}
-            </a>
-            <span class="text-muted" data-ng-show="!agents[task.slave_id]">
-              Agent offline
-            </span>
-          </td>
-          <td>
-            <a data-ng-show="agents[task.slave_id]" href="#/agents/{{task.slave_id}}/frameworks/{{task.framework_id}}/executors/{{task.executor_id}}/tasks/{{task.id}}/browse">
-              Sandbox
-            </a>
-            <span class="text-muted" data-ng-show="!agents[task.slave_id]">
-              Agent offline
-            </span>
-          </td>
-        </tr>
-      </tbody>
-    </table>
-  </div>
-</div>

http://git-wip-us.apache.org/repos/asf/mesos/blob/c7685917/src/webui/master/static/frameworks.html
----------------------------------------------------------------------
diff --git a/src/webui/master/static/frameworks.html b/src/webui/master/static/frameworks.html
deleted file mode 100644
index d37c613..0000000
--- a/src/webui/master/static/frameworks.html
+++ /dev/null
@@ -1,179 +0,0 @@
-<ol class="breadcrumb">
-  <li><a class="badge badge-type" href="#">Master</a></li>
-  <li class="active">
-    <span class="badge badge-type">Frameworks</span>
-  </li>
-</ol>
-
-<table m-table table-content="frameworks" title="Active Frameworks"
-  class="table table-striped table-bordered table-condensed">
-  <thead>
-    <tr>
-      <th data-key="id">ID</th>
-      <th data-key="hostname">Host</th>
-      <th data-key="user">User</th>
-      <th data-key="name">Name</th>
-      <th data-key="roles">Roles</th>
-      <th data-key="principal">Principal</th>
-      <th data-key="tasks.length">Active Tasks</th>
-      <th data-key="used_resources.cpus">CPUs</th>
-      <th data-key="used_resources.gpus">GPUs</th>
-      <th data-key="used_resources.mem">Mem</th>
-      <th data-key="used_resources.disk">Disk</th>
-      <th data-key="max_share">Max Share</th>
-      <th data-key="registered_time">Registered</th>
-      <th data-key="reregistered_time">Re-Registered</th>
-    </tr>
-  </thead>
-  <tbody>
-    <tr ng-repeat="framework in $data  | filter: { active: true }">
-      <td>
-        <a href="{{'#/frameworks/' + framework.id}}">
-          {{framework.id | truncateMesosID}}
-        </a>
-        <button class="btn btn-xs btn-toggle btn-default"
-                clipboard
-                data-clipboard-text="{{framework.id}}"
-                tooltip="Copy ID"
-                tooltip-placement="right"
-                tooltip-trigger="clipboardhover">
-        </button>
-      </td>
-      <td ng-switch="!!framework.webui_url">
-        <a ng-href="{{framework.webui_url}}" ng-switch-when="true">{{framework.hostname}}</a>
-        <span ng-switch-when="false">{{framework.hostname}}</span>
-      </td>
-      <td>{{framework.user}}</td>
-      <td>{{framework.name}}</td>
-      <!-- TODO(bmahler): This doesn't display well when there are a lot
-           of roles (e.g. a large organization with a lot of teams &
-           services, using roles like /engineering/frontend/webserver, etc).
-           Figure out a way to display this without bloating the table. -->
-      <td>{{framework.roles.toString()}}</td>
-      <td>{{framework.principal}}</td>
-      <td>{{framework.tasks.length}}</td>
-      <td>{{framework.used_resources.cpus | number}}</td>
-      <td>{{framework.used_resources.gpus | number}}</td>
-      <td>{{framework.used_resources.mem * (1024 * 1024) | dataSize}}</td>
-      <td>{{framework.used_resources.disk * (1024 * 1024) | dataSize}}</td>
-      <td>{{framework.max_share * 100 | number}}%</td>
-      <td>
-        <m-timestamp value="{{framework.registered_time * 1000}}"></m-timestamp>
-      </td>
-      <td ng-show="!framework.reregistered_time">-</td>
-      <td ng-show="framework.reregistered_time">
-        <m-timestamp value="{{framework.reregistered_time * 1000}}"></m-timestamp>
-      </td>
-    </tr>
-  </tbody>
-</table>
-
-<table m-table table-content="frameworks" title="Inactive Frameworks"
-       class="table table-striped table-bordered table-condensed">
-  <thead>
-  <tr>
-    <th data-key="id">ID</th>
-    <th data-key="hostname">Host</th>
-    <th data-key="user">User</th>
-    <th data-key="name">Name</th>
-    <th data-key="roles">Roles</th>
-    <th data-key="principal">Principal</th>
-    <th data-key="tasks.length">Active Tasks</th>
-    <th data-key="used_resources.cpus">CPUs</th>
-    <th data-key="used_resources.gpus">GPUs</th>
-    <th data-key="used_resources.mem">Mem</th>
-    <th data-key="used_resources.disk">Disk</th>
-    <th data-key="max_share">Max Share</th>
-    <th data-key="registered_time">Registered</th>
-    <th data-key="reregistered_time">Re-Registered</th>
-  </tr>
-  </thead>
-  <tbody>
-  <tr ng-repeat="framework in $data  | filter: { active: false }">
-    <td>
-      <a href="{{'#/frameworks/' + framework.id}}">
-        {{framework.id | truncateMesosID}}
-      </a>
-      <button class="btn btn-xs btn-toggle btn-default"
-              clipboard
-              data-clipboard-text="{{framework.id}}"
-              tooltip="Copy ID"
-              tooltip-placement="right"
-              tooltip-trigger="clipboardhover">
-      </button>
-    </td>
-    <td ng-switch="!!framework.webui_url">
-      <a ng-href="{{framework.webui_url}}" ng-switch-when="true">{{framework.hostname}}</a>
-      <span ng-switch-when="false">{{framework.hostname}}</span>
-    </td>
-    <td>{{framework.user}}</td>
-    <td>{{framework.name}}</td>
-    <!-- TODO(bmahler): This doesn't display well when there are a lot
-         of roles (e.g. a large organization with a lot of teams &
-         services, using roles like /engineering/frontend/webserver, etc).
-         Figure out a way to display this without bloating the table. -->
-    <td>{{framework.roles.toString()}}</td>
-    <td>{{framework.principal}}</td>
-    <td>{{framework.tasks.length}}</td>
-    <td>{{framework.used_resources.cpus | number}}</td>
-    <td>{{framework.used_resources.gpus | number}}</td>
-    <td>{{framework.used_resources.mem * (1024 * 1024) | dataSize}}</td>
-    <td>{{framework.used_resources.disk * (1024 * 1024) | dataSize}}</td>
-    <td>{{framework.max_share * 100 | number}}%</td>
-    <td>
-      <m-timestamp value="{{framework.registered_time * 1000}}"></m-timestamp>
-    </td>
-    <td ng-show="!framework.reregistered_time">-</td>
-    <td ng-show="framework.reregistered_time">
-      <m-timestamp value="{{framework.reregistered_time * 1000}}"></m-timestamp>
-    </td>
-  </tr>
-  </tbody>
-</table>
-
-<table m-table table-content="completed_frameworks" title="Completed Frameworks"
-  class="table table-striped table-bordered table-condensed">
-  <thead>
-    <tr>
-      <th data-key="id">ID</th>
-      <th data-key="hostname">Host</th>
-      <th data-key="user">User</th>
-      <th data-key="name">Name</th>
-      <th data-key="roles">Roles</th>
-      <th data-key="principal">Principal</th>
-      <th data-key="registered_time">Registered</th>
-      <th data-key="unregistered_time">Unregistered</th>
-    </tr>
-  </thead>
-  <tbody>
-    <tr ng-repeat="framework in $data">
-      <td>
-        <a href="{{'#/frameworks/' + framework.id}}" title="{{framework.id}}">
-          {{framework.id | truncateMesosID}}
-        </a>
-        <button class="btn btn-xs btn-toggle btn-default"
-                clipboard
-                data-clipboard-text="{{framework.id}}"
-                tooltip="Copy ID"
-                tooltip-placement="right"
-                tooltip-trigger="clipboardhover">
-        </button>
-      </td>
-      <td>{{framework.hostname}}</td>
-      <td>{{framework.user}}</td>
-      <td>{{framework.name}}</td>
-      <!-- TODO(bmahler): This doesn't display well when there are a lot
-           of roles (e.g. a large organization with a lot of teams &
-           services, using roles like /engineering/frontend/webserver, etc).
-           Figure out a way to display this without bloating the table. -->
-      <td>{{framework.roles.toString()}}</td>
-      <td>{{framework.principal}}</td>
-      <td>
-        <m-timestamp value="{{framework.registered_time * 1000}}"></m-timestamp>
-      </td>
-      <td>
-        <m-timestamp value="{{framework.unregistered_time * 1000}}"></m-timestamp>
-      </td>
-    </tr>
-  </tbody>
-</table>

http://git-wip-us.apache.org/repos/asf/mesos/blob/c7685917/src/webui/master/static/home.html
----------------------------------------------------------------------
diff --git a/src/webui/master/static/home.html b/src/webui/master/static/home.html
deleted file mode 100644
index ff96595..0000000
--- a/src/webui/master/static/home.html
+++ /dev/null
@@ -1,334 +0,0 @@
-<ol class="breadcrumb">
-  <li class="active">
-    <span class="badge badge-type">Master</span>
-    {{state.id}}
-  </li>
-</ol>
-
-<div class="row">
-  <div class="col-sm-5 col-md-4 col-lg-3">
-    <div class="well">
-      <dl class="inline inline-toggle clearfix">
-        <dt>Cluster:</dt>
-        <dd>
-          <span ng-show="clusterNamed">{{state.cluster}}</span>
-          <span ng-show="!clusterNamed">
-            (Unnamed)
-            <i class="icon-info-sign"
-              tooltip="To name this cluster, set the --cluster flag when starting the master."
-              tooltip-placement="right"></i>
-          </span>
-        </dd>
-        <dt>Leader:</dt>
-        <dd>
-          <a ng-show="state.leader_info"
-             href="//{{state.leader_info.hostname}}:{{state.leader_info.port}}">
-            {{state.leader_info.hostname + ':' + state.leader_info.port}}
-          </a>
-          <span ng-show="!state.leader_info">(Unknown)</span>
-        </dd>
-        <dt>Version:</dt>
-        <dd>{{state.version}}</dd>
-        <dt>Built:</dt>
-        <dd>
-          <m-timestamp value="{{state.build_time * 1000}}">
-            by <i>{{state.build_user}}</i>
-          </m-timestamp>
-        </dd>
-        <dt>Started:</dt>
-        <dd>
-          <m-timestamp value="{{state.start_time * 1000}}"></m-timestamp>
-        </dd>
-        <dt>Elected:</dt>
-        <dd>
-          <m-timestamp value="{{state.elected_time * 1000}}"></m-timestamp>
-        </dd>
-      </dl>
-
-      <p ng-if="log_file_attached">
-        <b>Master Log:</b>
-        <span class="btn-group">
-          <!-- Links can look like buttons using Bootstrap classes. -->
-          <a class="btn btn-xs btn-default" href="//{{$location.host()}}:{{$location.port()}}/files/download?path=/master/log">
-            Download
-          </a>
-          <button class="btn btn-xs btn-default" ng-click="streamLogs($event)">
-            View
-          </button>
-        </span>
-      </p>
-
-      <h4>Agents</h4>
-      <table class="table table-condensed">
-        <tbody>
-          <tr>
-            <td>Activated</td>
-            <td class="text-right">{{activated_agents | number}}</td>
-          </tr>
-          <tr>
-            <td>Deactivated</td>
-            <td class="text-right">{{deactivated_agents | number}}</td>
-          </tr>
-          <tr>
-            <td>Unreachable</td>
-            <td class="text-right">{{unreachable_agents | number}}</td>
-          </tr>
-        </tbody>
-      </table>
-
-      <h4>Tasks</h4>
-      <table class="table table-condensed">
-        <tbody>
-          <tr>
-            <td>Staging</td>
-            <td class="text-right">{{staging_tasks | number}}</td>
-          </tr>
-          <tr>
-            <td>Starting</td>
-            <td class="text-right">{{starting_tasks | number}}</td>
-          </tr>
-          <tr>
-            <td>Running</td>
-            <td class="text-right">{{running_tasks | number}}</td>
-          </tr>
-          <tr>
-            <td>Unreachable</td>
-            <td class="text-right">{{unreachable_tasks.length | number}}</td>
-          </tr>
-          <tr>
-            <td>Killing</td>
-            <td class="text-right">{{killing_tasks | number}}</td>
-          </tr>
-          <tr>
-            <td>Finished</td>
-            <td class="text-right">{{finished_tasks | number}}</td>
-          </tr>
-          <tr>
-            <td>Killed</td>
-            <td class="text-right">{{killed_tasks | number}}</td>
-          </tr>
-          <tr>
-            <td>Failed</td>
-            <td class="text-right">{{failed_tasks | number}}</td>
-          </tr>
-          <tr>
-            <td>Lost</td>
-            <td class="text-right">{{lost_tasks | number}}</td>
-          </tr>
-        </tbody>
-      </table>
-
-      <h4>Resources</h4>
-      <table class="table table-condensed">
-        <thead>
-          <tr>
-            <td></td>
-            <td class="text-right">CPUs</td>
-            <td class="text-right">GPUs</td>
-            <td class="text-right">Mem</td>
-            <td class="text-right">Disk</td>
-          </tr>
-        </thead>
-        <tbody>
-          <tr>
-            <td>Total</td>
-            <td class="text-right">{{total_cpus | decimalFloat}}</td>
-            <td class="text-right">{{total_gpus | decimalFloat}}</td>
-            <td class="text-right">{{total_mem * (1024 * 1024) | dataSize}}</td>
-            <td class="text-right">{{total_disk * (1024 * 1024) | dataSize}}</td>
-          </tr>
-          <tr>
-            <td>Allocated</td>
-            <td class="text-right">{{used_cpus | decimalFloat}}</td>
-            <td class="text-right">{{used_gpus | decimalFloat}}</td>
-            <td class="text-right">{{used_mem * (1024 * 1024) | dataSize}}</td>
-            <td class="text-right">{{used_disk * (1024 * 1024) | dataSize}}</td>
-          </tr>
-          <tr>
-            <td>Offered</td>
-            <td class="text-right">{{offered_cpus | decimalFloat}}</td>
-            <td class="text-right">{{offered_gpus | decimalFloat}}</td>
-            <td class="text-right">{{offered_mem * (1024 * 1024) | dataSize}}</td>
-            <td class="text-right">{{offered_disk * (1024 * 1024) | dataSize}}</td>
-          </tr>
-          <tr>
-            <td>Idle</td>
-            <td class="text-right">{{idle_cpus | decimalFloat}}</td>
-            <td class="text-right">{{idle_gpus | decimalFloat}}</td>
-            <td class="text-right">{{idle_mem * (1024 * 1024) | dataSize}}</td>
-            <td class="text-right">{{idle_disk * (1024 * 1024) | dataSize}}</td>
-          </tr>
-        </tbody>
-      </table>
-    </div>
-  </div>
-
-  <div class="col-sm-7 col-md-8 col-lg-9">
-    <table m-table table-content="active_tasks" title="Active Tasks"
-      class="table table-striped table-bordered table-condensed">
-      <thead>
-        <tr>
-          <th data-key="framework_id">Framework ID</th>
-          <th data-key="id">Task ID</th>
-          <th data-key="name">Task Name</th>
-          <th data-key="role">Role</th>
-          <th data-key="state">State</th>
-          <th data-key="healthy">Health</th>
-          <th data-key="start_time" data-sort>Started</th>
-          <th data-key="host">Host</th>
-          <th></th>
-        </tr>
-      </thead>
-      <tbody>
-        <tr data-ng-if="active_tasks.length === 0">
-          <td colspan="8">No active tasks.</td>
-        </tr>
-        <tr ng-repeat="task in $data">
-          <td>
-            <a href="#/frameworks/{{task.framework_id}}/">
-              {{task.framework_id | truncateMesosID}}
-            </a>
-            <button class="btn btn-xs btn-toggle btn-default"
-                    clipboard
-                    data-clipboard-text="{{task.framework_id}}"
-                    tooltip="Copy ID"
-                    tooltip-placement="right"
-                    tooltip-trigger="clipboardhover">
-            </button>
-          </td>
-          <td>
-            <a href="#/agents/{{task.slave_id}}/frameworks/{{task.framework_id}}/executors/{{task.executor_id}}">
-              {{task.id}}
-            </a>
-          </td>
-          <td>{{task.name}}</td>
-          <td>{{task.role}}</td>
-          <td>{{task.state | truncateMesosState}}</td>
-          <td class="task-{{task.healthy | taskHealth}}">{{task.healthy | taskHealth}}</td>
-          <td>
-            <m-timestamp value="{{task.start_time}}"></m-timestamp>
-          </td>
-          <td>
-            <span data-ng-show="agents[task.slave_id]">
-              {{agents[task.slave_id].hostname}}
-            </span>
-            <span class="text-muted" data-ng-show="!agents[task.slave_id]">
-              Agent offline
-            </span>
-          </td>
-          <td>
-            <a data-ng-show="agents[task.slave_id]" href="#/agents/{{task.slave_id}}/frameworks/{{task.framework_id}}/executors/{{task.executor_id}}/tasks/{{task.id}}/browse">
-              Sandbox
-            </a>
-            <span class="text-muted" data-ng-show="!agents[task.slave_id]">
-              Agent offline
-            </span>
-          </td>
-        </tr>
-      </tbody>
-    </table>
-
-    <table m-table table-content="unreachable_tasks" title="Unreachable Tasks"
-      class="table table-striped table-bordered table-condensed">
-      <thead>
-        <tr>
-          <th data-key="framework_id">Framework ID</th>
-          <th data-key="id">Task ID</th>
-          <th data-key="name">Task Name</th>
-          <th data-key="role">Role</th>
-          <th data-key="start_time" data-sort>Started</th>
-          <th data-key="agent_id">Agent ID</th>
-        </tr>
-      </thead>
-      <tbody>
-        <tr data-ng-if="unreachable_tasks.length === 0">
-          <td colspan="8">No unreachable tasks.</td>
-        </tr>
-        <tr ng-repeat="task in $data">
-          <td>
-            <a href="#/frameworks/{{task.framework_id}}/">
-              {{task.framework_id | truncateMesosID}}
-            </a>
-            <button class="btn btn-xs btn-toggle btn-default"
-                    clipboard
-                    data-clipboard-text="{{task.framework_id}}"
-                    tooltip="Copy ID"
-                    tooltip-placement="right"
-                    tooltip-trigger="clipboardhover">
-            </button>
-          </td>
-          <td>{{task.id}}</td>
-          <td>{{task.name}}</td>
-          <td>{{task.role}}</td>
-          <td>
-            <m-timestamp value="{{task.start_time}}"></m-timestamp>
-          </td>
-          <td>{{task.slave_id}}</td>
-        </tr>
-      </tbody>
-    </table>
-
-    <table m-table table-content="completed_tasks" title="Completed Tasks"
-      class="table table-striped table-bordered table-condensed">
-      <thead>
-        <tr>
-          <th data-key="framework_id">Framework ID</th>
-          <th data-key="id">Task ID</th>
-          <th data-key="name">Task Name</th>
-          <th data-key="role">Role</th>
-          <th data-key="state">State</th>
-          <th data-key="start_time" data-sort>Started</th>
-          <th data-key="finish_time">Stopped</th>
-          <th data-key="host">Host</th>
-          <th></th>
-        </tr>
-      </thead>
-      <tbody>
-        <tr data-ng-if="completed_tasks.length === 0">
-          <td colspan="8">No completed tasks.</td>
-        </tr>
-        <tr ng-repeat="task in $data">
-         <td>
-            <a href="#/frameworks/{{task.framework_id}}/">
-              {{task.framework_id | truncateMesosID}}
-            </a>
-            <button class="btn btn-xs btn-toggle btn-default"
-                    clipboard
-                    data-clipboard-text="{{task.framework_id}}"
-                    tooltip="Copy ID"
-                    tooltip-placement="right"
-                    tooltip-trigger="clipboardhover">
-            </button>
-          </td>
-          <td>{{task.id}}</td>
-          <td>{{task.name}}</td>
-          <td>{{task.role}}</td>
-          <td>{{task.state | truncateMesosState}}</td>
-          <td>
-            <m-timestamp value="{{task.start_time}}"></m-timestamp>
-          </td>
-          <td>
-            <m-timestamp value="{{task.finish_time}}"></m-timestamp>
-          </td>
-          <td>
-            <a data-ng-show="_.has(agents, task.slave_id)"
-                href="#/agents/{{task.slave_id}}/frameworks/{{task.framework_id}}/executors/{{task.executor_id}}">
-              {{agents[task.slave_id].hostname}}
-            </a>
-            <span class="text-muted" data-ng-show="!_.has(agents, task.slave_id)">
-              Agent offline
-            </span>
-          </td>
-          <td>
-            <a data-ng-show="agents[task.slave_id]" href="#/agents/{{task.slave_id}}/frameworks/{{task.framework_id}}/executors/{{task.executor_id}}/tasks/{{task.id}}/browse">
-              Sandbox
-            </a>
-            <span class="text-muted" data-ng-show="!agents[task.slave_id]">
-              Agent offline
-            </span>
-          </td>
-        </tr>
-      </tbody>
-    </table>
-  </div>
-</div>

http://git-wip-us.apache.org/repos/asf/mesos/blob/c7685917/src/webui/master/static/ico/favicon.ico
----------------------------------------------------------------------
diff --git a/src/webui/master/static/ico/favicon.ico b/src/webui/master/static/ico/favicon.ico
deleted file mode 100644
index 7715926..0000000
Binary files a/src/webui/master/static/ico/favicon.ico and /dev/null differ

http://git-wip-us.apache.org/repos/asf/mesos/blob/c7685917/src/webui/master/static/img/loading.gif
----------------------------------------------------------------------
diff --git a/src/webui/master/static/img/loading.gif b/src/webui/master/static/img/loading.gif
deleted file mode 100644
index 023dbdb..0000000
Binary files a/src/webui/master/static/img/loading.gif and /dev/null differ

http://git-wip-us.apache.org/repos/asf/mesos/blob/c7685917/src/webui/master/static/img/mesos_logo.png
----------------------------------------------------------------------
diff --git a/src/webui/master/static/img/mesos_logo.png b/src/webui/master/static/img/mesos_logo.png
deleted file mode 100644
index 723a310..0000000
Binary files a/src/webui/master/static/img/mesos_logo.png and /dev/null differ

http://git-wip-us.apache.org/repos/asf/mesos/blob/c7685917/src/webui/master/static/index.html
----------------------------------------------------------------------
diff --git a/src/webui/master/static/index.html b/src/webui/master/static/index.html
deleted file mode 100644
index 149d765..0000000
--- a/src/webui/master/static/index.html
+++ /dev/null
@@ -1,128 +0,0 @@
-<!DOCTYPE html>
-<html lang="en" ng-app="mesos">
-  <head>
-    <meta charset="utf-8">
-    <title>Mesos</title>
-    <meta name="viewport" content="width=device-width, initial-scale=1.0">
-    <meta name="description" content="">
-    <meta name="author" content="">
-
-    <link href="static/css/bootstrap-3.3.6.min.css" rel="stylesheet">
-    <link href="static/css/bootstrap-table-1.11.1.min.css" rel="stylesheet">
-    <link href="static/css/mesos.css" rel="stylesheet">
-
-    <link rel="shortcut icon" href="static/ico/favicon.ico">
-  </head>
-
-  <body>
-    <div data-ng-show="doneLoading" style="width: 75px; margin: 0 auto; text-align: center;">
-      <img src="static/img/loading.gif" height="64" width="64" alt="">
-    </div>
-
-    <div ng-controller="MainCtrl">
-      <header class="navbar navbar-inverse navbar-fixed-top" role="navigation">
-        <div class="container-fluid">
-          <div class="navbar-header">
-            <button type="button" class="navbar-toggle" data-toggle="collapse"
-              data-ng-click="navbarExpanded = !navbarExpanded">
-              <span class="sr-only">Toggle navigation</span>
-              <span class="icon-bar"></span>
-              <span class="icon-bar"></span>
-              <span class="icon-bar"></span>
-            </button>
-            <a class="navbar-brand" href="#/">
-              <img src="static/img/mesos_logo.png" alt="Apache Mesos">
-            </a>
-          </div>
-
-          <div class="collapse navbar-collapse" data-collapse="!navbarExpanded">
-            <ul class="nav navbar-nav">
-              <li data-ng-class="{active: (navbarActiveTab === 'frameworks')}">
-                <a href="#/frameworks">Frameworks</a>
-              </li>
-              <li data-ng-class="{active: (navbarActiveTab === 'agents')}">
-                <a href="#/agents">Agents</a>
-              </li>
-              <li data-ng-class="{active: (navbarActiveTab === 'roles')}">
-                <a href="#/roles">Roles</a>
-              </li>
-              <li data-ng-class="{active: (navbarActiveTab === 'offers')}">
-                <a href="#/offers">Offers</a>
-              </li>
-              <li data-ng-class="{active: (navbarActiveTab === 'maintenance')}">
-                <a href="#/maintenance">Maintenance</a>
-              </li>
-            </ul>
-            <ul class="nav navbar-nav navbar-right">
-              <li>
-                <a class="btn disabled" data-ng-cloak>{{state.cluster}}</a>
-              </li>
-            </ul>
-          </div>
-        </div>
-      </header>
-
-      <div class="container-fluid">
-        <div class="alert" data-ng-show="state &amp;&amp; !state.leader">
-          <strong>No master is currently leading ...</strong>
-        </div>
-
-        <div data-ng-repeat="alert in currentAlerts" class="alert alert-{{ alert.type }}">
-          <p data-ng-show="alert.title">
-            <strong>{{ alert.title }}</strong>
-          </p>
-          {{ alert.message }}
-          <ul data-ng-show="alert.bullets" style="margin-bottom: 0;">
-            <li data-ng-repeat="bullet in alert.bullets">
-              {{ bullet }}
-            </li>
-          </ul>
-        </div>
-
-        <div ng-view></div>
-      </div>
-    </div>
-
-    <script type="text/ng-template" id="template/dialog/masterGone.html">
-      <div class="modal-header">
-        <h4 class="modal-title">
-          Failed to connect to {{rootScope.$location.host()}}:{{rootScope.$location.port()}}!
-        </h4>
-      </div>
-      <div class="modal-body">
-          Retrying in <b>{{rootScope.retry / 1000}}</b> seconds...
-      </div>
-      <div class="modal-footer">
-        <button class="btn btn-default" ng-click="$close()">Try now</button>
-      </div>
-    </script>
-
-    <script type="text/ng-template" id="template/dialog/message.html">
-      <div class="modal-header">
-        <h4 class="modal-title">{{ title }}</h4>
-      </div>
-      <div class="modal-body">
-        {{ message }}
-      </div>
-      <div class="modal-footer">
-        <a data-ng-repeat="btn in buttons" data-ng-click="$close(btn.result)"
-          class="btn btn-default">
-          {{ btn.label }}
-        </a>
-      </div>
-    </script>
-
-    <script src="static/js/jquery-3.2.1.min.js"></script>
-    <script src="static/js/underscore-1.4.3.min.js"></script>
-    <script src="static/js/clipboard-1.5.16.min.js"></script>
-    <script src="static/js/angular-1.2.32.min.js"></script>
-    <script src="static/js/angular-route-1.2.32.min.js"></script>
-    <script src="static/js/ui-bootstrap-tpls-0.9.0.min.js"></script>
-    <script src="static/js/bootstrap-table-1.11.1.min.js"></script>
-    <script src="static/js/relative-date.js"></script>
-
-    <script src="static/js/app.js"></script>
-    <script src="static/js/services.js"></script>
-    <script src="static/js/controllers.js"></script>
-  </body>
-</html>