module Souffle::Provider

A metal provider module (Describes AWS, Softlayer, etc).

Public Class Methods

plugin(name) click to toggle source

Returns the plugin with the given name.

@param [ String ] name The name of the plugin to select.

@return [ Souffle::Provider::Base ] The plugin with the given name.

# File lib/souffle/provider.rb, line 19
def plugin(name)
  plug = constants.select { |k| k.to_s.downcase == name.downcase }.first
  Souffle::Provider.const_get(plug)
rescue Souffle::Exceptions::PluginDoesNotExist => e
  Souffle::Log.error "#{e.message}:\n#{e.backtrace.join("\n")}"
end
plugins() click to toggle source

Returns the list of available provider plugins.

@return [ Array ] The list of available provider plugins.

# File lib/souffle/provider.rb, line 10
def plugins
  constants.map { |k| k.to_s.downcase }
end