aws-sdk-ec2 1.285.0 → 1.417.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.
- checksums.yaml +4 -4
 - data/CHANGELOG.md +663 -1
 - data/VERSION +1 -1
 - data/lib/aws-sdk-ec2/classic_address.rb +33 -36
 - data/lib/aws-sdk-ec2/client.rb +13859 -2170
 - data/lib/aws-sdk-ec2/client_api.rb +4203 -86
 - data/lib/aws-sdk-ec2/customizations/instance.rb +3 -1
 - data/lib/aws-sdk-ec2/customizations/resource.rb +3 -1
 - data/lib/aws-sdk-ec2/dhcp_options.rb +19 -7
 - data/lib/aws-sdk-ec2/endpoint_parameters.rb +66 -0
 - data/lib/aws-sdk-ec2/endpoint_provider.rb +57 -0
 - data/lib/aws-sdk-ec2/endpoints.rb +8444 -0
 - data/lib/aws-sdk-ec2/image.rb +96 -22
 - data/lib/aws-sdk-ec2/instance.rb +232 -95
 - data/lib/aws-sdk-ec2/internet_gateway.rb +21 -7
 - data/lib/aws-sdk-ec2/key_pair.rb +13 -4
 - data/lib/aws-sdk-ec2/key_pair_info.rb +32 -4
 - data/lib/aws-sdk-ec2/nat_gateway.rb +22 -12
 - data/lib/aws-sdk-ec2/network_acl.rb +28 -10
 - data/lib/aws-sdk-ec2/network_interface.rb +76 -17
 - data/lib/aws-sdk-ec2/network_interface_association.rb +11 -5
 - data/lib/aws-sdk-ec2/placement_group.rb +198 -33
 - data/lib/aws-sdk-ec2/plugins/copy_encrypted_snapshot.rb +17 -12
 - data/lib/aws-sdk-ec2/plugins/endpoints.rb +1272 -0
 - data/lib/aws-sdk-ec2/plugins/region_validation.rb +1 -1
 - data/lib/aws-sdk-ec2/resource.rb +793 -282
 - data/lib/aws-sdk-ec2/route.rb +9 -3
 - data/lib/aws-sdk-ec2/route_table.rb +21 -7
 - data/lib/aws-sdk-ec2/route_table_association.rb +9 -3
 - data/lib/aws-sdk-ec2/security_group.rb +74 -57
 - data/lib/aws-sdk-ec2/snapshot.rb +38 -12
 - data/lib/aws-sdk-ec2/subnet.rb +394 -137
 - data/lib/aws-sdk-ec2/tag.rb +12 -4
 - data/lib/aws-sdk-ec2/types.rb +15645 -13412
 - data/lib/aws-sdk-ec2/volume.rb +65 -34
 - data/lib/aws-sdk-ec2/vpc.rb +368 -123
 - data/lib/aws-sdk-ec2/vpc_address.rb +29 -34
 - data/lib/aws-sdk-ec2/vpc_peering_connection.rb +18 -6
 - data/lib/aws-sdk-ec2/waiters.rb +184 -0
 - data/lib/aws-sdk-ec2.rb +6 -2
 - metadata +8 -4
 
| 
         @@ -18,7 +18,9 @@ module Aws 
     | 
|
| 
       18 
18 
     | 
    
         
             
                  private
         
     | 
| 
       19 
19 
     | 
    
         | 
| 
       20 
20 
     | 
    
         
             
                  def encrypted_password
         
     | 
| 
       21 
     | 
    
         
            -
                    bytes =  
     | 
| 
      
 21 
     | 
    
         
            +
                    bytes = Aws::Plugins::UserAgent.feature('resource') do
         
     | 
| 
      
 22 
     | 
    
         
            +
                      client.get_password_data(instance_id: id).password_data
         
     | 
| 
      
 23 
     | 
    
         
            +
                    end
         
     | 
| 
       22 
24 
     | 
    
         
             
                    if bytes == ''
         
     | 
| 
       23 
25 
     | 
    
         
             
                      raise 'password not available yet'
         
     | 
| 
       24 
26 
     | 
    
         
             
                    else
         
     | 
| 
         @@ -5,7 +5,9 @@ module Aws 
     | 
|
| 
       5 
5 
     | 
    
         
             
                class Resource
         
     | 
| 
       6 
6 
     | 
    
         | 
