aws-sdk-efs 1.7.0 → 1.8.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: b3061fe9f3fef04546c2cbad35c4f732f40e2558
4
- data.tar.gz: dc09a847b1103c91d529c02efbf62a24bd4da5d4
3
+ metadata.gz: 4c9041e4fcf0365fca4b26c0abab4c8fde90f249
4
+ data.tar.gz: 6848635cf17b91d308b494d11e1313259670c9bf
5
5
  SHA512:
6
- metadata.gz: 3bdee6deb6db42322b3813c13e51b456e8b6c8f908d3d21c1cab533b32dbf2257fb83c1e448c24eecc67d36a86401188cfa442ca51c9396cb452dc4c7e3bcc5b
7
- data.tar.gz: 59d7ffff0a5e58f396a7ba549bd27fab1bb5700b1a6a180a798d713dc98fbadb5854aa08b7ac19c481956ff2786a3eb3d0ea400117e3184d7670e4cfc8a2fa2d
6
+ metadata.gz: 4b645ac306541d15ed294b536d703dad56da9a5b2fcb48c25fa9097aaf29a88eb951c83f4f33aa922aa6826c49f0f52246624658b394600c7ce3e371112de37d
7
+ data.tar.gz: caa5a09f81a87f99c0acfba089be875d09154c8e335d355354d8ce5c2751fd0c6352c063a7764304e389774ddb32f76ec12366fe27c47c69d5e7d7dc838d13c8
data/lib/aws-sdk-efs.rb CHANGED
@@ -42,6 +42,6 @@ require_relative 'aws-sdk-efs/customizations'
42
42
  # @service
43
43
  module Aws::EFS
44
44
 
45
- GEM_VERSION = '1.7.0'
45
+ GEM_VERSION = '1.8.0'
46
46
 
47
47
  end
@@ -254,8 +254,8 @@ module Aws::EFS
254
254
  # state to `available`, at which point you can create one or more mount
255
255
  # targets for the file system in your VPC. For more information, see
256
256
  # CreateMountTarget. You mount your Amazon EFS file system on an EC2
257
- # instances in your VPC via the mount target. For more information, see
258
- # [Amazon EFS: How it Works][2].
257
+ # instances in your VPC by using the mount target. For more information,
258
+ # see [Amazon EFS: How it Works][2].
259
259
  #
260
260
  # This operation requires permissions for the
261
261
  # `elasticfilesystem:CreateFileSystem` action.
@@ -388,6 +388,8 @@ module Aws::EFS
388
388
  # resp.number_of_mount_targets #=> Integer
389
389
  # resp.size_in_bytes.value #=> Integer
390
390
  # resp.size_in_bytes.timestamp #=> Time
391
+ # resp.size_in_bytes.value_in_ia #=> Integer
392
+ # resp.size_in_bytes.value_in_standard #=> Integer
391
393
  # resp.performance_mode #=> String, one of "generalPurpose", "maxIO"
392
394
  # resp.encrypted #=> Boolean
393
395
  # resp.kms_key_id #=> String
@@ -404,7 +406,7 @@ module Aws::EFS
404
406
  end
405
407
 
406
408
  # Creates a mount target for a file system. You can then mount the file
407
- # system on EC2 instances via the mount target.
409
+ # system on EC2 instances by using the mount target.
408
410
  #
409
411
  # You can create one mount target in each Availability Zone in your VPC.
410
412
  # All EC2 instances in a VPC within a given Availability Zone share a
@@ -432,9 +434,9 @@ module Aws::EFS
432
434
  # includes, a `MountTargetId` and an `IpAddress`. You use this IP
433
435
  # address when mounting the file system in an EC2 instance. You can also
434
436
  # use the mount target's DNS name when mounting the file system. The
435
- # EC2 instance on which you mount the file system via the mount target
436
- # can resolve the mount target's DNS name to its IP address. For more
437
- # information, see [How it Works: Implementation Overview][2].
437
+ # EC2 instance on which you mount the file system by using the mount
438
+ # target can resolve the mount target's DNS name to its IP address. For
439
+ # more information, see [How it Works: Implementation Overview][2].
438
440
  #
439
441
  # Note that you can create mount targets for a file system in only one
440
442
  # VPC, and there can be only one mount target per Availability Zone.
@@ -487,11 +489,11 @@ module Aws::EFS
487
489
  #
488
490
  # </note>
489
491
  #
