Module: Cloud::Sh::Providers

Defined in:
lib/cloud/sh/providers/base.rb,
lib/cloud/sh/providers/digital_ocean.rb

Defined Under Namespace

Classes: Base, DigitalOcean

Class Method Summary collapse

Class Method Details

.add_provider(name, klass) ⇒ Object



10
11
12
# File 'lib/cloud/sh/providers/base.rb', line 10

def self.add_provider(name, klass)
  providers[name] = klass
end

.build(account) ⇒ Object

Raises:

  • (ArgumentError)


14
15
16
17
# File 'lib/cloud/sh/providers/base.rb', line 14

def self.build()
  return providers[.kind].new() if providers.key?(.kind)
  raise ArgumentError, "Don't know account kind #{.kind} for account #{.inspect}"
end

.providersObject



6
7
8
# File 'lib/cloud/sh/providers/base.rb', line 6

def self.providers
  @providers ||= {}
end