| 
       7 
7 
     | 
    
         
             
                  def create_tags(options)
         
     | 
| 
       8 
     | 
    
         
            -
                    resp =  
     | 
| 
      
 8 
     | 
    
         
            +
                    resp = Aws::Plugins::UserAgent.feature('resource') do
         
     | 
| 
      
 9 
     | 
    
         
            +
                      @client.create_tags(options)
         
     | 
| 
      
 10 
     | 
    
         
            +
                    end
         
     | 
| 
       9 
11 
     | 
    
         
             
                    tags = []
         
     | 
| 
       10 
12 
     | 
    
         
             
                    options[:resources].each do |resource_id|
         
     | 
| 
       11 
13 
     | 
    
         
             
                      options[:tags].each do |tag|
         
     | 
| 
         @@ -35,7 +35,7 @@ module Aws::EC2 
     | 
|
| 
       35 
35 
     | 
    
         
             
                end
         
     | 
| 
       36 
36 
     | 
    
         
             
                alias :dhcp_options_id :id
         
     | 
| 
       37 
37 
     | 
    
         | 
| 
       38 
     | 
    
         
            -
                #  
     | 
| 
      
 38 
     | 
    
         
            +
                # The DHCP options in the set.
         
     | 
| 
       39 
39 
     | 
    
         
             
                # @return [Array<Types::DhcpConfiguration>]
         
     | 
| 
       40 
40 
     | 
    
         
             
                def dhcp_configurations
         
     | 
| 
       41 
41 
     | 
    
         
             
                  data[:dhcp_configurations]
         
     | 
| 
         @@ -68,7 +68,9 @@ module Aws::EC2 
     | 
|
| 
       68 
68 
     | 
    
         
             
                #
         
     | 
| 
       69 
69 
     | 
    
         
             
                # @return [self]
         
     | 
| 
       70 
70 
     | 
    
         
             
                def load
         
     | 
| 
       71 
     | 
    
         
            -
                  resp =  
     | 
| 
      
 71 
     | 
    
         
            +
                  resp = Aws::Plugins::UserAgent.feature('resource') do
         
     | 
| 
      
 72 
     | 
    
         
            +
                    @client.describe_dhcp_options(dhcp_options_ids: [@id])
         
     | 
| 
      
 73 
     | 
    
         
            +
                  end
         
     | 
| 
       72 
74 
     | 
    
         
             
                  @data = resp.dhcp_options[0]
         
     | 
| 
       73 
75 
     | 
    
         
             
                  self
         
     | 
| 
       74 
76 
     | 
    
         
             
                end
         
     | 
| 
         @@ -183,7 +185,9 @@ module Aws::EC2 
     | 
|
| 
       183 
185 
     | 
    
         
             
                      :retry
         
     | 
| 
       184 
186 
     | 
    
         
             
                    end
         
     | 
| 
       185 
187 
     | 
    
         
             
                  end
         
     | 
| 
       186 
     | 
    
         
            -
                  Aws:: 
     | 
| 
      
 188 
     | 
    
         
            +
                  Aws::Plugins::UserAgent.feature('resource') do
         
     | 
| 
      
 189 
     | 
    
         
            +
                    Aws::Waiters::Waiter.new(options).wait({})
         
     | 
| 
      
 190 
     | 
    
         
            +
                  end
         
     | 
| 
       187 
191 
     | 
    
         
             
                end
         
     | 
| 
       188 
192 
     | 
    
         | 
| 
       189 
193 
     | 
    
         
             
                # @!group Actions
         
     | 
| 
         @@ -205,7 +209,9 @@ module Aws::EC2 
     | 
|
| 
       205 
209 
     | 
    
         
             
                # @return [EmptyStructure]
         
     | 
| 
       206 
210 
     | 
    
         
             
                def associate_with_vpc(options = {})
         
     | 
| 
       207 
211 
     | 
    
         
             
                  options = options.merge(dhcp_options_id: @id)
         
     | 
| 
       208 
     | 
    
         
            -
                  resp =  
     | 
| 
      
 212 
     | 
    
         
            +
                  resp = Aws::Plugins::UserAgent.feature('resource') do
         
     | 
| 
      
 213 
     | 
    
         
            +
                    @client.associate_dhcp_options(options)
         
     | 
| 
      
 214 
     | 
    
         
            +
                  end
         
     | 
