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
 
| 
         @@ -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_internet_gateways(internet_gateway_ids: [@id])
         
     | 
| 
      
 73 
     | 
    
         
            +
                  end
         
     | 
| 
       72 
74 
     | 
    
         
             
                  @data = resp.internet_gateways[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 attach_to_vpc(options = {})
         
     | 
| 
       207 
211 
     | 
    
         
             
                  options = options.merge(internet_gateway_id: @id)
         
     | 
| 
       208 
     | 
    
         
            -
                  resp =  
     | 
| 
      
 212 
     | 
    
         
            +
                  resp = Aws::Plugins::UserAgent.feature('resource') do
         
     | 
| 
      
 213 
     | 
    
         
            +
                    @client.attach_internet_gateway(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(internet_gateway_id: @id)
         
     | 
| 
       308 
     | 
    
         
            -
                  resp =  
     | 
| 
      
 318 
     | 
    
         
            +
                  resp = Aws::Plugins::UserAgent.feature('resource') do
         
     | 
| 
      
 319 
     | 
    
         
            +
                    @client.delete_internet_gateway(options)
         
     | 
| 
      
 320 
     | 
    
         
            +
                  end
         
     | 
| 
       309 
321 
     | 
    
         
             
                  resp.data
         
     | 
| 
       310 
322 
     | 
    
         
             
                end
         
     | 
| 
       311 
323 
     | 
    
         | 
| 
         @@ -326,7 +338,9 @@ module Aws::EC2 
     | 
|
| 
       326 
338 
     | 
    
         
             
                # @return [EmptyStructure]
         
     | 
| 
       327 
339 
     | 
    
         
             
                def detach_from_vpc(options = {})
         
     | 
| 
       328 
340 
     | 
    
         
             
                  options = options.merge(internet_gateway_id: @id)
         
     | 
| 
       329 
     | 
    
         
            -
                  resp =  
     | 
| 
      
 341 
     | 
    
         
            +
                  resp = Aws::Plugins::UserAgent.feature('resource') do
         
     | 
| 
      
 342 
     | 
    
         
            +
                    @client.detach_internet_gateway(options)
         
     | 
| 
      
 343 
     | 
    
         
            +
                  end
         
     | 
| 
       330 
344 
     | 
    
         
             
                  resp.data
         
     | 
| 
       331 
345 
     | 
    
         
             
                end
         
     | 
| 
       332 
346 
     | 
    
         | 
    
        data/lib/aws-sdk-ec2/key_pair.rb
    CHANGED
    
    | 
         @@ -35,7 +35,12 @@ module Aws::EC2 
     | 
|
| 
       35 
35 
     | 
    
         
             
                end
         
     | 
| 
       36 
36 
     | 
    
         
             
                alias :key_name :name
         
     | 
| 
       37 
37 
     | 
    
         | 
| 
       38 
     | 
    
         
            -
                #  
     | 
| 
      
 38 
     | 
    
         
            +
                # * For RSA key pairs, the key fingerprint is the SHA-1 digest of the
         
     | 
| 
      
 39 
     | 
    
         
            +
                #   DER encoded private key.
         
     | 
| 
      
 40 
     | 
    
         
            +
                #
         
     | 
| 
      
 41 
     | 
    
         
            +
                # * For ED25519 key pairs, the key fingerprint is the base64-encoded
         
     | 
| 
      
 42 
     | 
    
         
            +
                #   SHA-256 digest, which is the default for OpenSSH, starting with
         
     | 
| 
      
 43 
     | 
    
         
            +
                #   OpenSSH 6.8.
         
     | 
| 
       39 
44 
     | 
    
         
             
                # @return [String]
         
     | 
| 
       40 
45 
     | 
    
         
             
                def key_fingerprint
         
     | 
| 
       41 
46 
     | 
    
         
             
                  data[:key_fingerprint]
         
     | 
| 
         @@ -183,7 +188,9 @@ module Aws::EC2 
     | 
|
| 
       183 
188 
     | 
    
         
             
                      :retry
         
     | 
| 
       184 
189 
     | 
    
         
             
                    end
         
     | 
| 
       185 
190 
     | 
    
         
             
                  end
         
     | 
| 
       186 
     | 
    
         
            -
                  Aws:: 
     | 
| 
      
 191 
     | 
    
         
            +
                  Aws::Plugins::UserAgent.feature('resource') do
         
     | 
| 
      
 192 
     | 
    
         
            +
                    Aws::Waiters::Waiter.new(options).wait({})
         
     | 
| 
      
 193 
     | 
    
         
            +
                  end
         
     | 
| 
       187 
194 
     | 
    
         
             
                end
         
     | 
| 
       188 
195 
     | 
    
         | 
| 
       189 
196 
     | 
    
         
             
                # @!group Actions
         
     | 
| 
         @@ -202,10 +209,12 @@ module Aws::EC2 
     | 
|
| 
       202 
209 
     | 
    
         
             
                #   without actually making the request, and provides an error response.
         
     | 
| 
       203 
210 
     | 
    
         
             
                #   If you have the required permissions, the error response is
         
     | 
| 
       204 
211 
     | 
    
         
             
                #   `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
         
     | 
| 
       205 
     | 
    
         
            -
                # @return [ 
     | 
| 
      
 212 
     | 
    
         
            +
                # @return [Types::DeleteKeyPairResult]
         
     | 
| 
       206 
213 
     | 
    
         
             
                def delete(options = {})
         
     | 
| 
       207 
214 
     | 
    
         
             
                  options = options.merge(key_name: @name)
         
     | 
| 
       208 
     | 
    
         
            -
                  resp =  
     | 
| 
      
 215 
     | 
    
         
            +
                  resp = Aws::Plugins::UserAgent.feature('resource') do
         
     | 
| 
      
 216 
     | 
    
         
            +
                    @client.delete_key_pair(options)
         
     | 
| 
      
 217 
     | 
    
         
            +
                  end
         
     | 
| 
       209 
218 
     | 
    
         
             
                  resp.data
         
     | 
| 
       210 
219 
     | 
    
         
             
                end
         
     | 
| 
       211 
220 
     | 
    
         | 
| 
         @@ -80,6 +80,28 @@ module Aws::EC2 
     | 
|
| 
       80 
80 
     | 
    
         
             
                  data[:tags]
         
     | 
| 
       81 
81 
     | 
    
         
             
                end
         
     | 
| 
       82 
82 
     | 
    
         | 
| 
      
 83 
     | 
    
         
            +
                # The public key material.
         
     | 
| 
      
 84 
     | 
    
         
            +
                # @return [String]
         
     | 
| 
      
 85 
     | 
    
         
            +
                def public_key
         
     | 
| 
      
 86 
     | 
    
         
            +
                  data[:public_key]
         
     | 
| 
      
 87 
     | 
    
         
            +
                end
         
     | 
| 
      
 88 
     | 
    
         
            +
             
     | 
| 
      
 89 
     | 
    
         
            +
                # If you used Amazon EC2 to create the key pair, this is the date and
         
     | 
| 
      
 90 
     | 
    
         
            +
                # time when the key was created, in [ISO 8601 date-time format][1], in
         
     | 
| 
      
 91 
     | 
    
         
            +
                # the UTC time zone.
         
     | 
| 
      
 92 
     | 
    
         
            +
                #
         
     | 
| 
      
 93 
     | 
    
         
            +
                # If you imported an existing key pair to Amazon EC2, this is the date
         
     | 
| 
      
 94 
     | 
    
         
            +
                # and time the key was imported, in [ISO 8601 date-time format][1], in
         
     | 
| 
      
 95 
     | 
    
         
            +
                # the UTC time zone.
         
     | 
| 
      
 96 
     | 
    
         
            +
                #
         
     | 
| 
      
 97 
     | 
    
         
            +
                #
         
     | 
| 
      
 98 
     | 
    
         
            +
                #
         
     | 
| 
      
 99 
     | 
    
         
            +
                # [1]: https://www.iso.org/iso-8601-date-and-time-format.html
         
     | 
| 
      
 100 
     | 
    
         
            +
                # @return [Time]
         
     | 
| 
      
 101 
     | 
    
         
            +
                def create_time
         
     | 
| 
      
 102 
     | 
    
         
            +
                  data[:create_time]
         
     | 
| 
      
 103 
     | 
    
         
            +
                end
         
     | 
| 
      
 104 
     | 
    
         
            +
             
     | 
| 
       83 
105 
     | 
    
         
             
                # @!endgroup
         
     | 
| 
       84 
106 
     | 
    
         | 
| 
       85 
107 
     | 
    
         
             
                # @return [Client]
         
     | 
| 
         @@ -94,7 +116,9 @@ module Aws::EC2 
     | 
|
| 
       94 
116 
     | 
    
         
             
                #
         
     | 
| 
       95 
117 
     | 
    
         
             
                # @return [self]
         
     | 
| 
       96 
118 
     | 
    
         
             
                def load
         
     | 
| 
       97 
     | 
    
         
            -
                  resp =  
     | 
| 
      
 119 
     | 
    
         
            +
                  resp = Aws::Plugins::UserAgent.feature('resource') do
         
     | 
| 
      
 120 
     | 
    
         
            +
                    @client.describe_key_pairs(key_names: [@name])
         
     | 
| 
      
 121 
     | 
    
         
            +
                  end
         
     | 
| 
       98 
122 
     | 
    
         
             
                  @data = resp.key_pairs[0]
         
     | 
| 
       99 
123 
     | 
    
         
             
                  self
         
     | 
| 
       100 
124 
     | 
    
         
             
                end
         
     | 
| 
         @@ -209,7 +233,9 @@ module Aws::EC2 
     | 
|
| 
       209 
233 
     | 
    
         
             
                      :retry
         
     | 
| 
       210 
234 
     | 
    
         
             
                    end
         
     | 
| 
       211 
235 
     | 
    
         
             
                  end
         
     | 
| 
       212 
     | 
    
         
            -
                  Aws:: 
     | 
| 
      
 236 
     | 
    
         
            +
                  Aws::Plugins::UserAgent.feature('resource') do
         
     | 
| 
      
 237 
     | 
    
         
            +
                    Aws::Waiters::Waiter.new(options).wait({})
         
     | 
| 
      
 238 
     | 
    
         
            +
                  end
         
     | 
| 
       213 
239 
     | 
    
         
             
                end
         
     | 
| 
       214 
240 
     | 
    
         | 
| 
       215 
241 
     | 
    
         
             
                # @!group Actions
         
     | 
| 
         @@ -228,10 +254,12 @@ module Aws::EC2 
     | 
|
| 
       228 
254 
     | 
    
         
             
                #   without actually making the request, and provides an error response.
         
     | 
| 
       229 
255 
     | 
    
         
             
                #   If you have the required permissions, the error response is
         
     | 
| 
       230 
256 
     | 
    
         
             
                #   `DryRunOperation`. Otherwise, it is `UnauthorizedOperation`.
         
     | 
| 
       231 
     | 
    
         
            -
                # @return [ 
     | 
| 
      
 257 
     | 
    
         
            +
                # @return [Types::DeleteKeyPairResult]
         
     | 
| 
       232 
258 
     | 
    
         
             
                def delete(options = {})
         
     | 
| 
       233 
259 
     | 
    
         
             
                  options = options.merge(key_name: @name)
         
     | 
| 
       234 
     | 
    
         
            -
                  resp =  
     | 
| 
      
 260 
     | 
    
         
            +
                  resp = Aws::Plugins::UserAgent.feature('resource') do
         
     | 
| 
      
 261 
     | 
    
         
            +
                    @client.delete_key_pair(options)
         
     | 
| 
      
 262 
     | 
    
         
            +
                  end
         
     | 
| 
       235 
263 
     | 
    
         
             
                  resp.data
         
     | 
| 
       236 
264 
     | 
    
         
             
                end
         
     | 
| 
       237 
265 
     | 
    
         | 
| 
         @@ -104,20 +104,20 @@ module Aws::EC2 
     | 
|
| 
       104 
104 
     | 
    
         | 
| 
       105 
105 
     | 
    
         
             
                # The state of the NAT gateway.
         
     | 
| 
       106 
106 
     | 
    
         
             
                #
         
     | 
| 
       107 
     | 
    
         
            -
                # * `pending 
     | 
| 
      
 107 
     | 
    
         
            +
                # * `pending`: The NAT gateway is being created and is not ready to
         
     | 
| 
       108 
108 
     | 
    
         
             
                #   process traffic.
         
     | 
| 
       109 
109 
     | 
    
         
             
                #
         
     | 
| 
       110 
     | 
    
         
            -
                # * `failed 
     | 
| 
      
 110 
     | 
    
         
            +
                # * `failed`: The NAT gateway could not be created. Check the
         
     | 
| 
       111 
111 
     | 
    
         
             
                #   `failureCode` and `failureMessage` fields for the reason.
         
     | 
| 
       112 
112 
     | 
    
         
             
                #
         
     | 
| 
       113 
     | 
    
         
            -
                # * `available 
     | 
| 
       114 
     | 
    
         
            -
                #    
     | 
| 
       115 
     | 
    
         
            -
                #    
     | 
| 
      
 113 
     | 
    
         
            +
                # * `available`: The NAT gateway is able to process traffic. This status
         
     | 
| 
      
 114 
     | 
    
         
            +
                #   remains until you delete the NAT gateway, and does not indicate the
         
     | 
| 
      
 115 
     | 
    
         
            +
                #   health of the NAT gateway.
         
     | 
| 
       116 
116 
     | 
    
         
             
                #
         
     | 
| 
       117 
     | 
    
         
            -
                # * `deleting 
     | 
| 
      
 117 
     | 
    
         
            +
                # * `deleting`: The NAT gateway is in the process of being terminated
         
     | 
| 
       118 
118 
     | 
    
         
             
                #   and may still be processing traffic.
         
     | 
| 
       119 
119 
     | 
    
         
             
                #
         
     | 
| 
       120 
     | 
    
         
            -
                # * `deleted 
     | 
| 
      
 120 
     | 
    
         
            +
                # * `deleted`: The NAT gateway has been terminated and is no longer
         
     | 
| 
       121 
121 
     | 
    
         
             
                #   processing traffic.
         
     | 
| 
       122 
122 
     | 
    
         
             
                # @return [String]
         
     | 
| 
       123 
123 
     | 
    
         
             
                def state
         
     | 
| 
         @@ -163,7 +163,9 @@ module Aws::EC2 
     | 
|
| 
       163 
163 
     | 
    
         
             
                #
         
     | 
| 
       164 
164 
     | 
    
         
             
                # @return [self]
         
     | 
| 
       165 
165 
     | 
    
         
             
                def load
         
     | 
| 
       166 
     | 
    
         
            -
                  resp =  
     | 
| 
      
 166 
     | 
    
         
            +
                  resp = Aws::Plugins::UserAgent.feature('resource') do
         
     | 
| 
      
 167 
     | 
    
         
            +
                    @client.describe_nat_gateways(nat_gateway_ids: [@id])
         
     | 
| 
      
 168 
     | 
    
         
            +
                  end
         
     | 
| 
       167 
169 
     | 
    
         
             
                  @data = resp.nat_gateways[0]
         
     | 
| 
       168 
170 
     | 
    
         
             
                  self
         
     | 
| 
       169 
171 
     | 
    
         
             
                end
         
     | 
| 
         @@ -278,7 +280,9 @@ module Aws::EC2 
     | 
|
| 
       278 
280 
     | 
    
         
             
                      :retry
         
     | 
| 
       279 
281 
     | 
    
         
             
                    end
         
     | 
| 
       280 
282 
     | 
    
         
             
                  end
         
     | 
| 
       281 
     | 
    
         
            -
                  Aws:: 
     | 
| 
      
 283 
     | 
    
         
            +
                  Aws::Plugins::UserAgent.feature('resource') do
         
     | 
| 
      
 284 
     | 
    
         
            +
                    Aws::Waiters::Waiter.new(options).wait({})
         
     | 
| 
      
 285 
     | 
    
         
            +
                  end
         
     | 
| 
       282 
286 
     | 
    
         
             
                end
         
     | 
| 
       283 
287 
     | 
    
         | 
| 
       284 
288 
     | 
    
         
             
                # @!group Actions
         
     | 
| 
         @@ -308,7 +312,9 @@ module Aws::EC2 
     | 
|
| 
       308 
312 
     | 
    
         
             
                def create_tags(options = {})
         
     | 
| 
       309 
313 
     | 
    
         
             
                  batch = []
         
     | 
| 
       310 
314 
     | 
    
         
             
                  options = Aws::Util.deep_merge(options, resources: [@id])
         
     | 
| 
       311 
     | 
    
         
            -
                  resp =  
     | 
| 
      
 315 
     | 
    
         
            +
                  resp = Aws::Plugins::UserAgent.feature('resource') do
         
     | 
| 
      
 316 
     | 
    
         
            +
                    @client.create_tags(options)
         
     | 
| 
      
 317 
     | 
    
         
            +
                  end
         
     | 
| 
       312 
318 
     | 
    
         
             
                  options[:tags].each do |t|
         
     | 
| 
       313 
319 
     | 
    
         
             
                    batch << Tag.new(
         
     | 
| 
       314 
320 
     | 
    
         
             
                      resource_id: @id,
         
     | 
| 
         @@ -353,7 +359,9 @@ module Aws::EC2 
     | 
|
| 
       353 
359 
     | 
    
         
             
                def delete_tags(options = {})
         
     | 
| 
       354 
360 
     | 
    
         
             
                  batch = []
         
     | 
| 
       355 
361 
     | 
    
         
             
                  options = Aws::Util.deep_merge(options, resources: [@id])
         
     | 
| 
       356 
     | 
    
         
            -
                  resp =  
     | 
| 
      
 362 
     | 
    
         
            +
                  resp = Aws::Plugins::UserAgent.feature('resource') do
         
     | 
| 
      
 363 
     | 
    
         
            +
                    @client.delete_tags(options)
         
     | 
| 
      
 364 
     | 
    
         
            +
                  end
         
     | 
| 
       357 
365 
     | 
    
         
             
                  options[:tags].each do |t|
         
     | 
| 
       358 
366 
     | 
    
         
             
                    batch << Tag.new(
         
     | 
| 
       359 
367 
     | 
    
         
             
                      resource_id: @id,
         
     | 
| 
         @@ -379,7 +387,9 @@ module Aws::EC2 
     | 
|
| 
       379 
387 
     | 
    
         
             
                # @return [Types::DeleteNatGatewayResult]
         
     | 
| 
       380 
388 
     | 
    
         
             
                def delete(options = {})
         
     | 
| 
       381 
389 
     | 
    
         
             
                  options = options.merge(nat_gateway_id: @id)
         
     | 
| 
       382 
     | 
    
         
            -
                  resp =  
     | 
| 
      
 390 
     | 
    
         
            +
                  resp = Aws::Plugins::UserAgent.feature('resource') do
         
     | 
| 
      
 391 
     | 
    
         
            +
                    @client.delete_nat_gateway(options)
         
     | 
| 
      
 392 
     | 
    
         
            +
                  end
         
     | 
| 
       383 
393 
     | 
    
         
             
                  resp.data
         
     | 
| 
       384 
394 
     | 
    
         
             
                end
         
     | 
| 
       385 
395 
     | 
    
         | 
| 
         @@ -41,7 +41,7 @@ module Aws::EC2 
     | 
|
| 
       41 
41 
     | 
    
         
             
                  data[:associations]
         
     | 
| 
       42 
42 
     | 
    
         
             
                end
         
     | 
| 
       43 
43 
     | 
    
         | 
| 
       44 
     | 
    
         
            -
                #  
     | 
| 
      
 44 
     | 
    
         
            +
                # The entries (rules) in the network ACL.
         
     | 
| 
       45 
45 
     | 
    
         
             
                # @return [Array<Types::NetworkAclEntry>]
         
     | 
| 
       46 
46 
     | 
    
         
             
                def entries
         
     | 
| 
       47 
47 
     | 
    
         
             
                  data[:entries]
         
     | 
| 
         @@ -85,7 +85,9 @@ module Aws::EC2 
     | 
|
| 
       85 
85 
     | 
    
         
             
                #
         
     | 
| 
       86 
86 
     | 
    
         
             
                # @return [self]
         
     | 
| 
       87 
87 
     | 
    
         
             
                def load
         
     | 
| 
       88 
     | 
    
         
            -
                  resp =  
     | 
| 
      
 88 
     | 
    
         
            +
                  resp = Aws::Plugins::UserAgent.feature('resource') do
         
     | 
| 
      
 89 
     | 
    
         
            +
                    @client.describe_network_acls(network_acl_ids: [@id])
         
     | 
| 
      
 90 
     | 
    
         
            +
                  end
         
     | 
| 
       89 
91 
     | 
    
         
             
                  @data = resp.network_acls[0]
         
     | 
| 
       90 
92 
     | 
    
         
             
                  self
         
     | 
| 
       91 
93 
     | 
    
         
             
                end
         
     | 
| 
         @@ -200,7 +202,9 @@ module Aws::EC2 
     | 
|
| 
       200 
202 
     | 
    
         
             
                      :retry
         
     | 
| 
       201 
203 
     | 
    
         
             
                    end
         
     | 
| 
       202 
204 
     | 
    
         
             
                  end
         
     | 
| 
       203 
     | 
    
         
            -
                  Aws:: 
     | 
| 
      
 205 
     | 
    
         
            +
                  Aws::Plugins::UserAgent.feature('resource') do
         
     | 
| 
      
 206 
     | 
    
         
            +
                    Aws::Waiters::Waiter.new(options).wait({})
         
     | 
| 
      
 207 
     | 
    
         
            +
                  end
         
     | 
| 
       204 
208 
     | 
    
         
             
                end
         
     | 
| 
       205 
209 
     | 
    
         | 
| 
       206 
210 
     | 
    
         
             
                # @!group Actions
         
     | 
| 
         @@ -268,7 +272,9 @@ module Aws::EC2 
     | 
|
| 
       268 
272 
     | 
    
         
             
                # @return [EmptyStructure]
         
     | 
| 
       269 
273 
     | 
    
         
             
                def create_entry(options = {})
         
     | 
| 
       270 
274 
     | 
    
         
             
                  options = options.merge(network_acl_id: @id)
         
     | 
| 
       271 
     | 
    
         
            -
                  resp =  
     | 
| 
      
 275 
     | 
    
         
            +
                  resp = Aws::Plugins::UserAgent.feature('resource') do
         
     | 
| 
      
 276 
     | 
    
         
            +
                    @client.create_network_acl_entry(options)
         
     | 
| 
      
 277 
     | 
    
         
            +
                  end
         
     | 
| 
       272 
278 
     | 
    
         
             
                  resp.data
         
     | 
| 
       273 
279 
     | 
    
         
             
                end
         
     | 
| 
       274 
280 
     | 
    
         | 
| 
         @@ -297,7 +303,9 @@ module Aws::EC2 
     | 
|
| 
       297 
303 
     | 
    
         
             
                def create_tags(options = {})
         
     | 
| 
       298 
304 
     | 
    
         
             
                  batch = []
         
     | 
| 
       299 
305 
     | 
    
         
             
                  options = Aws::Util.deep_merge(options, resources: [@id])
         
     | 
| 
       300 
     | 
    
         
            -
                  resp =  
     | 
| 
      
 306 
     | 
    
         
            +
                  resp = Aws::Plugins::UserAgent.feature('resource') do
         
     | 
| 
      
 307 
     | 
    
         
            +
                    @client.create_tags(options)
         
     | 
| 
      
 308 
     | 
    
         
            +
                  end
         
     | 
| 
       301 
309 
     | 
    
         
             
                  options[:tags].each do |t|
         
     | 
| 
       302 
310 
     | 
    
         
             
                    batch << Tag.new(
         
     | 
| 
       303 
311 
     | 
    
         
             
                      resource_id: @id,
         
     | 
| 
         @@ -342,7 +350,9 @@ module Aws::EC2 
     | 
|
| 
       342 
350 
     | 
    
         
             
                def delete_tags(options = {})
         
     | 
| 
       343 
351 
     | 
    
         
             
                  batch = []
         
     | 
| 
       344 
352 
     | 
    
         
             
                  options = Aws::Util.deep_merge(options, resources: [@id])
         
     | 
| 
       345 
     | 
    
         
            -
                  resp =  
     | 
| 
      
 353 
     | 
    
         
            +
                  resp = Aws::Plugins::UserAgent.feature('resource') do
         
     | 
| 
      
 354 
     | 
    
         
            +
                    @client.delete_tags(options)
         
     | 
| 
      
 355 
     | 
    
         
            +
                  end
         
     | 
| 
       346 
356 
     | 
    
         
             
                  options[:tags].each do |t|
         
     | 
| 
       347 
357 
     | 
    
         
             
                    batch << Tag.new(
         
     | 
| 
       348 
358 
     | 
    
         
             
                      resource_id: @id,
         
     | 
| 
         @@ -368,7 +378,9 @@ module Aws::EC2 
     | 
|
| 
       368 
378 
     | 
    
         
             
                # @return [EmptyStructure]
         
     | 
| 
       369 
379 
     | 
    
         
             
                def delete(options = {})
         
     | 
| 
       370 
380 
     | 
    
         
             
                  options = options.merge(network_acl_id: @id)
         
     | 
| 
       371 
     | 
    
         
            -
                  resp =  
     | 
| 
      
 381 
     | 
    
         
            +
                  resp = Aws::Plugins::UserAgent.feature('resource') do
         
     | 
| 
      
 382 
     | 
    
         
            +
                    @client.delete_network_acl(options)
         
     | 
| 
      
 383 
     | 
    
         
            +
                  end
         
     | 
| 
       372 
384 
     | 
    
         
             
                  resp.data
         
     | 
| 
       373 
385 
     | 
    
         
             
                end
         
     | 
| 
       374 
386 
     | 
    
         | 
| 
         @@ -392,7 +404,9 @@ module Aws::EC2 
     | 
|
| 
       392 
404 
     | 
    
         
             
                # @return [EmptyStructure]
         
     | 
| 
       393 
405 
     | 
    
         
             
                def delete_entry(options = {})
         
     | 
| 
       394 
406 
     | 
    
         
             
                  options = options.merge(network_acl_id: @id)
         
     | 
| 
       395 
     | 
    
         
            -
                  resp =  
     | 
| 
      
 407 
     | 
    
         
            +
                  resp = Aws::Plugins::UserAgent.feature('resource') do
         
     | 
| 
      
 408 
     | 
    
         
            +
                    @client.delete_network_acl_entry(options)
         
     | 
| 
      
 409 
     | 
    
         
            +
                  end
         
     | 
| 
       396 
410 
     | 
    
         
             
                  resp.data
         
     | 
| 
       397 
411 
     | 
    
         
             
                end
         
     | 
| 
       398 
412 
     | 
    
         | 
| 
         @@ -414,7 +428,9 @@ module Aws::EC2 
     | 
|
| 
       414 
428 
     | 
    
         
             
                # @return [Types::ReplaceNetworkAclAssociationResult]
         
     | 
| 
       415 
429 
     | 
    
         
             
                def replace_association(options = {})
         
     | 
| 
       416 
430 
     | 
    
         
             
                  options = options.merge(network_acl_id: @id)
         
     | 
| 
       417 
     | 
    
         
            -
                  resp =  
     | 
| 
      
 431 
     | 
    
         
            +
                  resp = Aws::Plugins::UserAgent.feature('resource') do
         
     | 
| 
      
 432 
     | 
    
         
            +
                    @client.replace_network_acl_association(options)
         
     | 
| 
      
 433 
     | 
    
         
            +
                  end
         
     | 
| 
       418 
434 
     | 
    
         
             
                  resp.data
         
     | 
| 
       419 
435 
     | 
    
         
             
                end
         
     | 
| 
       420 
436 
     | 
    
         | 
| 
         @@ -476,7 +492,9 @@ module Aws::EC2 
     | 
|
| 
       476 
492 
     | 
    
         
             
                # @return [EmptyStructure]
         
     | 
| 
       477 
493 
     | 
    
         
             
                def replace_entry(options = {})
         
     | 
| 
       478 
494 
     | 
    
         
             
                  options = options.merge(network_acl_id: @id)
         
     | 
| 
       479 
     | 
    
         
            -
                  resp =  
     | 
| 
      
 495 
     | 
    
         
            +
                  resp = Aws::Plugins::UserAgent.feature('resource') do
         
     | 
| 
      
 496 
     | 
    
         
            +
                    @client.replace_network_acl_entry(options)
         
     | 
| 
      
 497 
     | 
    
         
            +
                  end
         
     | 
| 
       480 
498 
     | 
    
         
             
                  resp.data
         
     | 
| 
       481 
499 
     | 
    
         
             
                end
         
     | 
| 
       482 
500 
     | 
    
         | 
| 
         @@ -202,7 +202,9 @@ module Aws::EC2 
     | 
|
| 
       202 
202 
     | 
    
         
             
                #
         
     | 
| 
       203 
203 
     | 
    
         
             
                # @return [self]
         
     | 
| 
       204 
204 
     | 
    
         
             
                def load
         
     | 
| 
       205 
     | 
    
         
            -
                  resp =  
     | 
| 
      
 205 
     | 
    
         
            +
                  resp = Aws::Plugins::UserAgent.feature('resource') do
         
     | 
| 
      
 206 
     | 
    
         
            +
                    @client.describe_network_interfaces(network_interface_ids: [@id])
         
     | 
| 
      
 207 
     | 
    
         
            +
                  end
         
     | 
| 
       206 
208 
     | 
    
         
             
                  @data = resp.network_interfaces[0]
         
     | 
| 
       207 
209 
     | 
    
         
             
                  self
         
     | 
| 
       208 
210 
     | 
    
         
             
                end
         
     | 
| 
         @@ -317,7 +319,9 @@ module Aws::EC2 
     | 
|
| 
       317 
319 
     | 
    
         
             
                      :retry
         
     | 
| 
       318 
320 
     | 
    
         
             
                    end
         
     | 
| 
       319 
321 
     | 
    
         
             
                  end
         
     | 
| 
       320 
     | 
    
         
            -
                  Aws:: 
     | 
| 
      
 322 
     | 
    
         
            +
                  Aws::Plugins::UserAgent.feature('resource') do
         
     | 
| 
      
 323 
     | 
    
         
            +
                    Aws::Waiters::Waiter.new(options).wait({})
         
     | 
| 
      
 324 
     | 
    
         
            +
                  end
         
     | 
| 
       321 
325 
     | 
    
         
             
                end
         
     | 
| 
       322 
326 
     | 
    
         | 
| 
       323 
327 
     | 
    
         
             
                # @!group Actions
         
     | 
| 
         @@ -337,9 +341,9 @@ module Aws::EC2 
     | 
|
| 
       337 
341 
     | 
    
         
             
                #   another network interface or instance to be reassigned to the
         
     | 
| 
       338 
342 
     | 
    
         
             
                #   specified network interface.
         
     | 
| 
       339 
343 
     | 
    
         
             
                # @option options [Array<String>] :private_ip_addresses
         
     | 
| 
       340 
     | 
    
         
            -
                #    
     | 
| 
       341 
     | 
    
         
            -
                #    
     | 
| 
       342 
     | 
    
         
            -
                #    
     | 
| 
      
 344 
     | 
    
         
            +
                #   The IP addresses to be assigned as a secondary private IP address to
         
     | 
| 
      
 345 
     | 
    
         
            +
                #   the network interface. You can't specify this parameter when also
         
     | 
| 
      
 346 
     | 
    
         
            +
                #   specifying a number of secondary IP addresses.
         
     | 
| 
       343 
347 
     | 
    
         
             
                #
         
     | 
| 
       344 
348 
     | 
    
         
             
                #   If you don't specify an IP address, Amazon EC2 automatically selects
         
     | 
| 
       345 
349 
     | 
    
         
             
                #   an IP address within the subnet range.
         
     | 
| 
         @@ -357,7 +361,9 @@ module Aws::EC2 
     | 
|
| 
       357 
361 
     | 
    
         
             
                # @return [Types::AssignPrivateIpAddressesResult]
         
     | 
| 
       358 
362 
     | 
    
         
             
                def assign_private_ip_addresses(options = {})
         
     | 
| 
       359 
363 
     | 
    
         
             
                  options = options.merge(network_interface_id: @id)
         
     | 
| 
       360 
     | 
    
         
            -
                  resp =  
     | 
| 
      
 364 
     | 
    
         
            +
                  resp = Aws::Plugins::UserAgent.feature('resource') do
         
     | 
| 
      
 365 
     | 
    
         
            +
                    @client.assign_private_ip_addresses(options)
         
     | 
| 
      
 366 
     | 
    
         
            +
                  end
         
     | 
| 
       361 
367 
     | 
    
         
             
                  resp.data
         
     | 
| 
       362 
368 
     | 
    
         
             
                end
         
     | 
| 
       363 
369 
     | 
    
         | 
| 
         @@ -368,6 +374,12 @@ module Aws::EC2 
     | 
|
| 
       368 
374 
     | 
    
         
             
                #     dry_run: false,
         
     | 
| 
       369 
375 
     | 
    
         
             
                #     instance_id: "InstanceId", # required
         
     | 
| 
       370 
376 
     | 
    
         
             
                #     network_card_index: 1,
         
     | 
| 
      
 377 
     | 
    
         
            +
                #     ena_srd_specification: {
         
     | 
| 
      
 378 
     | 
    
         
            +
                #       ena_srd_enabled: false,
         
     | 
| 
      
 379 
     | 
    
         
            +
                #       ena_srd_udp_specification: {
         
     | 
| 
      
 380 
     | 
    
         
            +
                #         ena_srd_udp_enabled: false,
         
     | 
| 
      
 381 
     | 
    
         
            +
                #       },
         
     | 
| 
      
 382 
     | 
    
         
            +
                #     },
         
     | 
| 
       371 
383 
     | 
    
         
             
                #   })
         
     | 
| 
       372 
384 
     | 
    
         
             
                # @param [Hash] options ({})
         
     | 
| 
       373 
385 
     | 
    
         
             
                # @option options [required, Integer] :device_index
         
     | 
| 
         @@ -383,10 +395,15 @@ module Aws::EC2 
     | 
|
| 
       383 
395 
     | 
    
         
             
                #   The index of the network card. Some instance types support multiple
         
     | 
| 
       384 
396 
     | 
    
         
             
                #   network cards. The primary network interface must be assigned to
         
     | 
| 
       385 
397 
     | 
    
         
             
                #   network card index 0. The default is network card index 0.
         
     | 
| 
      
 398 
     | 
    
         
            +
                # @option options [Types::EnaSrdSpecification] :ena_srd_specification
         
     | 
| 
      
 399 
     | 
    
         
            +
                #   Configures ENA Express for the network interface that this action
         
     | 
| 
      
 400 
     | 
    
         
            +
                #   attaches to the instance.
         
     | 
| 
       386 
401 
     | 
    
         
             
                # @return [Types::AttachNetworkInterfaceResult]
         
     | 
| 
       387 
402 
     | 
    
         
             
                def attach(options = {})
         
     | 
| 
       388 
403 
     | 
    
         
             
                  options = options.merge(network_interface_id: @id)
         
     | 
| 
       389 
     | 
    
         
            -
                  resp =  
     | 
| 
      
 404 
     | 
    
         
            +
                  resp = Aws::Plugins::UserAgent.feature('resource') do
         
     | 
| 
      
 405 
     | 
    
         
            +
                    @client.attach_network_interface(options)
         
     | 
| 
      
 406 
     | 
    
         
            +
                  end
         
     | 
| 
       390 
407 
     | 
    
         
             
                  resp.data
         
     | 
| 
       391 
408 
     | 
    
         
             
                end
         
     | 
| 
       392 
409 
     | 
    
         | 
| 
         @@ -415,7 +432,9 @@ module Aws::EC2 
     | 
|
| 
       415 
432 
     | 
    
         
             
                def create_tags(options = {})
         
     | 
| 
       416 
433 
     | 
    
         
             
                  batch = []
         
     | 
| 
       417 
434 
     | 
    
         
             
                  options = Aws::Util.deep_merge(options, resources: [@id])
         
     | 
| 
       418 
     | 
    
         
            -
                  resp =  
     | 
| 
      
 435 
     | 
    
         
            +
                  resp = Aws::Plugins::UserAgent.feature('resource') do
         
     | 
| 
      
 436 
     | 
    
         
            +
                    @client.create_tags(options)
         
     | 
| 
      
 437 
     | 
    
         
            +
                  end
         
     | 
| 
       419 
438 
     | 
    
         
             
                  options[:tags].each do |t|
         
     | 
| 
       420 
439 
     | 
    
         
             
                    batch << Tag.new(
         
     | 
| 
       421 
440 
     | 
    
         
             
                      resource_id: @id,
         
     | 
| 
         @@ -460,7 +479,9 @@ module Aws::EC2 
     | 
|
| 
       460 
479 
     | 
    
         
             
                def delete_tags(options = {})
         
     | 
| 
       461 
480 
     | 
    
         
             
                  batch = []
         
     | 
| 
       462 
481 
     | 
    
         
             
                  options = Aws::Util.deep_merge(options, resources: [@id])
         
     | 
| 
       463 
     | 
    
         
            -
                  resp =  
     | 
| 
      
 482 
     | 
    
         
            +
                  resp = Aws::Plugins::UserAgent.feature('resource') do
         
     | 
| 
      
 483 
     | 
    
         
            +
                    @client.delete_tags(options)
         
     | 
| 
      
 484 
     | 
    
         
            +
                  end
         
     | 
| 
       464 
485 
     | 
    
         
             
                  options[:tags].each do |t|
         
     | 
| 
       465 
486 
     | 
    
         
             
                    batch << Tag.new(
         
     | 
| 
       466 
487 
     | 
    
         
             
                      resource_id: @id,
         
     | 
| 
         @@ -486,7 +507,9 @@ module Aws::EC2 
     | 
|
| 
       486 
507 
     | 
    
         
             
                # @return [EmptyStructure]
         
     | 
| 
       487 
508 
     | 
    
         
             
                def delete(options = {})
         
     | 
| 
       488 
509 
     | 
    
         
             
                  options = options.merge(network_interface_id: @id)
         
     | 
| 
       489 
     | 
    
         
            -
                  resp =  
     | 
| 
      
 510 
     | 
    
         
            +
                  resp = Aws::Plugins::UserAgent.feature('resource') do
         
     | 
| 
      
 511 
     | 
    
         
            +
                    @client.delete_network_interface(options)
         
     | 
| 
      
 512 
     | 
    
         
            +
                  end
         
     | 
| 
       490 
513 
     | 
    
         
             
                  resp.data
         
     | 
| 
       491 
514 
     | 
    
         
             
                end
         
     | 
| 
       492 
515 
     | 
    
         | 
| 
         @@ -507,7 +530,9 @@ module Aws::EC2 
     | 
|
| 
       507 
530 
     | 
    
         
             
                # @return [Types::DescribeNetworkInterfaceAttributeResult]
         
     | 
| 
       508 
531 
     | 
    
         
             
                def describe_attribute(options = {})
         
     | 
| 
       509 
532 
     | 
    
         
             
                  options = options.merge(network_interface_id: @id)
         
     | 
| 
       510 
     | 
    
         
            -
                  resp =  
     | 
| 
      
 533 
     | 
    
         
            +
                  resp = Aws::Plugins::UserAgent.feature('resource') do
         
     | 
| 
      
 534 
     | 
    
         
            +
                    @client.describe_network_interface_attribute(options)
         
     | 
| 
      
 535 
     | 
    
         
            +
                  end
         
     | 
| 
       511 
536 
     | 
    
         
             
                  resp.data
         
     | 
| 
       512 
537 
     | 
    
         
             
                end
         
     | 
| 
       513 
538 
     | 
    
         | 
| 
         @@ -548,7 +573,9 @@ module Aws::EC2 
     | 
|
| 
       548 
573 
     | 
    
         
             
                # @return [EmptyStructure]
         
     | 
| 
       549 
574 
     | 
    
         
             
                def detach(options = {})
         
     | 
| 
       550 
575 
     | 
    
         
             
                  options = options.merge(attachment_id: data[:attachment][:attachment_id])
         
     | 
| 
       551 
     | 
    
         
            -
                  resp =  
     | 
| 
      
 576 
     | 
    
         
            +
                  resp = Aws::Plugins::UserAgent.feature('resource') do
         
     | 
| 
      
 577 
     | 
    
         
            +
                    @client.detach_network_interface(options)
         
     | 
| 
      
 578 
     | 
    
         
            +
                  end
         
     | 
| 
       552 
579 
     | 
    
         
             
                  resp.data
         
     | 
| 
       553 
580 
     | 
    
         
             
                end
         
     | 
| 
       554 
581 
     | 
    
         | 
| 
         @@ -565,11 +592,18 @@ module Aws::EC2 
     | 
|
| 
       565 
592 
     | 
    
         
             
                #     source_dest_check: {
         
     | 
| 
       566 
593 
     | 
    
         
             
                #       value: false,
         
     | 
| 
       567 
594 
     | 
    
         
             
                #     },
         
     | 
| 
      
 595 
     | 
    
         
            +
                #     ena_srd_specification: {
         
     | 
| 
      
 596 
     | 
    
         
            +
                #       ena_srd_enabled: false,
         
     | 
| 
      
 597 
     | 
    
         
            +
                #       ena_srd_udp_specification: {
         
     | 
| 
      
 598 
     | 
    
         
            +
                #         ena_srd_udp_enabled: false,
         
     | 
| 
      
 599 
     | 
    
         
            +
                #       },
         
     | 
| 
      
 600 
     | 
    
         
            +
                #     },
         
     | 
| 
      
 601 
     | 
    
         
            +
                #     enable_primary_ipv_6: false,
         
     | 
| 
       568 
602 
     | 
    
         
             
                #   })
         
     | 
| 
       569 
603 
     | 
    
         
             
                # @param [Hash] options ({})
         
     | 
| 
       570 
604 
     | 
    
         
             
                # @option options [Types::NetworkInterfaceAttachmentChanges] :attachment
         
     | 
| 
       571 
     | 
    
         
            -
                #   Information about the interface attachment. If modifying the  
     | 
| 
       572 
     | 
    
         
            -
                #   on termination 
     | 
| 
      
 605 
     | 
    
         
            +
                #   Information about the interface attachment. If modifying the `delete
         
     | 
| 
      
 606 
     | 
    
         
            +
                #   on termination` attribute, you must specify the ID of the interface
         
     | 
| 
       573 
607 
     | 
    
         
             
                #   attachment.
         
     | 
| 
       574 
608 
     | 
    
         
             
                # @option options [Types::AttributeValue] :description
         
     | 
| 
       575 
609 
     | 
    
         
             
                #   A description for the network interface.
         
     | 
| 
         @@ -590,10 +624,31 @@ module Aws::EC2 
     | 
|
| 
       590 
624 
     | 
    
         
             
                #   enabled; otherwise, they are disabled. The default value is `true`.
         
     | 
| 
       591 
625 
     | 
    
         
             
                #   You must disable source/destination checks if the instance runs
         
     | 
| 
       592 
626 
     | 
    
         
             
                #   services such as network address translation, routing, or firewalls.
         
     | 
| 
      
 627 
     | 
    
         
            +
                # @option options [Types::EnaSrdSpecification] :ena_srd_specification
         
     | 
| 
      
 628 
     | 
    
         
            +
                #   Updates the ENA Express configuration for the network interface that’s
         
     | 
| 
      
 629 
     | 
    
         
            +
                #   attached to the instance.
         
     | 
| 
      
 630 
     | 
    
         
            +
                # @option options [Boolean] :enable_primary_ipv_6
         
     | 
| 
      
 631 
     | 
    
         
            +
                #   If you’re modifying a network interface in a dual-stack or IPv6-only
         
     | 
| 
      
 632 
     | 
    
         
            +
                #   subnet, you have the option to assign a primary IPv6 IP address. A
         
     | 
| 
      
 633 
     | 
    
         
            +
                #   primary IPv6 address is an IPv6 GUA address associated with an ENI
         
     | 
| 
      
 634 
     | 
    
         
            +
                #   that you have enabled to use a primary IPv6 address. Use this option
         
     | 
| 
      
 635 
     | 
    
         
            +
                #   if the instance that this ENI will be attached to relies on its IPv6
         
     | 
| 
      
 636 
     | 
    
         
            +
                #   address not changing. Amazon Web Services will automatically assign an
         
     | 
| 
      
 637 
     | 
    
         
            +
                #   IPv6 address associated with the ENI attached to your instance to be
         
     | 
| 
      
 638 
     | 
    
         
            +
                #   the primary IPv6 address. Once you enable an IPv6 GUA address to be a
         
     | 
| 
      
 639 
     | 
    
         
            +
                #   primary IPv6, you cannot disable it. When you enable an IPv6 GUA
         
     | 
| 
      
 640 
     | 
    
         
            +
                #   address to be a primary IPv6, the first IPv6 GUA will be made the
         
     | 
| 
      
 641 
     | 
    
         
            +
                #   primary IPv6 address until the instance is terminated or the network
         
     | 
| 
      
 642 
     | 
    
         
            +
                #   interface is detached. If you have multiple IPv6 addresses associated
         
     | 
| 
      
 643 
     | 
    
         
            +
                #   with an ENI attached to your instance and you enable a primary IPv6
         
     | 
| 
      
 644 
     | 
    
         
            +
                #   address, the first IPv6 GUA address associated with the ENI becomes
         
     | 
| 
      
 645 
     | 
    
         
            +
                #   the primary IPv6 address.
         
     | 
| 
       593 
646 
     | 
    
         
             
                # @return [EmptyStructure]
         
     | 
| 
       594 
647 
     | 
    
         
             
                def modify_attribute(options = {})
         
     | 
| 
       595 
648 
     | 
    
         
             
                  options = options.merge(network_interface_id: @id)
         
     | 
| 
       596 
     | 
    
         
            -
                  resp =  
     | 
| 
      
 649 
     | 
    
         
            +
                  resp = Aws::Plugins::UserAgent.feature('resource') do
         
     | 
| 
      
 650 
     | 
    
         
            +
                    @client.modify_network_interface_attribute(options)
         
     | 
| 
      
 651 
     | 
    
         
            +
                  end
         
     | 
| 
       597 
652 
     | 
    
         
             
                  resp.data
         
     | 
| 
       598 
653 
     | 
    
         
             
                end
         
     | 
| 
       599 
654 
     | 
    
         | 
| 
         @@ -614,7 +669,9 @@ module Aws::EC2 
     | 
|
| 
       614 
669 
     | 
    
         
             
                # @return [EmptyStructure]
         
     | 
| 
       615 
670 
     | 
    
         
             
                def reset_attribute(options = {})
         
     | 
| 
       616 
671 
     | 
    
         
             
                  options = options.merge(network_interface_id: @id)
         
     | 
| 
       617 
     | 
    
         
            -
                  resp =  
     | 
| 
      
 672 
     | 
    
         
            +
                  resp = Aws::Plugins::UserAgent.feature('resource') do
         
     | 
| 
      
 673 
     | 
    
         
            +
                    @client.reset_network_interface_attribute(options)
         
     | 
| 
      
 674 
     | 
    
         
            +
                  end
         
     | 
| 
       618 
675 
     | 
    
         
             
                  resp.data
         
     | 
| 
       619 
676 
     | 
    
         
             
                end
         
     | 
| 
       620 
677 
     | 
    
         | 
| 
         @@ -634,7 +691,9 @@ module Aws::EC2 
     | 
|
| 
       634 
691 
     | 
    
         
             
                # @return [EmptyStructure]
         
     | 
| 
       635 
692 
     | 
    
         
             
                def unassign_private_ip_addresses(options = {})
         
     | 
| 
       636 
693 
     | 
    
         
             
                  options = options.merge(network_interface_id: @id)
         
     | 
| 
       637 
     | 
    
         
            -
                  resp =  
     | 
| 
      
 694 
     | 
    
         
            +
                  resp = Aws::Plugins::UserAgent.feature('resource') do
         
     | 
| 
      
 695 
     | 
    
         
            +
                    @client.unassign_private_ip_addresses(options)
         
     | 
| 
      
 696 
     | 
    
         
            +
                  end
         
     | 
| 
       638 
697 
     | 
    
         
             
                  resp.data
         
     | 
| 
       639 
698 
     | 
    
         
             
                end
         
     | 
| 
       640 
699 
     | 
    
         | 
| 
         @@ -79,10 +79,12 @@ module Aws::EC2 
     | 
|
| 
       79 
79 
     | 
    
         
             
                #
         
     | 
| 
       80 
80 
     | 
    
         
             
                # @return [self]
         
     | 
| 
       81 
81 
     | 
    
         
             
                def load
         
     | 
| 
       82 
     | 
    
         
            -
                  resp =  
     | 
| 
      
 82 
     | 
    
         
            +
                  resp = Aws::Plugins::UserAgent.feature('resource') do
         
     | 
| 
      
 83 
     | 
    
         
            +
                    @client.describe_network_interfaces(filters: [{
         
     | 
| 
       83 
84 
     | 
    
         
             
                    name: "association.association-id",
         
     | 
| 
       84 
85 
     | 
    
         
             
                    values: [@id]
         
     | 
| 
       85 
86 
     | 
    
         
             
                  }])
         
     | 
| 
      
 87 
     | 
    
         
            +
                  end
         
     | 
| 
       86 
88 
     | 
    
         
             
                  @data = resp.network_interfaces[0].association
         
     | 
| 
       87 
89 
     | 
    
         
             
                  self
         
     | 
| 
       88 
90 
     | 
    
         
             
                end
         
     | 
| 
         @@ -197,7 +199,9 @@ module Aws::EC2 
     | 
|
| 
       197 
199 
     | 
    
         
             
                      :retry
         
     | 
| 
       198 
200 
     | 
    
         
             
                    end
         
     | 
| 
       199 
201 
     | 
    
         
             
                  end
         
     | 
| 
       200 
     | 
    
         
            -
                  Aws:: 
     | 
| 
      
 202 
     | 
    
         
            +
                  Aws::Plugins::UserAgent.feature('resource') do
         
     | 
| 
      
 203 
     | 
    
         
            +
                    Aws::Waiters::Waiter.new(options).wait({})
         
     | 
| 
      
 204 
     | 
    
         
            +
                  end
         
     | 
| 
       201 
205 
     | 
    
         
             
                end
         
     | 
| 
       202 
206 
     | 
    
         | 
| 
       203 
207 
     | 
    
         
             
                # @!group Actions
         
     | 
| 
         @@ -205,12 +209,12 @@ module Aws::EC2 
     | 
|
| 
       205 
209 
     | 
    
         
             
                # @example Request syntax with placeholder values
         
     | 
| 
       206 
210 
     | 
    
         
             
                #
         
     | 
| 
       207 
211 
     | 
    
         
             
                #   network_interface_association.delete({
         
     | 
| 
       208 
     | 
    
         
            -
                #     public_ip: " 
     | 
| 
      
 212 
     | 
    
         
            +
                #     public_ip: "EipAllocationPublicIp",
         
     | 
| 
       209 
213 
     | 
    
         
             
                #     dry_run: false,
         
     | 
| 
       210 
214 
     | 
    
         
             
                #   })
         
     | 
| 
       211 
215 
     | 
    
         
             
                # @param [Hash] options ({})
         
     | 
| 
       212 
216 
     | 
    
         
             
                # @option options [String] :public_ip
         
     | 
| 
       213 
     | 
    
         
            -
                #    
     | 
| 
      
 217 
     | 
    
         
            +
                #   Deprecated.
         
     | 
| 
       214 
218 
     | 
    
         
             
                # @option options [Boolean] :dry_run
         
     | 
| 
       215 
219 
     | 
    
         
             
                #   Checks whether you have the required permissions for the action,
         
     | 
| 
       216 
220 
     | 
    
         
             
                #   without actually making the request, and provides an error response.
         
     | 
| 
         @@ -219,7 +223,9 @@ module Aws::EC2 
     | 
|
| 
       219 
223 
     | 
    
         
             
                # @return [EmptyStructure]
         
     | 
| 
       220 
224 
     | 
    
         
             
                def delete(options = {})
         
     | 
| 
       221 
225 
     | 
    
         
             
                  options = options.merge(association_id: @id)
         
     | 
| 
       222 
     | 
    
         
            -
                  resp =  
     | 
| 
      
 226 
     | 
    
         
            +
                  resp = Aws::Plugins::UserAgent.feature('resource') do
         
     | 
| 
      
 227 
     | 
    
         
            +
                    @client.disassociate_address(options)
         
     | 
| 
      
 228 
     | 
    
         
            +
                  end
         
     | 
| 
       223 
229 
     | 
    
         
             
                  resp.data
         
     | 
| 
       224 
230 
     | 
    
         
             
                end
         
     | 
| 
       225 
231 
     | 
    
         |