fog-aws 3.22.0 → 3.30.0

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.
Files changed (78) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +13 -1305
  3. data/fog-aws.gemspec +6 -3
  4. data/lib/fog/aws/credential_fetcher.rb +15 -2
  5. data/lib/fog/aws/elasticache.rb +1 -1
  6. data/lib/fog/aws/kms.rb +5 -1
  7. data/lib/fog/aws/models/compute/dhcp_option.rb +1 -1
  8. data/lib/fog/aws/models/compute/flavors.rb +3 -3
  9. data/lib/fog/aws/models/compute/network_interfaces.rb +1 -1
  10. data/lib/fog/aws/models/elasticache/cluster.rb +1 -1
  11. data/lib/fog/aws/models/storage/file.rb +2 -2
  12. data/lib/fog/aws/models/storage/files.rb +3 -2
  13. data/lib/fog/aws/parsers/iam/list_server_certificates.rb +1 -1
  14. data/lib/fog/aws/parsers/kms/describe_key.rb +2 -2
  15. data/lib/fog/aws/parsers/kms/get_public_key.rb +30 -0
  16. data/lib/fog/aws/parsers/kms/schedule_key_deletion.rb +28 -0
  17. data/lib/fog/aws/parsers/kms/sign.rb +24 -0
  18. data/lib/fog/aws/parsers/rds/db_cluster_parser.rb +1 -1
  19. data/lib/fog/aws/parsers/rds/db_parser.rb +1 -1
  20. data/lib/fog/aws/parsers/rds/modify_db_subnet_group.rb +1 -1
  21. data/lib/fog/aws/parsers/redshift/cluster_subnet_group_parser.rb +1 -1
  22. data/lib/fog/aws/requests/auto_scaling/attach_load_balancer_target_groups.rb +1 -1
  23. data/lib/fog/aws/requests/auto_scaling/describe_scaling_activities.rb +1 -1
  24. data/lib/fog/aws/requests/auto_scaling/put_scheduled_update_group_action.rb +1 -1
  25. data/lib/fog/aws/requests/cloud_formation/create_change_set.rb +1 -1
  26. data/lib/fog/aws/requests/cloud_formation/create_stack.rb +1 -1
  27. data/lib/fog/aws/requests/cloud_formation/get_template_summary.rb +1 -1
  28. data/lib/fog/aws/requests/cloud_formation/update_stack.rb +1 -1
  29. data/lib/fog/aws/requests/cloud_watch/list_metrics.rb +1 -1
  30. data/lib/fog/aws/requests/compute/authorize_security_group_egress.rb +1 -1
  31. data/lib/fog/aws/requests/compute/authorize_security_group_ingress.rb +1 -1
  32. data/lib/fog/aws/requests/compute/create_network_interface.rb +1 -1
  33. data/lib/fog/aws/requests/compute/create_vpc.rb +1 -1
  34. data/lib/fog/aws/requests/compute/describe_network_interfaces.rb +2 -2
  35. data/lib/fog/aws/requests/compute/modify_network_interface_attribute.rb +1 -1
  36. data/lib/fog/aws/requests/compute/modify_volume.rb +1 -1
  37. data/lib/fog/aws/requests/compute/revoke_security_group_egress.rb +1 -1
  38. data/lib/fog/aws/requests/compute/revoke_security_group_ingress.rb +1 -1
  39. data/lib/fog/aws/requests/compute/run_instances.rb +2 -2
  40. data/lib/fog/aws/requests/data_pipeline/deactivate_pipeline.rb +1 -1
  41. data/lib/fog/aws/requests/ecs/list_task_definitions.rb +1 -1
  42. data/lib/fog/aws/requests/efs/create_file_system.rb +1 -1
  43. data/lib/fog/aws/requests/elasticache/authorize_cache_security_group_ingress.rb +1 -1
  44. data/lib/fog/aws/requests/elasticache/create_cache_cluster.rb +2 -2
  45. data/lib/fog/aws/requests/elasticache/describe_engine_default_parameters.rb +1 -1
  46. data/lib/fog/aws/requests/elb/delete_load_balancer_listeners.rb +1 -1
  47. data/lib/fog/aws/requests/elbv2/describe_tags.rb +2 -2
  48. data/lib/fog/aws/requests/glacier/initiate_job.rb +1 -1
  49. data/lib/fog/aws/requests/glacier/initiate_multipart_upload.rb +1 -1
  50. data/lib/fog/aws/requests/kinesis/list_streams.rb +1 -1
  51. data/lib/fog/aws/requests/kms/create_key.rb +74 -36
  52. data/lib/fog/aws/requests/kms/get_public_key.rb +35 -0
  53. data/lib/fog/aws/requests/kms/list_keys.rb +3 -4
  54. data/lib/fog/aws/requests/kms/schedule_key_deletion.rb +37 -0
  55. data/lib/fog/aws/requests/kms/sign.rb +62 -0
  56. data/lib/fog/aws/requests/rds/authorize_db_security_group_ingress.rb +2 -2
  57. data/lib/fog/aws/requests/rds/create_db_cluster.rb +1 -1
  58. data/lib/fog/aws/requests/rds/describe_db_snapshots.rb +1 -1
  59. data/lib/fog/aws/requests/rds/modify_db_instance.rb +1 -1
  60. data/lib/fog/aws/requests/rds/modify_db_parameter_group.rb +1 -1
  61. data/lib/fog/aws/requests/ses/send_raw_email.rb +1 -1
  62. data/lib/fog/aws/requests/sqs/change_message_visibility.rb +1 -1
  63. data/lib/fog/aws/requests/sqs/delete_message.rb +1 -1
  64. data/lib/fog/aws/requests/storage/copy_object.rb +1 -1
  65. data/lib/fog/aws/requests/storage/get_bucket.rb +2 -2
  66. data/lib/fog/aws/requests/storage/get_bucket_object_versions.rb +2 -2
  67. data/lib/fog/aws/requests/storage/list_parts.rb +1 -1
  68. data/lib/fog/aws/requests/storage/put_bucket.rb +0 -4
  69. data/lib/fog/aws/requests/storage/put_bucket_lifecycle.rb +1 -1
  70. data/lib/fog/aws/requests/storage/put_bucket_notification.rb +1 -1
  71. data/lib/fog/aws/requests/storage/put_object.rb +1 -1
  72. data/lib/fog/aws/requests/storage/upload_part_copy.rb +1 -1
  73. data/lib/fog/aws/ses.rb +19 -16
  74. data/lib/fog/aws/signaturev4.rb +1 -1
  75. data/lib/fog/aws/storage.rb +21 -11
  76. data/lib/fog/aws/version.rb +1 -1
  77. data/lib/fog/aws.rb +5 -2
  78. metadata +27 -6
