Sha256: 621d7eb5831261edcbe32ca3feb08dc5e4a12ee218583aed0c95d0859164ae7b

Contents?: true

Size: 1.46 KB

Versions: 15

Compression:

Stored size: 1.46 KB

Contents

require 'fog/storm_on_demand/core'
require "fog/storm_on_demand/shared"

module Fog
  module Storage
    class StormOnDemand < Fog::Service
      API_URL = 'https://api.stormondemand.com'
      API_VERSION = 'v1'

      requires :storm_on_demand_username, :storm_on_demand_password
      recognizes :storm_on_demand_auth_url

      model_path 'fog/storm_on_demand/models/storage'
      model       :cluster
      collection  :clusters
      model       :volume
      collection  :volumes

      request_path 'fog/storm_on_demand/requests/storage'
      request :list_clusters
      request :attach_volume_to_server
      request :create_volume
      request :delete_volume
      request :detach_volume_from_server
      request :get_volume
      request :list_volumes
      request :resize_volume
      request :update_volume

      class Mock
        def self.data
          @data ||= Hash.new
        end

        def self.reset
          @data = nil
        end

        def self.reset_data(keys=data.keys)
          for key in [*keys]
            data.delete(key)
          end
        end

        def initialize(options={})
          @storm_on_demand_username = options[:storm_on_demand_username]
        end

        def data
          self.class.data[@storm_on_demand_username]
        end

        def reset_data
          self.class.data.delete(@storm_on_demand_username)
        end
      end

      class Real
        include Fog::StormOnDemand::RealShared
      end
    end
  end
end

Version data entries

15 entries across 15 versions & 4 rubygems

Version Path
vagrant-cloudstack-1.1.0 vendor/bundle/gems/fog-1.22.1/lib/fog/storm_on_demand/storage.rb
fog-1.25.0 lib/fog/storm_on_demand/storage.rb
nsidc-fog-1.24.1 lib/fog/storm_on_demand/storage.rb
fog-1.24.0 lib/fog/storm_on_demand/storage.rb
ns-fog-1.22.11 lib/fog/storm_on_demand/storage.rb
ns-fog-1.22.10 lib/fog/storm_on_demand/storage.rb
ns-fog-1.22.9 lib/fog/storm_on_demand/storage.rb
ns-fog-1.22.8 lib/fog/storm_on_demand/storage.rb
ns-fog-1.22.7 lib/fog/storm_on_demand/storage.rb
ns-fog-1.22.6 lib/fog/storm_on_demand/storage.rb
fog-1.23.0 lib/fog/storm_on_demand/storage.rb
ns-fog-1.22.4 lib/fog/storm_on_demand/storage.rb
ns-fog-1.22.3 lib/fog/storm_on_demand/storage.rb
ns-fog-1.22.2 lib/fog/storm_on_demand/storage.rb
fog-1.22.1 lib/fog/storm_on_demand/storage.rb