redaranj-right_aws 1.10.5 → 1.11

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.
@@ -39,6 +39,12 @@ require 'awsbase/benchmark_fix'
39
39
  require 'awsbase/support'
40
40
  require 'awsbase/right_awsbase'
41
41
  require 'ec2/right_ec2'
42
+ require 'ec2/right_ec2_images'
43
+ require 'ec2/right_ec2_instances'
44
+ require 'ec2/right_ec2_ebs'
45
+ require 'ec2/right_ec2_reserved_instances'
46
+ require 'ec2/right_ec2_vpc'
47
+ require 'ec2/right_ec2_monitoring'
42
48
  require 'elb/right_elb_interface'
43
49
  require 'acw/right_acw_interface'
44
50
  require 'as/right_as_interface'
@@ -50,13 +56,14 @@ require 'sqs/right_sqs_gen2_interface'
50
56
  require 'sqs/right_sqs_gen2'
51
57
  require 'sdb/right_sdb_interface'
52
58
  require 'acf/right_acf_interface'
59
+ require 'rds/right_rds_interface'
53
60
 
54
61
 
55
62
  module RightAws #:nodoc:
56
63
  module VERSION #:nodoc:
57
64
  MAJOR = 1
58
- MINOR = 10
59
- TINY = 99 #0
65
+ MINOR = 11
66
+ TINY = 0
60
67
 
61
68
  STRING = [MAJOR, MINOR, TINY].join('.')
62
69
  end
@@ -761,9 +761,9 @@ module RightAws
761
761
  @name = name
762
762
  @perms = perms.to_a
763
763
  case action
764
- when :apply: apply
765
- when :refresh: refresh
766
- when :apply_and_refresh: apply; refresh
764
+ when :apply then apply
765
+ when :refresh then refresh
766
+ when :apply_and_refresh then apply; refresh
767
767
  end
768
768
  end
769
769
 
@@ -775,9 +775,13 @@ module RightAws
775
775
  false
776
776
  end
777
777
 
778
- # Return Grantee type (+String+): "Group" or "CanonicalUser".
778
+ # Return Grantee type (+String+): "Group", "AmazonCustomerByEmail" or "CanonicalUser".
779
779
  def type
780
- @id[/^http:/] ? "Group" : "CanonicalUser"
780
+ case @id
781
+ when /^http:/ then "Group"
782
+ when /@/ then "AmazonCustomerByEmail"
783
+ else "CanonicalUser"
784
+ end
781
785
  end
782
786
 
783
787
  # Return a name or an id.
@@ -872,7 +876,11 @@ module RightAws
872
876
  end
873
877
 
874
878
  def to_xml # :nodoc:
875
- id_str = @id[/^http/] ? "<URI>#{@id}</URI>" : "<ID>#{@id}</ID>"
879
+ id_str = case @id
880
+ when /^http/ then "<URI>#{@id}</URI>"
881
+ when /@/ then "<EmailAddress>#{@id}</EmailAddress>"
882
+ else "<ID>#{@id}</ID>"
883
+ end
876
884
  grants = ''
877
885
  @perms.each do |perm|
878
886
  grants << "<Grant>" +
@@ -204,8 +204,14 @@ module RightAws
204
204
  #
205
205
  def create_bucket(bucket, headers={})
206
206
  data = nil
207
- unless headers[:location].blank?
208
- data = "<CreateBucketConfiguration><LocationConstraint>#{headers[:location].to_s.upcase}</LocationConstraint></CreateBucketConfiguration>"
207
+ location = case headers[:location].to_s
208
+ when 'us','US' then ''
209
+ when 'eu' then 'EU'
210
+ else headers[:location].to_s
211
+ end
212
+
213
+ unless location.blank?
214
+ data = "<CreateBucketConfiguration><LocationConstraint>#{location}</LocationConstraint></CreateBucketConfiguration>"
209
215
  end
210
216
  req_hash = generate_rest_request('PUT', headers.merge(:url=>bucket, :data => data))
211
217
  request_info(req_hash, RightHttp2xxParser.new)
@@ -988,11 +994,11 @@ module RightAws
988
994
  end
989
995
  def tagend(name)
990
996
  case name
