Skip to content

Commit

Permalink
fix: limit deface overrides to proxmox plugin #87
Browse files Browse the repository at this point in the history
  • Loading branch information
tristanrobert committed Nov 7, 2019
1 parent 74b4af7 commit a7f536f
Show file tree
Hide file tree
Showing 15 changed files with 77 additions and 17 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -20,5 +20,6 @@
:name => 'add_from_profile_to_compute_detail',
:replace => "erb[loud]:contains('provider_partial')",
:partial => 'compute_resources_vms/form/proxmox/add_from_profile_to_hosts_compute_detail_form',
:original => '448e3b265e4dc1789f0efbbc6076e32216ac3a24'
:original => '448e3b265e4dc1789f0efbbc6076e32216ac3a24',
:namespaced => true
)
Original file line number Diff line number Diff line change
Expand Up @@ -20,13 +20,15 @@
:name => 'add_from_profile_to_compute_attributes_form',
:replace => "erb[loud]:contains('render')",
:partial => 'compute_resources_vms/form/proxmox/add_from_profile_to_compute_attributes_form',
:original => '0e01b2f93b6855afc207e0e301515cdd300a1c61'
:original => '0e01b2f93b6855afc207e0e301515cdd300a1c61',
:namespaced => true
)

Deface::Override.new(
:virtual_path => 'compute_attributes/_compute_form',
:name => 'add_from_profile_to_compute_form',
:replace => "erb[loud]:contains('provider_partial')",
:partial => 'compute_resources_vms/form/proxmox/add_from_profile_to_compute_form',
:original => '107f930f8e6b2bdd3e728757d8320d483f19ff9e'
:original => '107f930f8e6b2bdd3e728757d8320d483f19ff9e',
:namespaced => true
)
Original file line number Diff line number Diff line change
Expand Up @@ -20,13 +20,15 @@
:name => 'add_vm_type_to_networks_form',
:replace => "erb[loud]:contains('render')",
:partial => 'compute_resources_vms/form/proxmox/add_vm_type_to_networks_form',
:original => 'ce82feb03418d25628001c9fc5f5f78025c5e5f8'
:original => 'ce82feb03418d25628001c9fc5f5f78025c5e5f8',
:namespaced => true
)

