Project

General

Profile

« Previous | Next » 

Revision 43c4bd72

Added by Marek Hulán over 9 years ago

Fixes #7456 - Extract primary interface from host

Contributions from:

All host must have at least one primary interface and one provision (can
be the same interface). Primary interface gives host a name so even
unamanaged host have primary interface (we skip validations of other
attributes for unamanged hosts though).

Host still have name attribute which is a cache of primary interface name.
Therefore we can use the host name in SQL queries, as a friendly_id etc.

- realm moved to the primary tab
- fqdn in nics table
- flags in nics table
- checkboxes for provision and primary flags
- modal resize fix
- original fields for primary NIC removed
- skipping validation for new resources
- warnings before switching flags and table update
- host name and primary interface name connected
- host domain name in the page title
- nics on host show page
- clearing modal window on cancel
- fixed domain validation in NIC::Base
- ip suggestion for all interfaces
- flags switchable from the overview table
- use icons instead of text for primary/provision on NICs overview tab
- attempt to fix sending NIC template
- fix fqdn algorithm
- ip addres in the overview table
- fix for class name collision
- better behavior of host name <-> primary name sync
- fix for subnet combobox values
- fix for modal poping up on form submission
- network partial for CRs moved from VM tab to modal
- fix ip suggestion race for ipam=db

View differences:

app/views/compute_resources_vms/form/ovirt/_network.html.erb
<div class="fields">
<div class="form-group">
<% if f.object._delete != '1' %>
<% disabled = (f.object.persisted? == "true" || f.object.persisted? == true) %>
<%= text_f f, :name, :disabled => disabled, :class => "col-md-2", :label => _('Name') %>
<%= f.hidden_field :name if disabled %>
<% selected_cluster ||= compute_resource.clusters.first.id %>
<%= select_f f, :network, compute_resource.networks(selected_cluster ? { :cluster_id => selected_cluster } : { }), :id, :name,
{ }, :disabled => disabled, :class => "col-md-2",
:help_inline => remove_child_link("X", f, { :method => :'_delete', :title => _('remove network interface'), :class => 'label label-danger' }),
:label => _('Network') %>
<%= f.hidden_field :network if disabled %>
<% end %>
<%= f.fields_for 'compute_attributes', OpenStruct.new(f.object.compute_attributes) do |f| %>
<%= text_f f, :name, :disabled => disabled, :class => "col-md-2", :label => _('Name') %>
<%= f.hidden_field :name if disabled %>
<% selected_cluster ||= compute_resource.clusters.first.id %>
<%= select_f f, :network, compute_resource.networks(selected_cluster ? { :cluster_id => selected_cluster } : { }), :id, :name,
{ }, :disabled => disabled, :class => "col-md-2",
:label => _('Network') %>
<%= f.hidden_field :network if disabled %>
<% end %>
</div>
</div>

Also available in: Unified diff