Method: Deltacloud::Drivers::Openstack::OpenstackDriver#hardware_profiles

Defined in:
lib/deltacloud/drivers/openstack/openstack_driver.rb

#hardware_profiles(credentials, opts = {}) ⇒ Object



54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
# File 'lib/deltacloud/drivers/openstack/openstack_driver.rb', line 54

def hardware_profiles(credentials, opts = {})
  os = new_client(credentials)
  results = []
  safely do
    if opts[:id]
      begin
        flavor = os.flavor(opts[:id])
        results << convert_from_flavor(flavor)
      rescue => e
        raise e unless e.message =~ /The resource could not be found/
        results = []
      end
    else
      results = os.flavors.collect do |f|
        convert_from_flavor(f)
      end
    end
    filter_hardware_profiles(results, opts)
  end
end