You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
aggregation-platform/plugins/kubernetes/html/layoutKubernetes.html

290 lines
15 KiB

This file contains ambiguous Unicode characters!

This file contains ambiguous Unicode characters that may be confused with others in your current locale. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to highlight these characters.

<script type="text/ng-template" id="runButton.html">
<button ng-show="model.showRunButton" class="btn btn-success pull-right" ng-click="viewTemplates()" title="Run an application from a template">
<i class="fa fa-play-circle"></i> Run ...
</button>
</script>
<script type="text/ng-template" id="idTemplate.html">
<div class="ngCellText nowrap">
<a href="" title="View details for {{row.entity.metadata.name || row.entity.name}}">
<!--<img class="app-icon-small" ng-src="{{row.entity.$iconUrl}}" ng-show="row.entity.$iconUrl">-->
<strong>{{row.entity.$oracleName || row.entity.name}}</strong></a>
</div>
</script>
<script type="text/ng-template" id="selectorTemplate.html">
<div class="ngCellText">
<span ng-repeat="(name, value) in row.entity.spec.selector track by $index">
<strong>{{name}}</strong>: {{value}}
</span>
</div>
</script>
<script type="text/ng-template" id="podCountsAndLinkTemplate.html">
<div class="ngCellText" ng-init="entity=row.entity" ng-controller="Kubernetes.Status">
<a ng-show="row.entity.$podCounters.podsLink" title="pods status">
<span ng-show="row.entity.$podCounters.ready && (row.entity.$oracleStatus===2)" class="badge badge-success"> 启动</span>
<span ng-show="row.entity.$podCounters.ready && (row.entity.$oracleStatus===0)" class="badge badge-info"> 等待</span>
<span ng-show="row.entity.$podCounters.ready && (row.entity.$oracleStatus===1)" class="badge badge-important "> 失败</span>
<span ng-show="row.entity.$podCounters.valid || row.entity.$podCounters.waiting" class="badge badge-info"> 等待</span>
<span ng-show="!(row.entity.$podCounters.waiting || row.entity.$podCounters.ready || row.entity.$podCounters.valid || row.entity.$podCounters.error)" class="badge"> 停止</span>
<span ng-show="row.entity.$podCounters.error" class="badge badge-important"> 失败</span>
</a>
</div>
</script>
<script type="text/ng-template" id="dataSummaryTemplate.html">
<div class="ngCellText" ng-init="entity=row.entity">
<a ng-show="row.entity.$podCounters.podsLink" title="pods status">
<span ng-show="row.entity.$extractStatus === 0" class="badge badge-info"> 待汇总</span>
<div ng-show="row.entity.$extractStatus === 1">
<span class="badge badge-success" > 汇总中</span>
<span ng-include="'oracleLogTemplate.html'"></span>
</div>
<div ng-show="row.entity.$extractStatus === 2">
<span class="badge" > 已完成</span>
<span ng-include="'oracleLogTemplate.html'"></span>
</div>
</a>
</div>
</script>
<script type="text/ng-template" id="labelTemplate.html">
<div class="ngCellText" ng-init="entity=row.entity" ng-controller="Kubernetes.Labels">
<p ng-show="data"><strong>Labels</strong></p>
<span ng-repeat="label in labels track by $index" class="pod-label badge" ng-class="labelClass(label.key)" ng-click="handleClick(entity, label.key, label)" title="{{label.key}}"><span class="glyphicon glyphicon-tag"/> {{label.title}}</span>
</div>
</script>
<script type="text/ng-template" id="eventSourceTemplate.html">
<div class="ngCellText" ng-init="labels=row.entity.source">
<p ng-show="data"><strong>Labels</strong></p>
<span ng-repeat="(key, value) in labels track by $index" class="pod-label badge" class="background-light-grey mouse-pointer" title="{{key}}" ng-click="$emit('labelFilterUpdate', key + '=' + value)">{{value}}</span>
</div>
</script>
<script type="text/ng-template" id="dataLabelsTemplate.html">
<div class="ngCellText" ng-init="labels=row.entity.labels" ng-controller="Kubernetes.DataLabels">
<p ng-show="data"><strong>Labels</strong></p>
<span ng-repeat="(key, value) in labels track by $index" class="pod-label badge" ng-class="labelClass(key)" ng-click="labelClick(entity, key, value)" title="{{key}}"><span class="glyphicon glyphicon-tag"/> {{value}}</span>
</div>
</script>
<script type="text/ng-template" id="hostTemplate.html">
<div class="ngCellText" ng-init="host=row.entity.$host">
<span class="pod-label badge background-light-grey mouse-pointer" ng-click="$emit('labelFilterUpdate', 'host=' + host)">{{host}}</span>
</div>
</script>
<script type="text/ng-template" id="portalAddress.html">
<div class="ngCellText">
<div ng-repeat="port in row.entity.$ports track by $index">
<a target="_blank" href="{{row.entity.$connectUrl}}" ng-show="row.entity.$connectUrl && row.entity.$podCounters.ready" title="Protocol {{row.entity.spec.protocol}}">
{{row.entity.$host}}
</a>
<span ng-hide="row.entity.$connectUrl && row.entity.$podCounters.ready">{{row.entity.spec.portalIP || row.entity.spec.clusterIP}}:{{port}}</span>
</div>
</div>
</script>
<script type="text/ng-template" id="iconCellTemplate.html">
<div class="ngCellText">
<img class="app-icon-small" ng-src="{{row.entity.$iconUrl}}">
</div>
</script>
<script type="text/ng-template" id="ageTemplate.html">
<div class="ngCellText " ng-model="row.entity.$pods[0].$age">
{{row.entity.$pods[0].$age}}
</div>
</script>
<script type="text/ng-template" id="firstTimestampTemplate.html">
<div class="ngCellText" title="{{row.entity.$firstTimestamp}}">
{{row.entity.$firstTimestamp | relativeTime}}
</div>
</script>
<script type="text/ng-template" id="lastTimestampTemplate.html">
<div class="ngCellText" title="{{row.entity.$lastTimestamp}}">
{{row.entity.$lastTimestamp | relativeTime}}
</div>
</script>
<script type="text/ng-template" id="eventKindTemplate.html">
<div class="ngCellText" ng-init="kind=row.entity.involvedObject.kind">
<span class="pod-label badge" class="background-light-grey mouse-pointer" ng-click="$emit('labelFilterUpdate', 'kind=' + kind)">{{kind}}</span>
</div>
</script>
<script type="text/ng-template" id="eventNameTemplate.html">
<div class="ngCellText" ng-init="name=row.entity.involvedObject.name">
<span class="pod-label badge" class="background-light-grey mouse-pointer" ng-click="$emit('labelFilterUpdate', 'name=' + name)">{{name}}</span>
</div>
</script>
<script type="text/ng-template" id="eventSummaryTemplate.html">
<div class="ngCellText" title="Number of events on this resource">
<a ng-show="row.entity.$pods[0].$eventsLink" href="{{row.entity.$pods[0].$eventsLink}}">
<span class="badge">{{row.entity.$pods[0].$events.length}}</span>
</a>
</div>
</script>
<script type="text/ng-template" id="connectTemplate.html">
<span ng-show="entity.$jolokiaUrl && entity.$ready" ng-controller="Kubernetes.ConnectController">
<a class="clickable"
ng-click="doConnect(row.entity)"
title="Open a new window and connect to this container">
<i class="fa fa-sign-in"></i>
</a>
</span>
</script>
<script type="text/ng-template" id="termTemplate.html">
<span ng-show="entity.status.phase === 'Running'" ng-controller="Kubernetes.TermController">
<span ng-repeat="container in entity.spec.containers" ng-show="canConnectTo(container)">
<i class="fa fa-television clickable" title="Open up a terminal to {{container.name}}" ng-click="openTerminal(entity.metadata.selfLink, container.name)"></i>
</span>
</span>
</script>
<script type="text/ng-template" id="logIconTemplate.html">
<span ng-show="entity.status.phase === 'Running'" ng-controller="Kubernetes.PodLogLinkController">
<i class="fa fa-file-text" title="Open up the logs for {{entity.metadata.name}}" ng-click="openLogs(entity)"></i>
</span>
</script>
<script type="text/ng-template" id="oracleLogTemplate.html">
<span ng-controller="Kubernetes.PodLogLinkController">
<i class="fa fa-file-text" title="打开{{entity.$oracleName}}的汇总日志" ng-click="openLogs(entity)"></i>
</span>
</script>
<script type="text/ng-template" id="connectParamTemplate.html">
<div class="ngCellText" ng-init="entity=row.entity">
<div ng-show="row.entity.$pods.length && row.entity.$pods[0].$host && row.entity.$pods[0].spec.containers[0].ports[0].hostPort"><strong>{{row.entity.$pods[0].$host}}:{{row.entity.$pods[0].spec.containers[0].ports[0].hostPort}}/orcl</strong>
<button class="btn" zero-clipboard data-clipboard-text="{{row.entity.$pods[0].$host}}:{{row.entity.$pods[0].spec.containers[0].ports[0].hostPort}}/orcl" title="点击复制">
<i class="fa fa-copy"></i></button>
</div>
</div>
</script>
<script type="text/ng-template" id="statusTemplate.html">
<div class="ngCellText nowrap" ng-init="entity=row.entity" ng-controller="Kubernetes.PodStatus" title="Pod {{entity.metadata.name}} is {{entity.status.phase}}">
<!-- in detail view -->
<p ng-show="data"><strong>Status: </strong></p>
<i class="fa {{entity.$statusCss}}"></i>
<span ng-show="data">{{data}}</span>
<!-- in table -->
<span ng-include="'connectTemplate.html'"></span>
<span ng-include="'termTemplate.html'"></span>
<span ng-include="'logIconTemplate.html'"></span>
</div>
</script>
<script type="text/ng-template" id="resizeDialog.html">
<div modal="resizeDialog.dialog.show">
<form class="form-horizontal" ng-submit="resizeDialog.onOk()">
<div class="modal-header">
<h4>Scale {{resizeDialog.controller.metadata.name}}</h4></div>
<div class="modal-body">
<div class="control-group">
<label class="control-label" for="replicas">Number of pods you would like to scale to?</label>
<div class="controls">
<input type="number" min="0" id="replicas" ng-model="resizeDialog.newReplicas">
</div>
</div>
</div>
<div class="modal-footer">
<input class="btn btn-primary" type="submit" ng-disabled="resizeDialog.newReplicas === resizeDialog.controller.status.replicas" value="Resize">
<button class="btn btn-warning cancel sj_btn_grey" type="button" ng-click="resizeDialog.close()">取消</button>
</div>
</form>
</div>
</script>
<script type="text/ng-template" id="namespaceSelector.html">
<span ng-controller="Kubernetes.NamespaceController">
namespace:
<select ng-model="namespace" ng-options="namespace for namespace in namespaces"
title="choose the namespace - which is a selection of resources in kubernetes">
</select>
</span>
</script>
<script type="text/ng-template" id="pendingPipelines.html">
<div class="row" ng-controller="Developer.PipelinesController">
<div class="row">
<div class="col-md-12">
<div ng-hide="model.fetched">
<div class="align-center">
<i class="fa fa-spinner fa-spin"></i>
</div>
</div>
<div ng-show="model.fetched">
<div ng-hide="model.job.builds.length" class="align-center">
<p class="alert alert-info">There are no pipelines for this job.</p>
</div>
<div ng-show="model.job.builds.length">
<div class="pipeline-build-block" ng-repeat="build in model.job.builds | filter:model.filterText track by $index">
<div pipeline-view></div>
</div>
</div>
</div>
</div>
</div>
</div>
</script>
<script type="text/ng-template" id="taskEdit.html">
<div class="ngCellText" ng-init="entity=row.entity" ng-controller="Kubernetes.TaskEdit">
<button class="btn sj_btn" ng-click="showDeleteOne.open(entity)">
<span class="glyphicon glyphicon-trash"></span>&nbsp;&nbsp;
</button>
<div hawtio-confirm-dialog="showDeleteOne.show" title="是否删除任务?" ok-button-text="确认" cancel-button-text="取消" on-cancel="showDeleteOne.onCancelled()" on-ok="showDeleteOne.onOk()">
<div class="dialog-body">
<p>
是否删除{{entity.name}}-{{entity.systemName}} 任务?
</p>
</div>
</div>
</div>
</script>
<!-- 迁移进度条 -->
<script type="text/ng-template" id="taskProcess.html">
<div class="ngCellText progress" ng-init="entity=row.entity">
<div ng-show="entity.status!==3" class="progress-bar progress-bar-success active sj_progress_bar " role="progressbar" aria-valuenow="{{entity.process}}" aria-valuemin="0" aria-valuemax="100" style="width: {{entity.process}}%">
<span class="sj_progress_font">{{entity.process}}%</span>
</div>
<div ng-show="entity.status ===3" class="progress-bar progress-bar-danger active sj_progress_bar" role="progressbar" aria-valuenow="{{entity.process}}" aria-valuemin="0" aria-valuemax="100" style="width: {{entity.process}}%" title="{{entity.process}}%">
<span class="sj_progress_font">{{entity.process}}%</span>
</div>
</div>
</script>
<!--迁移状态显示 -->
<script type="text/ng-template" id="taskStatus.html">
<div class="ngCellText" ng-init="entity=row.entity">
<div ng-show="entity.status == 0">
<sapn class="glyphicon glyphicon-minus"> 待迁移
</div>
<div ng-show="entity.status == 1">
<span class="glyphicon glyphicon-transfer"> 迁移中
</div>
<div ng-show="entity.status == 2">
<span class="glyphicon glyphicon-ok"> 已完成
</div>
<div ng-show="entity.status == 3">
<span class="glyphicon glyphicon-remove"> 失败
</div>
</div>
</script>
<script type="text/ng-template" id="creationTimeTemplate.html">
<div class="ngCellText" title="created at: {{row.entity.$creationDate | date : 'h:mm:ss a, EEE MMM yyyy'}}">
{{row.entity.$creationDate.relative()}}
</div>
</script>
<script type="text/ng-template" id="dataExtractTemplate.html">
<div class="ngCellText" ng-init="entity=row.entity">
<span ng-show="entity.extractStatus == 0" class="badge badge-info"> 待汇总</span>
<span ng-show="entity.extractStatus == 1" class="badge badge-success"> 汇总中</span>
<span ng-show="entity.extractStatus == 2" class="badge"> 已完成</span>
</div>
</script>
<script type="text/ng-template" id="loadingMask.html">
<div class="custom-alert">
<div id="loading">
<span ng-bind="ngDialogData.msg" />
</div>
</div>
</script>
<script type="text/ng-template" id="dataCheckStatus.html">
<div class="ngCellText" ng-init="entity=row.entity">
<span ng-show="entity.metadata.annotations.checkoutFlag == 0">未校验</span>
<span ng-show="entity.metadata.annotations.checkoutFlag == 1">已校验</span>
<span ng-show="entity.metadata.annotations.checkoutFlag == 2">校验中</span>
</div>
</script>
<div ng-controller="Kubernetes.TopLevel">
<div class="wiki-icon-view" ng-controller="Kubernetes.FileDropController" nv-file-drop nv-file-over uploader="uploader" over-class="ready-drop">
<div class="row kubernetes-view" ng-view></div>
</div>
</div>