Deface::Override.new(
:virtual_path => 'compute_resources_vms/form/_networks',
:name => 'add_vm_type_to_networks_new_childs_form',
:replace => "erb[loud]:contains('new_child_fields_template')",
:partial => 'compute_resources_vms/form/proxmox/add_vm_type_to_networks_new_childs_form',
:original => '4ba200e5e02810ade03827374de9b0b8b6a2f6a9'
:original => '4ba200e5e02810ade03827374de9b0b8b6a2f6a9',
:namespaced => true
)
Original file line number Diff line number Diff line change
Expand Up @@ -21,5 +21,6 @@
:replace => "erb[loud]:contains('f.fields_for')",
:closing_selector => "erb[silent]:contains('end')",
:partial => 'compute_resources_vms/form/proxmox/add_vm_type_to_nic_provider_specific_form',
:original => 'f1a2373efd9c7c993fd1662a2ee4752183542704'
:original => 'f1a2373efd9c7c993fd1662a2ee4752183542704',
:namespaced => true
)
Original file line number Diff line number Diff line change
Expand Up @@ -20,5 +20,6 @@
:name => 'add_vm_type_to_volumes_edit',
:replace_contents => 'div.children_fields',
:partial => 'compute_resources_vms/form/proxmox/add_vm_type_to_volumes_edit',
:original => '741194531465d567107d762aa11de9d00628c841'
:original => '741194531465d567107d762aa11de9d00628c841',
:namespaced => true
)
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,7 @@
:virtual_path => 'compute_resources_vms/form/_volumes',
:name => 'add_vm_type_to_volumes_new_volume',
:replace => "erb[silent]:contains('volume = compute_resource.new_volume')",
:text => '<% volume = compute_resource.new_volume(type: f.object.type) %>',
:original => '<% volume = compute_resource.new_volume %>'
:text => '<% if compute_resource.class == ForemanFogProxmox::Proxmox %><% volume = compute_resource.new_volume(type: f.object.type) %><% else %><% volume = compute_resource.new_volume %><% end %>',
:original => '<% volume = compute_resource.new_volume %>',
:namespaced => true
)
Original file line number Diff line number Diff line change
Expand Up @@ -20,5 +20,6 @@
:name => 'remove_new_vm_from_removable_layout',
:replace_contents => 'div.remove-button',
:partial => 'compute_resources_vms/form/proxmox/removable_layout',
:original => '8b7383e57fbe158fc12bf8bc1003431f2f2cb6f5'
:original => '8b7383e57fbe158fc12bf8bc1003431f2f2cb6f5',
:namespaced => true
)
Original file line number Diff line number Diff line change
Expand Up @@ -14,5 +14,10 @@ GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with ForemanFogProxmox. If not, see <http://www.gnu.org/licenses/>. %>
<% if @set.compute_resource.class == ForemanFogProxmox::Proxmox %>
<%= render :partial => "compute_form",
:locals => { :f => f2, :compute_resource => @set.compute_resource, :selected_cluster => @set.vm_attrs['cluster'], :from_profile => true } %>
<% else %>
<%= render :partial => "compute_form",
:locals => { :f => f2, :compute_resource => @set.compute_resource, :selected_cluster => @set.vm_attrs['cluster'] } %>
<% end %>
Original file line number Diff line number Diff line change
Expand Up @@ -14,5 +14,10 @@ GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with ForemanFogProxmox. If not, see <http://www.gnu.org/licenses/>. %>
<% if compute_resource.class == ForemanFogProxmox::Proxmox %>
<%= render :partial => provider_partial(compute_resource, 'base'),
:locals => { :f => f, :compute_resource => compute_resource, :new_host => true, :new_vm => true, :hide_image => true, :from_profile => from_profile }.merge(args_for_compute_resource_partial(@host)) %>
:locals => { :f => f, :compute_resource => compute_resource, :new_host => true, :new_vm => true, :hide_image => true, :from_profile => from_profile }.merge(args_for_compute_resource_partial(@host)) %>
<% else %>
<%= render :partial => provider_partial(compute_resource, 'base'),
:locals => { :f => f, :compute_resource => compute_resource, :new_host => true, :new_vm => true, :hide_image => true }.merge(args_for_compute_resource_partial(@host)) %>
<% end %>
Original file line number Diff line number Diff line change
Expand Up @@ -14,5 +14,11 @@ GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with ForemanFogProxmox. If not, see <http://www.gnu.org/licenses/>. %>

<% if compute_resource.class == ForemanFogProxmox::Proxmox %>
<%= render :partial => provider_partial(compute_resource, 'base'),
:locals => { :f => f, :compute_resource => compute_resource, :new_host => new_vm, :new_vm => new_vm, :from_profile => false }.merge(args_for_compute_resource_partial(@host)) %>
<% else %>
<%= render :partial => provider_partial(compute_resource, 'base'),
:locals => { :f => f, :compute_resource => compute_resource, :new_host => new_vm, :new_vm => new_vm }.merge(args_for_compute_resource_partial(@host)) %>
<% end %>
Original file line number Diff line number Diff line change
Expand Up @@ -14,10 +14,14 @@ GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with ForemanFogProxmox. If not, see <http://www.gnu.org/licenses/>. %>

<% if compute_resource.class == ForemanFogProxmox::Proxmox %>
<% vm_type = f.object.respond_to?('type') ? f.object.type : nil %>

<%= render :partial => provider_partial(compute_resource, 'network'),
:locals => { :f => i, :vm_type => vm_type, :compute_resource => compute_resource, :new_host => new_host, :new_vm => new_vm, :remove_title => _('remove network interface'), :selected_cluster => selected_cluster },
:layout => 'compute_resources_vms/form/deletable_layout' %>

<% else %>
<%= render :partial => provider_partial(compute_resource, 'network'),
:locals => { :f => i, :compute_resource => compute_resource, :new_host => new_host, :new_vm => new_vm, :remove_title => _('remove network interface'), :selected_cluster => selected_cluster },
:layout => 'compute_resources_vms/form/deletable_layout' %>
<% end %>
Original file line number Diff line number Diff line change
Expand Up @@ -14,12 +14,18 @@ GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with ForemanFogProxmox. If not, see <http://www.gnu.org/licenses/>. %>

<% if compute_resource.class == ForemanFogProxmox::Proxmox %>
<% vm_type = f.object.respond_to?('type') ? f.object.type : nil %>

