skeme 0.0.3 → 0.0.4

Sign up to get free protection for your applications and to get access to all the features.
data/Gemfile CHANGED
@@ -3,7 +3,7 @@ source "http://rubygems.org"
3
3
  # Example:
4
4
  # gem "activesupport", ">= 2.3.5"
5
5
 
6
- gem "right_aws", "= 2.0.0"
6
+ gem "fog", "~> 0.8.2"
7
7
  gem "rest_connection", ">= 0.0.21"
8
8
 
9
9
  # Add dependencies to develop your gem here.
data/VERSION CHANGED
@@ -1 +1 @@
1
- 0.0.3
1
+ 0.0.4
@@ -11,18 +11,19 @@
11
11
  # See the License for the specific language governing permissions and
12
12
  # limitations under the License.
13
13
 
14
- require 'right_aws'
14
+ require 'fog'
15
15
 
16
16
  module Skeme
17
17
  module CloudProviders
18
18
  class Aws
19
- attr_accessor :logger, :ec2
19
+ @@logger = nil
20
+ @@fog_aws_compute = nil
20
21
 
21
22
  def initialize(options={})
22
- @logger = options[:logger]
23
+ @@logger = options[:logger]
23
24
  if options[:aws_access_key_id] && options[:aws_secret_access_key]
24
- @logger.info("AWS credentials supplied. EC2 Tagging Enabled.")
25
- @ec2 = Rightscale::Ec2.new(options[:aws_access_key_id], options[:aws_secret_access_key], {:logger => options[:logger]})
25
+ @@logger.info("AWS credentials supplied. EC2 Tagging Enabled.")
26
+ @@fog_aws_compute = Fog::Compute.new({:aws_access_key_id => options[:aws_access_key_id], :aws_secret_access_key => options[:aws_secret_access_key], :provider => 'AWS'})
26
27
  end
27
28
  end
28
29
 
@@ -37,7 +38,7 @@ module Skeme
37
38
  private
38
39
 
39
40
  def tag(params={})
40
- if @ec2
41
+ if @@fog_aws_compute
41
42
  tag = params[:ec2_tag] || params[:tag]
42
43
  setting = params[:action] == "set"
43
44
 
@@ -46,11 +47,11 @@ module Skeme
46
47
  supplied_id_type.each do |resource_id_key|
47
48
  resource_id = params[resource_id_key]
48
49
  if setting
49
- @logger.info("Tagging AWS resource id (#{resource_id}) with (#{tag})")
50
- @ec2.create_tags(resource_id, [tag])
50
+ @@logger.info("Tagging AWS resource id (#{resource_id}) with (#{tag})")
51
+ @@fog_aws_compute.create_tags(resource_id, {tag => nil})
51
52
  else
52
- @logger.info("Removing tag (#{tag}) from AWS resource id (#{resource_id})")
53
- @ec2.delete_tags(resource_id, [tag])
53
+ @@logger.info("Removing tag (#{tag}) from AWS resource id (#{resource_id})")
54
+ @@fog_aws_compute.delete_tags(resource_id, {tag => nil})
54
55
  end
55
56
 
56
57
  end
data/lib/skeme.rb CHANGED
@@ -11,7 +11,6 @@
11
11
  # See the License for the specific language governing permissions and
12
12
  # limitations under the License.
13
13
 
14
- require 'rubygems'
15
14
  require 'cloud_providers/aws.rb'
16
15
  require 'managers/rightscale.rb'
17
16
 
data/skeme.gemspec CHANGED
@@ -5,11 +5,11 @@
5
5
 
6
6
  Gem::Specification.new do |s|
7
7
  s.name = %q{skeme}
8
- s.version = "0.0.3"
8
+ s.version = "0.0.4"
9
9
 
10
10
  s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
11
11
  s.authors = ["Ryan J. Geyer"]