490
- # We recommend you create a mount target in each of the Availability
491
- # Zones. There are cost considerations for using a file system in an
492
- # Availability Zone through a mount target created in another
493
- # Availability Zone. For more information, see [Amazon EFS][3]. In
494
- # addition, by always using a mount target local to the instance's
492
+ # We recommend that you create a mount target in each of the
493
+ # Availability Zones. There are cost considerations for using a file
494
+ # system in an Availability Zone through a mount target created in
495
+ # another Availability Zone. For more information, see [Amazon EFS][3].
496
+ # In addition, by always using a mount target local to the instance's
495
497
  # Availability Zone, you eliminate a partial failure scenario. If the
496
498
  # Availability Zone in which your mount target is created goes down,
497
499
  # then you won't be able to access your file system through that mount
@@ -697,15 +699,15 @@ module Aws::EFS
697
699
 
698
700
  # Deletes the specified mount target.
699
701
  #
700
- # This operation forcibly breaks any mounts of the file system via the
701
- # mount target that is being deleted, which might disrupt instances or
702
- # applications using those mounts. To avoid applications getting cut off
703
- # abruptly, you might consider unmounting any mounts of the mount
702
+ # This operation forcibly breaks any mounts of the file system by using
703
+ # the mount target that is being deleted, which might disrupt instances
704
+ # or applications using those mounts. To avoid applications getting cut
705
+ # off abruptly, you might consider unmounting any mounts of the mount
704
706
  # target, if feasible. The operation also deletes the associated network
705
- # interface. Uncommitted writes may be lost, but breaking a mount target
706
- # using this operation does not corrupt the file system itself. The file
707
- # system you created remains. You can mount an EC2 instance in your VPC
708
- # via another mount target.
707
+ # interface. Uncommitted writes might be lost, but breaking a mount
708
+ # target using this operation does not corrupt the file system itself.
709
+ # The file system you created remains. You can mount an EC2 instance in
710
+ # your VPC by using another mount target.
709
711
  #
710
712
  # This operation requires permissions for the following action on the
711
713
  # file system:
@@ -814,10 +816,11 @@ module Aws::EFS
814
816
  #
815
817
  # When retrieving all file system descriptions, you can optionally
816
818
  # specify the `MaxItems` parameter to limit the number of descriptions
817
- # in a response. If more file system descriptions remain, Amazon EFS
818
- # returns a `NextMarker`, an opaque token, in the response. In this
819
- # case, you should send a subsequent request with the `Marker` request
820
- # parameter set to the value of `NextMarker`.
819
+ # in a response. Currently, this number is automatically set to 10. If
820
+ # more file system descriptions remain, Amazon EFS returns a
821
+ # `NextMarker`, an opaque token, in the response. In this case, you
822
+ # should send a subsequent request with the `Marker` request parameter
823
+ # set to the value of `NextMarker`.
821
824
  #
822
825
  # To retrieve a list of your file system descriptions, this operation is
823
826
  # used in an iterative process, where `DescribeFileSystems` is called
@@ -825,9 +828,6 @@ module Aws::EFS
825
828
  # with the `Marker` parameter set to the value of the `NextMarker` from
826
829
  # the previous response until the response has no `NextMarker`.
827
830
  #
828
- # The implementation may return fewer than `MaxItems` file system
829
- # descriptions while still including a `NextMarker` value.
830
- #
831
831
  # The order of file systems returned in the response of one
832
832
  # `DescribeFileSystems` call and the order of file systems returned
833
833
  # across the responses of a multi-call iteration is unspecified.
@@ -837,10 +837,8 @@ module Aws::EFS
837
837
  #
838
838
  # @option params [Integer] :max_items
839
839
  # (Optional) Specifies the maximum number of file systems to return in
840
- # the response (integer). This parameter value must be greater than 0.
841
- # The number of items that Amazon EFS returns is the minimum of the
842
- # `MaxItems` parameter specified in the request and the service's
843
- # internal maximum number of items per page.
840
+ # the response (integer). Currently, this number is automatically set to
841
+ # 10.
844
842
  #
845
843
  # @option params [String] :marker
846
844
  # (Optional) Opaque pagination token returned from a previous
@@ -911,6 +909,8 @@ module Aws::EFS
911
909
  # resp.file_systems[0].number_of_mount_targets #=> Integer
912
910
  # resp.file_systems[0].size_in_bytes.value #=> Integer
913
911
  # resp.file_systems[0].size_in_bytes.timestamp #=> Time
912
+ # resp.file_systems[0].size_in_bytes.value_in_ia #=> Integer
913
+ # resp.file_systems[0].size_in_bytes.value_in_standard #=> Integer
914
914
  # resp.file_systems[0].performance_mode #=> String, one of "generalPurpose", "maxIO"
915
915
  # resp.file_systems[0].encrypted #=> Boolean
