Class: HammerCLIForeman::ComputeResources::VMware
- Defined in:
- lib/hammer_cli_foreman/compute_resource/vmware.rb
Constant Summary collapse
- INTERFACE_TYPES =
%w[VirtualVmxnet3 VirtualE1000]
Instance Method Summary collapse
- #compute_attributes ⇒ Object
- #host_attributes ⇒ Object
- #interface_attributes ⇒ Object
- #mandatory_resource_options ⇒ Object
- #name ⇒ Object
- #provider_specific_fields ⇒ Object
- #provider_vm_specific_fields ⇒ Object
- #volume_attributes ⇒ Object
Methods inherited from Base
Instance Method Details
#compute_attributes ⇒ Object
10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 |
# File 'lib/hammer_cli_foreman/compute_resource/vmware.rb', line 10 def compute_attributes [ ['cluster', _('Cluster ID from VMware'), { bold: true }], ['corespersocket', _('Number of cores per socket (applicable to hardware versions < 10 only)'), { bold: true }], ['cpus', _('CPU count'), { bold: true }], ['memory_mb', _('Integer number, amount of memory in MB'), { bold: true }], ['path', _('Path to folder'), { bold: true }], ['resource_pool', _('Resource Pool ID from VMware'), { bold: true }], ['firmware', 'automatic/bios/efi'], ['guest_id', _('Guest OS ID form VMware')], ['hardware_version', _('Hardware version ID from VMware')], ['memoryHotAddEnabled', _('Must be a 1 or 0, lets you add memory resources while the machine is on')], ['cpuHotAddEnabled', _('Must be a 1 or 0, lets you add CPU resources while the machine is on')], ['add_cdrom', _('Must be a 1 or 0, Add a CD-ROM drive to the virtual machine')], ['annotation', _('Annotation Notes')], ['scsi_controllers', [_('List with SCSI controllers definitions'), ' type - ' + _('ID of the controller type from VMware'), ' key - ' + _('Key of the controller (e.g. 1000)')].flatten(1).join("\n")], ['nvme_controllers', [_('List with NVME controllers definitions'), ' type - ' + _('ID of the controller type from VMware'), ' key - ' + _('Key of the controller (e.g. 2000)')].flatten(1).join("\n")], ['boot_order', _('Device names to specify the boot order')] ] end |
#host_attributes ⇒ Object
36 37 38 39 40 |
# File 'lib/hammer_cli_foreman/compute_resource/vmware.rb', line 36 def host_attributes [ ['start', _('Must be a 1 or 0, whether to start the machine or not')] ] end |
#interface_attributes ⇒ Object
55 56 57 58 59 60 61 62 63 64 65 |
# File 'lib/hammer_cli_foreman/compute_resource/vmware.rb', line 55 def interface_attributes [ ['compute_type', [ _('Type of the network adapter, for example one of:'), INTERFACE_TYPES.map { |it| ' ' + it }, _('See documentation center for your version of vSphere to find more details about available adapter types:'), ' https://www.vmware.com/support/pubs/' ].flatten(1).join("\n")], ['compute_network', _('Network ID or Network Name from VMware')] ] end |
#mandatory_resource_options ⇒ Object
91 92 93 |
# File 'lib/hammer_cli_foreman/compute_resource/vmware.rb', line 91 def super + %i[user password datacenter server] end |
#name ⇒ Object
6 7 8 |
# File 'lib/hammer_cli_foreman/compute_resource/vmware.rb', line 6 def name 'VMware' end |
#provider_specific_fields ⇒ Object
67 68 69 70 71 72 73 74 |
# File 'lib/hammer_cli_foreman/compute_resource/vmware.rb', line 67 def provider_specific_fields super + [ Fields::Field.new(label: _('Datacenter'), path: [:datacenter]), Fields::Field.new(label: _('Server'), path: [:server]), Fields::Boolean.new(label: _('Console password set'), path: [:set_console_password]), Fields::Boolean.new(label: _('Caching enabled'), path: [:caching_enabled]) ] end |
#provider_vm_specific_fields ⇒ Object
76 77 78 79 80 81 82 83 84 85 86 87 88 89 |
# File 'lib/hammer_cli_foreman/compute_resource/vmware.rb', line 76 def provider_vm_specific_fields [ Fields::Field.new(label: _('CPUs'), path: [:cpus]), Fields::Field.new(label: _('Memory'), path: [:memory_mb]), Fields::Field.new(label: _('Power Status'), path: [:power_state]), Fields::Field.new(label: _('Host Name'), path: [:hostname]), Fields::Field.new(label: _('Connection Status'), path: [:connection_status]), Fields::Field.new(label: _('Hardware Version'), path: [:hardware_version]), Fields::Field.new(label: _('Path'), path: [:path]), Fields::Field.new(label: _('Operating System'), path: [:operatingsystem]), Fields::Field.new(label: _('Mac'), path: [:mac]), Fields::List.new(label: _('Boot order'), path: [:boot_order]) ] end |
#volume_attributes ⇒ Object
42 43 44 45 46 47 48 49 50 51 52 53 |
# File 'lib/hammer_cli_foreman/compute_resource/vmware.rb', line 42 def volume_attributes [ ['name'], ['storage_pod', _('Storage Pod ID from VMware')], ['datastore', _('Datastore ID from VMware')], ['mode', 'persistent/independent_persistent/independent_nonpersistent'], ['size_gb', _('Integer number, volume size in GB')], ['thin', 'true/false'], ['eager_zero', 'true/false'], ['controller_key', 'Associated controller key'] ] end |