294 lines
13 KiB
HTML
294 lines
13 KiB
HTML
<div class="team-dashboard" ng-controller="Developer.ProjectDashboardController" hawtio-card-bg>
|
|
<div hawtio-breadcrumbs></div>
|
|
<div hawtio-tabs></div>
|
|
|
|
<script type="text/ng-template" id="environmentNameTemplate.html">
|
|
<div class="ngCellText">
|
|
<div class="ngCellText">
|
|
<a ng-show="row.entity.$environmentLink" href="{{row.entity.$environmentLink}}" title="View this environment">
|
|
<i class="fa fa-cube"></i> {{row.entity.name}}
|
|
</a>
|
|
<span ng-hide="row.entity.$environmentLink"><i class="fa fa-cube"></i> {{row.entity.name}}</span>
|
|
</div>
|
|
</div>
|
|
</script>
|
|
|
|
|
|
<!--
|
|
<div class="row filter-header" ng-show="model.buildconfigs.length">
|
|
<div class="col-md-12">
|
|
<span class="pull-right"> </span>
|
|
<button class="btn btn-danger pull-right"
|
|
title="Deletes the selected environments"
|
|
ng-disabled="!tableConfig.selectedItems.length"
|
|
ng-click="deletePrompt(tableConfig.selectedItems)">
|
|
<i class="fa fa-remove"></i> Delete
|
|
</button>
|
|
<span class="pull-right"> </span>
|
|
<a class="btn btn-primary pull-right" href="{{baseUri}}/workspaces/{{namespace}}/forge/createProject"
|
|
title="Create a new app in this project">
|
|
<i class="fa fa-plus"></i> Create App
|
|
</a>
|
|
</div>
|
|
</div>
|
|
-->
|
|
|
|
<div ng-hide="model.fetched">
|
|
<div class="row">
|
|
<div class="col-md-12">
|
|
<div class="align-center">
|
|
<i class="fa fa-spinner fa-spin"></i>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
|
|
<div ng-show="model.fetched">
|
|
<div class="jumbotron" ng-hide="model.buildconfigs.length">
|
|
<div class="row">
|
|
<div class="col-md-12">
|
|
<div>
|
|
<p>
|
|
There are no applications currently available.
|
|
</p>
|
|
<p>
|
|
<a class="btn btn-primary btn-lg" href="{{baseUri}}/workspaces/{{namespace}}/forge/createProject"
|
|
title="Create a new app in this project">
|
|
Create Application
|
|
</a>
|
|
</p>
|
|
<p>
|
|
Please create a new application or try browsing the <a href="{{namespaceRuntimeLink}}"
|
|
title="View the runtime environment for this project">Runtime</a>
|
|
for this project
|
|
</p>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div ng-show="model.buildconfigs.length">
|
|
<div ng-hide="environments.length">
|
|
<ng-include src="'plugins/developer/html/apps.html'"/>
|
|
|
|
<!--
|
|
<div class="row">
|
|
<div class="col-md-12 align-center">
|
|
<h2>No Environment Available</h2>
|
|
<p>Environment is a logical place where deployments happen which maps to a kubernetes / openshift
|
|
namespace. You will see environments here after you add a build.</p>
|
|
<a class="btn btn-primary" ng-href="{{settingsLink}}"><i class="fa fa-plus"></i> New Build</a>
|
|
</div>
|
|
</div>
|
|
-->
|
|
</div>
|
|
|
|
|
|
<div ng-show="environments.length">
|
|
<div class="row row-cards-pf" title="Deployments by app across environments">
|
|
<div class="col-md-12 environment-rows">
|
|
<div class="card-pf">
|
|
<div class="card-pf-heading">
|
|
<h2 class="card-pf-title inline-block">Deployments</h2>
|
|
<a class="btn btn-primary pull-right" href="{{baseUri}}/workspaces/{{namespace}}/forge/createProject"
|
|
title="Create a new app in this project">
|
|
<i class="fa fa-plus"></i> Create App
|
|
</a>
|
|
</div>
|
|
<div class="card-pf-body">
|
|
<table class="table table-striped deployments">
|
|
<thead>
|
|
<tr>
|
|
<th>Apps</th>
|
|
<th ng-repeat="env in environments | orderBy: 'order' | filter:filterTemplates track by $index">
|
|
<a href="{{environmentLink(env)}}" title="namespace: {{env.namespace}}">
|
|
<i class="fa fa-cube"></i> {{env.label}}
|
|
</a>
|
|
</th>
|
|
</tr>
|
|
</thead>
|
|
<tbody>
|
|
<tr ng-repeat="app in model.buildconfigs | orderBy: '$name' track by $index">
|
|
<td>
|
|
<a href=""
|
|
title="View App {{row.entity.metadata.name || row.entity.name}}"
|
|
ng-href="{{app | kubernetesPageLink}}">
|
|
<img class="app-icon-small" ng-src="{{app.$iconUrl}}" ng-show="app.$iconUrl">
|
|
{{app.metadata.name || row.entity.name}}
|
|
</a>
|
|
</td>
|
|
<td ng-repeat="env in environments | orderBy: 'order' | filter:filterTemplates track by $index">
|
|
<div
|
|
ng-repeat="(version, versionInfo) in envVersions[env.namespace][app.metadata.name].versions track by $index">
|
|
<div ng-repeat="(rcname, rc) in versionInfo.replicationControllers">
|
|
<div>
|
|
<a href="{{rc.$viewLink}}" ng-show="rc.$viewLink"
|
|
title="View the Replication Controller {{rc.$name}} with version {{version}}">
|
|
<i class="fa fa-square"></i> {{version}}
|
|
</a>
|
|
<span ng-hide="rc.$viewLink"
|
|
title="View the Replication Controller {{rc.$name}} with version {{version}}">
|
|
<i class="fa fa-square"></i> {{version}}
|
|
</span>
|
|
|
|
|
|
|
|
<span>
|
|
<a ng-show="rc.$podCounters.podsLink"
|
|
href="{{rc.$podCounters.podsLink}}" title="View pods">
|
|
<span ng-show="rc.$podCounters.ready"
|
|
class="badge badge-success">{{rc.$podCounters.ready}}</span>
|
|
<span ng-show="rc.$podCounters.valid"
|
|
class="badge badge-info">{{rc.$podCounters.valid}}</span>
|
|
<span ng-show="rc.$podCounters.waiting" class="badge">{{rc.$podCounters.waiting}}</span>
|
|
<span ng-show="rc.$podCounters.error"
|
|
class="badge badge-warning">{{rc.$podCounters.error}}</span>
|
|
</a>
|
|
</span>
|
|
|
|
|
|
|
|
<div class="inline-block dropdown">
|
|
<a href="#" class="dropdown-toggle" id="dropdownMenu1" data-toggle="dropdown"
|
|
title="View build and commit details">
|
|
<span class="fa fa-ellipsis-v"></span>
|
|
<span class="caret"></span>
|
|
</a>
|
|
<ul class="dropdown-menu" role="menu" aria-labelledby="dropdownMenu1">
|
|
<li role="presentation" ng-if="rc.$metricsLink">
|
|
<a href="{{rc.$metricsLink}}" target="metrics" ng-show="rc.$metricsLink"
|
|
title="View the metrics for this version">
|
|
<i class="fa fa-tachometer"></i>
|
|
Metrics
|
|
</a>
|
|
</li>
|
|
<li role="presentation" ng-if="rc.$docUrl">
|
|
<a href="{{rc.$docUrl}}" target="docs" ng-show="rc.$docUrl"
|
|
title="View the documentation for this version">
|
|
<i class="fa fa-book"></i>
|
|
Docs
|
|
</a>
|
|
</li>
|
|
<li role="presentation" ng-if="rc.$gitUrl">
|
|
<a href="{{rc.$gitUrl}}" target="git" title="{{rc.$gitCommit}}
|
|
{{rc.$gitCommitAuthor}}
|
|
{{rc.$gitCommitDate}}
|
|
{{rc.$gitCommitMessage}}">
|
|
<i class="fa fa-code-fork"></i>
|
|
Commit {{rc.$gitCommit | limitTo:7}}
|
|
</a>
|
|
</li>
|
|
<li role="presentation" ng-if="!rc.$gitUrl && $gitCommit" title="{{rc.$gitCommit}}
|
|
{{rc.$gitCommitAuthor}}
|
|
{{rc.$gitCommitDate}}
|
|
{{rc.$gitCommitMessage}}">
|
|
<a>
|
|
<i class="fa fa-code-fork"></i>
|
|
Commit {{rc.$gitCommit | limitTo:7}}
|
|
</a>
|
|
</li>
|
|
<li role="presentation" ng-if="rc.$buildUrl && rc.$buildId">
|
|
<a href="{{rc.$buildUrl}}" target="builds"
|
|
title="View the build which created this Replication Controller">
|
|
<i class="fa fa-tasks"></i>
|
|
Build #{{rc.$buildId}}
|
|
</a>
|
|
</li>
|
|
</ul>
|
|
</div>
|
|
<span ng-show="rc.$serviceLink.href">
|
|
|
|
|
|
|
|
<a target="test-service" href="{{rc.$serviceLink.href}}"
|
|
title="Open this service in a new tab">
|
|
<i class="fa fa-external-link"></i>
|
|
</a>
|
|
</span>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</td>
|
|
</tr>
|
|
</tbody>
|
|
</table>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
|
|
|
|
<div ng-show="totalPodCount" class="row row-cards-pf" title="Resource usage by apps and environments">
|
|
<div class="col-md-12 environment-rows">
|
|
<div class="card-pf">
|
|
<div class="card-pf-heading">
|
|
<h2 class="card-pf-title inline-block">Usage</h2>
|
|
</div>
|
|
<div class="card-pf-body">
|
|
<table class="table usage">
|
|
<thead>
|
|
<tr>
|
|
<th>All Environments</th>
|
|
<th
|
|
ng-repeat="env in environments | orderBy: 'order' | filter:filterTemplates track by $index">
|
|
<a href="{{environmentLink(env)}}" title="namespace: {{env.namespace}}">
|
|
<i class="fa fa-cube"></i> {{env.label}}
|
|
</a>
|
|
</th>
|
|
</tr>
|
|
</thead>
|
|
<tbody>
|
|
<tr>
|
|
<td>
|
|
<div pf-c3-chart id="summaryChart" config="summaryChartConfig"></div>
|
|
</td>
|
|
<td
|
|
ng-repeat="env in environments | orderBy: 'order' | filter:filterTemplates track by $index">
|
|
<div ng-show="envCharts[env.namespace]">
|
|
<div pf-c3-chart id="{{env.namespace}}Chart" config="envCharts[env.namespace]"></div>
|
|
</div>
|
|
</td>
|
|
</tr>
|
|
</tbody>
|
|
</table>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
|
|
|
|
<!--
|
|
<div class="row row-cards-pf">
|
|
<div class="col-md-12">
|
|
<div class="card-pf pipeline">
|
|
<div class="card-pf-heading no-border">
|
|
<h2 class="card-pf-title inline-block">Active Pipelines</h4>
|
|
<a ng-href="{{$projectLink}}/jenkinsJob/{{jobId}}/pipelines">View All Pipelines >></a>
|
|
</div>
|
|
<div class="card-pf-body no-top-margin">
|
|
<div class="full-card-width" ng-controller="Developer.PipelinesController"
|
|
ng-include="'plugins/kubernetes/html/pendingPipelines.html'"></div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="row row-cards-pf">
|
|
<div class="col-md-12">
|
|
<div class="card-pf">
|
|
<div class="card-pf-heading">
|
|
<h2 class="card-pf-title inline-block">Commits</h2>
|
|
<a ng-href="{{$projectLink}}/wiki/history//">View All Commits >></a>
|
|
</div>
|
|
<div class="card-pf-body">
|
|
<div ng-include="'plugins/wiki/html/projectCommitsPanel.html'"></div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
-->
|
|
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|