916
916
  # resp.file_systems[0].kms_key_id #=> String
@@ -927,6 +927,44 @@ module Aws::EFS
927
927
  req.send_request(options)
928
928
  end
929
929
 
930
+ # Returns the current `LifecycleConfiguration` object for the specified
931
+ # Amazon EFS file system. EFS lifecycle management uses the
932
+ # `LifecycleConfiguration` to identify which files to move to the EFS
933
+ # Infrequent Access (IA) storage class. For a file system without a
934
+ # `LifecycleConfiguration`, the call returns an empty array in the
935
+ # response.
936
+ #
937
+ # This operation requires permissions for the
938
+ # `elasticfilesystem:DescribeLifecycleConfiguration` operation.
939
+ #
940
+ # @option params [required, String] :file_system_id
941
+ # The ID of the file system whose `LifecycleConfiguration` object you
942
+ # want to retrieve (String).
943
+ #
944
+ # @return [Types::LifecycleConfigurationDescription] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
945
+ #
946
+ # * {Types::LifecycleConfigurationDescription#lifecycle_policies #lifecycle_policies} => Array&lt;Types::LifecyclePolicy&gt;
947
+ #
948
+ # @example Request syntax with placeholder values
949
+ #
950
+ # resp = client.describe_lifecycle_configuration({
951
+ # file_system_id: "FileSystemId", # required
952
+ # })
953
+ #
954
+ # @example Response structure
955
+ #
956
+ # resp.lifecycle_policies #=> Array
957
+ # resp.lifecycle_policies[0].transition_to_ia #=> String, one of "AFTER_30_DAYS"
958
+ #
959
+ # @see http://docs.aws.amazon.com/goto/WebAPI/elasticfilesystem-2015-02-01/DescribeLifecycleConfiguration AWS API Documentation
960
+ #
961
+ # @overload describe_lifecycle_configuration(params = {})
962
+ # @param [Hash] params ({})
963
+ def describe_lifecycle_configuration(params = {}, options = {})
964
+ req = build_request(:describe_lifecycle_configuration, params)
965
+ req.send_request(options)
966
+ end
967
+
930
968
  # Returns the security groups currently in effect for a mount target.
931
969
  # This operation requires that the network interface of the mount target
932
970
  # has been created and the lifecycle state of the mount target is not
@@ -995,7 +1033,7 @@ module Aws::EFS
995
1033
  #
996
1034
  # @option params [Integer] :max_items
997
1035
  # (Optional) Maximum number of mount targets to return in the response.
998
- # It must be an integer with a value greater than zero.
1036
+ # Currently, this number is automatically set to 10.
999
1037
  #
1000
1038
  # @option params [String] :marker
1001
1039
  # (Optional) Opaque pagination token returned from a previous
@@ -1083,7 +1121,7 @@ module Aws::EFS
1083
1121
  #
1084
1122
  # @option params [Integer] :max_items
1085
1123
  # (Optional) Maximum number of file system tags to return in the
1086
- # response. It must be an integer with a value greater than zero.
1124
+ # response. Currently, this number is automatically set to 10.
1087
1125
  #
1088
1126
  # @option params [String] :marker
1089
1127
  # (Optional) Opaque pagination token returned from a previous
@@ -1197,6 +1235,81 @@ module Aws::EFS
1197
1235
  req.send_request(options)
1198
1236
  end
1199
1237
 