991
- when 'ID' ; @owner[:owner_id] = @text
992
- when 'DisplayName' ; @owner[:owner_display_name] = @text
993
- when 'Name' ; @current_bucket[:name] = @text
994
- when 'CreationDate'; @current_bucket[:creation_date] = @text
995
- when 'Bucket' ; @result << @current_bucket.merge(@owner)
997
+ when 'ID' then @owner[:owner_id] = @text
998
+ when 'DisplayName' then @owner[:owner_display_name] = @text
999
+ when 'Name' then @current_bucket[:name] = @text
1000
+ when 'CreationDate'then @current_bucket[:creation_date] = @text
1001
+ when 'Bucket' then @result << @current_bucket.merge(@owner)
996
1002
  end
997
1003
  end
998
1004
  end
@@ -1009,21 +1015,23 @@ module RightAws
1009
1015
  def tagend(name)
1010
1016
  case name
1011
1017
  # service info
1012
- when 'Name' ; @service['name'] = @text
1013
- when 'Prefix' ; @service['prefix'] = @text
1014
- when 'Marker' ; @service['marker'] = @text
1015
- when 'MaxKeys' ; @service['max-keys'] = @text
1016
- when 'Delimiter' ; @service['delimiter'] = @text
1017
- when 'IsTruncated' ; @service['is_truncated'] = (@text =~ /false/ ? false : true)
1018
+ when 'Name' then @service['name'] = @text
1019
+ when 'Prefix' then @service['prefix'] = @text
1020
+ when 'Marker' then @service['marker'] = @text
1021
+ when 'MaxKeys' then @service['max-keys'] = @text
1022
+ when 'Delimiter' then @service['delimiter'] = @text
1023
+ when 'IsTruncated' then @service['is_truncated'] = (@text =~ /false/ ? false : true)
1018
1024
  # key data
1019
- when 'Key' ; @current_key[:key] = @text
1020
- when 'LastModified'; @current_key[:last_modified] = @text
1021
- when 'ETag' ; @current_key[:e_tag] = @text
1022
- when 'Size' ; @current_key[:size] = @text.to_i
1023
- when 'StorageClass'; @current_key[:storage_class] = @text
1024
- when 'ID' ; @current_key[:owner_id] = @text
1025
- when 'DisplayName' ; @current_key[:owner_display_name] = @text
1026
- when 'Contents' ; @current_key[:service] = @service; @result << @current_key
1025
+ when 'Key' then @current_key[:key] = @text
1026
+ when 'LastModified'then @current_key[:last_modified] = @text
1027
+ when 'ETag' then @current_key[:e_tag] = @text
1028
+ when 'Size' then @current_key[:size] = @text.to_i
1029
+ when 'StorageClass'then @current_key[:storage_class] = @text
1030
+ when 'ID' then @current_key[:owner_id] = @text
1031
+ when 'DisplayName' then @current_key[:owner_display_name] = @text
1032
+ when 'Contents'
1033
+ @current_key[:service] = @service
1034
+ @result << @current_key
1027
1035
  end
1028
1036
  end
1029
1037
  end
@@ -1045,27 +1053,29 @@ module RightAws
1045
1053
  def tagend(name)
1046
1054
  case name
1047
1055
  # service info
1048
- when 'Name' ; @result[:name] = @text
1056
+ when 'Name' then @result[:name] = @text
1049
1057
  # Amazon uses the same tag for the search prefix and for the entries
1050
1058
  # in common prefix...so use our simple flag to see which element
1051
1059
  # we are parsing
1052
- when 'Prefix' ; @in_common_prefixes ? @common_prefixes << @text : @result[:prefix] = @text
1053
- when 'Marker' ; @result[:marker] = @text
1054
- when 'MaxKeys' ; @result[:max_keys] = @text
1055
- when 'Delimiter' ; @result[:delimiter] = @text
1056
- when 'IsTruncated' ; @result[:is_truncated] = (@text =~ /false/ ? false : true)
1057
- when 'NextMarker' ; @result[:next_marker] = @text
1060
+ when 'Prefix' then @in_common_prefixes ? @common_prefixes << @text : @result[:prefix] = @text
1061
+ when 'Marker' then @result[:marker] = @text
1062
+ when 'MaxKeys' then @result[:max_keys] = @text
1063
+ when 'Delimiter' then @result[:delimiter] = @text
1064
+ when 'IsTruncated' then @result[:is_truncated] = (@text =~ /false/ ? false : true)
1065
+ when 'NextMarker' then @result[:next_marker] = @text
1058
1066
  # key data
