[core] cleanup dependencies

This commit is contained in:
geemus 2010-12-16 11:24:52 -08:00
parent 871f7bbfa6
commit d5a4b0180c
17 changed files with 91 additions and 64 deletions

View File

@ -1,66 +1,11 @@
require 'rubygems'
require 'base64'
require 'cgi'
require 'excon'
require 'formatador'
require 'time'
require 'named-parameters'
__DIR__ = File.dirname(__FILE__)
$LOAD_PATH.unshift __DIR__ unless
$LOAD_PATH.include?(__DIR__) ||
$LOAD_PATH.include?(File.expand_path(__DIR__))
require 'fog/core'
require File.join(File.dirname(__FILE__), 'fog', 'core')
module Fog
@mocking = false
unless const_defined?(:VERSION)
VERSION = '0.3.31'
end
module Mock
@delay = 1
def self.delay
@delay
end
def self.delay=(new_delay)
raise ArgumentError, "delay must be non-negative" unless new_delay >= 0
@delay = new_delay
end
def self.not_implemented
raise Fog::Errors::MockNotImplemented.new("Contributions welcome!")
end
end
def self.mock!
@mocking = true
end
def self.mocking?
!!@mocking
end
def self.wait_for(timeout=600, interval=1, &block)
duration = 0
start = Time.now
until yield || duration > timeout
sleep(interval)
duration = Time.now - start
end
if duration > timeout
false
else
{ :duration => duration }
end
end
end
require 'fog/aws'
@ -75,4 +20,4 @@ require 'fog/rackspace'
require 'fog/slicehost'
require 'fog/terremark'
require 'fog/vcloud'
require 'fog/zerigo'
require 'fog/zerigo'

View File

@ -1,4 +1,4 @@
require 'nokogiri'
require File.join(File.dirname(__FILE__), 'core')
require 'fog/core/parser'
module Fog

View File

@ -1,3 +1,5 @@
require File.join(File.dirname(__FILE__), 'core')
module Fog
module Bluebox

View File

@ -1,3 +1,5 @@
require File.join(File.dirname(__FILE__), 'core')
module Fog
module Brightbox
extend Fog::Provider

View File

@ -1,3 +1,20 @@
__LIB_DIR__ = File.join(File.dirname(__FILE__), '..')
$LOAD_PATH.unshift __LIB_DIR__ unless
$LOAD_PATH.include?(__LIB_DIR__) ||
$LOAD_PATH.include?(File.expand_path(__LIB_DIR__))
# external core dependencies
require 'rubygems'
require 'base64'
require 'cgi'
require 'excon'
require 'formatador'
require 'nokogiri'
require 'time'
require 'named-parameters'
# internal core dependencies
require 'fog/core/attributes'
require 'fog/core/collection'
require 'fog/core/compute'
@ -7,8 +24,10 @@ require 'fog/core/deprecation'
require 'fog/core/errors'
require 'fog/core/hmac'
require 'fog/core/model'
require 'fog/core/mock'
# require 'fog/core/parser'
require 'fog/core/provider'
require 'fog/core/service'
require 'fog/core/ssh'
require 'fog/core/storage'
require 'fog/core/wait_for'

34
lib/fog/core/mock.rb Normal file
View File

@ -0,0 +1,34 @@
module Fog
@mocking = false
def self.mock!
@mocking = true
end
def self.mock?
@mocking
end
def self.mocking?
@mocking
end
module Mock
@delay = 1
def self.delay
@delay
end
def self.delay=(new_delay)
raise ArgumentError, "delay must be non-negative" unless new_delay >= 0
@delay = new_delay
end
def self.not_implemented
raise Fog::Errors::MockNotImplemented.new("Contributions welcome!")
end
end
end

17
lib/fog/core/wait_for.rb Normal file
View File

@ -0,0 +1,17 @@
module Fog
def self.wait_for(timeout=600, interval=1, &block)
duration = 0
start = Time.now
until yield || duration > timeout
sleep(interval)
duration = Time.now - start
end
if duration > timeout
false
else
{ :duration => duration }
end
end
end

View File

@ -1,3 +1,5 @@
require File.join(File.dirname(__FILE__), 'core')
module Fog
module GoGrid

View File

@ -1,4 +1,4 @@
require 'nokogiri'
require File.join(File.dirname(__FILE__), 'core')
require 'fog/core/parser'
module Fog

View File

@ -1,3 +1,5 @@
require File.join(File.dirname(__FILE__), 'core')
module Fog
module Linode

View File

@ -1,3 +1,5 @@
require File.join(File.dirname(__FILE__), 'core')
module Fog
module Local

View File

@ -1,4 +1,4 @@
require 'nokogiri'
require File.join(File.dirname(__FILE__), 'core')
require 'fog/core/parser'
module Fog

View File

@ -1,3 +1,5 @@
require File.join(File.dirname(__FILE__), 'core')
module Fog
module Rackspace

View File

@ -1,4 +1,4 @@
require 'nokogiri'
require File.join(File.dirname(__FILE__), 'core')
require 'fog/core/parser'
module Fog

View File

@ -1,4 +1,4 @@
require 'nokogiri'
require File.join(File.dirname(__FILE__), 'core')
require 'fog/core/parser'
require 'fog/terremark/shared'

View File

@ -1,4 +1,4 @@
require 'nokogiri'
require File.join(File.dirname(__FILE__), 'core')
require 'fog/core/parser'
require 'builder'

View File

@ -1,4 +1,4 @@
require 'nokogiri'
require File.join(File.dirname(__FILE__), 'core')
require 'fog/core/parser'
module Fog