1238
+ # Enables lifecycle management by creating a new
1239
+ # `LifecycleConfiguration` object. A `LifecycleConfiguration` defines
1240
+ # when files in an Amazon EFS file system are automatically transitioned
1241
+ # to the lower-cost EFS Infrequent Access (IA) storage class. A
1242
+ # `LifecycleConfiguration` applies to all files in a file system.
1243
+ #
1244
+ # Each Amazon EFS file system supports one lifecycle configuration,
1245
+ # which applies to all files in the file system. If a
1246
+ # `LifecycleConfiguration` already exists for the specified file system,
1247
+ # a `PutLifecycleConfiguration` call modifies the existing
1248
+ # configuration. A `PutLifecycleConfiguration` call with an empty
1249
+ # `LifecyclePolicies` array in the request body deletes any existing
1250
+ # `LifecycleConfiguration` and disables lifecycle management.
1251
+ #
1252
+ # <note markdown="1"> You can enable lifecycle management only for EFS file systems created
1253
+ # after the release of EFS infrequent access.
1254
+ #
1255
+ # </note>
1256
+ #
1257
+ # In the request, specify the following:
1258
+ #
1259
+ # * The ID for the file system for which you are creating a lifecycle
1260
+ # management configuration.
1261
+ #
1262
+ # * A `LifecyclePolicies` array of `LifecyclePolicy` objects that define
1263
+ # when files are moved to the IA storage class. The array can contain
1264
+ # only one `"TransitionToIA": "AFTER_30_DAYS"` `LifecyclePolicy`
1265
+ # object.
1266
+ #
1267
+ # This operation requires permissions for the
1268
+ # `elasticfilesystem:PutLifecycleConfiguration` operation.
1269
+ #
1270
+ # To apply a `LifecycleConfiguration` object to an encrypted file
1271
+ # system, you need the same AWS Key Management Service (AWS KMS)
1272
+ # permissions as when you created the encrypted file system.
1273
+ #
1274
+ # @option params [required, String] :file_system_id
1275
+ # The ID of the file system for which you are creating the
1276
+ # `LifecycleConfiguration` object (String).
1277
+ #
1278
+ # @option params [required, Array<Types::LifecyclePolicy>] :lifecycle_policies
1279
+ # An array of `LifecyclePolicy` objects that define the file system's
1280
+ # `LifecycleConfiguration` object. A `LifecycleConfiguration` object
1281
+ # tells lifecycle management when to transition files from the Standard
1282
+ # storage class to the Infrequent Access storage class.
1283
+ #
1284
+ # @return [Types::LifecycleConfigurationDescription] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1285
+ #
1286
+ # * {Types::LifecycleConfigurationDescription#lifecycle_policies #lifecycle_policies} => Array&lt;Types::LifecyclePolicy&gt;
1287
+ #
1288
+ # @example Request syntax with placeholder values
1289
+ #
1290
+ # resp = client.put_lifecycle_configuration({
1291
+ # file_system_id: "FileSystemId", # required
1292
+ # lifecycle_policies: [ # required
1293
+ # {
1294
+ # transition_to_ia: "AFTER_30_DAYS", # accepts AFTER_30_DAYS
1295
+ # },
1296
+ # ],
1297
+ # })
1298
+ #
1299
+ # @example Response structure
1300
+ #
1301
+ # resp.lifecycle_policies #=> Array
1302
+ # resp.lifecycle_policies[0].transition_to_ia #=> String, one of "AFTER_30_DAYS"
1303
+ #
1304
+ # @see http://docs.aws.amazon.com/goto/WebAPI/elasticfilesystem-2015-02-01/PutLifecycleConfiguration AWS API Documentation
1305
+ #
1306
+ # @overload put_lifecycle_configuration(params = {})
1307
+ # @param [Hash] params ({})
1308
+ def put_lifecycle_configuration(params = {}, options = {})
1309
+ req = build_request(:put_lifecycle_configuration, params)
1310
+ req.send_request(options)
1311
+ end
1312
+
1200
1313
  # Updates the throughput mode or the amount of provisioned throughput of
1201
1314
  # an existing file system.
1202
1315
  #
@@ -1249,6 +1362,8 @@ module Aws::EFS
1249
1362
  # resp.number_of_mount_targets #=> Integer
1250
1363
  # resp.size_in_bytes.value #=> Integer
1251
1364
  # resp.size_in_bytes.timestamp #=> Time
1365
+ # resp.size_in_bytes.value_in_ia #=> Integer
1366
+ # resp.size_in_bytes.value_in_standard #=> Integer
1252
1367
  # resp.performance_mode #=> String, one of "generalPurpose", "maxIO"
1253
1368
  # resp.encrypted #=> Boolean
1254
1369
  # resp.kms_key_id #=> String
@@ -1277,7 +1392,7 @@ module Aws::EFS
1277
1392
  params: params,
1278
1393
  config: config)
1279
1394
  context[:gem_name] = 'aws-sdk-efs'
1280
- context[:gem_version] = '1.7.0'
1395
+ context[:gem_version] = '1.8.0'
1281
1396
  Seahorse::Client::Request.new(handlers, context)
1282
1397
  end
1283
1398
 
@@ -23,6 +23,7 @@ module Aws::EFS
23
23
  DependencyTimeout = Shapes::StructureShape.new(name: 'DependencyTimeout')
24
24
  DescribeFileSystemsRequest = Shapes::StructureShape.new(name: 'DescribeFileSystemsRequest')
25
25
  DescribeFileSystemsResponse = Shapes::StructureShape.new(name: 'DescribeFileSystemsResponse')
26
+ DescribeLifecycleConfigurationRequest = Shapes::StructureShape.new(name: 'DescribeLifecycleConfigurationRequest')
26
27
  DescribeMountTargetSecurityGroupsRequest = Shapes::StructureShape.new(name: 'DescribeMountTargetSecurityGroupsRequest')