data/fog-aws.gemspec CHANGED
@@ -28,7 +28,10 @@ Gem::Specification.new do |spec|
28
28
  spec.add_development_dependency 'rubyzip', '~> 2.3.0'
29
29
  spec.add_development_dependency 'shindo', '~> 0.3'
30
30
 
31
- spec.add_dependency 'fog-core', '~> 2.1'
32
- spec.add_dependency 'fog-json', '~> 1.1'
33
- spec.add_dependency 'fog-xml', '~> 0.1'
31
+ spec.add_dependency 'base64', '~> 0.2.0'
32
+ spec.add_dependency 'fog-core', '~> 2.6'
33
+ spec.add_dependency 'fog-json', '~> 1.1'
34
+ spec.add_dependency 'fog-xml', '~> 0.1'
35
+
36
+ spec.metadata['changelog_uri'] = spec.homepage + '/blob/master/CHANGELOG.md'
34
37
  end
@@ -21,7 +21,7 @@ module Fog
21
21
  if options[:use_iam_profile]
22
22
  begin
23
23
  role_data = nil
24
- region = options[:region] || ENV["AWS_DEFAULT_REGION"]
24
+ region = options[:region] || ENV["AWS_REGION"] || ENV["AWS_DEFAULT_REGION"]
25
25
 
26
26
  if ENV["AWS_CONTAINER_CREDENTIALS_RELATIVE_URI"]
27
27
  connection = options[:connection] || Excon.new(CONTAINER_CREDENTIALS_HOST)
@@ -29,6 +29,17 @@ module Fog
29
29
  role_data = connection.get(:path => credential_path, :idempotent => true, :expects => 200).body
30
30
  session = Fog::JSON.decode(role_data)
31
31
 
32
+ if region.nil?
33
+ connection = options[:metadata_connection] || Excon.new(INSTANCE_METADATA_HOST)
34
+ token_header = fetch_credentials_token_header(connection, options[:disable_imds_v2])
35
+ region = connection.get(:path => INSTANCE_METADATA_AZ, :idempotent => true, :expects => 200, :headers => token_header).body[0..-2]
36
+ end
37
+ elsif ENV["AWS_CONTAINER_CREDENTIALS_FULL_URI"]
38
+ connection = options[:connection] || Excon.new(ENV['AWS_CONTAINER_CREDENTIALS_FULL_URI'])
39
+ container_authorization_token = File.read(options[:aws_container_authorization_token_file] || ENV['AWS_CONTAINER_AUTHORIZATION_TOKEN_FILE'])
40
+ role_data = connection.get(:idempotent => true, :expects => 200, :headers => {'Authorization' => container_authorization_token}).body
41
+ session = Fog::JSON.decode(role_data)
42
+
32
43
  if region.nil?
