Sha256: 438f12b43f069d8f54d07260f15c227c3978406b3e49a7115a2f241c2bfaa6dc

Contents?: true

Size: 791 Bytes

Versions: 13

Compression:

Stored size: 791 Bytes

Contents

class TestLab

  # Provider Error Class
  class ProviderError < TestLabError; end

  # Provider Class
  #
  # @author Zachary Patten <zachary AT jovelabs DOT com>
  class Provider
    PROXY_METHODS = %w(instance_id state user identity ip port create destroy up down reload status alive? dead? exists?).map(&:to_sym)

    autoload :AWS,       'testlab/providers/aws'
    autoload :BareMetal, 'testlab/providers/bare_metal'
    autoload :Local,     'testlab/providers/local'
    autoload :OpenStack, 'testlab/providers/open_stack'
    autoload :Vagrant,   'testlab/providers/vagrant'

    class << self

      # Returns the path to the gems provider templates
      def template_dir
        File.join(TestLab.gem_dir, "lib", "testlab", "providers", "templates")
      end

    end

  end

end

Version data entries

13 entries across 13 versions & 1 rubygems

Version Path
testlab-1.15.1 lib/testlab/provider.rb
testlab-1.15.0 lib/testlab/provider.rb
testlab-1.14.0 lib/testlab/provider.rb
testlab-1.13.0 lib/testlab/provider.rb
testlab-1.12.0 lib/testlab/provider.rb
testlab-1.11.7 lib/testlab/provider.rb
testlab-1.11.6 lib/testlab/provider.rb
testlab-1.11.5 lib/testlab/provider.rb
testlab-1.11.4 lib/testlab/provider.rb
testlab-1.11.3 lib/testlab/provider.rb
testlab-1.11.2 lib/testlab/provider.rb
testlab-1.11.1 lib/testlab/provider.rb
testlab-1.11.0 lib/testlab/provider.rb