@spotinst/spinnaker-deck
Version:
Spinnaker-Deck service, forked with support to Spotinst
98 lines (90 loc) • 3.81 kB
HTML
<div class="details-panel">
<div class="header" ng-if="state.loading">
<div class="close-button" ng-if="!state.standalone">
<a class="btn btn-link" ui-sref="^">
<span class="glyphicon glyphicon-remove"></span>
</a>
</div>
<div class="horizontal center spinner-container">
<loading-spinner size="'small'"></loading-spinner>
</div>
</div>
<div class="header" ng-if="!state.loading">
<div class="close-button" ng-if="!state.standalone">
<a class="btn btn-link" ui-sref="^">
<span class="glyphicon glyphicon-remove"></span>
</a>
</div>
<div class="header-text horizontal middle">
<span class="glyphicon glyphicon-hdd {{instance.healthState}}"></span>
<h3 class="horizontal middle space-between flex-1" select-on-dbl-click>
{{instance.name || instance.id || instance.instanceId}}
</h3>
<copy-to-clipboard
class="copy-to-clipboard copy-to-clipboard-sm"
text="instance.instanceId"
tool-tip="'Copy to clipboard'"
>
</copy-to-clipboard>
</div>
<div>
<div class="actions">
<div class="dropdown" uib-dropdown dropdown-append-to-body>
<button
type="button"
class="btn btn-sm btn-primary dropdown-toggle"
ng-disabled="disabled"
uib-dropdown-toggle
>
Instance Actions <span class="caret"></span>
</button>
<ul class="dropdown-menu" uib-dropdown-menu role="menu">
<li><a href ng-click="ctrl.terminateInstance()">Terminate</a></li>
<li>
<a href ng-click="ctrl.terminateInstanceAndShrinkServerGroup()">Terminate and Shrink Server Group</a>
</li>
</ul>
</div>
<div class="dropdown" ng-if="instance.insightActions.length > 0" uib-dropdown dropdown-append-to-body>
<button type="button" class="btn btn-sm btn-default dropdown-toggle" uib-dropdown-toggle>
Insight <span class="caret"></span>
</button>
<ul class="dropdown-menu" uib-dropdown-menu role="menu">
<li ng-repeat="action in instance.insightActions">
<a target="_blank" href="{{action.url}}">{{action.label}}</a>
</li>
</ul>
</div>
</div>
</div>
<div class="content" ng-if="!state.loading">
<collapsible-section heading="Instance Information" expanded="true">
<dl class="dl-horizontal dl-flex">
<dt ng-if="instance.availabilityZone">AZ</dt>
<dd ng-if="instance.availabilityZone">{{instance.availabilityZone}}</dd>
<dt ng-if="instance.type">Type</dt>
<dd ng-if="instance.type">{{instance.type}}</dd>
<dt ng-if="instance.serverGroup">Server Group</dt>
<dd ng-if="instance.serverGroup">{{instance.serverGroup}}</dd>
<dt ng-if="instance.healthState">Health</dt>
<dd ng-if="instance.healthState">{{instance.spotHealthStatus}}</dd>
<dt ng-if="instance.lifecycle">Lifecycle</dt>
<dd ng-if="instance.lifecycle">{{instance.lifecycle}}</dd>
<dt ng-if="instance.publicIp">Public IP</dt>
<dd ng-if="instance.publicIp">{{instance.publicIp}}</dd>
<dt ng-if="instance.privateIp">Private IP</dt>
<dd ng-if="instance.privateIp">{{instance.privateIp}}</dd>
<dt ng-if="instance.launchTime">Launched</dt>
<dd ng-if="instance.launchTime">{{instance.launchTime | timestamp}}</dd>
</dl>
</collapsible-section>
<instance-links
address="baseIpAddress"
application="application"
instance="instance"
moniker="moniker"
environment="environment"
></instance-links>
</div>
</div>
</div>