<%= new_child_fields_template(f, compute_resource.interfaces_attrs_name, {
:object => compute_resource.new_interface,
:partial => provider_partial(compute_resource, 'network'),
:form_builder_attrs => { :vm_type => vm_type, :compute_resource => compute_resource, :new_host => new_host, :new_vm => new_vm, :remove_title => _('remove network interface') },
:layout => 'compute_resources_vms/form/deletable_layout' }) %>

<% else %>
<%= new_child_fields_template(f, compute_resource.interfaces_attrs_name, {
:object => compute_resource.new_interface,
:partial => provider_partial(compute_resource, 'network'),
:form_builder_attrs => { :compute_resource => compute_resource, :new_host => new_host, :new_vm => new_vm, :remove_title => _('remove network interface') },
:layout => 'compute_resources_vms/form/deletable_layout' }) %>
<% end %>
Original file line number Diff line number Diff line change
Expand Up @@ -14,10 +14,16 @@ GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with ForemanFogProxmox. If not, see <http://www.gnu.org/licenses/>. %>
<% if @host.compute_resource.class == ForemanFogProxmox::Proxmox %>
<% compute_attributes = f.options[:parent_builder].object.compute_attributes %>
<% vm_type = compute_attributes ? compute_attributes['type'] : f.object.type %>

<%= f.fields_for 'compute_attributes', OpenStruct.new(f.object.compute_attributes) do |f| %>
<%= render provider_partial(@host.compute_resource, 'network'), :f => f, :vm_type => vm_type, :disabled => f.object.persisted?, :compute_resource => @host.compute_resource, :new_host => new_vm, :new_vm => new_vm %>
<% end %>
<% else %>
<%= f.fields_for 'compute_attributes', OpenStruct.new(f.object.compute_attributes) do |f| %>
<%= render provider_partial(@host.compute_resource, 'network'), :f => f, :disabled => f.object.persisted?, :compute_resource => @host.compute_resource, :new_host => new_vm, :new_vm => new_vm %>
<% end %>
<% end %>

Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with ForemanFogProxmox. If not, see <http://www.gnu.org/licenses/>. %>

<% if compute_resource.class == ForemanFogProxmox::Proxmox %>
<% type = f.object.type %>
<% server = type == 'qemu' %>
<% container = type == 'lxc' %>
Expand Down Expand Up @@ -52,5 +52,19 @@ along with ForemanFogProxmox. If not, see <http://www.gnu.org/licenses/>. %>

<%= add_child_link_typed '+ ' + _("Add Volume"), :volumes, 'server', { :class => "info #{'hide' unless server}", :title => _('add new storage volume') } %>
<%= add_child_link_typed '+ ' + _("Add Volume"), :volumes, 'container', { :class => "info #{'hide' unless container}", :title => _('add new storage volume') } %>
<% else %>
<%= new_child_fields_template(f, :volumes, {
:object => volume,
:partial => provider_partial(compute_resource, 'volume'),
:form_builder_attrs => { :compute_resource => compute_resource, :new_host => new_vm, :new_vm => new_vm, :remove_title => _('remove storage volume') },
:layout => "compute_resources_vms/form/#{item_layout}_layout" }) %>

<%= f.fields_for :volumes do |i| %>
<%= render :partial => provider_partial(compute_resource, 'volume'), :locals => { :f => i, :compute_resource => compute_resource, :new_host => new_vm, :new_vm => new_vm, :remove_title => _('remove storage volume') }, :layout => "compute_resources_vms/form/#{item_layout}_layout" %>
<% end %>

<% if new_vm %>
<%= add_child_link '+ ' + _("Add Volume"), :volumes, { :class => "info", :title => _('add new storage volume') } %>
<% end %>
<% end %>

Original file line number Diff line number Diff line change
Expand Up @@ -14,9 +14,14 @@ GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with ForemanFogProxmox. If not, see <http://www.gnu.org/licenses/>. %>

<% if compute_resource.class == ForemanFogProxmox::Proxmox %>
<% volume_rootfs = f.object.respond_to?(:rootfs?) && f.object.rootfs? %>

<% unless volume_rootfs %>
<%= remove_child_link('X', f, { :method => :'_delete', :title => local_assigns[:remove_title], :class => 'label label-danger' }) %>
<% end %>
<% else %>
<% if new_vm %>
<%= remove_child_link('X', f, { :method => :'_delete', :title => local_assigns[:remove_title], :class => 'label label-danger' }) %>
<% end %>
<% end %>

0 comments on commit a7f536f

Please sign in to comment.