@spotinst/spinnaker-deck
Version:
Spinnaker-Deck service, forked with support to Spotinst
183 lines (182 loc) • 7.04 kB
HTML
<ng-form name="loadBalancingPolicySubForm">
<collapsible-section heading="Port Name Mapping" expanded="true" subsection="true">
<div class="form-group">
<div class="form-group row" ng-repeat="namedPort in $ctrl.command.loadBalancingPolicy.namedPorts">
<div class="col-md-12">
<div class="col-md-2 sm-label-right">
<b>Name</b>
<help-field key="gce.serverGroup.loadBalancingPolicy.portName"></help-field>
</div>
<div class="col-md-3">
<ui-select ng-model="namedPort.name" class="form-control input-sm">
<ui-select-match>{{ namedPort.name }}</ui-select-match>
<ui-select-choices repeat="portName in $ctrl.getPortNames()">
<span ng-bind-html="portName"></span>
</ui-select-choices>
</ui-select>
</div>
<div class="col-md-2 sm-label-right">
<b>Port</b>
<help-field key="gce.serverGroup.loadBalancingPolicy.listeningPort"></help-field>
</div>
<div class="col-md-3">
<input
type="number"
name="listeningPort"
required
class="form-control input-sm"
ng-model="namedPort.port"
max="{{ $ctrl.maxPort }}"
min="1"
/>
</div>
<div class="col-md-2 sm-label-left">
<span
class="glyphicon glyphicon-trash"
uib-tooltip="Remove Named Port"
ng-click="$ctrl.removeNamedPort($index)"
></span>
</div>
<div
class="col-md-4 error-message"
ng-if="
loadBalancingPolicySubForm.listeningPort.$error.min || loadBalancingPolicySubForm.listeningPort.$error.max
"
>
Must be between 1 and {{ $ctrl.maxPort }}.
</div>
</div>
</div>
<div class="col-md-11">
<button class="btn btn-block add-new" ng-click="$ctrl.addNamedPort()">
<span class="glyphicon glyphicon-plus-sign"></span> Add Port Name Mapping
</button>
</div>
</div>
</collapsible-section>
<collapsible-section heading="Capacity Metrics" expanded="true" subsection="true">
<div class="form-group">
<div class="col-md-5 sm-label-right">
<b>Balancing Mode</b>
<help-field key="gce.serverGroup.loadBalancingPolicy.balancingMode"></help-field>
</div>
<div class="col-md-3">
<ui-select
ng-model="$ctrl.command.loadBalancingPolicy.balancingMode"
on-select="$ctrl.onBalancingModeChange($item)"
class="form-control input-sm"
required
>
<ui-select-match placeholder="Select...">{{ $select.selected }}</ui-select-match>
<ui-select-choices repeat="balancingMode in $ctrl.getBalancingModes() | filter: $select.search">
<span ng-bind-html="balancingMode"></span>
</ui-select-choices>
</ui-select>
</div>
</div>
<div ng-switch on="$ctrl.command.loadBalancingPolicy.balancingMode">
<div class="form-group" ng-switch-when="UTILIZATION">
<div class="col-md-5 sm-label-right">
<b>Max CPU utilization</b>
<help-field key="gce.serverGroup.loadBalancingPolicy.maxUtilization"></help-field>
</div>
<div class="col-md-3">
<div class="input-group">
<input
type="number"
name="maxUtilization"
required
class="form-control input-sm"
ng-model="$ctrl.maxUtilizationView"
ng-init="$ctrl.setView('maxUtilizationView', $ctrl.command.loadBalancingPolicy.maxUtilization)"
ng-change="$ctrl.setModel('command.loadBalancingPolicy.maxUtilization', $ctrl.maxUtilizationView)"
min="0"
max="100"
/>
<span class="input-group-addon">%</span>
</div>
</div>
<div
class="col-md-4 error-message"
ng-if="
loadBalancingPolicySubForm.maxUtilization.$error.min || loadBalancingPolicySubForm.maxUtilization.$error.max
"
>
Must be between 0 and 100%.
</div>
</div>
<div class="form-group" ng-switch-when="RATE">
<div class="col-md-5 sm-label-right">
<b>Max RPS per instance</b>
<help-field key="gce.serverGroup.loadBalancingPolicy.maxRatePerInstance"></help-field>
</div>
<div class="col-md-3">
<div class="input-group">
<input
type="number"
name="maxRatePerInstance"
required
class="form-control input-sm"
ng-model="$ctrl.command.loadBalancingPolicy.maxRatePerInstance"
min="0"
/>
</div>
</div>
<div class="col-md-4 error-message" ng-if="loadBalancingPolicySubForm.maxRatePerInstance.$error.min">
Cannot be less than zero.
</div>
</div>
<div class="form-group" ng-switch-when="CONNECTION">
<div class="col-md-5 sm-label-right">
<b>Max connections per instance</b>
<help-field key="gce.serverGroup.loadBalancingPolicy.maxConnectionsPerInstance"></help-field>
</div>
<div class="col-md-3">
<div class="input-group">
<input
type="number"
name="maxConnectionsPerInstance"
required
class="form-control input-sm"
ng-model="$ctrl.command.loadBalancingPolicy.maxConnectionsPerInstance"
min="0"
/>
</div>
</div>
<div class="col-md-4 error-message" ng-if="loadBalancingPolicySubForm.maxConnectionsPerInstance.$error.min">
Cannot be less than zero.
</div>
</div>
</div>
<div class="form-group">
<div class="col-md-5 sm-label-right">
<b>Capacity</b>
<help-field key="gce.serverGroup.loadBalancingPolicy.capacityScaler"></help-field>
</div>
<div class="col-md-3">
<div class="input-group">
<input
type="number"
name="capacityScaler"
required
class="form-control input-sm"
ng-model="$ctrl.capacityScalerView"
ng-init="$ctrl.setView('capacityScalerView', $ctrl.command.loadBalancingPolicy.capacityScaler)"
ng-change="$ctrl.setModel('command.loadBalancingPolicy.capacityScaler', $ctrl.capacityScalerView)"
min="0"
max="100"
/>
<span class="input-group-addon">%</span>
</div>
</div>
<div
class="col-md-4 error-message"
ng-if="
loadBalancingPolicySubForm.capacityScaler.$error.min || loadBalancingPolicySubForm.capacityScaler.$error.max
"
>
Must be between 0 and 100%.
</div>
</div>
</collapsible-section>
</ng-form>