aws 2.4.1 → 2.4.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.
@@ -405,7 +405,7 @@ module Aws
405
405
 
406
406
  def describe_availability_zones(options={})
407
407
  link = generate_request("DescribeAvailabilityZones", options={})
408
- request_info_xml_simple(:rds_connection, @params, link, @logger,
408
+ request_info_xml_simple(self.class.connection_name, @params, link, @logger,
409
409
  :group_tags =>{"DBInstances" =>"DBInstance",
410
410
  "DBParameterGroups"=>"DBParameterGroup",
411
411
  "DBSecurityGroups" =>"DBSecurityGroup",
@@ -14,11 +14,16 @@ module Aws
14
14
  DEFAULT_PROTOCOL = 'https'
15
15
  DEFAULT_PORT = 443
16
16
 
17
+ def self.connection_name
18
+ :elb_connection
19
+ end
20
+
21
+ @@bench = AwsBenchmarkingBlock.new
17
22
 
18
- @@bench = AwsBenchmarkingBlock.new
19
- def self.bench
23
+ def self.bench
20
24
  @@bench
21
25
  end
26
+
22
27
  def self.bench_xml
23
28
  @@bench.xml
24
29
  end
@@ -51,13 +56,13 @@ module Aws
51
56
  # Sends request to Amazon and parses the response
52
57
  # Raises AwsError if any banana happened
53
58
  def request_info(request, parser, options={})
54
- request_info2(request, parser, @params, :elb_connection, @logger, @@bench, options)
59
+ request_info2(request, parser, @params, self.class.connection_name, @logger, @@bench, options)
55
60
  end
56
61
 
57
62
  # todo: convert to xml-simple version and get rid of parser below
58
63
  def do_request(action, params, options={})
59
64
  link = generate_request(action, params)
60
- resp = request_info_xml_simple(:rds_connection, @params, link, @logger,
65
+ resp = request_info_xml_simple(self.class.connection_name, @params, link, @logger,
61
66
  :group_tags =>{"LoadBalancersDescriptions"=>"LoadBalancersDescription",
62
67
  "DBParameterGroups" =>"DBParameterGroup",
63
68
  "DBSecurityGroups" =>"DBSecurityGroup",
@@ -1,218 +1,222 @@
1
1
  module Aws
2
- require 'xmlsimple'
2
+ require 'xmlsimple'
3
3
 
4
- # API Reference: http://docs.amazonwebservices.com/AmazonRDS/latest/APIReference/
5
- class Rds < AwsBase
6
- include AwsBaseInterface
4
+ # API Reference: http://docs.amazonwebservices.com/AmazonRDS/latest/APIReference/
5
+ class Rds < AwsBase
6
+ include AwsBaseInterface
7
7
 
8
8
 
9
- # Amazon API version being used
10
- API_VERSION = nil
11
- DEFAULT_HOST = "rds.amazonaws.com"
12
- DEFAULT_PATH = '/'
13
- DEFAULT_PROTOCOL = 'https'
14
- DEFAULT_PORT = 443
9
+ # Amazon API version being used
10
+ API_VERSION = nil
11
+ DEFAULT_HOST = "rds.amazonaws.com"
12
+ DEFAULT_PATH = '/'
13
+ DEFAULT_PROTOCOL = 'https'
14
+ DEFAULT_PORT = 443
15
15
 
16
- @@api = ENV['RDS_API_VERSION'] || API_VERSION
16
+ @@api = ENV['RDS_API_VERSION'] || API_VERSION
17
17
 
18
18
 
19
- def self.api
20
- @@api
21
- end
19
+ def self.connection_name
20
+ :rds_connection
21
+ end
22
+
23
+ def self.api
24
+ @@api
25
+ end
26
+
22
27
 
28
+ @@bench = AwsBenchmarkingBlock.new
23
29
 
24
- @@bench = AwsBenchmarkingBlock.new
25
- def self.bench
30
+ def self.bench
26
31
  @@bench
27
32
  end
28
33
 
29
- def self.bench_xml
30
- @@bench.xml
31
- end
32
-
33
-
34
- def self.bench_ec2
35
- @@bench.service
36
- end
37
-
38
-
39
- def initialize(aws_access_key_id=nil, aws_secret_access_key=nil, params={})
40
- uri = ENV['RDS_URL'] ? URI.parse(ENV['RDS_URL']) : nil
41
- init({ :name => 'RDS',
42
- :default_host => uri ? uri.host : DEFAULT_HOST,
43
- :default_port => uri ? uri.port : DEFAULT_PORT,
44
- :default_service => uri ? uri.path : DEFAULT_PATH,
45
- :default_protocol => uri ? uri.scheme : DEFAULT_PROTOCOL,
46
- :api_version => API_VERSION },
47
- aws_access_key_id || ENV['AWS_ACCESS_KEY_ID'],
48
- aws_secret_access_key|| ENV['AWS_SECRET_ACCESS_KEY'],
49
- params)
50
- end
51
-
52
-
53
- def do_request(action, params, options={})
54
- link = generate_request(action, params)
55
- resp = request_info_xml_simple(:rds_connection, @params, link, @logger,
56
- :group_tags=>{"DBInstances"=>"DBInstance",
57
- "DBParameterGroups"=>"DBParameterGroup",
58
- "DBSecurityGroups"=>"DBSecurityGroup",
59
- "EC2SecurityGroups"=>"EC2SecurityGroup",
60
- "IPRanges"=>"IPRange"},
61
- :force_array=>["DBInstances",
62
- "DBParameterGroups",
63
- "DBSecurityGroups",
64
- "EC2SecurityGroups",
65
- "IPRanges"],
66
- :pull_out_array=>options[:pull_out_array],
67
- :pull_out_single=>options[:pull_out_single],
68
- :wrapper=>options[:wrapper])
69
- end
70
-
71
-
72
- #-----------------------------------------------------------------
73
- # REQUESTS
74
- #-----------------------------------------------------------------
75
-
76
- #
77
- # identifier: db instance identifier. Must be unique per account per zone.
78
- # instance_class: db.m1.small | db.m1.large | db.m1.xlarge | db.m2.2xlarge | db.m2.4xlarge
79
- # See this for other values: http://docs.amazonwebservices.com/AmazonRDS/latest/APIReference/
80
- #
81
- # options:
82
- # db_name: if you want a database created at the same time as the instance, specify :db_name option.
83
- # availability_zone: default is random zone.
84
- def create_db_instance(identifier, instance_class, allocated_storage, master_username, master_password, options={})
85
- params = {}
86
- params['DBInstanceIdentifier'] = identifier
87
- params['DBInstanceClass'] = instance_class
88
- params['AllocatedStorage'] = allocated_storage
89
- params['MasterUsername'] = master_username
90
- params['MasterUserPassword'] = master_password
91
-
92
- params['Engine'] = options[:engine] || "MySQL5.1"
93
- params['DBName'] = options[:db_name] if options[:db_name]
94
- params['AvailabilityZone'] = options[:availability_zone] if options[:availability_zone]
95
- params['PreferredMaintenanceWindow'] = options[:preferred_maintenance_window] if options[:preferred_maintenance_window]
96
- params['BackupRetentionPeriod'] = options[:preferred_retention_period] if options[:preferred_retention_period]
97
- params['PreferredBackupWindow'] = options[:preferred_backup_window] if options[:preferred_backup_window]
98
-
99
- @logger.info("Creating DB Instance called #{identifier}")
100
-
101
- link = do_request("CreateDBInstance", params, :pull_out_single=>[:create_db_instance_result, :db_instance])
102
-
103
- rescue Exception
104
- on_exception
105
- end
106
-
107
-
108
- # options:
109
- # DBInstanceIdentifier
110
- # MaxRecords
111
- # Marker
112
- #
113
- # Returns array of instances as hashes.
114
- # Response metadata can be retreived by calling array.response_metadata on the returned array.
115
- def describe_db_instances(options={})
116
- params = {}
117
- params['DBInstanceIdentifier'] = options[:db_instance_identifier] if options[:db_instance_identifier]
118
- params['MaxRecords'] = options[:max_records] if options[:max_records]
119
- params['Marker'] = options[:marker] if options[:marker]
34
+ def self.bench_xml
35
+ @@bench.xml
36
+ end
37
+
38
+
39
+ def self.bench_ec2
40
+ @@bench.service
41
+ end
42
+
43
+
44
+ def initialize(aws_access_key_id=nil, aws_secret_access_key=nil, params={})
45
+ uri = ENV['RDS_URL'] ? URI.parse(ENV['RDS_URL']) : nil
46
+ init({:name => 'RDS',
47
+ :default_host => uri ? uri.host : DEFAULT_HOST,
48
+ :default_port => uri ? uri.port : DEFAULT_PORT,
49
+ :default_service => uri ? uri.path : DEFAULT_PATH,
50
+ :default_protocol => uri ? uri.scheme : DEFAULT_PROTOCOL,
51
+ :api_version => API_VERSION},
52
+ aws_access_key_id || ENV['AWS_ACCESS_KEY_ID'],
53
+ aws_secret_access_key|| ENV['AWS_SECRET_ACCESS_KEY'],
54
+ params)
55
+ end
56
+
57
+
58
+ def do_request(action, params, options={})
59
+ link = generate_request(action, params)
60
+ resp = request_info_xml_simple(self.class.connection_name, @params, link, @logger,
61
+ :group_tags =>{"DBInstances" =>"DBInstance",
62
+ "DBParameterGroups"=>"DBParameterGroup",
63
+ "DBSecurityGroups" =>"DBSecurityGroup",
64
+ "EC2SecurityGroups"=>"EC2SecurityGroup",
65
+ "IPRanges" =>"IPRange"},
66
+ :force_array =>["DBInstances",
67
+ "DBParameterGroups",
68
+ "DBSecurityGroups",
69
+ "EC2SecurityGroups",
70
+ "IPRanges"],
71
+ :pull_out_array =>options[:pull_out_array],
72
+ :pull_out_single=>options[:pull_out_single],
73
+ :wrapper =>options[:wrapper])
74
+ end
75
+
76
+
77
+ #-----------------------------------------------------------------
78
+ # REQUESTS
79
+ #-----------------------------------------------------------------
80
+
81
+ #
82
+ # identifier: db instance identifier. Must be unique per account per zone.
83
+ # instance_class: db.m1.small | db.m1.large | db.m1.xlarge | db.m2.2xlarge | db.m2.4xlarge
84
+ # See this for other values: http://docs.amazonwebservices.com/AmazonRDS/latest/APIReference/
85
+ #
86
+ # options:
87
+ # db_name: if you want a database created at the same time as the instance, specify :db_name option.
88
+ # availability_zone: default is random zone.
89
+ def create_db_instance(identifier, instance_class, allocated_storage, master_username, master_password, options={})
90
+ params = {}
91
+ params['DBInstanceIdentifier'] = identifier
92
+ params['DBInstanceClass'] = instance_class
93
+ params['AllocatedStorage'] = allocated_storage
94
+ params['MasterUsername'] = master_username
95
+ params['MasterUserPassword'] = master_password
96
+
97
+ params['Engine'] = options[:engine] || "MySQL5.1"
98
+ params['DBName'] = options[:db_name] if options[:db_name]
99
+ params['AvailabilityZone'] = options[:availability_zone] if options[:availability_zone]
100
+ params['PreferredMaintenanceWindow'] = options[:preferred_maintenance_window] if options[:preferred_maintenance_window]
101
+ params['BackupRetentionPeriod'] = options[:preferred_retention_period] if options[:preferred_retention_period]
102
+ params['PreferredBackupWindow'] = options[:preferred_backup_window] if options[:preferred_backup_window]
103
+
104
+ @logger.info("Creating DB Instance called #{identifier}")
105
+
106
+ link = do_request("CreateDBInstance", params, :pull_out_single=>[:create_db_instance_result, :db_instance])
107
+
108
+ rescue Exception
109
+ on_exception
110
+ end
111
+
112
+
113
+ # options:
114
+ # DBInstanceIdentifier
115
+ # MaxRecords
116
+ # Marker
117
+ #
118
+ # Returns array of instances as hashes.
119
+ # Response metadata can be retreived by calling array.response_metadata on the returned array.
120
+ def describe_db_instances(options={})
121
+ params = {}
122
+ params['DBInstanceIdentifier'] = options[:db_instance_identifier] if options[:db_instance_identifier]
123
+ params['MaxRecords'] = options[:max_records] if options[:max_records]
124
+ params['Marker'] = options[:marker] if options[:marker]
125
+
126
+ resp = do_request("DescribeDBInstances", params, :pull_out_array=>[:describe_db_instances_result, :db_instances])
127
+
128
+ rescue Exception
129
+ on_exception
130
+ end
131
+
132
+
133
+ # identifier: identifier of db instance to delete.
134
+ # final_snapshot_identifier: if specified, RDS will crate a final snapshot before deleting so you can restore it later.
135
+ def delete_db_instance(identifier, final_snapshot_identifier=nil)
136
+ @logger.info("Deleting DB Instance - " + identifier.to_s)
120
137
 
121
- resp = do_request("DescribeDBInstances", params, :pull_out_array=>[:describe_db_instances_result, :db_instances])
138
+ params = {}
139
+ params['DBInstanceIdentifier'] = identifier
140
+ if final_snapshot_identifier
141
+ params['FinalDBSnapshotIdentifier'] = final_snapshot_identifier
142
+ else
143
+ params['SkipFinalSnapshot'] = true
144
+ end
122
145
 
123
- rescue Exception
124
- on_exception
125
- end
146
+ link = do_request("DeleteDBInstance", params, :pull_out_single=>[:delete_db_instance_result, :db_instance])
126
147
 
148
+ rescue Exception
149
+ on_exception
150
+ end
127
151
 
128
- # identifier: identifier of db instance to delete.
129
- # final_snapshot_identifier: if specified, RDS will crate a final snapshot before deleting so you can restore it later.
130
- def delete_db_instance(identifier, final_snapshot_identifier=nil)
131
- @logger.info("Deleting DB Instance - " + identifier.to_s)
132
-
133
- params = {}
134
- params['DBInstanceIdentifier'] = identifier
135
- if final_snapshot_identifier
136
- params['FinalDBSnapshotIdentifier'] = final_snapshot_identifier
137
- else
138
- params['SkipFinalSnapshot'] = true
139
- end
140
-
141
- link = do_request("DeleteDBInstance", params, :pull_out_single=>[:delete_db_instance_result, :db_instance])
142
-
143
- rescue Exception
144
- on_exception
145
- end
146
-
147
-
148
- def create_db_security_group(group_name, description, options={})
149
- params = {}
150
- params['DBSecurityGroupName'] = group_name
151
- params['DBSecurityGroupDescription'] = description
152
-
153
- link = do_request("CreateDBSecurityGroup", params, :pull_out_single => [:create_db_security_group_result, :db_security_group])
154
-
155
- rescue Exception
156
- on_exception
157
- end
158
152
 
153
+ def create_db_security_group(group_name, description, options={})
154
+ params = {}
155
+ params['DBSecurityGroupName'] = group_name
156
+ params['DBSecurityGroupDescription'] = description
159
157
 
160
- def delete_db_security_group(group_name, options={})
161
- params = {}
162
- params['DBSecurityGroupName'] = group_name
158
+ link = do_request("CreateDBSecurityGroup", params, :pull_out_single => [:create_db_security_group_result, :db_security_group])
163
159
 
164
- link = do_request("DeleteDBSecurityGroup", params)
160
+ rescue Exception
161
+ on_exception
162
+ end
165
163
 
166
- rescue Exception
167
- on_exception
168
- end
169
164
 
165
+ def delete_db_security_group(group_name, options={})
166
+ params = {}
167
+ params['DBSecurityGroupName'] = group_name
170
168
 
171
- def describe_db_security_groups(options={})
172
- params = {}
173
- params['DBSecurityGroupName'] = options[:DBSecurityGroupName] if options[:DBSecurityGroupName]
174
- params['MaxRecords'] = options[:MaxRecords] if options[:MaxRecords]
169
+ link = do_request("DeleteDBSecurityGroup", params)
175
170
 
176
- link = do_request("DescribeDBSecurityGroups", params, :pull_out_array=>[:describe_db_security_groups_result, :db_security_groups], :wrapper=>:db_security_group)
171
+ rescue Exception
172
+ on_exception
173
+ end
177
174
 
178
175
 
179
- rescue Exception
180
- on_exception
181
- end
176
+ def describe_db_security_groups(options={})
177
+ params = {}
178
+ params['DBSecurityGroupName'] = options[:DBSecurityGroupName] if options[:DBSecurityGroupName]
179
+ params['MaxRecords'] = options[:MaxRecords] if options[:MaxRecords]
182
180
 
181
+ link = do_request("DescribeDBSecurityGroups", params, :pull_out_array=>[:describe_db_security_groups_result, :db_security_groups], :wrapper=>:db_security_group)
183
182
 
184
- def authorize_db_security_group_ingress_ec2group(group_name, ec2_group_name, ec2_group_owner_id, options={})
185
- params = {}
186
- params['DBSecurityGroupName'] = group_name
187
- params['EC2SecurityGroupOwnerId'] = ec2_group_owner_id
188
- params['EC2SecurityGroupName'] = ec2_group_name
189
- link = do_request("AuthorizeDBSecurityGroupIngress", params)
190
- rescue Exception
191
- on_exception
192
- end
193
183
 
184
+ rescue Exception
185
+ on_exception
186
+ end
194
187
 
195
- def authorize_db_security_group_ingress_range(group_name, ip_range, options={})
196
- params = {}
197
- params['DBSecurityGroupName'] = group_name
198
- params['CIDRIP'] = ip_range
199
- link = do_request("AuthorizeDBSecurityGroupIngress", params)
200
- rescue Exception
201
- on_exception
202
- end
203
188
 
189
+ def authorize_db_security_group_ingress_ec2group(group_name, ec2_group_name, ec2_group_owner_id, options={})
190
+ params = {}
191
+ params['DBSecurityGroupName'] = group_name
192
+ params['EC2SecurityGroupOwnerId'] = ec2_group_owner_id
193
+ params['EC2SecurityGroupName'] = ec2_group_name
194
+ link = do_request("AuthorizeDBSecurityGroupIngress", params)
195
+ rescue Exception
196
+ on_exception
197
+ end
204
198
 
205
- def revoke_db_security_group_ingress(group_name, ip_range, options={})
206
- params = {}
207
- params['DBSecurityGroupName'] = group_name
208
- params['CIDRIP'] = ip_range
209
- link = do_request("RevokeDBSecurityGroupIngress", params)
210
- rescue Exception
211
- on_exception
212
- end
213
199
 
200
+ def authorize_db_security_group_ingress_range(group_name, ip_range, options={})
201
+ params = {}
202
+ params['DBSecurityGroupName'] = group_name
203
+ params['CIDRIP'] = ip_range
204
+ link = do_request("AuthorizeDBSecurityGroupIngress", params)
205
+ rescue Exception
206
+ on_exception
207
+ end
214
208
 
215
209
 
210
+ def revoke_db_security_group_ingress(group_name, ip_range, options={})
211
+ params = {}
212
+ params['DBSecurityGroupName'] = group_name
213
+ params['CIDRIP'] = ip_range
214
+ link = do_request("RevokeDBSecurityGroupIngress", params)
215
+ rescue Exception
216
+ on_exception
216
217
  end
217
218
 
219
+
220
+ end
221
+
218
222
  end
metadata CHANGED
@@ -5,8 +5,8 @@ version: !ruby/object:Gem::Version
5
5
  segments:
6
6
  - 2
7
7
  - 4
8
- - 1
9
- version: 2.4.1
8
+ - 2
9
+ version: 2.4.2
10
10
  platform: ruby
11
11
  authors:
12
12
  - Travis Reeder
@@ -16,7 +16,7 @@ autorequire:
16
16
  bindir: bin
17
17
  cert_chain: []
18
18
 
19
- date: 2011-01-17 00:00:00 -08:00
19
+ date: 2011-01-21 00:00:00 -08:00
20
20
  default_executable:
21
21
  dependencies:
22
22
  - !ruby/object:Gem::Dependency