Class: HammerCLIForeman::ComputeAttribute::Create

Inherits:
HammerCLIForeman::CreateCommand show all
Defined in:
lib/hammer_cli_foreman/compute_attribute.rb

Instance Method Summary collapse

Methods inherited from HammerCLIForeman::CreateCommand

command_name

Methods inherited from HammerCLIForeman::Command

build_options, connection_name, create_option_builder, #customized_options, #dependency_resolver, dependency_resolver, #exception_handler_class, #get_identifier, #get_resource_id, #get_resource_ids, #option_sources, #resolver, resolver, resource_config, resource_name_mapping, #searchables, searchables, #send_request, #transform_format

Instance Method Details

#request_paramsObject



43
44
45
46
47
48
49
50
51
# File 'lib/hammer_cli_foreman/compute_attribute.rb', line 43

def request_params
  params = super
  compute_resource_name = HammerCLIForeman.record_to_common_format(HammerCLIForeman.foreman_resource(:compute_resources).call(:show, 'id' => options["option_compute_resource_id"] ))["provider_friendly_name"].downcase
  interfaces_attr_name = ::HammerCLIForeman.compute_resources[compute_resource_name].interfaces_attrs_name
  params['compute_attribute']['vm_attrs'] = option_compute_attributes || {}
  params['compute_attribute']['vm_attrs'][interfaces_attr_name]= HammerCLIForeman::ComputeAttribute.attribute_hash(option_interface_list) unless option_interface_list.empty?
  params['compute_attribute']['vm_attrs']['volumes_attributes'] = HammerCLIForeman::ComputeAttribute.attribute_hash(option_volume_list) unless option_volume_list.empty?
  params
end