27
28
  DescribeMountTargetSecurityGroupsResponse = Shapes::StructureShape.new(name: 'DescribeMountTargetSecurityGroupsResponse')
28
29
  DescribeMountTargetsRequest = Shapes::StructureShape.new(name: 'DescribeMountTargetsRequest')
@@ -39,6 +40,7 @@ module Aws::EFS
39
40
  FileSystemInUse = Shapes::StructureShape.new(name: 'FileSystemInUse')
40
41
  FileSystemLimitExceeded = Shapes::StructureShape.new(name: 'FileSystemLimitExceeded')
41
42
  FileSystemNotFound = Shapes::StructureShape.new(name: 'FileSystemNotFound')
43
+ FileSystemNullableSizeValue = Shapes::IntegerShape.new(name: 'FileSystemNullableSizeValue')
42
44
  FileSystemSize = Shapes::StructureShape.new(name: 'FileSystemSize')
43
45
  FileSystemSizeValue = Shapes::IntegerShape.new(name: 'FileSystemSizeValue')
44
46
  IncorrectFileSystemLifeCycleState = Shapes::StructureShape.new(name: 'IncorrectFileSystemLifeCycleState')
@@ -49,6 +51,9 @@ module Aws::EFS
49
51
  IpAddressInUse = Shapes::StructureShape.new(name: 'IpAddressInUse')
50
52
  KmsKeyId = Shapes::StringShape.new(name: 'KmsKeyId')
51
53
  LifeCycleState = Shapes::StringShape.new(name: 'LifeCycleState')
54
+ LifecycleConfigurationDescription = Shapes::StructureShape.new(name: 'LifecycleConfigurationDescription')
55
+ LifecyclePolicies = Shapes::ListShape.new(name: 'LifecyclePolicies')
56
+ LifecyclePolicy = Shapes::StructureShape.new(name: 'LifecyclePolicy')
52
57
  Marker = Shapes::StringShape.new(name: 'Marker')
53
58
  MaxItems = Shapes::IntegerShape.new(name: 'MaxItems')
54
59
  ModifyMountTargetSecurityGroupsRequest = Shapes::StructureShape.new(name: 'ModifyMountTargetSecurityGroupsRequest')
@@ -63,6 +68,7 @@ module Aws::EFS
63
68
  NoFreeAddressesInSubnet = Shapes::StructureShape.new(name: 'NoFreeAddressesInSubnet')
64
69
  PerformanceMode = Shapes::StringShape.new(name: 'PerformanceMode')
65
70
  ProvisionedThroughputInMibps = Shapes::FloatShape.new(name: 'ProvisionedThroughputInMibps')
71
+ PutLifecycleConfigurationRequest = Shapes::StructureShape.new(name: 'PutLifecycleConfigurationRequest')
66
72
  SecurityGroup = Shapes::StringShape.new(name: 'SecurityGroup')
67
73
  SecurityGroupLimitExceeded = Shapes::StructureShape.new(name: 'SecurityGroupLimitExceeded')
68
74
  SecurityGroupNotFound = Shapes::StructureShape.new(name: 'SecurityGroupNotFound')
@@ -78,6 +84,7 @@ module Aws::EFS
78
84
  ThroughputMode = Shapes::StringShape.new(name: 'ThroughputMode')
79
85
  Timestamp = Shapes::TimestampShape.new(name: 'Timestamp')
80
86
  TooManyRequests = Shapes::StructureShape.new(name: 'TooManyRequests')
87
+ TransitionToIARules = Shapes::StringShape.new(name: 'TransitionToIARules')
81
88
  UnsupportedAvailabilityZone = Shapes::StructureShape.new(name: 'UnsupportedAvailabilityZone')
82
89
  UpdateFileSystemRequest = Shapes::StructureShape.new(name: 'UpdateFileSystemRequest')
83
90
 
@@ -120,6 +127,9 @@ module Aws::EFS
120
127
  DescribeFileSystemsResponse.add_member(:next_marker, Shapes::ShapeRef.new(shape: Marker, location_name: "NextMarker"))
121
128
  DescribeFileSystemsResponse.struct_class = Types::DescribeFileSystemsResponse
122
129
 
130
+ DescribeLifecycleConfigurationRequest.add_member(:file_system_id, Shapes::ShapeRef.new(shape: FileSystemId, required: true, location: "uri", location_name: "FileSystemId"))
131
+ DescribeLifecycleConfigurationRequest.struct_class = Types::DescribeLifecycleConfigurationRequest
132
+
123
133
  DescribeMountTargetSecurityGroupsRequest.add_member(:mount_target_id, Shapes::ShapeRef.new(shape: MountTargetId, required: true, location: "uri", location_name: "MountTargetId"))