| 
       209 
215 
     | 
    
         
             
                  resp.data
         
     | 
| 
       210 
216 
     | 
    
         
             
                end
         
     | 
| 
       211 
217 
     | 
    
         | 
| 
         @@ -234,7 +240,9 @@ module Aws::EC2 
     | 
|
| 
       234 
240 
     | 
    
         
             
                def create_tags(options = {})
         
     | 
| 
       235 
241 
     | 
    
         
             
                  batch = []
         
     | 
| 
       236 
242 
     | 
    
         
             
                  options = Aws::Util.deep_merge(options, resources: [@id])
         
     | 
| 
       237 
     | 
    
         
            -
                  resp =  
     | 
| 
      
 243 
     | 
    
         
            +
                  resp = Aws::Plugins::UserAgent.feature('resource') do
         
     | 
| 
      
 244 
     | 
    
         
            +
                    @client.create_tags(options)
         
     | 
| 
      
 245 
     | 
    
         
            +
                  end
         
     | 
| 
       238 
246 
     | 
    
         
             
                  options[:tags].each do |t|
         
     | 
| 
       239 
247 
     | 
    
         
             
                    batch << Tag.new(
         
     | 
| 
       240 
248 
     | 
    
         
             
                      resource_id: @id,
         
     | 
| 
         @@ -279,7 +287,9 @@ module Aws::EC2 
     | 
|
| 
       279 
287 
     | 
    
         
             
                def delete_tags(options = {})
         
     | 
| 
       280 
288 
     | 
    
         
             
                  batch = []
         
     | 
| 
       281 
289 
     | 
    
         
             
                  options = Aws::Util.deep_merge(options, resources: [@id])
         
     | 
| 
       282 
     | 
    
         
            -
                  resp =  
     | 
| 
      
 290 
     | 
    
         
            +
                  resp = Aws::Plugins::UserAgent.feature('resource') do
         
     | 
| 
      
 291 
     | 
    
         
            +
                    @client.delete_tags(options)
         
     | 
| 
      
 292 
     | 
    
         
            +
                  end
         
     | 
| 
       283 
293 
     | 
    
         
             
                  options[:tags].each do |t|
         
     | 
| 
       284 
294 
     | 
    
         
             
                    batch << Tag.new(
         
     | 
| 
       285 
295 
     | 
    
         
             
                      resource_id: @id,
         
     | 
| 
         @@ -305,7 +315,9 @@ module Aws::EC2 
     | 
|
| 
       305 
315 
     | 
    
         
             
                # @return [EmptyStructure]
         
     | 
| 
       306 
316 
     | 
    
         
             
                def delete(options = {})
         
     | 
| 
       307 
317 
     | 
    
         
             
                  options = options.merge(dhcp_options_id: @id)
         
     | 
| 
       308 
     | 
    
         
            -
                  resp =  
     | 
| 
      
 318 
     | 
    
         
            +
                  resp = Aws::Plugins::UserAgent.feature('resource') do
         
     | 
| 
      
 319 
     | 
    
         
            +
                    @client.delete_dhcp_options(options)
         
     | 
| 
      
 320 
     | 
    
         
            +
                  end
         
     | 
| 
       309 
321 
     | 
    
         
             
                  resp.data
         
     | 
| 
       310 
322 
     | 
    
         
             
                end
         
     | 
| 
       311 
323 
     | 
    
         | 
| 
         @@ -0,0 +1,66 @@ 
     | 
|
| 
      
 1 
     | 
    
         
            +
            # frozen_string_literal: true
         
     | 
| 
      
 2 
     | 
    
         
            +
             
     | 
| 
      
 3 
     | 
    
         
            +
            # WARNING ABOUT GENERATED CODE
         
     | 
| 
      
 4 
     | 
    
         
            +
            #
         
     | 
| 
      
 5 
     | 
    
         
            +
            # This file is generated. See the contributing guide for more information:
         
     | 
| 
      
 6 
     | 
    
         
            +
            # https://github.com/aws/aws-sdk-ruby/blob/version-3/CONTRIBUTING.md
         
     | 
| 
      
 7 
     | 
    
         
            +
            #
         
     | 
| 
      
 8 
     | 
    
         
            +
            # WARNING ABOUT GENERATED CODE
         
     | 
| 
      
 9 
     | 
    
         
            +
             
     | 
| 
      
 10 
     | 
    
         
            +
            module Aws::EC2
         
     | 
| 
      
 11 
     | 
    
         
            +
              # Endpoint parameters used to influence endpoints per request.
         
     | 
| 
      
 12 
     | 
    
         
            +
              #
         
     | 
| 
      
 13 
     | 
    
         
            +
              # @!attribute region
         
     | 
| 
      
 14 
     | 
    
         
            +
              #   The AWS region used to dispatch the request.
         
     | 
| 
      
 15 
     | 
    
         
            +
              #
         
     | 
| 
      
 16 
     | 
    
         
            +
              #   @return [String]
         
     | 
| 
      
 17 
     | 
    
         
            +
              #
         
     | 
| 
      
 18 
     | 
    
         
            +
              # @!attribute use_dual_stack
         
     | 
| 
      
 19 
     | 
    
         
            +
              #   When true, use the dual-stack endpoint. If the configured endpoint does not support dual-stack, dispatching the request MAY return an error.
         
     | 
| 
      
 20 
     | 
    
         
            +
              #
         
     | 
| 
      
 21 
     | 
    
         
            +
              #   @return [Boolean]
         
     | 
| 
      
 22 
     | 
    
         
            +
              #
         
     | 
| 
      
 23 
     | 
    
         
            +
              # @!attribute use_fips
         
     | 
| 
      
 24 
     | 
    
         
            +
              #   When true, send this request to the FIPS-compliant regional endpoint. If the configured endpoint does not have a FIPS compliant endpoint, dispatching the request will return an error.
         
     | 
| 
      
 25 
     | 
    
         
            +
              #
         
     | 
| 
      
 26 
     | 
    
         
            +
              #   @return [Boolean]
         
     | 
| 
      
 27 
     | 
    
         
            +
              #
         
     | 
| 
      
 28 
     | 
    
         
            +
              # @!attribute endpoint
         
     | 
| 
      
 29 
     | 
    
         
            +
              #   Override the endpoint used to send this request
         
     | 
| 
      
 30 
     | 
    
         
            +
              #
         
     | 
| 
      
 31 
     | 
    
         
            +
              #   @return [String]
         
     | 
| 
      
 32 
     | 
    
         
            +
              #
         
     | 
| 
      
 33 
     | 
    
         
            +
              EndpointParameters = Struct.new(
         
     | 
| 
      
 34 
     | 
    
         
            +
                :region,
         
     | 
| 
      
 35 
     | 
    
         
            +
                :use_dual_stack,
         
     | 
| 
      
 36 
     | 
    
         
            +
                :use_fips,
         
     | 
| 
      
 37 
     | 
    
         
            +
                :endpoint,
         
     | 
| 
      
 38 
     | 
    
         
            +
              ) do
         
     | 
| 
      
 39 
     | 
    
         
            +
                include Aws::Structure
         
     | 
| 
      
 40 
     | 
    
         
            +
             
     | 
| 
      
 41 
     | 
    
         
            +
                # @api private
         
     | 
| 
      
 42 
     | 
    
         
            +
                class << self
         
     | 
| 
      
 43 
     | 
    
         
            +
                  PARAM_MAP = {
         
     | 
| 
      
 44 
     | 
    
         
            +
                    'Region' => :region,
         
     | 
| 
      
 45 
     | 
    
         
            +
                    'UseDualStack' => :use_dual_stack,
         
     | 
| 
      
 46 
     | 
    
         
            +
                    'UseFIPS' => :use_fips,
         
     | 
| 
      
 47 
     | 
    
         
            +
                    'Endpoint' => :endpoint,
         
     | 
| 
      
 48 
     | 
    
         
            +
                  }.freeze
         
     | 
| 
      
 49 
     | 
    
         
            +
                end
         
     | 
| 
      
 50 
     | 
    
         
            +
             
     | 
| 
      
 51 
     | 
    
         
            +
                def initialize(options = {})
         
     | 
| 
      
 52 
     | 
    
         
            +
                  self[:region] = options[:region]
         
     | 
| 
      
 53 
     | 
    
         
            +
                  self[:use_dual_stack] = options[:use_dual_stack]
         
     | 
| 
      
 54 
     | 
    
         
            +
                  self[:use_dual_stack] = false if self[:use_dual_stack].nil?
         
     | 
| 
      
 55 
     | 
    
         
            +
                  if self[:use_dual_stack].nil?
         
     | 
| 
      
 56 
     | 
    
         
            +
                    raise ArgumentError, "Missing required EndpointParameter: :use_dual_stack"
         
     | 
| 
      
 57 
     | 
    
         
            +
                  end
         
     | 
| 
      
 58 
     | 
    
         
            +
                  self[:use_fips] = options[:use_fips]
         
     | 
| 
      
 59 
     | 
    
         
            +
                  self[:use_fips] = false if self[:use_fips].nil?
         
     | 
| 
      
 60 
     | 
    
         
            +
                  if self[:use_fips].nil?
         
     | 
| 
      
 61 
     | 
    
         
            +
                    raise ArgumentError, "Missing required EndpointParameter: :use_fips"
         
     | 
| 
      
 62 
     | 
    
         
            +
                  end
         
     | 
| 
      
 63 
     | 
    
         
            +
                  self[:endpoint] = options[:endpoint]
         
     | 
| 
      
 64 
     | 
    
         
            +
                end
         
     | 
| 
      
 65 
     | 
    
         
            +
              end
         
     | 
| 
      
 66 
     | 
    
         
            +
            end
         
     | 
| 
         @@ -0,0 +1,57 @@ 
     | 
|
| 
      
 1 
     | 
    
         
            +
            # frozen_string_literal: true
         
     | 
| 
      
 2 
     | 
    
         
            +
             
     | 
| 
      
 3 
     | 
    
         
            +
            # WARNING ABOUT GENERATED CODE
         
     | 
| 
      
 4 
     | 
    
         
            +
            #
         
     | 
| 
      
 5 
     | 
    
         
            +
            # This file is generated. See the contributing guide for more information:
         
     | 
| 
      
 6 
     | 
    
         
            +
            # https://github.com/aws/aws-sdk-ruby/blob/version-3/CONTRIBUTING.md
         
     | 
| 
      
 7 
     | 
    
         
            +
            #
         
     | 
| 
      
 8 
     | 
    
         
            +
            # WARNING ABOUT GENERATED CODE
         
     | 
| 
      
 9 
     | 
    
         
            +
             
     | 
| 
      
 10 
     | 
    
         
            +
            module Aws::EC2
         
     | 
| 
      
 11 
     | 
    
         
            +
              class EndpointProvider
         
     | 
| 
      
 12 
     | 
    
         
            +
                def resolve_endpoint(parameters)
         
     | 
| 
      
 13 
     | 
    
         
            +
                  region = parameters.region
         
     | 
| 
      
 14 
     | 
    
         
            +
                  use_dual_stack = parameters.use_dual_stack
         
     | 
| 
      
 15 
     | 
    
         
            +
                  use_fips = parameters.use_fips
         
     | 
| 
      
 16 
     | 
    
         
            +
                  endpoint = parameters.endpoint
         
     | 
| 
      
 17 
     | 
    
         
            +
                  if Aws::Endpoints::Matchers.set?(endpoint)
         
     | 
| 
      
 18 
     | 
    
         
            +
                    if Aws::Endpoints::Matchers.boolean_equals?(use_fips, true)
         
     | 
| 
      
 19 
     | 
    
         
            +
                      raise ArgumentError, "Invalid Configuration: FIPS and custom endpoint are not supported"
         
     | 
| 
      
 20 
     | 
    
         
            +
                    end
         
     | 
| 
      
 21 
     | 
    
         
            +
                    if Aws::Endpoints::Matchers.boolean_equals?(use_dual_stack, true)
         
     | 
| 
      
 22 
     | 
    
         
            +
                      raise ArgumentError, "Invalid Configuration: Dualstack and custom endpoint are not supported"
         
     | 
| 
      
 23 
     | 
    
         
            +
                    end
         
     | 
| 
      
 24 
     | 
    
         
            +
                    return Aws::Endpoints::Endpoint.new(url: endpoint, headers: {}, properties: {})
         
     | 
| 
      
 25 
     | 
    
         
            +
                  end
         
     | 
| 
      
 26 
     | 
    
         
            +
                  if Aws::Endpoints::Matchers.set?(region)
         
     | 
| 
      
 27 
     | 
    
         
            +
                    if (partition_result = Aws::Endpoints::Matchers.aws_partition(region))
         
     | 
| 
      
 28 
     | 
    
         
            +
                      if Aws::Endpoints::Matchers.boolean_equals?(use_fips, true) && Aws::Endpoints::Matchers.boolean_equals?(use_dual_stack, true)
         
     | 
| 
      
 29 
     | 
    
         
            +
                        if Aws::Endpoints::Matchers.boolean_equals?(true, Aws::Endpoints::Matchers.attr(partition_result, "supportsFIPS")) && Aws::Endpoints::Matchers.boolean_equals?(true, Aws::Endpoints::Matchers.attr(partition_result, "supportsDualStack"))
         
     | 
| 
      
 30 
     | 
    
         
            +
                          return Aws::Endpoints::Endpoint.new(url: "https://ec2-fips.#{region}.#{partition_result['dualStackDnsSuffix']}", headers: {}, properties: {})
         
     | 
| 
      
 31 
     | 
    
         
            +
                        end
         
     | 
| 
      
 32 
     | 
    
         
            +
                        raise ArgumentError, "FIPS and DualStack are enabled, but this partition does not support one or both"
         
     | 
| 
      
 33 
     | 
    
         
            +
                      end
         
     | 
| 
      
 34 
     | 
    
         
            +
                      if Aws::Endpoints::Matchers.boolean_equals?(use_fips, true)
         
     | 
| 
      
 35 
     | 
    
         
            +
                        if Aws::Endpoints::Matchers.boolean_equals?(Aws::Endpoints::Matchers.attr(partition_result, "supportsFIPS"), true)
         
     | 
| 
      
 36 
     | 
    
         
            +
                          if Aws::Endpoints::Matchers.string_equals?(Aws::Endpoints::Matchers.attr(partition_result, "name"), "aws-us-gov")
         
     | 
| 
      
 37 
     | 
    
         
            +
                            return Aws::Endpoints::Endpoint.new(url: "https://ec2.#{region}.amazonaws.com", headers: {}, properties: {})
         
     | 
| 
      
 38 
     | 
    
         
            +
                          end
         
     | 
| 
      
 39 
     | 
    
         
            +
                          return Aws::Endpoints::Endpoint.new(url: "https://ec2-fips.#{region}.#{partition_result['dnsSuffix']}", headers: {}, properties: {})
         
     | 
| 
      
 40 
     | 
    
         
            +
                        end
         
     | 
| 
      
 41 
     | 
    
         
            +
                        raise ArgumentError, "FIPS is enabled but this partition does not support FIPS"
         
     | 
| 
      
 42 
     | 
    
         
            +
                      end
         
     | 
| 
      
 43 
     | 
    
         
            +
                      if Aws::Endpoints::Matchers.boolean_equals?(use_dual_stack, true)
         
     | 
| 
      
 44 
     | 
    
         
            +
                        if Aws::Endpoints::Matchers.boolean_equals?(true, Aws::Endpoints::Matchers.attr(partition_result, "supportsDualStack"))
         
     | 
| 
      
 45 
     | 
    
         
            +
                          return Aws::Endpoints::Endpoint.new(url: "https://ec2.#{region}.#{partition_result['dualStackDnsSuffix']}", headers: {}, properties: {})
         
     | 
| 
      
 46 
     | 
    
         
            +
                        end
         
     | 
| 
      
 47 
     | 
    
         
            +
                        raise ArgumentError, "DualStack is enabled but this partition does not support DualStack"
         
     | 
| 
      
 48 
     | 
    
         
            +
                      end
         
     | 
| 
      
 49 
     | 
    
         
            +
                      return Aws::Endpoints::Endpoint.new(url: "https://ec2.#{region}.#{partition_result['dnsSuffix']}", headers: {}, properties: {})
         
     | 
| 
      
 50 
     | 
    
         
            +
                    end
         
     | 
| 
      
 51 
     | 
    
         
            +
                  end
         
     | 
| 
      
 52 
     | 
    
         
            +
                  raise ArgumentError, "Invalid Configuration: Missing Region"
         
     | 
| 
      
 53 
     | 
    
         
            +
                  raise ArgumentError, 'No endpoint could be resolved'
         
     | 
| 
      
 54 
     | 
    
         
            +
             
     | 
| 
      
 55 
     | 
    
         
            +
                end
         
     | 
| 
      
 56 
     | 
    
         
            +
              end
         
     | 
| 
      
 57 
     | 
    
         
            +
            end
         
     |