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:23 UTC
[11/22] mesos git commit: Restructured Web UI.
http://git-wip-us.apache.org/repos/asf/mesos/blob/c7685917/src/webui/master/static/agent.html
----------------------------------------------------------------------
diff --git a/src/webui/master/static/agent.html b/src/webui/master/static/agent.html
deleted file mode 100644
index a101a93..0000000
--- a/src/webui/master/static/agent.html
+++ /dev/null
@@ -1,293 +0,0 @@
-<ol class="breadcrumb">
- <li>
- <a class="badge badge-type" href="#">Master</a>
- </li>
- <li class="active">
- <span class="badge badge-type">Agent</span>
- {{agent_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="agent">
- <div class="col-md-3">
- <div class="well">
- <dl class="inline clearfix">
- <dt>Cluster:</dt>
- <dd>
- <span ng-show="clusterNamed">{{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>Agent:</dt>
- <dd>{{state.hostname}}</dd>
- <dt>Version:</dt>
- <dd>{{state.version}}</dd>
- <dt>Built:</dt>
- <dd>
- <m-timestamp value="{{state.build_time * 1000}}"></m-timestamp>
- </dd>
- <dt>Started:</dt>
- <dd>
- <m-timestamp value="{{state.start_time * 1000}}"></m-timestamp>
- </dd>
- <dt>Master:</dt>
- <dd>{{state.master_hostname}}</dd>
- </dl>
-
- <p ng-if="agent.log_file_attached">
- <b>Agent Log:</b>
- <span class="btn-group">
- <!-- Links can look like buttons using Bootstrap classes. -->
- <a class="btn btn-xs btn-default" href="{{agent.url_prefix}}/files/download?path=/slave/log">
- Download
- </a>
- <button class="btn btn-xs btn-default" ng-click="streamLogs($event)">
- View
- </button>
- </span>
- </p>
-
- <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>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">Used</td>
- <td class="text-right">Allocated</td>
- <td class="text-right">Available</td>
- <td class="text-right">Total</td>
- </tr>
- </thead>
- <tbody>
- <tr>
- <td>CPUs</td>
- <td class="text-right">
- {{monitor.statistics.cpus_total_usage | number}}
- </td>
- <td class="text-right">
- {{state.allocated_resources.cpus | number}}
- </td>
- <td class="text-right">
- {{state.resources.cpus - state.allocated_resources.cpus | number}}
- </td>
- <td class="text-right">
- {{state.resources.cpus | number}}
- </td>
- </tr>
- <tr>
- <td>GPUs</td>
- <td class="text-right">
- N/A
- </td>
- <td class="text-right">
- {{state.allocated_resources.gpus | number}}
- </td>
- <td class="text-right">
- {{state.resources.gpus - state.allocated_resources.gpus | number}}
- </td>
- <td class="text-right">
- {{state.resources.gpus | number}}
- </td>
- </tr>
- <tr>
- <td>Memory</td>
- <td class="text-right">
- {{monitor.statistics.mem_rss_bytes | dataSize}}
- </td>
- <td class="text-right">
- {{state.allocated_resources.mem * (1024 * 1024) | dataSize}}
- </td>
- <td class="text-right">
- {{(state.resources.mem - state.allocated_resources.mem) * (1024 * 1024) | dataSize}}
- </td>
- <td class="text-right">
- {{state.resources.mem * (1024 * 1024) | dataSize}}
- </td>
- </tr>
- <tr>
- <td>Disk</td>
- <td class="text-right">
- {{monitor.statistics.disk_used_bytes | dataSize}}
- </td>
- <td class="text-right">
- {{state.allocated_resources.disk * (1024 * 1024) | dataSize}}
- </td>
- <td class="text-right">
- {{(state.resources.disk - state.allocated_resources.disk) * (1024 * 1024) | dataSize}}
- </td>
- <td class="text-right">
- {{state.resources.disk * (1024 * 1024) | dataSize}}
- </td>
- </tr>
- </tbody>
- </table>
- </div>
-
- </div>
- <div class="col-md-9">
- <table m-table table-content="agent.reserved_resources_as_array" title="Resource Reservations"
- class="table table-striped table-bordered table-condensed">
- <thead>
- <tr>
- <th data-key="role">Reservation Role</th>
- <th data-key="cpus">CPUs (Allocated / Total)</th>
- <th data-key="gpus">GPUs (Allocated / Total)</th>
- <th data-key="mem">Mem (Allocated / Total)</th>
- <th data-key="disk">Disk (Allocated / Total)</th>
- </tr>
- </thead>
- <tbody>
- <tr>
- <td><em>Unreserved</em></td>
- <td>{{state.unreserved_resources_allocated.cpus | number}} / {{state.unreserved_resources.cpus | number}}</td>
- <td>{{state.unreserved_resources_allocated.gpus | number}} / {{state.unreserved_resources.gpus | number}}</td>
- <td>{{state.unreserved_resources_allocated.mem * (1024 * 1024) | dataSize}} / {{state.unreserved_resources.mem * (1024 * 1024) | dataSize}}</td>
- <td>{{state.unreserved_resources_allocated.disk * (1024 * 1024) | dataSize}} / {{state.unreserved_resources.disk * (1024 * 1024) | dataSize}}</td>
- </tr>
- <tr ng-repeat="reservation in $data">
- <td>{{reservation.role}}</td>
- <td>{{(state.reserved_resources_allocated[reservation.role].cpus || 0) | number}} / {{reservation.cpus | number}}</td>
- <td>{{(state.reserved_resources_allocated[reservation.role].gpus || 0) | number}} / {{reservation.gpus | number}}</td>
- <td>{{(state.reserved_resources_allocated[reservation.role].mem * (1024 * 1024) || 0) | dataSize}} / {{reservation.mem * (1024 * 1024) | dataSize}}</td>
- <td>{{(state.reserved_resources_allocated[reservation.role].disk * (1024 * 1024) || 0) | dataSize}} / {{reservation.disk * (1024 * 1024) | dataSize}}</td>
- </tr>
- </tbody>
- </table>
-
- <table m-table table-content="agent.frameworks" title="Frameworks"
- class="table table-striped table-bordered table-condensed">
- <thead>
- <tr>
- <th data-key="id">ID</th>
- <th data-key="user">User</th>
- <th data-key="name">Name</th>
- <th data-key="roles">Roles</th>
- <th data-key="num_tasks">Active Tasks</th>
- <th data-key="cpus">CPUs (Used / Allocated)</th>
- <th data-key="gpus">GPUs (Used / Allocated)</th>
- <th data-key="mem">Mem (Used / Allocated)</th>
- <th data-key="disk">Disk (Used / Allocated)</th>
- </tr>
- </thead>
- <tbody>
- <tr ng-repeat="framework in $data">
- <td>
- <a href="{{'#/agents/' + agent_id + '/frameworks/' + framework.id}}">
- {{(framework.id | truncateMesosID) || framework.name}}</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.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.num_tasks | number}}</td>
- <td>{{monitor.frameworks[framework.id].statistics.cpus_total_usage | number}} / {{framework.cpus | number}}</td>
- <!-- TODO(haosdent): We need to show statistics for gpu once it is provided in monitor endpoint. -->
- <td>N/A</td>
- <td>{{monitor.frameworks[framework.id].statistics.mem_rss_bytes | dataSize}} / {{framework.mem * (1024 * 1024) | dataSize}}</td>
- <td>{{monitor.frameworks[framework.id].statistics.disk_used_bytes | dataSize}} / {{framework.disk * (1024 * 1024) | dataSize}}</td>
- </tr>
- </tbody>
- </table>
-
- <table m-table table-content="agent.completed_frameworks" title="Completed Frameworks"
- class="table table-striped table-bordered table-condensed">
- <thead>
- <tr>
- <th data-key="id">ID</th>
- <th data-key="user">User</th>
- <th data-key="name">Name</th>
- <th data-key="roles">Roles</th>
- <th data-key="tasks.length">Active Tasks</th>
- <th data-key="resources.cpus">CPUs</th>
- <th data-key="resources.gpus">GPUs</th>
- <th data-key="resources.mem">Mem</th>
- <th data-key="resources.disk">Disk</th>
- </tr>
- </thead>
- <tbody>
- <tr ng-repeat="completed_framework in $data">
- <td>
- <a href="{{'#/agents/' + agent_id + '/frameworks/' + completed_framework.id}}">
- {{completed_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>{{completed_framework.user}}</td>
- <td>{{completed_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>{{completed_framework.roles.toString()}}</td>
- <td>{{completed_framework.num_tasks | number}}</td>
- <td>{{completed_framework.cpus | number}}</td>
- <td>{{completed_framework.gpus | number}}</td>
- <td>{{completed_framework.mem * (1024 * 1024) | dataSize}}</td>
- <td>{{completed_framework.disk * (1024 * 1024) | dataSize}}</td>
- </tr>
- </tbody>
- </table>
- </div>
-</div>
http://git-wip-us.apache.org/repos/asf/mesos/blob/c7685917/src/webui/master/static/agent_executor.html
----------------------------------------------------------------------
diff --git a/src/webui/master/static/agent_executor.html b/src/webui/master/static/agent_executor.html
deleted file mode 100644
index 7ec56c3..0000000
--- a/src/webui/master/static/agent_executor.html
+++ /dev/null
@@ -1,204 +0,0 @@
-<ol class="breadcrumb">
- <li>
- <a class="badge badge-type" href="#">Master</a>
- </li>
- <li>
- <a class="badge badge-type" href="#/agents/{{agent_id}}" title="{{agent_id}}">
- Agent</a>
- </li>
- <li>
- <a class="badge badge-type" href="#/agents/{{agent_id}}/frameworks/{{framework_id}}" title="{{framework_id}}">
- Framework</a>
- </li>
- <li class="active">
- <span class="badge badge-type">Executor</span>
- {{executor_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="agent">
- <div class="col-md-3">
- <div class="well">
- <dl class="inline clearfix">
- <dt>Executor Name:</dt>
- <dd>{{executor.name}}</dd>
- <dt>Executor Source:</dt>
- <dd>{{executor.source}}</dd>
- <dt>Executor Role:</dt>
- <dd>{{executor.role}}</dd>
- </dl>
-
- <dl class="inline clearfix">
- <dt>Cluster:</dt>
- <dd>
- <span ng-show="clusterNamed">{{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>Master:</dt>
- <dd>{{state.master_hostname}}</dd>
- <dt>Agent:</dt>
- <dd>{{state.hostname}}</dd>
- </dl>
-
- <dl class="inline clearfix">
- <dt>Active Tasks:</dt>
- <dd>{{executor.tasks.length | number}}</dd>
- </dl>
-
- <h4>Resources</h4>
- <table class="table table-condensed">
- <thead>
- <tr>
- <td></td>
- <td class="text-right">Used</td>
- <td class="text-right">Allocated</td>
- </tr>
- </thead>
- <tbody>
- <tr>
- <td>CPUs</td>
- <td class="text-right">
- {{monitor.frameworks[framework.id].executors[executor.id].statistics.cpus_total_usage | number}}
- </td>
- <td class="text-right">{{executor.resources.cpus | number}}</td>
- </tr>
- <tr>
- <td>GPUs</td>
- <td class="text-right">
- N/A
- </td>
- <td class="text-right">{{executor.resources.gpus | number}}</td>
- </tr>
- <tr>
- <td>Mem</td>
- <td class="text-right">
- {{monitor.frameworks[framework.id].executors[executor.id].statistics.mem_rss_bytes | dataSize}}
- </td>
- <td class="text-right">
- {{executor.resources.mem * (1024 * 1024) | dataSize}}
- </td>
- </tr>
- <tr>
- <td>Disk</td>
- <td class="text-right">
- {{monitor.frameworks[framework.id].executors[executor.id].statistics.disk_used_bytes | dataSize}}</td>
- <td class="text-right">
- {{(executor.resources.disk || 0) * (1024 * 1024) | dataSize}}
- </td>
- </tr>
- </tbody>
- </table>
- </div>
- </div>
-
- <div class="col-md-9">
- <table m-table table-content="executor.queued_tasks" title="Queued 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="resources.cpus">CPUs</th>
- <th data-key="resources.gpus">GPUs</th>
- <th data-key="resources.mem">Mem</th>
- <th data-key="resources.disk">Disk</th>
- </tr>
- </thead>
- <tbody>
- <tr ng-repeat="queued_task in $data">
- <td>{{queued_task.id}}</td>
- <td>{{queued_task.name}}</td>
- <td>{{queued_task.role}}</td>
- <td>{{queued_task.resources.cpus | number}}</td>
- <td>{{queued_task.resources.gpus | number}}</td>
- <td>{{queued_task.resources.mem * (1024 * 1024) | dataSize}}</td>
- <td>{{queued_task.resources.disk * (1024 * 1024) | dataSize}}</td>
- </tr>
- </tbody>
- </table>
-
- <table m-table table-content="executor.tasks" title="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="resources.cpus">CPUs (allocated)</th>
- <th data-key="resources.gpus">GPUs (allocated)</th>
- <th data-key="resources.mem">Mem (allocated)</th>
- <th data-key="resources.disk">Disk (allocated)</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}}</td>
- <td class="task-{{task.healthy | taskHealth}}">{{task.healthy | taskHealth}}</td>
- <td>{{task.resources.cpus | number}}</td>
- <td>{{task.resources.gpus | number}}</td>
- <td>{{task.resources.mem * (1024 * 1024) | dataSize}}</td>
- <td>{{task.resources.disk * (1024 * 1024) | dataSize}}</td>
- <td>
- <a href="{{'#/agents/' + agent_id + '/browse?path=' +
- encodeURIComponent(task.directory)}}">
- Sandbox
- </a>
- </td>
- </tr>
- </tbody>
- </table>
-
- <table m-table table-content="executor.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="resources.cpus">CPUs (allocated)</th>
- <th data-key="resources.gpus">GPUs (allocated)</th>
- <th data-key="resources.mem">Mem (allocated)</th>
- <th data-key="resources.disk">Disk (allocated)</th>
- <th></th>
- </tr>
- </thead>
- <tbody>
- <tr ng-repeat="completed_task in $data">
- <td>{{completed_task.id}}</td>
- <td>{{completed_task.name}}</td>
- <td>{{completed_task.role}}</td>
- <td>{{completed_task.state}}</td>
- <td>{{completed_task.resources.cpus | number}}</td>
- <td>{{completed_task.resources.gpus | number}}</td>
- <td>{{completed_task.resources.mem * (1024 * 1024) | dataSize}}</td>
- <td>{{completed_task.resources.disk * (1024 * 1024) | dataSize}}</td>
- <td>
- <a href="{{'#/agents/' + agent_id + '/browse?path=' +
- encodeURIComponent(completed_task.directory)}}">
- Sandbox
- </a>
- </td>
- </tr>
- </tbody>
- </table>
- </div>
-
-</div>
http://git-wip-us.apache.org/repos/asf/mesos/blob/c7685917/src/webui/master/static/agent_framework.html
----------------------------------------------------------------------
diff --git a/src/webui/master/static/agent_framework.html b/src/webui/master/static/agent_framework.html
deleted file mode 100644
index 06f1697..0000000
--- a/src/webui/master/static/agent_framework.html
+++ /dev/null
@@ -1,164 +0,0 @@
-<ol class="breadcrumb">
- <li>
- <a class="badge badge-type" href="#">Master</a>
- </li>
- <li>
- <a class="badge badge-type" href="#/agents/{{agent_id}}" title="{{agent_id}}">
- Agent</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="agent">
- <div class="col-md-3">
- <div class="well">
- <dl class="inline clearfix">
- <dt>Name:</dt><dd>{{framework.name}}</dd>
- <dt>Master:</dt><dd>{{state.master_hostname}}</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>
- </dl>
-
- <dl class="inline clearfix">
- <dt>Active Tasks:</dt>
- <dd>{{framework.num_tasks | number}}</dd>
- </dl>
-
- <h4>Resources</h4>
- <table class="table table-condensed">
- <thead>
- <tr>
- <td></td>
- <td class="text-right">Used</td>
- <td class="text-right">Allocated</td>
- </tr>
- </thead>
- <tbody>
- <tr>
- <td>CPUs</td>
- <td class="text-right">
- {{monitor.frameworks[framework.id].statistics.cpus_total_usage | number}}
- </td>
- <td class="text-right">{{framework.cpus | number}}</td>
- </tr>
- <tr>
- <td>GPUs</td>
- <td class="text-right">
- N/A
- </td>
- <td class="text-right">{{framework.gpus | number}}</td>
- </tr>
- <tr>
- <td>Memory</td>
- <td class="text-right">
- {{monitor.frameworks[framework.id].statistics.mem_rss_bytes | dataSize}}
- </td>
- <td class="text-right">
- {{framework.mem * (1024 * 1024) | dataSize}}
- </td>
- </tr>
- <tr>
- <td>Disk</td>
- <td class="text-right">-</td>
- <td class="text-right">
- {{(framework.disk || 0) * (1024 * 1024) | dataSize}}
- </td>
- </tr>
- </tbody>
- </table>
- </div>
- </div>
-
- <div class="col-md-9">
- <table m-table table-content="framework.executors" title="Executors"
- 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="source">Source</th>
- <th data-key="role">Role</th>
- <th data-key="tasks.length">Active Tasks</th>
- <th data-key="queued_tasks.length">Queued Tasks</th>
- <th data-key="resources.cpus">CPUs (Used / Allocated)</th>
- <th data-key="resources.gpus">GPUs (Used / Allocated)</th>
- <th data-key="resources.mem">Mem (Used / Allocated)</th>
- <th data-key="resources.disk">Disk (Used / Allocated)</th>
- <th></th>
- </tr>
- </thead>
- <tbody>
- <tr ng-repeat="executor in $data">
- <td>
- <a href="{{'#/agents/' + agent_id + '/frameworks/' + framework.id + '/executors/' + executor.id}}">
- {{executor.id}}
- </a>
- </td>
- <td>{{executor.name}}</td>
- <td>{{executor.source}}</td>
- <td>{{executor.role}}</td>
- <td>{{executor.tasks.length | number}}</td>
- <td>{{executor.queued_tasks.length | number}}</td>
- <td>{{monitor.frameworks[framework.id].executors[executor.id].statistics.cpus_total_usage | number}} /
- {{executor.resources.cpus | number}}</td>
- <!-- TODO(haosdent): We need to show statistics for gpu once it is provided in monitor endpoint. -->
- <td>N/A</td>
- <td>{{monitor.frameworks[framework.id].executors[executor.id].statistics.mem_rss_bytes | dataSize}} /
- {{executor.resources.mem * (1024 * 1024) | dataSize}}</td>
- <td>{{monitor.frameworks[framework.id].executors[executor.id].statistics.disk_used_bytes | dataSize}} /
- {{executor.resources.disk * (1024 * 1024) | dataSize}}</td>
- <td>
- <a href="{{'#/agents/' + agent_id + '/browse?path=' +
- encodeURIComponent(executor.directory)}}">
- Sandbox
- </a>
- </td>
- </tr>
- </tbody>
- </table>
-
- <table m-table table-content="framework.completed_executors" title="Completed Executors"
- 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="source">Source</th>
- <th data-key="role">Role</th>
- <th data-key="sandbox">Sandbox</th>
- </tr>
- </thead>
- <tbody>
- <tr ng-repeat="completed_executor in $data">
- <td>
- <a href="{{'#/agents/' + agent_id + '/frameworks/' + framework.id + '/executors/' + completed_executor.id}}">
- {{completed_executor.id}}
- </a>
- </td>
- <td>{{completed_executor.name}}</td>
- <td>{{completed_executor.source}}</td>
- <td>{{completed_executor.role}}</td>
- <td>
- <a href="{{'#/agents/' + agent_id + '/browse?path=' +
- encodeURIComponent(completed_executor.directory)}}">
- browse
- </a>
- </td>
- </tr>
- </tbody>
- </table>
- </div>
-
-</div>
http://git-wip-us.apache.org/repos/asf/mesos/blob/c7685917/src/webui/master/static/agents.html
----------------------------------------------------------------------
diff --git a/src/webui/master/static/agents.html b/src/webui/master/static/agents.html
deleted file mode 100644
index 98712c6..0000000
--- a/src/webui/master/static/agents.html
+++ /dev/null
@@ -1,56 +0,0 @@
-<ol class="breadcrumb">
- <li>
- <a class="badge badge-type" href="#">Master</a>
- </li>
- <li class="active">
- <span class="badge badge-type">Agents</span>
- </li>
-</ol>
-
-<table m-table table-content="agents" title="Agents"
- 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="resources.cpus">CPUs (Allocated / Total)</th>
- <th data-key="resources.gpus">GPUs (Allocated / Total)</th>
- <th data-key="resources.mem">Mem (Allocated / Total)</th>
- <th data-key="resources.disk">Disk (Allocated / Total)</th>
- <th data-key="registered_time">Registered</th>
- <th data-key="reregistered_time">Re-Registered</th>
- </tr>
- </thead>
- <tr ng-repeat="agent in $data">
- <td>
- <a href="#/agents/{{agent.id}}">{{agent.id | truncateMesosID}}</a>
- <button class="btn btn-xs btn-default btn-toggle"
- clipboard
- data-clipboard-text="{{agent.id}}"
- tooltip="Copy ID"
- tooltip-placement="right"
- tooltip-trigger="clipboardhover">
- <i class="icon-file"></i>
- </button>
- </td>
- <td>{{agent.hostname}}</td>
- <td>
- {{agent.used_resources.cpus | number}} / {{agent.resources.cpus | number}}
- </td>
- <td>
- {{agent.used_resources.gpus | number}} / {{agent.resources.gpus | number}}
- </td>
- <td>
- {{agent.used_resources.mem * (1024 * 1024) | dataSize}} / {{agent.resources.mem * (1024 * 1024) | dataSize}}
- </td>
- <td>
- {{agent.used_resources.disk * (1024 * 1024) | dataSize}} / {{agent.resources.disk * (1024 * 1024) | dataSize}}
- </td>
- <td>
- <m-timestamp value="{{agent.registered_time * 1000}}"></m-timestamp>
- </td>
- <td>
- <m-timestamp value="{{agent.reregistered_time * 1000}}"></m-timestamp>
- </td>
- </tr>
-</table>
http://git-wip-us.apache.org/repos/asf/mesos/blob/c7685917/src/webui/master/static/browse.html
----------------------------------------------------------------------
diff --git a/src/webui/master/static/browse.html b/src/webui/master/static/browse.html
deleted file mode 100644
index b7ac395..0000000
--- a/src/webui/master/static/browse.html
+++ /dev/null
@@ -1,87 +0,0 @@
-<ol class="breadcrumb">
- <li>
- <a class="badge badge-type" href="#">Master</a>
- </li>
- <li>
- <a class="badge badge-type" href="#/agents/{{agent_id}}" title="{{agent_id}}">
- Agent</a>
- </li>
- <li class="active">
- Browse
- </li>
-</ol>
-
-<ol class="breadcrumb">
- <!-- We want to ensure that if the user highlights the path breadcrumb,
- and copies it, they will receive a /path/without/spaces that they
- can then paste into a terminal, or elsewhere. In order to do this,
- we have to ensure there is no whitespace within the <a> tag contents.
- Also, we have to inject a hidden '/' character because the slashes
- in the breadcrumb are not copied.
- -->
- <li ng-repeat="dir in path.split('/')"><a
- href="#/agents/{{agent_id}}/browse?path={{
- encodeURIComponent(path.split('/').slice(0, $index + 1).join('/'))
- }}">{{dir}}</a><span class="hidden-text">/</span></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="listing">
- <div class="col-md-9">
- <div class="well">
- <div data-ng-show="listing.length == 0">
- No files in this directory.
- </div>
- <table class="table table-condensed" data-ng-show="listing.length > 0">
- <thead>
- <tr>
- <th>mode</th>
- <th class="text-right">nlink</th>
- <th>uid</th>
- <th>gid</th>
- <th class="text-right">size</th>
- <th class="text-right">mtime</th>
- <th></th>
- <th></th>
- </tr>
- </thead>
- <tbody>
- <tr ng-repeat="file in listing | orderBy:['-mode', 'path']">
- <td>{{file.mode}}</td>
- <td class="text-right">{{file.nlink}}</td>
- <td>{{file.uid}}</td>
- <td>{{file.gid}}</td>
- <td class="text-right">{{file.size | dataSize}}</td>
- <td class="text-right">{{file.mtime * 1000 | unixDate}}</td>
- <td>
- <span data-ng-show="file.mode[0] == 'd'">
- <i class="glyphicon glyphicon-folder-close"></i>
- <a href="#/agents/{{agent_id}}/browse?path={{encodeURIComponent(file.path)}}">
- {{basename(file.path)}}
- </a>
- </span>
- <span data-ng-show="file.mode[0] != 'd'">
- <i class="glyphicon glyphicon-file" style="visibility: hidden;"></i>
- <a href="" ng-click="pail($event, encodeURIComponent(file.path))">
- {{basename(file.path)}}
- </a>
- </span>
- </td>
- <td>
- <a data-ng-show="file.mode[0] != 'd'"
- href="{{agent_url_prefix}}/files/download?path={{encodeURIComponent(file.path)}}">
- <button class="btn btn-xs btn-default" type="button">
- Download
- </button>
- </a>
- </td>
- </tr>
- </tbody>
- </table>
- </div>
- </div>
-</div>