124
134
  DescribeMountTargetSecurityGroupsRequest.struct_class = Types::DescribeMountTargetSecurityGroupsRequest
125
135
 
@@ -166,8 +176,18 @@ module Aws::EFS
166
176
 
167
177
  FileSystemSize.add_member(:value, Shapes::ShapeRef.new(shape: FileSystemSizeValue, required: true, location_name: "Value"))
168
178
  FileSystemSize.add_member(:timestamp, Shapes::ShapeRef.new(shape: Timestamp, location_name: "Timestamp"))
179
+ FileSystemSize.add_member(:value_in_ia, Shapes::ShapeRef.new(shape: FileSystemNullableSizeValue, location_name: "ValueInIA"))
180
+ FileSystemSize.add_member(:value_in_standard, Shapes::ShapeRef.new(shape: FileSystemNullableSizeValue, location_name: "ValueInStandard"))
169
181
  FileSystemSize.struct_class = Types::FileSystemSize
170
182
 
183
+ LifecycleConfigurationDescription.add_member(:lifecycle_policies, Shapes::ShapeRef.new(shape: LifecyclePolicies, location_name: "LifecyclePolicies"))
184
+ LifecycleConfigurationDescription.struct_class = Types::LifecycleConfigurationDescription
185
+
186
+ LifecyclePolicies.member = Shapes::ShapeRef.new(shape: LifecyclePolicy)
187
+
188
+ LifecyclePolicy.add_member(:transition_to_ia, Shapes::ShapeRef.new(shape: TransitionToIARules, location_name: "TransitionToIA"))
189
+ LifecyclePolicy.struct_class = Types::LifecyclePolicy
190
+
171
191
  ModifyMountTargetSecurityGroupsRequest.add_member(:mount_target_id, Shapes::ShapeRef.new(shape: MountTargetId, required: true, location: "uri", location_name: "MountTargetId"))
172
192
  ModifyMountTargetSecurityGroupsRequest.add_member(:security_groups, Shapes::ShapeRef.new(shape: SecurityGroups, location_name: "SecurityGroups"))
173
193
  ModifyMountTargetSecurityGroupsRequest.struct_class = Types::ModifyMountTargetSecurityGroupsRequest
@@ -183,6 +203,10 @@ module Aws::EFS
183
203
 
184
204
  MountTargetDescriptions.member = Shapes::ShapeRef.new(shape: MountTargetDescription)
185
205
 
206
+ PutLifecycleConfigurationRequest.add_member(:file_system_id, Shapes::ShapeRef.new(shape: FileSystemId, required: true, location: "uri", location_name: "FileSystemId"))
207
+ PutLifecycleConfigurationRequest.add_member(:lifecycle_policies, Shapes::ShapeRef.new(shape: LifecyclePolicies, required: true, location_name: "LifecyclePolicies"))
208
+ PutLifecycleConfigurationRequest.struct_class = Types::PutLifecycleConfigurationRequest
209
+
186
210
  SecurityGroups.member = Shapes::ShapeRef.new(shape: SecurityGroup)
187
211
 
188
212
  Tag.add_member(:key, Shapes::ShapeRef.new(shape: TagKey, required: true, location_name: "Key"))
@@ -306,6 +330,17 @@ module Aws::EFS
306
330
  o.errors << Shapes::ShapeRef.new(shape: FileSystemNotFound)
307
331
  end)
308
332
 
333
+ api.add_operation(:describe_lifecycle_configuration, Seahorse::Model::Operation.new.tap do |o|
334
+ o.name = "DescribeLifecycleConfiguration"
335
+ o.http_method = "GET"
336
+ o.http_request_uri = "/2015-02-01/file-systems/{FileSystemId}/lifecycle-configuration"
337
+ o.input = Shapes::ShapeRef.new(shape: DescribeLifecycleConfigurationRequest)
338
+ o.output = Shapes::ShapeRef.new(shape: LifecycleConfigurationDescription)
339
+ o.errors << Shapes::ShapeRef.new(shape: InternalServerError)
340
+ o.errors << Shapes::ShapeRef.new(shape: BadRequest)
341
+ o.errors << Shapes::ShapeRef.new(shape: FileSystemNotFound)
342
+ end)
343
+
309
344
  api.add_operation(:describe_mount_target_security_groups, Seahorse::Model::Operation.new.tap do |o|
310
345
  o.name = "DescribeMountTargetSecurityGroups"
311
346
  o.http_method = "GET"
@@ -355,6 +390,18 @@ module Aws::EFS
355
390
  o.errors << Shapes::ShapeRef.new(shape: SecurityGroupNotFound)
356
391
  end)