33
44
  connection = options[:metadata_connection] || Excon.new(INSTANCE_METADATA_HOST)
34
45
  token_header = fetch_credentials_token_header(connection, options[:disable_imds_v2])
@@ -45,7 +56,9 @@ module Fog
45
56
  }
46
57
 
47
58
  sts_endpoint =
48
- if ENV["AWS_STS_REGIONAL_ENDPOINTS"] == "regional" && region
59
+ if ENV["AWS_ENDPOINT_URL_STS"]
60
+ ENV["AWS_ENDPOINT_URL_STS"]
61
+ elsif ENV["AWS_STS_REGIONAL_ENDPOINTS"] == "regional" && region
49
62
  "https://sts.#{region}.amazonaws.com"
50
63
  else
51
64
  "https://sts.amazonaws.com"
@@ -195,7 +195,7 @@ module Fog
195
195
  @aws_access_key_id = options[:aws_access_key_id]
196
196
  end
197
197
 
198
- # returns an Array of (Mock) elasticache nodes, representated as Hashes
198
+ # returns an Array of (Mock) elasticache nodes, represented as Hashes
199
199
  def create_cache_nodes(cluster_id, num_nodes = 1, port = '11211')
200
200
  (1..num_nodes).map do |node_number|
201
201
  node_id = "%04d" % node_number
data/lib/fog/aws/kms.rb CHANGED
@@ -20,6 +20,9 @@ module Fog
20
20
  request :list_keys
21
21
  request :create_key
22
22
  request :describe_key
23
+ request :get_public_key
24
+ request :schedule_key_deletion
25
+ request :sign
23
26
 
24
27
  model_path 'fog/aws/models/kms'
25
28
  model :key
@@ -30,7 +33,8 @@ module Fog
30
33
  @data ||= Hash.new do |hash, region|
31
34
  hash[region] = Hash.new do |region_hash, access_key|
32
35
  region_hash[access_key] = {
33
- :keys => {},
36
+ keys: {},
37
+ pkeys: {}
34
38
  }
35
39
  end
36
40
  end
@@ -10,7 +10,7 @@ module Fog
10
10
  super
11
11
  end
12
12
 
13
- # Associates an existing dhcp configration set with a VPC
13
+ # Associates an existing dhcp configuration set with a VPC
14
14
  #
15
15
  # dhcp_option.attach(dopt-id, vpc-id)
16
16
  #
@@ -288,7 +288,7 @@ module Fog
288
288
  },
289
289
  {
290
290
  :id => 't4g.nano',
291
- :name => 'T4G Nano Instace',
291
+ :name => 'T4G Nano Instance',
292
292
  :bits => 64,
293
293
  :cores => 2,
294
294
  :disk => 0,
@@ -318,7 +318,7 @@ module Fog
318
318
  },
319
319
  {
320
320
  :id => 't4g.medium',
321
- :name => 'T4G Medium Instace',
321
+ :name => 'T4G Medium Instance',
322
322
  :bits => 64,
323
323
  :cores => 2,
324
324
  :disk => 0,
@@ -3558,7 +3558,7 @@ module Fog
3558
3558
  },