1059
- when 'Key' ; @current_key[:key] = @text
1060
- when 'LastModified'; @current_key[:last_modified] = @text
1061
- when 'ETag' ; @current_key[:e_tag] = @text
1062
- when 'Size' ; @current_key[:size] = @text.to_i
1063
- when 'StorageClass'; @current_key[:storage_class] = @text
1064
- when 'ID' ; @current_key[:owner_id] = @text
1065
- when 'DisplayName' ; @current_key[:owner_display_name] = @text
1066
- when 'Contents' ; @result[:contents] << @current_key
1067
+ when 'Key' then @current_key[:key] = @text
1068
+ when 'LastModified'then @current_key[:last_modified] = @text
1069
+ when 'ETag' then @current_key[:e_tag] = @text
1070
+ when 'Size' then @current_key[:size] = @text.to_i
1071
+ when 'StorageClass'then @current_key[:storage_class] = @text
1072
+ when 'ID' then @current_key[:owner_id] = @text
1073
+ when 'DisplayName' then @current_key[:owner_display_name] = @text
1074
+ when 'Contents' then @result[:contents] << @current_key
1067
1075
  # Common Prefix stuff
1068
- when 'CommonPrefixes' ; @result[:common_prefixes] = @common_prefixes; @in_common_prefixes = false
1076
+ when 'CommonPrefixes'
1077
+ @result[:common_prefixes] = @common_prefixes
1078
+ @in_common_prefixes = false
1069
1079
  end
1070
1080
  end
1071
1081
  end
@@ -1140,8 +1150,8 @@ module RightAws
1140
1150
  end
1141
1151
  def tagend(name)
1142
1152
  case name
1143
- when 'LastModified' : @result[:last_modified] = @text
1144
- when 'ETag' : @result[:e_tag] = @text
1153
+ when 'LastModified' then @result[:last_modified] = @text
1154
+ when 'ETag' then @result[:e_tag] = @text
1145
1155
  end
1146
1156
  end
1147
1157
  end
@@ -364,7 +364,7 @@ module RightAws
364
364
  end
365
365
 
366
366
  def generate_id # :nodoc:
367
- UUID.timestamp_create().to_s
367
+ UUIDTools::UUID.timestamp_create().to_s
368
368
  end
369
369
 
370
370
  protected
@@ -927,4 +927,4 @@ module RightAws
927
927
  end
928
928
  end
929
929
  end
930
- end
930
+ end
@@ -127,7 +127,7 @@ module RightAws
127
127
  #
128
128
  service_params = signed_service_params(@aws_secret_access_key, service_hash, :post, @params[:server], service)
129
129
  request = Net::HTTP::Post.new(AwsUtils::URLencode(service))
130
- request['Content-Type'] = 'application/x-www-form-urlencoded'
130
+ request['Content-Type'] = 'application/x-www-form-urlencoded; charset=utf-8'
131
131
  request.body = service_params
132
132
  # prepare output hash
133
133
  { :request => request,
@@ -387,7 +387,9 @@ module RightAws
387
387
  # sqs.get_queue_length('https://queue.amazonaws.com/ZZ7XXXYYYBINS/my_awesome_queue') #=> 3
388
388
  #
389
389
  def get_queue_length(queue_url)
390
- get_queue_attributes(queue_url)['ApproximateNumberOfMessages'].to_i
390
+ attrs = get_queue_attributes(queue_url)
391
+ attrs['ApproximateNumberOfMessages'].to_i +
392
+ attrs['ApproximateNumberOfMessagesNotVisible'].to_i
391
393
  rescue
392
394
  on_exception
393
395
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: redaranj-right_aws
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.10.5
4
+ version: "1.11"
5
5
  platform: ruby
6
6
  authors:
7
7
  - RightScale, Inc.
@@ -10,7 +10,7 @@ autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
12
 
13
- date: 2009-04-06 00:00:00 -07:00
13
+ date: 2009-04-06 00:00:00 -04:00
14
14
  default_executable:
15
15
  dependencies:
16
16
  - !ruby/object:Gem::Dependency
@@ -73,6 +73,8 @@ files:
73
73
  - test/acf/test_right_acf.rb
74
74
  has_rdoc: true
75
75
  homepage:
76
+ licenses: []
77
+
76
78
  post_install_message:
77
79
  rdoc_options:
78
80
  - --main
@@ -94,7 +96,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
94
96
  requirements: []
95
97
 
96
98
  rubyforge_project: rightscale
97
- rubygems_version: 1.2.0
99
+ rubygems_version: 1.3.5
98
100
  signing_key:
99
101
  specification_version: 2
100
102
  summary: Interface classes for the Amazon EC2/EBS, SQS, S3, SDB, and ACF Web Services