357
392
 
393
+ api.add_operation(:put_lifecycle_configuration, Seahorse::Model::Operation.new.tap do |o|
394
+ o.name = "PutLifecycleConfiguration"
395
+ o.http_method = "PUT"
396
+ o.http_request_uri = "/2015-02-01/file-systems/{FileSystemId}/lifecycle-configuration"
397
+ o.input = Shapes::ShapeRef.new(shape: PutLifecycleConfigurationRequest)
398
+ o.output = Shapes::ShapeRef.new(shape: LifecycleConfigurationDescription)
399
+ o.errors << Shapes::ShapeRef.new(shape: BadRequest)
400
+ o.errors << Shapes::ShapeRef.new(shape: InternalServerError)
401
+ o.errors << Shapes::ShapeRef.new(shape: FileSystemNotFound)
402
+ o.errors << Shapes::ShapeRef.new(shape: IncorrectFileSystemLifeCycleState)
403
+ end)
404
+
358
405
  api.add_operation(:update_file_system, Seahorse::Model::Operation.new.tap do |o|
359
406
  o.name = "UpdateFileSystem"
360
407
  o.http_method = "PUT"
@@ -240,10 +240,8 @@ module Aws::EFS
240
240
  #
241
241
  # @!attribute [rw] max_items
242
242
  # (Optional) Specifies the maximum number of file systems to return in
243
- # the response (integer). This parameter value must be greater than 0.
244
- # The number of items that Amazon EFS returns is the minimum of the
245
- # `MaxItems` parameter specified in the request and the service's
246
- # internal maximum number of items per page.
243
+ # the response (integer). Currently, this number is automatically set
244
+ # to 10.
247
245
  # @return [Integer]
248
246
  #
249
247
  # @!attribute [rw] marker
@@ -296,6 +294,25 @@ module Aws::EFS
296
294
  include Aws::Structure
297
295
  end
298
296
 
297
+ # @note When making an API call, you may pass DescribeLifecycleConfigurationRequest
298
+ # data as a hash:
299
+ #
300
+ # {
301
+ # file_system_id: "FileSystemId", # required
302
+ # }
303
+ #
304
+ # @!attribute [rw] file_system_id
305
+ # The ID of the file system whose `LifecycleConfiguration` object you
306
+ # want to retrieve (String).
307
+ # @return [String]
308
+ #
309
+ # @see http://docs.aws.amazon.com/goto/WebAPI/elasticfilesystem-2015-02-01/DescribeLifecycleConfigurationRequest AWS API Documentation
310
+ #
311
+ class DescribeLifecycleConfigurationRequest < Struct.new(
312
+ :file_system_id)
313
+ include Aws::Structure
314
+ end
315
+
299
316
  # @note When making an API call, you may pass DescribeMountTargetSecurityGroupsRequest
300
317
  # data as a hash:
301
318
  #
@@ -337,7 +354,7 @@ module Aws::EFS
337
354
  #
338
355
  # @!attribute [rw] max_items
339
356
  # (Optional) Maximum number of mount targets to return in the
340
- # response. It must be an integer with a value greater than zero.
357
+ # response. Currently, this number is automatically set to 10.
341
358
  # @return [Integer]
342
359
  #
343
360
  # @!attribute [rw] marker
@@ -405,7 +422,7 @@ module Aws::EFS
405
422
  #
406
423
  # @!attribute [rw] max_items
407
424
  # (Optional) Maximum number of file system tags to return in the
408
- # response. It must be an integer with a value greater than zero.
425
+ # response. Currently, this number is automatically set to 10.
409
426
  # @return [Integer]
410
427
  #
411
428
  # @!attribute [rw] marker
@@ -577,11 +594,63 @@ module Aws::EFS
577
594
  # 1970-01-01T00:00:00Z.
578
595
  # @return [Time]
579
596
  #
597
+ # @!attribute [rw] value_in_ia
598
+ # The latest known metered size (in bytes) of data stored in the
599
+ # Infrequent Access storage class.
600
+ # @return [Integer]
601
+ #
602
+ # @!attribute [rw] value_in_standard
603
+ # The latest known metered size (in bytes) of data stored in the
604
+ # Standard storage class.
605
+ # @return [Integer]
606
+ #
580
607
  # @see http://docs.aws.amazon.com/goto/WebAPI/elasticfilesystem-2015-02-01/FileSystemSize AWS API Documentation
581
608
  #
582
609
  class FileSystemSize < Struct.new(
583
610
  :value,
584
- :timestamp)
611
+ :timestamp,
612
+ :value_in_ia,
613
+ :value_in_standard)
614
+ include Aws::Structure
615
+ end
616
+
617
+ # @!attribute [rw] lifecycle_policies
618
+ # An array of lifecycle management policies. Currently, EFS supports a
619
+ # maximum of one policy per file system.
620
+ # @return [Array<Types::LifecyclePolicy>]
621
+ #
622
+ # @see http://docs.aws.amazon.com/goto/WebAPI/elasticfilesystem-2015-02-01/LifecycleConfigurationDescription AWS API Documentation
623
+ #
624
+ class LifecycleConfigurationDescription < Struct.new(
625
+ :lifecycle_policies)
626
+ include Aws::Structure
627
+ end
628
+
629
+ # Describes a policy used by EFS lifecycle management to transition
630
+ # files to the Infrequent Access (IA) storage class.
631
+ #
632
+ # @note When making an API call, you may pass LifecyclePolicy
633
+ # data as a hash:
634
+ #
635
+ # {
636
+ # transition_to_ia: "AFTER_30_DAYS", # accepts AFTER_30_DAYS
637
+ # }
638
+ #
639
+ # @!attribute [rw] transition_to_ia
640
+ # A value that indicates how long it takes to transition to the IA
641
+ # storage class. Currently, the only possible value is
642
+ # `AFTER_30_DAYS`.
643
+ #
644
+ # `AFTER_30_DAYS` indicates files that have not been read from or
645
+ # written to for 30 days are transitioned from the Standard storage
646
+ # class to the IA storage class. Metadata operations such as listing
647
+ # the contents of a directory don't count as a file access event.
648
+ # @return [String]
649
+ #
650
+ # @see http://docs.aws.amazon.com/goto/WebAPI/elasticfilesystem-2015-02-01/LifecyclePolicy AWS API Documentation
651
+ #
652
+ class LifecyclePolicy < Struct.new(
653
+ :transition_to_ia)
585
654
  include Aws::Structure