3559
3559
  {
3560
3560
  :id => "m6a.48xlarge",
3561
- :name => "m6a Fourty Eight Extra Large",
3561
+ :name => "m6a Forty Eight Extra Large",
3562
3562
  :bits => 64,
3563
3563
  :cores => 192,
3564
3564
  :ram => 824634,
@@ -54,7 +54,7 @@ module Fog
54
54
  #
55
55
  # Returns an array of all network interfaces
56
56
  #
57
- #>> AWS.network_interfaves.all
57
+ #>> AWS.network_interfaces.all
58
58
  # <Fog::AWS::Compute::NetworkInterfaces
59
59
  # filters={}
60
60
  # [
@@ -54,7 +54,7 @@ module Fog
54
54
  :engine_version => engine_version,
55
55
  :notification_topic_arn => notification_config['TopicArn'],
56
56
  :port => port,
57
- :preferred_availablility_zone => zone,
57
+ :preferred_availability_zone => zone,
58
58
  :preferred_maintenance_window => maintenance_window,
59
59
  :s3_snapshot_location => s3_snapshot_location,
60
60
  :parameter_group_name => parameter_group_name || parameter_group['CacheParameterGroupName'],
@@ -246,7 +246,7 @@ module Fog
246
246
  # @param [Hash] options
247
247
  # @option options [String] acl sets x-amz-acl HTTP header. Valid values include, private | public-read | public-read-write | authenticated-read | bucket-owner-read | bucket-owner-full-control
248
248
  # @option options [String] cache_control sets Cache-Control header. For example, 'No-cache'
249
- # @option options [String] content_disposition sets Content-Disposition HTTP header. For exampple, 'attachment; filename=testing.txt'
249
+ # @option options [String] content_disposition sets Content-Disposition HTTP header. For example, 'attachment; filename=testing.txt'
250
250
  # @option options [String] content_encoding sets Content-Encoding HTTP header. For example, 'x-gzip'
251
251
  # @option options [String] content_md5 sets Content-MD5. For example, '79054025255fb1a26e4bc422aef54eb4'
252
252
  # @option options [String] content_type Content-Type. For example, 'text/plain'
@@ -281,7 +281,7 @@ module Fog
281
281
  merge_attributes(data.body)
282
282
  else
283
283
  data = service.put_object(directory.key, key, body, options)
284
- merge_attributes(data.headers.reject {|key, value| ['Content-Length', 'Content-Type'].include?(key)})
284
+ merge_attributes(data.headers.reject {|key, value| ['Connection', 'Content-Length', 'Content-Type'].include?(key)})
285
285
  end
286
286
  self.etag = self.etag.gsub('"','') if self.etag
287
287
  self.content_length = Fog::Storage.get_body_size(body)
@@ -125,8 +125,9 @@ module Fog
125
125
  def normalize_headers(data)
126
126
  data.headers['Last-Modified'] = Time.parse(fetch_and_delete_header(data, 'Last-Modified'))
127
127
 
128
- etag = fetch_and_delete_header(data, 'ETag').gsub('"','')
129
- data.headers['ETag'] = etag
128
+ if (etag = fetch_and_delete_header(data, 'ETag'))
129
+ data.headers['ETag'] = etag.gsub('"', '')
130
+ end
130
131
 
131
132
  DASHED_HEADERS.each do |header|
132
133
  value = fetch_and_delete_header(data, header)
@@ -21,7 +21,7 @@ module Fog
21
21
  when 'member'
22
22
  @response['Certificates'] << @certificate
23
23
  reset_certificate
24
- when 'IsTrunctated'
24
+ when 'IsTruncated'
25
25
  @response[name] = !!value
26
26
  when 'Marker'
27
27
  @response[name] = value
@@ -17,9 +17,9 @@ module Fog
17
17
 
18
18
  def end_element(name)
19
19
  case name
20
- when 'KeyUsage', 'AWSAccountId', 'Description', 'KeyId', 'Arn'
20
+ when 'Arn', 'AWSAccountId', 'Description', 'KeyId', 'KeySpec', 'KeyState', 'KeyUsage'
21
21
  @key[name] = value
22
- when 'CreationDate'
22
+ when 'CreationDate', 'DeletionDate'
23
23
  @key[name] = Time.parse(value)
24
24
  when 'Enabled'
25
25
  @key[name] = (value == 'true')
@@ -0,0 +1,30 @@
1
+ module Fog
2
+ module Parsers
3
+ module AWS
4
+ module KMS
5
+ class GetPublicKey < Fog::Parsers::Base
6
+ def reset
7
+ @response = {}
8
+ end
9
+
10
+ def start_element(name, attrs = [])
11
+ super
12
+ case name
13
+ when 'EncryptionAlgorithms', 'KeyAgreementAlgorithms', 'SigningAlgorithms'
14
+ @response[name] = []
15
+ end
16
+ end
17
+
18
+ def end_element(name)
19
+ case name
20
+ when 'KeyId', 'KeySpec', 'KeyUsage', 'PublicKey'
21
+ @response[name] = value
22
+ when 'EncryptionAlgorithms', 'KeyAgreementAlgorithms', 'SigningAlgorithms'
23
+ @response[name] << value
24
+ end
25
+ end
26
+ end
27
+ end
28
+ end
29
+ end
30
+ end
@@ -0,0 +1,28 @@
1
+ module Fog
2
+ module Parsers
3
+ module AWS
4
+ module KMS
5
+ class ScheduleKeyDeletion < Fog::Parsers::Base
6
+ def reset
7
+ @response = {}
8
+ end
9
+
10
+ def start_element(name, attrs = [])
11
+ super
12
+ end
13
+
14
+ def end_element(name)
15
+ case name
16
+ when 'DeletionDate'
17
+ @response[name] = Time.parse(value)
18
+ when 'KeyId', 'KeyState'
19
+ @response[name] = value
20
+ when 'PendingWindowInDays'
21
+ @response[name] = value.to_i
22
+ end
23
+ end
24
+ end
25
+ end
26
+ end
27
+ end
28
+ end
@@ -0,0 +1,24 @@
1
+ module Fog
2
+ module Parsers
3
+ module AWS
4
+ module KMS
5
+ class Sign < Fog::Parsers::Base
6
+ def reset
7
+ @response = {}
8
+ end
9
+
10
+ def start_element(name, attrs = [])
11
+ super
12
+ end
13
+
14
+ def end_element(name)
15
+ case name
16
+ when 'KeyId', 'Signature', 'SigningAlgorithm'
17
+ @response[name] = value
18
+ end
19
+ end
20
+ end
21
+ end
22
+ end
23
+ end
24
+ end
@@ -42,7 +42,7 @@ module Fog
42
42
  when 'VpcSecurityGroupId'
43
43
  @vpc_security_group[name] = value
44
44
  when 'Status'
45
- # Unfortunately, status is used in VpcSecurityGroupMemebership and
45
+ # Unfortunately, status is used in VpcSecurityGroupMembership and
46
46
  # DBSecurityGroups
47
47
  if @in_db_security_groups
48
48
  @db_security_group[name]=value
@@ -105,7 +105,7 @@ module Fog
105
105
  when 'VpcSecurityGroupId'
106
106
  @vpc_security_group[name] = value
107
107
  when 'Status'
108
- # Unfortunately, status is used in VpcSecurityGroupMemebership and
108
+ # Unfortunately, status is used in VpcSecurityGroupMembership and
109
109
  # DBSecurityGroups
110
110
  if @in_db_security_groups
111
111
  @db_security_group[name]=value
@@ -4,7 +4,7 @@ module Fog
4
4
  module RDS
5
5
  class ModifyDBSubnetGroup < Fog::Parsers::Base
6
6
  def reset
7
- @response = { 'ModifyDBSubnetGrouptAttributeResult' => {}, 'ResponseMetadata' => {} }
7
+ @response = { 'ModifyDBSubnetGroupAttributeResult' => {}, 'ResponseMetadata' => {} }
8
8
  end
9
9
 
10
10
  def start_element(name, attrs = [])
@@ -32,7 +32,7 @@ module Fog
32
32
  def end_element(name)
33
33
  super
34
34
  case name
35
- when 'ClusterSubnetGroupName', 'Desciption', 'VpcId', 'SubnetGroupStatus'
35
+ when 'ClusterSubnetGroupName', 'Description', 'VpcId', 'SubnetGroupStatus'
36
36
  @response[name] = value
37
37
  when 'SubnetIdentifier', 'SubnetStatus'
38
38
  @subnet[name] = value
@@ -11,7 +11,7 @@ module Fog
11
11
  # * auto_scaling_group_name<~String> - The name of the Auto Scaling
12
12
  # group.
13
13
  # * options<~Hash>:
14
- # 'TagetGroupARNs'<~Array> - A list of target group arns to use.
14
+ # 'TargetGroupARNs'<~Array> - A list of target group arns to use.
15
15
  #
16
16
  # ==== See Also
17
17
  # http://docs.amazonwebservices.com/AutoScaling/latest/APIReference/API_AttachLoadBalancerTargetGroups.html
@@ -40,7 +40,7 @@ module Fog
40
40
  # * 'ActivityId'<~String> - Specifies the ID of the activity.
41
41
  # * 'AutoScalingGroupName'<~String> - The name of the Auto
42
42
  # Scaling group.
43
- # * 'Cause'<~String> - Contins the reason the activity was
43
+ # * 'Cause'<~String> - Contains the reason the activity was
44
44
  # begun.
45
45
  # * 'Description'<~String> - Contains a friendly, more verbose
46
46
  # description of the scaling activity.
@@ -39,7 +39,7 @@ module Fog
39
39
  # http://docs.amazonwebservices.com/AutoScaling/latest/APIReference/API_PutScheduledUpdateGroupAction.html
40
40
  #
41
41
  def put_scheduled_update_group_action(auto_scaling_group_name, scheduled_action_name, time=nil, options = {})
42
- # The 'Time' paramenter is now an alias for StartTime and needs to be identical if specified.
42
+ # The 'Time' parameter is now an alias for StartTime and needs to be identical if specified.
43
43
  time = options['StartTime'].nil? ? time : options['StartTime']
44
44
  if !time.nil?
45
45
  time = time.class == Time ? time.utc.iso8601 : Time.parse(time).utc.iso8601
@@ -16,7 +16,7 @@ module Fog
16
16
  # * UsePreviousTemplate [Boolean] Reuse the template that is associated with the stack to create the change set.
17
17
  # * NotificationARNs [Array] List of SNS topics to publish events to.
18
18
  # * Parameters [Hash] Hash of providers to supply to template.
19
- # * Capabilities [Array] List of capabilties the stack is granted. Currently CAPABILITY_IAM for allowing the creation of IAM resources.
19
+ # * Capabilities [Array] List of capabilities the stack is granted. Currently CAPABILITY_IAM for allowing the creation of IAM resources.
20
20
  #
21
21
  # @return [Excon::Response]:
22
22
  # * body [Hash:
@@ -16,7 +16,7 @@ module Fog
16
16
  # * NotificationARNs [Array] List of SNS topics to publish events to.
17
17
  # * Parameters [Hash] Hash of providers to supply to template
18
18
  # * TimeoutInMinutes [Integer] Minutes to wait before status is set to CREATE_FAILED
19
- # * Capabilities [Array] List of capabilties the stack is granted. Currently CAPABILITY_IAM for allowing the creation of IAM resources
19
+ # * Capabilities [Array] List of capabilities the stack is granted. Currently CAPABILITY_IAM for allowing the creation of IAM resources
20
20
  # * StackPolicyBody [String] Structure containing the stack policy body.
21
21
  # * StackPolicyURL [String] URL of file containing the stack policy.
22
22
  # * Tags [Array] Key-value pairs to associate with this stack.
@@ -15,7 +15,7 @@ module Fog
15
15
  #
16
16
  # @return [Excon::Response]:
17
17
  # * body [Hash:
18
- # * Capabilities [Array] List of capabilties in the template.
18
+ # * Capabilities [Array] List of capabilities in the template.
19
19
  # * CapabilitiesReason [String] The list of resources that generated the values in the Capabilities response element.
20
20
  # * Description [String] Template Description.
21
21
  # * Metadata [String] Template Metadata.
@@ -12,7 +12,7 @@ module Fog
12
12
  # or (one of the two Template parameters is required)
13
13
  # * TemplateURL [String] URL of file containing the template body.
14
14
  # * Parameters [Hash] Hash of providers to supply to template.
15
- # * Capabilities [Array] List of capabilties the stack is granted. Currently CAPABILITY_IAM for allowing the creation of IAM resources.
15
+ # * Capabilities [Array] List of capabilities the stack is granted. Currently CAPABILITY_IAM for allowing the creation of IAM resources.
16
16
  # * NotificationARNs [Array] List of SNS topics to publish events to.
17
17
  # * ResourceTypes [Array] The template resource types that you have permissions to work.
18
18
  # * StackPolicyBody [String] Structure containing the stack policy body.
@@ -4,7 +4,7 @@ module Fog
4
4
  class Real
5
5
  require 'fog/aws/parsers/cloud_watch/list_metrics'
6
6
 
7
- # List availabe metrics
7
+ # List available metrics
8
8
  #
9
9
  # ==== Options
10
10
  # * Dimensions<~Array>: a list of dimensions to filter against,
@@ -7,7 +7,7 @@ module Fog
7
7
  # Add permissions to a security group
8
8
  #
9
9
  # ==== Parameters
10
- # * group_name<~String> - Name of group, optional (can also be specifed as GroupName in options)
10
+ # * group_name<~String> - Name of group, optional (can also be specified as GroupName in options)
11
11
  # * options<~Hash>:
12
12
  # * 'GroupName'<~String> - Name of security group to modify
13
13
  # * 'GroupId'<~String> - Id of security group to modify
@@ -7,7 +7,7 @@ module Fog
7
7
  # Add permissions to a security group
8
8
  #
9
9
  # ==== Parameters
10
- # * group_name<~String> - Name of group, optional (can also be specifed as GroupName in options)
10
+ # * group_name<~String> - Name of group, optional (can also be specified as GroupName in options)
11
11
  # * options<~Hash>:
12
12
  # * 'GroupName'<~String> - Name of security group to modify
13
13
  # * 'GroupId'<~String> - Id of security group to modify
@@ -25,7 +25,7 @@ module Fog
25
25
  # * 'availabilityZone'<~String> - The availability zone
26
26
  # * 'description'<~String> - The description
27
27
  # * 'ownerId'<~String> - The ID of the person who created the interface
28
- # * 'requesterId'<~String> - The ID ot teh entity requesting this interface
28
+ # * 'requesterId'<~String> - The ID or the entity requesting this interface
29
29
  # * 'requesterManaged'<~String> -
30
30
  # * 'status'<~String> - "available" or "in-use"
31
31
  # * 'macAddress'<~String> -
@@ -67,7 +67,7 @@ module Fog
67
67
  route_table = self.data[:route_tables].find { |routetable| routetable["routeTableId"].eql? default_route.id }
68
68
 
69
69
  # This pushes a main route to the associationSet
70
- # add_route_association(routeTableId, subnetId, main=false) is declared in assocate_route_table.rb
70
+ # add_route_association(routeTableId, subnetId, main=false) is declared in associate_route_table.rb
71
71
  assoc = add_route_association(default_route.id, nil, true)
72
72
  route_table["associationSet"].push(assoc)
73
73
 
@@ -20,7 +20,7 @@ module Fog
20
20
  # * 'availabilityZone'<~String> - The availability zone
21
21
  # * 'description'<~String> - The description
22
22
  # * 'ownerId'<~String> - The ID of the person who created the interface
23
- # * 'requesterId'<~String> - The ID ot teh entity requesting this interface
23
+ # * 'requesterId'<~String> - The ID of the entity requesting this interface
24
24
  # * 'requesterManaged'<~String> -
25
25
  # * 'status'<~String> - "available" or "in-use"
26
26
  # * 'macAddress'<~String> -
@@ -49,7 +49,7 @@ module Fog
49
49
  # * 'privateIpAddresses' <~Array>:
50
50
  # * 'privateIpAddress'<~String> - One of the additional private ip address
51
51
  # * 'privateDnsName'<~String> - The private DNS associate to the ip address
52
- # * 'primay'<~String> - Whether main ip associate with NIC true of false
52
+ # * 'primary'<~String> - Whether main ip associate with NIC true of false
53
53
  #
54
54
  # {Amazon API Reference}[http://docs.amazonwebservices.com/AWSEC2/2012-03-01/APIReference/index.html?ApiReference-query-DescribeNetworkInterfaces.html]
55
55
  def describe_network_interfaces(filters = {})
@@ -9,7 +9,7 @@ module Fog
9
9
  # ==== Parameters
10
10
  # * network_interface_id<~String> - The ID of the network interface you want to describe an attribute of
11
11
  # * attribute<~String> - The attribute to modify, must be one of 'description', 'groupSet', 'sourceDestCheck' or 'attachment'
12
- # * value<~Object> - New value of attribute, the actual tyep depends on teh attribute:
12
+ # * value<~Object> - New value of attribute, the actual type depends on the attribute:
13
13
  # description - a string
14
14
  # groupSet - a list of group id's
15
15
  # sourceDestCheck - a boolean value
@@ -10,7 +10,7 @@ module Fog
10
10
  # * volume_id<~String> - The ID of the volume
11
11
  # * options<~Hash>:
12
12
  # * 'VolumeType'<~String> - Type of volume
13
- # * 'Size'<~Integer> - Size in GiBs fo the volume
13
+ # * 'Size'<~Integer> - Size in GiBs of the volume
14
14
  # * 'Iops'<~Integer> - Number of IOPS the volume supports
15
15
  #
16
16
  # ==== Response
@@ -7,7 +7,7 @@ module Fog
7
7
  # Remove permissions from a security group
8
8
  #
9
9
  # ==== Parameters
10
- # * group_name<~String> - Name of group, optional (can also be specifed as GroupName in options)
10
+ # * group_name<~String> - Name of group, optional (can also be specified as GroupName in options)
11
11
  # * options<~Hash>:
12
12
  # * 'GroupName'<~String> - Name of security group to modify
13
13
  # * 'GroupId'<~String> - Id of security group to modify
@@ -7,7 +7,7 @@ module Fog
7
7
  # Remove permissions from a security group
8
8
  #
9
9
  # ==== Parameters
10
- # * group_name<~String> - Name of group, optional (can also be specifed as GroupName in options)
10
+ # * group_name<~String> - Name of group, optional (can also be specified as GroupName in options)
11
11
  # * options<~Hash>:
12
12
  # * 'GroupName'<~String> - Name of security group to modify
13
13
  # * 'GroupId'<~String> - Id of security group to modify
@@ -31,7 +31,7 @@ module Fog
31
31
  # * 'Ebs.VolumeType'<~String> - Type of EBS volue. Valid options in ['standard', 'io1'] default is 'standard'.
32
32
  # * 'Ebs.Iops'<~String> - The number of I/O operations per second (IOPS) that the volume supports. Required when VolumeType is 'io1'
33
33
  # * 'HibernationOptions'<~Array>: array of hashes
34
- # * 'Configured'<~Boolean> - specifies whether or not the instance is configued for hibernation. This parameter is valid only if the instance meets the hibernation prerequisites.
34
+ # * 'Configured'<~Boolean> - specifies whether or not the instance is configured for hibernation. This parameter is valid only if the instance meets the hibernation prerequisites.
35
35
  # * 'NetworkInterfaces'<~Array>: array of hashes
36
36
  # * 'NetworkInterfaceId'<~String> - An existing interface to attach to a single instance
37
37
  # * 'DeviceIndex'<~String> - The device index. Applies both to attaching an existing network interface and creating a network interface
@@ -46,7 +46,7 @@ module Fog
46
46
  # * 'AssociatePublicIpAddress'<~String> - Indicates whether to assign a public IP address to an instance in a VPC. The public IP address is assigned to a specific network interface
47
47
  # * 'TagSpecifications'<~Array>: array of hashes
48
48
  # * 'ResourceType'<~String> - Type of resource to apply tags on, e.g: instance or volume
49
- # * 'Tags'<~Array> - List of hashs reprensenting tag to be set
49
+ # * 'Tags'<~Array> - List of hashes reprensenting tag to be set
50
50
  # * 'Key'<~String> - Tag name
51
51
  # * 'Value'<~String> - Tag value
52
52
  # * 'ClientToken'<~String> - unique case-sensitive token for ensuring idempotency
@@ -15,7 +15,7 @@ module Fog
15
15
 
16
16
  response = request({
17
17
  :body => Fog::JSON.encode(params),
18
- :headers => { 'X-Amz-Target' => 'DataPipeline.DectivatePipeline' }
18
+ :headers => { 'X-Amz-Target' => 'DataPipeline.DeactivatePipeline' }
19
19
  })
20
20
  end
21
21
  end
@@ -13,7 +13,7 @@ module Fog
13
13
  # ==== Returns
14
14
  # * response<~Excon::Response>:
15
15
  # * body<~Hash>:
16
- # * 'TaskDefinitionArns' <~Array> - list of task definition Amazon Resource Name (ARN) entries for the ListTaskDefintions request.
16
+ # * 'TaskDefinitionArns' <~Array> - list of task definition Amazon Resource Name (ARN) entries for the ListTaskDefinitions request.
17
17
  # * 'NextToken' <~String> - nextToken value to include in a future ListTaskDefinitions request
18
18
  def list_task_definitions(params={})
19
19
  request({
@@ -23,7 +23,7 @@ module Fog
23
23
  :method => 'POST',
24
24
  :expects => 201,
25
25
  'CreationToken' => creation_token,
26
- 'PerformanceMode' => options[:peformance_mode] || 'generalPurpose',
26
+ 'PerformanceMode' => options[:performance_mode] || 'generalPurpose',
27
27
  'Encrypted' => options[:encrypted] || false
28
28
  }
29
29
  params[:kms_key_id] = options[:kms_key_id] if options.key?(:kms_key_id)
@@ -34,7 +34,7 @@ module Fog
34
34
  if sec_group = self.data[:security_groups][name]
35
35
 
36
36
  if sec_group['EC2SecurityGroups'].find{|h| h['EC2SecurityGroupName'] == opts['EC2SecurityGroupName']}
37
- raise Fog::AWS::Elasticache::AuthorizationAlreadyExists.new("AuthorizationAlreadyExists => #{opts['EC2SecurityGroupName']} is alreay defined")
37
+ raise Fog::AWS::Elasticache::AuthorizationAlreadyExists.new("AuthorizationAlreadyExists => #{opts['EC2SecurityGroupName']} is already defined")
38
38
  end
39
39
  sec_group['EC2SecurityGroups'] << opts.merge({'Status' => 'authorizing'})
40
40
 
@@ -19,7 +19,7 @@ module Fog
19
19
  # * :engine_version <~String> - The Cluster's caching software version
20
20
  # * :notification_topic_arn <~String> - Amazon SNS Resource Name
21
21
  # * :port <~Integer> - The memcached port number
22
- # * :preferred_availablility_zone <~String>
22
+ # * :preferred_availability_zone <~String>
23
23
  # * :preferred_maintenance_window <~String>
24
24
  # * :cache_subnet_group_name <~String>
25
25
  # * :s3_snapshot_location <~String> - Amazon resource location for snapshot
@@ -39,7 +39,7 @@ module Fog
39
39
  'EngineVersion' => options[:engine_version],
40
40
  'NotificationTopicArn' => options[:notification_topic_arn],
41
41
  'Port' => options[:port],
42
- 'PreferredAvailabilityZone' => options[:preferred_availablility_zone],
42
+ 'PreferredAvailabilityZone' => options[:preferred_availability_zone],
43
43
  'PreferredMaintenanceWindow' => options[:preferred_maintenance_window],
44
44
  :parser => Fog::Parsers::AWS::Elasticache::SingleCacheCluster.new
45
45
  }
@@ -24,7 +24,7 @@ module Fog
24
24
  end
25
25
 
26
26
  class Mock
27
- def describe_engine_defalut_parameters(options = {})
27
+ def describe_engine_default_parameters(options = {})
28
28
  Fog::Mock.not_implemented
29
29
  end
30
30
  end
@@ -4,7 +4,7 @@ module Fog
4
4
  class Real
5
5
  require 'fog/aws/parsers/elb/empty'
6
6
 
7
- # Delet Elastic Load Balancer Listeners
7
+ # Delete Elastic Load Balancer Listeners
8
8
  #
9
9
  # ==== Parameters
10
10
  # * lb_name<~String> - Name for the new ELB -- must be unique