fuel-ui/static/templates/dialogs/display_changes.html

99 lines
4.7 KiB
HTML
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<div class="modal-header">
<button type="button" class="close" data-dismiss="modal">×</button>
<h3 data-i18n="dialog.display_changes.title"></h3>
</div>
<div class="modal-body display-changes-dialog">
<% if (cluster.get('status') == 'new' || cluster.needsRedeployment()) { %>
<div class="deploy-task-notice text-<%= cluster.get('status') == 'new' ? 'warning' : 'error' %>">
<i class="icon-attention"></i>
<span data-i18n="dialog.display_changes.<%= cluster.get('status') == 'new' ? 'locked_settings_alert' : 'redeployment_needed' %>"></span>
</div>
<hr class="slim">
<% } %>
<!-- Changes list -->
<% var nodes = cluster.get('nodes') %>
<% var addedNodes = nodes.where({pending_addition: true}) %>
<% if (addedNodes.length) { %>
<div class="deploy-task-name"><%- $.t("dialog.display_changes.added_node", {count: addedNodes.length }) %></div>
<% } %>
<% var deletedNodes = nodes.where({pending_deletion: true}) %>
<% if (deletedNodes.length) { %>
<div class="deploy-task-name"><%- $.t("dialog.display_changes.deleted_node", {count: deletedNodes.length }) %></div>
<% } %>
<% var reconfiguredNodes = nodes.filter(function(node) {return !node.get('pending_addition') && !node.get('pending_deletion') && !_.isEmpty(node.get('pending_roles'));}) %>
<% if (reconfiguredNodes.length) { %>
<div class="deploy-task-name"><%- $.t("dialog.display_changes.reconfigured_node", {count: reconfiguredNodes.length }) %></div>
<% } %>
<% var settingsChangesDescriptions = {
'attributes': $.t("dialog.display_changes.settings_changes.attrs"),
'networks': $.t("dialog.display_changes.settings_changes.networks"),
'disks': $.t("dialog.display_changes.settings_changes.disks"),
'interfaces': $.t("dialog.display_changes.settings_changes.interfaces")
} %>
<% _.each(cluster.get('changes'), function(change) { %>
<% if (!_.contains(['disks', 'interfaces'], change.name)) { %>
<div class="deploy-task-name"><%- $.t("dialog.display_changes.changed_task_name", {item: settingsChangesDescriptions[change.name] }) %> </div>
<% } %>
<% }); %>
<% var nodesWithChangedDisks = _.pluck(_.where(cluster.get('changes'), {name: 'disks'}), 'node_id') %>
<% if (nodesWithChangedDisks.length) { %>
<div class="deploy-task-name"><%- $.t("dialog.display_changes.changed_task_name", {item: settingsChangesDescriptions.disks }) %> </div>
<ul>
<% _.each(nodesWithChangedDisks, function(nodeId) { %>
<% if (nodes.get(nodeId)) { %>
<li><%- nodes.get(nodeId).get('name') %></li>
<% } %>
<% }) %>
</ul>
<% } %>
<% var nodesWithChangedInterfaces = _.pluck(_.where(cluster.get('changes'), {name: 'interfaces'}), 'node_id') %>
<% if (nodesWithChangedInterfaces.length) { %>
<div class="deploy-task-name"><%- $.t("dialog.display_changes.changed_task_name", {item: settingsChangesDescriptions.interfaces }) %> </div>
<ul>
<% _.each(nodesWithChangedInterfaces, function(nodeId) { %>
<% if (nodes.get(nodeId)) { %>
<li><%- nodes.get(nodeId).get('name') %></li>
<% } %>
<% }) %>
</ul>
<% } %>
<!-- Warnings -->
<%
// define restrictions
var restrictions = [];
if (cluster.get('nodes').nodesAfterDeploymentWithRole('controller') < size) { restrictions.push('controller'); }
var isCeilometerEnabled = cluster.get('settings').get('additional_components.ceilometer.value') == true;
var mongoNodes = cluster.get('nodes').nodesAfterDeploymentWithRole('mongo');
if (isCeilometerEnabled) {
if (cluster.get('mode') == 'ha_compact' && mongoNodes < 3) {
restrictions.push('mongo_ha');
}
else if (mongoNodes < size) {
restrictions.push('mongo');
}
}
// collect warnings
var warnings = [];
var hypervisor = cluster.get('settings').get('common.libvirt_type.value');
if (!cluster.get('nodes').nodesAfterDeploymentWithRole('compute') && hypervisor != 'vcenter') { warnings.push('compute'); }
%>
<% if (restrictions.length || warnings.length) { %>
<hr class="slim">
<% _.each(restrictions, function(restriction) { %>
<div class="alert alert-error"><%- $.t("dialog.display_changes.warnings." + restriction, {nodeSize: size}) %></div>
<% }) %>
<% _.each(warnings, function(warning) { %>
<div class="alert alert-warning"><%- $.t("dialog.display_changes.warnings." + warning, {nodeSize: size}) %></div>
<% }) %>
<% } %>
</div>
<div class="modal-footer">
<button class="btn" data-dismiss="modal" data-i18n="common.cancel_button"></button>
<button class="start-deployment-btn btn btn-<%= warnings.length ? 'danger' : 'success' %> <%= restrictions.length ? 'disabled' : '' %>" data-i18n="dialog.display_changes.deploy"></button>
</div>