586
655
  end
587
656
 
@@ -632,7 +701,7 @@ module Aws::EFS
632
701
  # @return [String]
633
702
  #
634
703
  # @!attribute [rw] ip_address
635
- # Address at which the file system may be mounted via the mount
704
+ # Address at which the file system can be mounted by using the mount
636
705
  # target.
637
706
  # @return [String]
638
707
  #
@@ -654,7 +723,39 @@ module Aws::EFS
654
723
  include Aws::Structure
655
724
  end
656
725
 
657
- # A tag is a key-value pair. Allowed characters: letters, whitespace,
726
+ # @note When making an API call, you may pass PutLifecycleConfigurationRequest
727
+ # data as a hash:
728
+ #
729
+ # {
730
+ # file_system_id: "FileSystemId", # required
731
+ # lifecycle_policies: [ # required
732
+ # {
733
+ # transition_to_ia: "AFTER_30_DAYS", # accepts AFTER_30_DAYS
734
+ # },
735
+ # ],
736
+ # }
737
+ #
738
+ # @!attribute [rw] file_system_id
739
+ # The ID of the file system for which you are creating the
740
+ # `LifecycleConfiguration` object (String).
741
+ # @return [String]
742
+ #
743
+ # @!attribute [rw] lifecycle_policies
744
+ # An array of `LifecyclePolicy` objects that define the file system's
745
+ # `LifecycleConfiguration` object. A `LifecycleConfiguration` object
746
+ # tells lifecycle management when to transition files from the
747
+ # Standard storage class to the Infrequent Access storage class.
748
+ # @return [Array<Types::LifecyclePolicy>]
749
+ #
750
+ # @see http://docs.aws.amazon.com/goto/WebAPI/elasticfilesystem-2015-02-01/PutLifecycleConfigurationRequest AWS API Documentation
751
+ #
752
+ class PutLifecycleConfigurationRequest < Struct.new(
753
+ :file_system_id,
754
+ :lifecycle_policies)
755
+ include Aws::Structure
756
+ end
757
+
758
+ # A tag is a key-value pair. Allowed characters: letters, white space,
658
759
  # and numbers, representable in UTF-8, and the following characters:` +
659
760
  # - = . _ : /`
660
761
  #
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: aws-sdk-efs
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.7.0
4
+ version: 1.8.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Amazon Web Services
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2018-11-20 00:00:00.000000000 Z
11
+ date: 2019-02-13 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: aws-sdk-core