fog_tracker 0.2.1 → 0.2.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/README.md +2 -2
- data/lib/fog_tracker/account_tracker.rb +9 -3
- data/lib/fog_tracker/version.rb +1 -1
- data/spec/lib/fog_tracker/account_tracker_spec.rb +26 -5
- metadata +18 -18
data/README.md
CHANGED
@@ -65,8 +65,8 @@ How is it [done]? (Usage)
|
|
65
65
|
# get all Amazon EC2 Resources, of all types, across all accounts
|
66
66
|
tracker["*::Compute::AWS::*"] # the [] operator is the same as query()
|
67
67
|
|
68
|
-
# get all S3
|
69
|
-
tracker["my production account::Storage::AWS::
|
68
|
+
# get all S3 buckets in a given account
|
69
|
+
tracker["my production account::Storage::AWS::directories"]
|
70
70
|
|
71
71
|
----------------
|
72
72
|
*Usage Tips*
|
@@ -85,9 +85,15 @@ module FogTracker
|
|
85
85
|
|
86
86
|
# Returns a Fog::Connection object to this account's Fog service
|
87
87
|
def connection
|
88
|
-
|
89
|
-
|
90
|
-
|
88
|
+
if ::Fog::const_defined? @account[:service]
|
89
|
+
service_mod = ::Fog::const_get @account[:service]
|
90
|
+
provider_class = service_mod.send(:const_get, @account[:provider])
|
91
|
+
@fog_service ||= provider_class.new(@account[:credentials])
|
92
|
+
else
|
93
|
+
provider_mod = ::Fog::const_get @account[:provider]
|
94
|
+
service_class = provider_mod.send(:const_get, @account[:service])
|
95
|
+
@fog_service ||= service_class.new(@account[:credentials])
|
96
|
+
end
|
91
97
|
end
|
92
98
|
|
93
99
|
# Returns an Array of resource types (Strings) to track
|
data/lib/fog_tracker/version.rb
CHANGED
@@ -19,21 +19,42 @@ module FogTracker
|
|
19
19
|
end
|
20
20
|
|
21
21
|
it "exposes its Hash of account information" do
|
22
|
-
@tracker.
|
22
|
+
@tracker.account.should == FAKE_ACCOUNT
|
23
23
|
end
|
24
24
|
it "exposes the account name" do
|
25
25
|
@tracker.name.should == FAKE_ACCOUNT_NAME
|
26
26
|
end
|
27
|
-
it "exposes
|
28
|
-
@tracker.account.should == FAKE_ACCOUNT
|
29
|
-
end
|
30
|
-
it "exposes the connection to its logger" do
|
27
|
+
it "exposes its logger" do
|
31
28
|
@tracker.log.should_not == nil
|
32
29
|
end
|
33
30
|
it "always sets a polling time" do
|
34
31
|
@tracker.account[:polling_time].should be_an_instance_of(Fixnum)
|
35
32
|
end
|
36
33
|
|
34
|
+
describe '#connection' do
|
35
|
+
context "when the provider is AWS" do
|
36
|
+
context "when the service is Compute" do
|
37
|
+
tracker = AccountTracker.new("EC2 account", FAKE_ACCOUNT)
|
38
|
+
it "exposes the connection to its Fog service" do
|
39
|
+
tracker.connection.should_not == nil
|
40
|
+
end
|
41
|
+
end
|
42
|
+
context "when the service is RDS" do
|
43
|
+
tracker = AccountTracker.new("EC2 account", {
|
44
|
+
:provider => 'AWS',
|
45
|
+
:service => 'RDS',
|
46
|
+
:credentials => {
|
47
|
+
:aws_access_key_id => "fake user",
|
48
|
+
:aws_secret_access_key => 'fake password'
|
49
|
+
}
|
50
|
+
})
|
51
|
+
it "exposes the connection to its Fog service" do
|
52
|
+
tracker.connection.should_not == nil
|
53
|
+
end
|
54
|
+
end
|
55
|
+
end
|
56
|
+
end
|
57
|
+
|
37
58
|
describe '#update' do
|
38
59
|
it "sends update() to its CollectionTrackers" do
|
39
60
|
update_catcher = double "mock for catching CollectionTracker::update"
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: fog_tracker
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.2.
|
4
|
+
version: 0.2.2
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -9,11 +9,11 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date: 2012-02-
|
12
|
+
date: 2012-02-09 00:00:00.000000000Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: fog
|
16
|
-
requirement: &
|
16
|
+
requirement: &70268295001560 !ruby/object:Gem::Requirement
|
17
17
|
none: false
|
18
18
|
requirements:
|
19
19
|
- - ! '>='
|
@@ -21,10 +21,10 @@ dependencies:
|
|
21
21
|
version: '0'
|
22
22
|
type: :runtime
|
23
23
|
prerelease: false
|
24
|
-
version_requirements: *
|
24
|
+
version_requirements: *70268295001560
|
25
25
|
- !ruby/object:Gem::Dependency
|
26
26
|
name: rake
|
27
|
-
requirement: &
|
27
|
+
requirement: &70268295000400 !ruby/object:Gem::Requirement
|
28
28
|
none: false
|
29
29
|
requirements:
|
30
30
|
- - ! '>='
|
@@ -32,10 +32,10 @@ dependencies:
|
|
32
32
|
version: '0'
|
33
33
|
type: :development
|
34
34
|
prerelease: false
|
35
|
-
version_requirements: *
|
35
|
+
version_requirements: *70268295000400
|
36
36
|
- !ruby/object:Gem::Dependency
|
37
37
|
name: rspec
|
38
|
-
requirement: &
|
38
|
+
requirement: &70268294999500 !ruby/object:Gem::Requirement
|
39
39
|
none: false
|
40
40
|
requirements:
|
41
41
|
- - ! '>='
|
@@ -43,10 +43,10 @@ dependencies:
|
|
43
43
|
version: '0'
|
44
44
|
type: :development
|
45
45
|
prerelease: false
|
46
|
-
version_requirements: *
|
46
|
+
version_requirements: *70268294999500
|
47
47
|
- !ruby/object:Gem::Dependency
|
48
48
|
name: yard
|
49
|
-
requirement: &
|
49
|
+
requirement: &70268294998340 !ruby/object:Gem::Requirement
|
50
50
|
none: false
|
51
51
|
requirements:
|
52
52
|
- - ! '>='
|
@@ -54,10 +54,10 @@ dependencies:
|
|
54
54
|
version: '0'
|
55
55
|
type: :development
|
56
56
|
prerelease: false
|
57
|
-
version_requirements: *
|
57
|
+
version_requirements: *70268294998340
|
58
58
|
- !ruby/object:Gem::Dependency
|
59
59
|
name: guard
|
60
|
-
requirement: &
|
60
|
+
requirement: &70268294997600 !ruby/object:Gem::Requirement
|
61
61
|
none: false
|
62
62
|
requirements:
|
63
63
|
- - ! '>='
|
@@ -65,10 +65,10 @@ dependencies:
|
|
65
65
|
version: '0'
|
66
66
|
type: :development
|
67
67
|
prerelease: false
|
68
|
-
version_requirements: *
|
68
|
+
version_requirements: *70268294997600
|
69
69
|
- !ruby/object:Gem::Dependency
|
70
70
|
name: guard-rspec
|
71
|
-
requirement: &
|
71
|
+
requirement: &70268294996740 !ruby/object:Gem::Requirement
|
72
72
|
none: false
|
73
73
|
requirements:
|
74
74
|
- - ! '>='
|
@@ -76,10 +76,10 @@ dependencies:
|
|
76
76
|
version: '0'
|
77
77
|
type: :development
|
78
78
|
prerelease: false
|
79
|
-
version_requirements: *
|
79
|
+
version_requirements: *70268294996740
|
80
80
|
- !ruby/object:Gem::Dependency
|
81
81
|
name: ruby_gntp
|
82
|
-
requirement: &
|
82
|
+
requirement: &70268294995920 !ruby/object:Gem::Requirement
|
83
83
|
none: false
|
84
84
|
requirements:
|
85
85
|
- - ! '>='
|
@@ -87,7 +87,7 @@ dependencies:
|
|
87
87
|
version: '0'
|
88
88
|
type: :development
|
89
89
|
prerelease: false
|
90
|
-
version_requirements: *
|
90
|
+
version_requirements: *70268294995920
|
91
91
|
description: This gem peridically polls mutiple cloud computing services using the
|
92
92
|
fog gem, asynchronously updating the state of the resulting collections of Fog Resources.
|
93
93
|
email:
|
@@ -138,7 +138,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
138
138
|
version: '0'
|
139
139
|
segments:
|
140
140
|
- 0
|
141
|
-
hash: -
|
141
|
+
hash: -2942181140589294968
|
142
142
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
143
143
|
none: false
|
144
144
|
requirements:
|
@@ -147,7 +147,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
147
147
|
version: '0'
|
148
148
|
segments:
|
149
149
|
- 0
|
150
|
-
hash: -
|
150
|
+
hash: -2942181140589294968
|
151
151
|
requirements: []
|
152
152
|
rubyforge_project: fog_tracker
|
153
153
|
rubygems_version: 1.8.10
|