12
- s.date = %q{2011-05-26}
12
+ s.date = %q{2011-05-27}
13
13
  s.description = %q{= skeme
14
14
 
15
15
  Skeme is a library for tagging objects (server instances, storage volumes, etc). It is intended to allow tagging of the same resource in multiple systems simultaneously.
@@ -57,7 +57,7 @@ further details.
57
57
  s.homepage = %q{http://github.com/rgeyer/skeme}
58
58
  s.licenses = ["Apache2"]
59
59
  s.require_paths = ["lib"]
60
- s.rubygems_version = %q{1.5.2}
60
+ s.rubygems_version = %q{1.6.2}
61
61
  s.summary = %q{A cloud management tagging library}
62
62
  s.test_files = [
63
63
  "test/helper.rb",
@@ -68,14 +68,14 @@ further details.
68
68
  s.specification_version = 3
69
69
 
70
70
  if Gem::Version.new(Gem::VERSION) >= Gem::Version.new('1.2.0') then
71
- s.add_runtime_dependency(%q<right_aws>, ["= 2.0.0"])
71
+ s.add_runtime_dependency(%q<fog>, ["~> 0.8.2"])
72
72
  s.add_runtime_dependency(%q<rest_connection>, [">= 0.0.21"])
73
73
  s.add_development_dependency(%q<shoulda>, [">= 0"])
74
74
  s.add_development_dependency(%q<bundler>, ["~> 1.0.0"])
75
75
  s.add_development_dependency(%q<jeweler>, ["~> 1.5.2"])
76
76
  s.add_development_dependency(%q<rcov>, [">= 0"])
77
77
  else
78
- s.add_dependency(%q<right_aws>, ["= 2.0.0"])
78
+ s.add_dependency(%q<fog>, ["~> 0.8.2"])
79
79
  s.add_dependency(%q<rest_connection>, [">= 0.0.21"])
80
80
  s.add_dependency(%q<shoulda>, [">= 0"])
81
81
  s.add_dependency(%q<bundler>, ["~> 1.0.0"])
@@ -83,7 +83,7 @@ further details.
83
83
  s.add_dependency(%q<rcov>, [">= 0"])
84
84
  end
85
85
  else
86
- s.add_dependency(%q<right_aws>, ["= 2.0.0"])
86
+ s.add_dependency(%q<fog>, ["~> 0.8.2"])
87
87
  s.add_dependency(%q<rest_connection>, [">= 0.0.21"])
88
88
  s.add_dependency(%q<shoulda>, [">= 0"])
89
89
  s.add_dependency(%q<bundler>, ["~> 1.0.0"])
metadata CHANGED
@@ -1,13 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: skeme
3
3
  version: !ruby/object:Gem::Version
4
- hash: 25
4
+ hash: 23
5
5
  prerelease:
6
6
  segments:
7
7
  - 0
8
8
  - 0
9
- - 3
10
- version: 0.0.3
9
+ - 4
10
+ version: 0.0.4
11
11
  platform: ruby
12
12
  authors:
13
13
  - Ryan J. Geyer
@@ -15,7 +15,7 @@ autorequire:
15
15
  bindir: bin
16
16
  cert_chain: []
17
17
 
18
- date: 2011-05-26 00:00:00 -07:00
18
+ date: 2011-05-27 00:00:00 -07:00
19
19
  default_executable:
20
20
  dependencies:
21
21
  - !ruby/object:Gem::Dependency
@@ -24,15 +24,15 @@ dependencies:
24
24
  requirement: &id001 !ruby/object:Gem::Requirement
25
25
  none: false
26
26
  requirements:
27
- - - "="
27
+ - - ~>
28
28
  - !ruby/object:Gem::Version
29
- hash: 15
29
+ hash: 59
30
30
  segments:
31
- - 2
32
31
  - 0
33
- - 0
34
- version: 2.0.0
35
- name: right_aws
32
+ - 8
33
+ - 2
34
+ version: 0.8.2
35
+ name: fog
36
36
  version_requirements: *id001
37
37
  - !ruby/object:Gem::Dependency
38
38
  prerelease: false
@@ -186,7 +186,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
186
186
  requirements: []
187
187
 
188
188
  rubyforge_project:
189
- rubygems_version: 1.5.2
189
+ rubygems_version: 1.6.2
190
190
  signing_key:
191
191
  specification_version: 3
192
192
  summary: A cloud management tagging library