Module: ForemanFogProxmox::ProxmoxEfidisks

Includes:
ProxmoxVMHelper
Included in:
ProxmoxVMCommands
Defined in:
app/models/foreman_fog_proxmox/proxmox_efidisks.rb

Instance Method Summary collapse

Methods included from ProxmoxVMHelper

#parse_typed_vm, #parse_vm_update_attributes, #update_boot_order, #vm_collection

Methods included from ProxmoxVMEfidiskHelper

#efidisk_defaults, #normalize_pre_enrolled_keys, #parse_typed_efidisk, #parsed_typed_efidisk, #process_firmware_attributes, #process_secure_boot_efidisk, #secure_boot_efidisk_attributes

Methods included from ProxmoxVMOsTemplateHelper

#ostemplate_keys, #parse_container_ostemplate, #parse_ostemplate, #parse_ostemplate_without_keys

Methods included from ProxmoxVMConfigHelper

#args_a, #config_a, #config_general_or_ostemplate_key?, #config_options, #config_typed_keys, #general_a, #object_to_config_hash, #parse_typed_cpu, #parse_typed_memory, #parsed_typed_config

Methods included from ProxmoxVMImageTemplateHelper

#hard_disk_slot, #validate_image_template_disk_slots!

Methods included from ProxmoxVMVolumesHelper

#add_disk_options, #add_typed_volume, #parse_hard_disk_volume, #parse_typed_volume, #parse_typed_volumes, #parsed_typed_volumes, #remove_volume_keys, #rootfs_volume?, #set_disk_attributes, #validate_cdrom_image_permission!, #volume_type?

Methods included from ProxmoxVMCloudinitHelper

#attach_cloudinit_iso, #check_template_format, #create_cloudinit_iso, #create_temp_directory, #default_iso_path, #delete_temp_dir, #generate_iso_command, #parse_cloudinit_config, #parse_server_cloudinit, #vm_ssh

Methods included from ProxmoxVMCdromHelper

#parse_server_cdrom

Methods included from ProxmoxVMInterfacesHelper

#add_or_delete_typed_interface, #compute_dhcps, #interface_common_typed_keys, #interface_compute_attributes_required_typed_keys, #interface_compute_attributes_typed_keys, #parse_typed_interfaces, #parsed_typed_interfaces, #sync_dhcp_for_ip

Instance Method Details

#delete_efidisk(vm_obj) ⇒ Object



24
25
26
27
# File 'app/models/foreman_fog_proxmox/proxmox_efidisks.rb', line 24

def delete_efidisk(vm_obj)
  logger.info("vm #{vm_obj.identity} delete efidisk0")
  vm_obj.detach('efidisk0')
end

#process_efidisk_removal(vm_obj, attributes) ⇒ Object



29
30
31
32
33
34
35
# File 'app/models/foreman_fog_proxmox/proxmox_efidisks.rb', line 29

def process_efidisk_removal(vm_obj, attributes)
  return if vm_obj.config.efidisk.blank?
  return if attributes['efidisk_attributes'].present?

  logger.debug("Removing efidisk from VM #{vm_obj}")
  delete_efidisk(vm_obj)
end