aws-sdk-efs 1.50.0 → 1.51.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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 7ac8be6d4d8c61cfddc3eb8854adffa1bcfdea854c453e00229c92cbb963d444
4
- data.tar.gz: cf1e3b0ab2aafec4c683bdd48bd64bd7f05c2fecda8d91a4beae41303326ddb7
3
+ metadata.gz: ade5009e88ca6d89db4b83c6cad5ff9c3755b2ac433a202a62205f3aef405eac
4
+ data.tar.gz: ef29448e193328ce69977b94ef79c7d98b6d64862362d4d9048720384f54cf00
5
5
  SHA512:
6
- metadata.gz: f1e6a31b79b38ba58a4ad215fdddf3237cbed856971ad92ddde5071235b32a71aebb1d469017ca8b9902c30c03bbe161d6eeaa532e25d3db22bb04db8fe6b3ca
7
- data.tar.gz: 9acbedbf6e95723035ae173b26282e63fbb7409ac55532fd568f84bb5056865003f36d1583cd24a8739dc922a16dedd8c1f8d057450f1354a56768f5f87f3edd
6
+ metadata.gz: 5cdb7bf4af60623b1829256b77663df39beff76e367047cea279b4a4f770faa1c316188aa0aee242cc8c5ebaeaecd186376eaabf9f9bda949612ad5a56e78668
7
+ data.tar.gz: b8035eaf267b7fe92c1a096e99e8f13f742cb7dc47ea70f59970f34d040ff04b3cac3eae5ea887160b3074c12b71c09104ca678440e30288e0b9f4f60e2c18dd
data/CHANGELOG.md CHANGED
@@ -1,6 +1,11 @@
1
1
  Unreleased Changes
2
2
  ------------------
3
3
 
4
+ 1.51.0 (2022-01-25)
5
+ ------------------
6
+
7
+ * Feature - Use Amazon EFS Replication to replicate your Amazon EFS file system in the AWS Region of your preference.
8
+
4
9
  1.50.0 (2021-12-21)
5
10
  ------------------
6
11
 
data/VERSION CHANGED
@@ -1 +1 @@
1
- 1.50.0
1
+ 1.51.0
@@ -564,17 +564,17 @@ module Aws::EFS
564
564
  # @option params [Boolean] :encrypted
565
565
  # A Boolean value that, if true, creates an encrypted file system. When
566
566
  # creating an encrypted file system, you have the option of specifying
567
- # CreateFileSystemRequest$KmsKeyId for an existing Key Management
568
- # Service (KMS customer master key (CMK). If you don't specify a CMK,
569
- # then the default CMK for Amazon EFS, `/aws/elasticfilesystem`, is used
570
- # to protect the encrypted file system.
567
+ # an existing Key Management Service key (KMS key). If you don't
568
+ # specify a KMS key, then the default KMS key for Amazon EFS,
569
+ # `/aws/elasticfilesystem`, is used to protect the encrypted file
570
+ # system.
571
571
  #
572
572
  # @option params [String] :kms_key_id
573
- # The ID of the KMS CMK that you want to use to protect the encrypted
573
+ # The ID of the KMS key that you want to use to protect the encrypted
574
574
  # file system. This parameter is only required if you want to use a
575
575
  # non-default KMS key. If this parameter is not specified, the default
576
- # CMK for Amazon EFS is used. This ID can be in one of the following
577
- # formats:
576
+ # KMS key for Amazon EFS is used. You can specify a KMS key ID using the
577
+ # following formats:
578
578
  #
579
579
  # * Key ID - A unique identifier of the key, for example
580
580
  # `1234abcd-12ab-34cd-56ef-1234567890ab`.
@@ -588,11 +588,11 @@ module Aws::EFS
588
588
  # * Key alias ARN - An ARN for a key alias, for example
589
589
  # `arn:aws:kms:us-west-2:444455556666:alias/projectKey1`.
590
590
  #
591
- # If `KmsKeyId` is specified, the CreateFileSystemRequest$Encrypted
592
- # parameter must be set to true.
591
+ # If you use `KmsKeyId`, you must set the
592
+ # CreateFileSystemRequest$Encrypted parameter to true.
593
593
  #
594
594
  # EFS accepts only symmetric KMS keys. You cannot use asymmetric KMS
595
- # keys with EFS file systems.
595
+ # keys with Amazon EFS file systems.
596
596
  #
597
597
  # @option params [String] :throughput_mode
598
598
  # Specifies the throughput mode for the file system, either `bursting`
@@ -651,8 +651,8 @@ module Aws::EFS
651
651
  # Default is `false`. However, if you specify an `AvailabilityZoneName`,
652
652
  # the default is `true`.
653
653
  #
654
- # <note markdown="1"> Backup is not available in all Amazon Web Services Regionswhere Amazon
655
- # EFS is available.
654
+ # <note markdown="1"> Backup is not available in all Amazon Web Services Regions where
655
+ # Amazon EFS is available.
656
656
  #
657
657
  # </note>
658
658
  #
@@ -993,6 +993,122 @@ module Aws::EFS
993
993
  req.send_request(options)
994
994
  end
995
995
 
996
+ # Creates a replication configuration that replicates an existing EFS
997
+ # file system to a new, read-only file system. For more information, see
998
+ # [Amazon EFS replication][1]. The replication configuration specifies
999
+ # the following:
1000
+ #
1001
+ # * **Source file system** - an existing EFS file system that you want
1002
+ # replicated. The source file system cannot be a destination file
1003
+ # system in an existing replication configuration.
1004
+ #
1005
+ # * **Destination file system configuration** - the configuration of the
1006
+ # destination file system to which the source file system will be
1007
+ # replicated. There can only be one destination file system in a
1008
+ # replication configuration.
1009
+ #
1010
+ # * **Amazon Web Services Region** - The Amazon Web Services Region in
1011
+ # which the destination file system is created. EFS Replication is
1012
+ # available in all Amazon Web Services Region that Amazon EFS is
1013
+ # available in, except the following regions: Asia Pacific (Hong
1014
+ # Kong) Europe (Milan), Middle East (Bahrain), Africa (Cape Town),
1015
+ # and Asia Pacific (Jakarta).
1016
+ #
1017
+ # * **Availability zone** - If you want the destination file system to
1018
+ # use One Zone availability and durability, you must specify the
1019
+ # Availability Zone to create the file system in. For more
1020
+ # information about EFS storage classes, see [ Amazon EFS storage
1021
+ # classes][2] in the *Amazon EFS User Guide*.
1022
+ #
1023
+ # * **Encryption** - All destination file systems are created with
1024
+ # encryption at rest enabled. You can specify the KMS key that is
1025
+ # used to encrypt the destination file system. Your service-managed
1026
+ # KMS key for Amazon EFS is used if you don't specify a KMS key.
1027
+ # You cannot change this after the file system is created.
1028
+ #
1029
+ # The following properties are set by default:
1030
+ #
1031
+ # * **Performance mode** - The destination file system's performance
1032
+ # mode will match that of the source file system, unless the
1033
+ # destination file system uses One Zone storage. In that case, the
1034
+ # *General Purpose* performance mode is used. The Performance mode
1035
+ # cannot be changed.
1036
+ #
1037
+ # * **Throughput mode** - The destination file system use the Bursting
1038
+ # throughput mode by default. You can modify the throughput mode once
1039
+ # the file system is created.
1040
+ #
1041
+ # The following properties are turned off by default:
1042
+ #
1043
+ # * **Lifecycle management** - EFS lifecycle management and intelligent
1044
+ # tiering are not enabled on the destination file system. You can
1045
+ # enable EFS lifecycle management and intelligent tiering after the
1046
+ # destination file system is created.
1047
+ #
1048
+ # * **Automatic backups** - Automatic daily backups not enabled on the
1049
+ # destination file system. You can change this setting after the file
1050
+ # system is created.
1051
+ #
1052
+ # For more information, see [Amazon EFS replication][1].
1053
+ #
1054
+ #
1055
+ #
1056
+ # [1]: https://docs.aws.amazon.com/efs/latest/ug/efs-replication.html
1057
+ # [2]: https://docs.aws.amazon.com/efs/latest/ug/storage-classes.html
1058
+ #
1059
+ # @option params [required, String] :source_file_system_id
1060
+ # Specifies the Amazon EFS file system that you want to replicate. This
1061
+ # file system cannot already be a source or destination file system in
1062
+ # another replication configuration.
1063
+ #
1064
+ # @option params [required, Array<Types::DestinationToCreate>] :destinations
1065
+ # An array of destination configuration objects. Only one destination
1066
+ # configuration object is supported.
1067
+ #
1068
+ # @return [Types::ReplicationConfigurationDescription] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1069
+ #
1070
+ # * {Types::ReplicationConfigurationDescription#source_file_system_id #source_file_system_id} => String
1071
+ # * {Types::ReplicationConfigurationDescription#source_file_system_region #source_file_system_region} => String
1072
+ # * {Types::ReplicationConfigurationDescription#source_file_system_arn #source_file_system_arn} => String
1073
+ # * {Types::ReplicationConfigurationDescription#original_source_file_system_arn #original_source_file_system_arn} => String
1074
+ # * {Types::ReplicationConfigurationDescription#creation_time #creation_time} => Time
1075
+ # * {Types::ReplicationConfigurationDescription#destinations #destinations} => Array&lt;Types::Destination&gt;
1076
+ #
1077
+ # @example Request syntax with placeholder values
1078
+ #
1079
+ # resp = client.create_replication_configuration({
1080
+ # source_file_system_id: "FileSystemId", # required
1081
+ # destinations: [ # required
1082
+ # {
1083
+ # region: "RegionName",
1084
+ # availability_zone_name: "AvailabilityZoneName",
1085
+ # kms_key_id: "KmsKeyId",
1086
+ # },
1087
+ # ],
1088
+ # })
1089
+ #
1090
+ # @example Response structure
1091
+ #
1092
+ # resp.source_file_system_id #=> String
1093
+ # resp.source_file_system_region #=> String
1094
+ # resp.source_file_system_arn #=> String
1095
+ # resp.original_source_file_system_arn #=> String
1096
+ # resp.creation_time #=> Time
1097
+ # resp.destinations #=> Array
1098
+ # resp.destinations[0].status #=> String, one of "ENABLED", "ENABLING", "DELETING", "ERROR"
1099
+ # resp.destinations[0].file_system_id #=> String
1100
+ # resp.destinations[0].region #=> String
1101
+ # resp.destinations[0].last_replicated_timestamp #=> Time
1102
+ #
1103
+ # @see http://docs.aws.amazon.com/goto/WebAPI/elasticfilesystem-2015-02-01/CreateReplicationConfiguration AWS API Documentation
1104
+ #
1105
+ # @overload create_replication_configuration(params = {})
1106
+ # @param [Hash] params ({})
1107
+ def create_replication_configuration(params = {}, options = {})
1108
+ req = build_request(:create_replication_configuration, params)
1109
+ req.send_request(options)
1110
+ end
1111
+
996
1112
  # <note markdown="1"> DEPRECATED - CreateTags is deprecated and not maintained. Please use
997
1113
  # the API action to create tags for EFS resources.
998
1114
  #
@@ -1226,6 +1342,32 @@ module Aws::EFS
1226
1342
  req.send_request(options)
1227
1343
  end
1228
1344
 
1345
+ # Deletes an existing replication configuration. To delete a replication
1346
+ # configuration, you must make the request from the Amazon Web Services
1347
+ # Region in which the destination file system is located. Deleting a
1348
+ # replication configuration ends the replication process. You can write
1349
+ # to the destination file system once it's status becomes `Writeable`.
1350
+ #
1351
+ # @option params [required, String] :source_file_system_id
1352
+ # The ID of the source file system in the replication configuration.
1353
+ #
1354
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
1355
+ #
1356
+ # @example Request syntax with placeholder values
1357
+ #
1358
+ # resp = client.delete_replication_configuration({
1359
+ # source_file_system_id: "FileSystemId", # required
1360
+ # })
1361
+ #
1362
+ # @see http://docs.aws.amazon.com/goto/WebAPI/elasticfilesystem-2015-02-01/DeleteReplicationConfiguration AWS API Documentation
1363
+ #
1364
+ # @overload delete_replication_configuration(params = {})
1365
+ # @param [Hash] params ({})
1366
+ def delete_replication_configuration(params = {}, options = {})
1367
+ req = build_request(:delete_replication_configuration, params)
1368
+ req.send_request(options)
1369
+ end
1370
+
1229
1371
  # <note markdown="1"> DEPRECATED - DeleteTags is deprecated and not maintained. Please use
1230
1372
  # the API action to remove tags from EFS resources.
1231
1373
  #
@@ -1814,6 +1956,60 @@ module Aws::EFS
1814
1956
  req.send_request(options)
1815
1957
  end
1816
1958
 
1959
+ # Retrieves the replication configurations for either a specific file
1960
+ # system, or all configurations for the Amazon Web Services account in
1961
+ # an Amazon Web Services Region if a file system is not specified.
1962
+ #
1963
+ # @option params [String] :file_system_id
1964
+ # You can retrieve replication configurations for a specific file system
1965
+ # by providing a file system ID.
1966
+ #
1967
+ # @option params [String] :next_token
1968
+ # `NextToken` is present if the response is paginated. You can use
1969
+ # `NextMarker` in a subsequent request to fetch the next page of output.
1970
+ #
1971
+ # @option params [Integer] :max_results
1972
+ # (Optional) You can optionally specify the `MaxItems` parameter to
1973
+ # limit the number of objects returned in a response. The default value
1974
+ # is 100.
1975
+ #
1976
+ # @return [Types::DescribeReplicationConfigurationsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1977
+ #
1978
+ # * {Types::DescribeReplicationConfigurationsResponse#replications #replications} => Array&lt;Types::ReplicationConfigurationDescription&gt;
1979
+ # * {Types::DescribeReplicationConfigurationsResponse#next_token #next_token} => String
1980
+ #
1981
+ # @example Request syntax with placeholder values
1982
+ #
1983
+ # resp = client.describe_replication_configurations({
1984
+ # file_system_id: "FileSystemId",
1985
+ # next_token: "Token",
1986
+ # max_results: 1,
1987
+ # })
1988
+ #
1989
+ # @example Response structure
1990
+ #
1991
+ # resp.replications #=> Array
1992
+ # resp.replications[0].source_file_system_id #=> String
1993
+ # resp.replications[0].source_file_system_region #=> String
1994
+ # resp.replications[0].source_file_system_arn #=> String
1995
+ # resp.replications[0].original_source_file_system_arn #=> String
1996
+ # resp.replications[0].creation_time #=> Time
1997
+ # resp.replications[0].destinations #=> Array
1998
+ # resp.replications[0].destinations[0].status #=> String, one of "ENABLED", "ENABLING", "DELETING", "ERROR"
1999
+ # resp.replications[0].destinations[0].file_system_id #=> String
2000
+ # resp.replications[0].destinations[0].region #=> String
2001
+ # resp.replications[0].destinations[0].last_replicated_timestamp #=> Time
2002
+ # resp.next_token #=> String
2003
+ #
2004
+ # @see http://docs.aws.amazon.com/goto/WebAPI/elasticfilesystem-2015-02-01/DescribeReplicationConfigurations AWS API Documentation
2005
+ #
2006
+ # @overload describe_replication_configurations(params = {})
2007
+ # @param [Hash] params ({})
2008
+ def describe_replication_configurations(params = {}, options = {})
2009
+ req = build_request(:describe_replication_configurations, params)
2010
+ req.send_request(options)
2011
+ end
2012
+
1817
2013
  # <note markdown="1"> DEPRECATED - The DeleteTags action is deprecated and not maintained.
1818
2014
  # Please use the API action to remove tags from EFS resources.
1819
2015
  #
@@ -2444,7 +2640,7 @@ module Aws::EFS
2444
2640
  params: params,
2445
2641
  config: config)
2446
2642
  context[:gem_name] = 'aws-sdk-efs'
2447
- context[:gem_version] = '1.50.0'
2643
+ context[:gem_version] = '1.51.0'
2448
2644
  Seahorse::Client::Request.new(handlers, context)
2449
2645
  end
2450
2646
 
@@ -33,6 +33,7 @@ module Aws::EFS
33
33
  CreateAccessPointRequest = Shapes::StructureShape.new(name: 'CreateAccessPointRequest')
34
34
  CreateFileSystemRequest = Shapes::StructureShape.new(name: 'CreateFileSystemRequest')
35
35
  CreateMountTargetRequest = Shapes::StructureShape.new(name: 'CreateMountTargetRequest')
36
+ CreateReplicationConfigurationRequest = Shapes::StructureShape.new(name: 'CreateReplicationConfigurationRequest')
36
37
  CreateTagsRequest = Shapes::StructureShape.new(name: 'CreateTagsRequest')
37
38
  CreationInfo = Shapes::StructureShape.new(name: 'CreationInfo')
38
39
  CreationToken = Shapes::StringShape.new(name: 'CreationToken')
@@ -40,6 +41,7 @@ module Aws::EFS
40
41
  DeleteFileSystemPolicyRequest = Shapes::StructureShape.new(name: 'DeleteFileSystemPolicyRequest')
41
42
  DeleteFileSystemRequest = Shapes::StructureShape.new(name: 'DeleteFileSystemRequest')
42
43
  DeleteMountTargetRequest = Shapes::StructureShape.new(name: 'DeleteMountTargetRequest')
44
+ DeleteReplicationConfigurationRequest = Shapes::StructureShape.new(name: 'DeleteReplicationConfigurationRequest')
43
45
  DeleteTagsRequest = Shapes::StructureShape.new(name: 'DeleteTagsRequest')
44
46
  DependencyTimeout = Shapes::StructureShape.new(name: 'DependencyTimeout')
45
47
  DescribeAccessPointsRequest = Shapes::StructureShape.new(name: 'DescribeAccessPointsRequest')
@@ -55,8 +57,14 @@ module Aws::EFS
55
57
  DescribeMountTargetSecurityGroupsResponse = Shapes::StructureShape.new(name: 'DescribeMountTargetSecurityGroupsResponse')
56
58
  DescribeMountTargetsRequest = Shapes::StructureShape.new(name: 'DescribeMountTargetsRequest')
57
59
  DescribeMountTargetsResponse = Shapes::StructureShape.new(name: 'DescribeMountTargetsResponse')
60
+ DescribeReplicationConfigurationsRequest = Shapes::StructureShape.new(name: 'DescribeReplicationConfigurationsRequest')
61
+ DescribeReplicationConfigurationsResponse = Shapes::StructureShape.new(name: 'DescribeReplicationConfigurationsResponse')
58
62
  DescribeTagsRequest = Shapes::StructureShape.new(name: 'DescribeTagsRequest')
59
63
  DescribeTagsResponse = Shapes::StructureShape.new(name: 'DescribeTagsResponse')
64
+ Destination = Shapes::StructureShape.new(name: 'Destination')
65
+ DestinationToCreate = Shapes::StructureShape.new(name: 'DestinationToCreate')
66
+ Destinations = Shapes::ListShape.new(name: 'Destinations')
67
+ DestinationsToCreate = Shapes::ListShape.new(name: 'DestinationsToCreate')
60
68
  Encrypted = Shapes::BooleanShape.new(name: 'Encrypted')
61
69
  ErrorCode = Shapes::StringShape.new(name: 'ErrorCode')
62
70
  ErrorMessage = Shapes::StringShape.new(name: 'ErrorMessage')
@@ -115,6 +123,11 @@ module Aws::EFS
115
123
  PutBackupPolicyRequest = Shapes::StructureShape.new(name: 'PutBackupPolicyRequest')
116
124
  PutFileSystemPolicyRequest = Shapes::StructureShape.new(name: 'PutFileSystemPolicyRequest')
117
125
  PutLifecycleConfigurationRequest = Shapes::StructureShape.new(name: 'PutLifecycleConfigurationRequest')
126
+ RegionName = Shapes::StringShape.new(name: 'RegionName')
127
+ ReplicationConfigurationDescription = Shapes::StructureShape.new(name: 'ReplicationConfigurationDescription')
128
+ ReplicationConfigurationDescriptions = Shapes::ListShape.new(name: 'ReplicationConfigurationDescriptions')
129
+ ReplicationNotFound = Shapes::StructureShape.new(name: 'ReplicationNotFound')
130
+ ReplicationStatus = Shapes::StringShape.new(name: 'ReplicationStatus')
118
131
  Resource = Shapes::StringShape.new(name: 'Resource')
119
132
  ResourceId = Shapes::StringShape.new(name: 'ResourceId')
120
133
  ResourceIdPreference = Shapes::StructureShape.new(name: 'ResourceIdPreference')
@@ -214,6 +227,10 @@ module Aws::EFS
214
227
  CreateMountTargetRequest.add_member(:security_groups, Shapes::ShapeRef.new(shape: SecurityGroups, location_name: "SecurityGroups"))
215
228
  CreateMountTargetRequest.struct_class = Types::CreateMountTargetRequest
216
229
 
230
+ CreateReplicationConfigurationRequest.add_member(:source_file_system_id, Shapes::ShapeRef.new(shape: FileSystemId, required: true, location: "uri", location_name: "SourceFileSystemId"))
231
+ CreateReplicationConfigurationRequest.add_member(:destinations, Shapes::ShapeRef.new(shape: DestinationsToCreate, required: true, location_name: "Destinations"))
232
+ CreateReplicationConfigurationRequest.struct_class = Types::CreateReplicationConfigurationRequest
233
+
217
234
  CreateTagsRequest.add_member(:file_system_id, Shapes::ShapeRef.new(shape: FileSystemId, required: true, location: "uri", location_name: "FileSystemId"))
218
235
  CreateTagsRequest.add_member(:tags, Shapes::ShapeRef.new(shape: Tags, required: true, location_name: "Tags"))
219
236
  CreateTagsRequest.struct_class = Types::CreateTagsRequest
@@ -235,6 +252,9 @@ module Aws::EFS
235
252
  DeleteMountTargetRequest.add_member(:mount_target_id, Shapes::ShapeRef.new(shape: MountTargetId, required: true, location: "uri", location_name: "MountTargetId"))
236
253
  DeleteMountTargetRequest.struct_class = Types::DeleteMountTargetRequest
237
254
 
255
+ DeleteReplicationConfigurationRequest.add_member(:source_file_system_id, Shapes::ShapeRef.new(shape: FileSystemId, required: true, location: "uri", location_name: "SourceFileSystemId"))
256
+ DeleteReplicationConfigurationRequest.struct_class = Types::DeleteReplicationConfigurationRequest
257
+
238
258
  DeleteTagsRequest.add_member(:file_system_id, Shapes::ShapeRef.new(shape: FileSystemId, required: true, location: "uri", location_name: "FileSystemId"))
239
259
  DeleteTagsRequest.add_member(:tag_keys, Shapes::ShapeRef.new(shape: TagKeys, required: true, location_name: "TagKeys"))
240
260
  DeleteTagsRequest.struct_class = Types::DeleteTagsRequest
@@ -299,6 +319,15 @@ module Aws::EFS
299
319
  DescribeMountTargetsResponse.add_member(:next_marker, Shapes::ShapeRef.new(shape: Marker, location_name: "NextMarker"))
300
320
  DescribeMountTargetsResponse.struct_class = Types::DescribeMountTargetsResponse
301
321
 
322
+ DescribeReplicationConfigurationsRequest.add_member(:file_system_id, Shapes::ShapeRef.new(shape: FileSystemId, location: "querystring", location_name: "FileSystemId"))
323
+ DescribeReplicationConfigurationsRequest.add_member(:next_token, Shapes::ShapeRef.new(shape: Token, location: "querystring", location_name: "NextToken"))
324
+ DescribeReplicationConfigurationsRequest.add_member(:max_results, Shapes::ShapeRef.new(shape: MaxResults, location: "querystring", location_name: "MaxResults"))
325
+ DescribeReplicationConfigurationsRequest.struct_class = Types::DescribeReplicationConfigurationsRequest
326
+
327
+ DescribeReplicationConfigurationsResponse.add_member(:replications, Shapes::ShapeRef.new(shape: ReplicationConfigurationDescriptions, location_name: "Replications"))
328
+ DescribeReplicationConfigurationsResponse.add_member(:next_token, Shapes::ShapeRef.new(shape: Token, location_name: "NextToken"))
329
+ DescribeReplicationConfigurationsResponse.struct_class = Types::DescribeReplicationConfigurationsResponse
330
+
302
331
  DescribeTagsRequest.add_member(:max_items, Shapes::ShapeRef.new(shape: MaxItems, location: "querystring", location_name: "MaxItems"))
303
332
  DescribeTagsRequest.add_member(:marker, Shapes::ShapeRef.new(shape: Marker, location: "querystring", location_name: "Marker"))
304
333
  DescribeTagsRequest.add_member(:file_system_id, Shapes::ShapeRef.new(shape: FileSystemId, required: true, location: "uri", location_name: "FileSystemId"))
@@ -309,6 +338,21 @@ module Aws::EFS
309
338
  DescribeTagsResponse.add_member(:next_marker, Shapes::ShapeRef.new(shape: Marker, location_name: "NextMarker"))
310
339
  DescribeTagsResponse.struct_class = Types::DescribeTagsResponse
311
340
 
341
+ Destination.add_member(:status, Shapes::ShapeRef.new(shape: ReplicationStatus, required: true, location_name: "Status"))
342
+ Destination.add_member(:file_system_id, Shapes::ShapeRef.new(shape: FileSystemId, required: true, location_name: "FileSystemId"))
343
+ Destination.add_member(:region, Shapes::ShapeRef.new(shape: RegionName, required: true, location_name: "Region"))
344
+ Destination.add_member(:last_replicated_timestamp, Shapes::ShapeRef.new(shape: Timestamp, location_name: "LastReplicatedTimestamp"))
345
+ Destination.struct_class = Types::Destination
346
+
347
+ DestinationToCreate.add_member(:region, Shapes::ShapeRef.new(shape: RegionName, location_name: "Region"))
348
+ DestinationToCreate.add_member(:availability_zone_name, Shapes::ShapeRef.new(shape: AvailabilityZoneName, location_name: "AvailabilityZoneName"))
349
+ DestinationToCreate.add_member(:kms_key_id, Shapes::ShapeRef.new(shape: KmsKeyId, location_name: "KmsKeyId"))
350
+ DestinationToCreate.struct_class = Types::DestinationToCreate
351
+
352
+ Destinations.member = Shapes::ShapeRef.new(shape: Destination)
353
+
354
+ DestinationsToCreate.member = Shapes::ShapeRef.new(shape: DestinationToCreate)
355
+
312
356
  FileSystemAlreadyExists.add_member(:error_code, Shapes::ShapeRef.new(shape: ErrorCode, required: true, location_name: "ErrorCode"))
313
357
  FileSystemAlreadyExists.add_member(:message, Shapes::ShapeRef.new(shape: ErrorMessage, location_name: "Message"))
314
358
  FileSystemAlreadyExists.add_member(:file_system_id, Shapes::ShapeRef.new(shape: FileSystemId, required: true, location_name: "FileSystemId"))
@@ -461,6 +505,20 @@ module Aws::EFS
461
505
  PutLifecycleConfigurationRequest.add_member(:lifecycle_policies, Shapes::ShapeRef.new(shape: LifecyclePolicies, required: true, location_name: "LifecyclePolicies"))
462
506
  PutLifecycleConfigurationRequest.struct_class = Types::PutLifecycleConfigurationRequest
463
507
 
508
+ ReplicationConfigurationDescription.add_member(:source_file_system_id, Shapes::ShapeRef.new(shape: FileSystemId, required: true, location_name: "SourceFileSystemId"))
509
+ ReplicationConfigurationDescription.add_member(:source_file_system_region, Shapes::ShapeRef.new(shape: RegionName, required: true, location_name: "SourceFileSystemRegion"))
510
+ ReplicationConfigurationDescription.add_member(:source_file_system_arn, Shapes::ShapeRef.new(shape: FileSystemArn, required: true, location_name: "SourceFileSystemArn"))
511
+ ReplicationConfigurationDescription.add_member(:original_source_file_system_arn, Shapes::ShapeRef.new(shape: FileSystemArn, required: true, location_name: "OriginalSourceFileSystemArn"))
512
+ ReplicationConfigurationDescription.add_member(:creation_time, Shapes::ShapeRef.new(shape: Timestamp, required: true, location_name: "CreationTime"))
513
+ ReplicationConfigurationDescription.add_member(:destinations, Shapes::ShapeRef.new(shape: Destinations, required: true, location_name: "Destinations"))
514
+ ReplicationConfigurationDescription.struct_class = Types::ReplicationConfigurationDescription
515
+
516
+ ReplicationConfigurationDescriptions.member = Shapes::ShapeRef.new(shape: ReplicationConfigurationDescription)
517
+
518
+ ReplicationNotFound.add_member(:error_code, Shapes::ShapeRef.new(shape: ErrorCode, location_name: "ErrorCode"))
519
+ ReplicationNotFound.add_member(:message, Shapes::ShapeRef.new(shape: ErrorMessage, location_name: "Message"))
520
+ ReplicationNotFound.struct_class = Types::ReplicationNotFound
521
+
464
522
  ResourceIdPreference.add_member(:resource_id_type, Shapes::ShapeRef.new(shape: ResourceIdType, location_name: "ResourceIdType"))
465
523
  ResourceIdPreference.add_member(:resources, Shapes::ShapeRef.new(shape: Resources, location_name: "Resources"))
466
524
  ResourceIdPreference.struct_class = Types::ResourceIdPreference
@@ -591,6 +649,24 @@ module Aws::EFS
591
649
  o.errors << Shapes::ShapeRef.new(shape: AvailabilityZonesMismatch)
592
650
  end)
593
651
 
652
+ api.add_operation(:create_replication_configuration, Seahorse::Model::Operation.new.tap do |o|
653
+ o.name = "CreateReplicationConfiguration"
654
+ o.http_method = "POST"
655
+ o.http_request_uri = "/2015-02-01/file-systems/{SourceFileSystemId}/replication-configuration"
656
+ o.input = Shapes::ShapeRef.new(shape: CreateReplicationConfigurationRequest)
657
+ o.output = Shapes::ShapeRef.new(shape: ReplicationConfigurationDescription)
658
+ o.errors << Shapes::ShapeRef.new(shape: BadRequest)
659
+ o.errors << Shapes::ShapeRef.new(shape: IncorrectFileSystemLifeCycleState)
660
+ o.errors << Shapes::ShapeRef.new(shape: ValidationException)
661
+ o.errors << Shapes::ShapeRef.new(shape: ReplicationNotFound)
662
+ o.errors << Shapes::ShapeRef.new(shape: FileSystemNotFound)
663
+ o.errors << Shapes::ShapeRef.new(shape: UnsupportedAvailabilityZone)
664
+ o.errors << Shapes::ShapeRef.new(shape: FileSystemLimitExceeded)
665
+ o.errors << Shapes::ShapeRef.new(shape: InsufficientThroughputCapacity)
666
+ o.errors << Shapes::ShapeRef.new(shape: ThroughputLimitExceeded)
667
+ o.errors << Shapes::ShapeRef.new(shape: InternalServerError)
668
+ end)
669
+
594
670
  api.add_operation(:create_tags, Seahorse::Model::Operation.new.tap do |o|
595
671
  o.name = "CreateTags"
596
672
  o.http_method = "POST"
@@ -632,6 +708,7 @@ module Aws::EFS
632
708
  o.http_request_uri = "/2015-02-01/file-systems/{FileSystemId}/policy"
633
709
  o.input = Shapes::ShapeRef.new(shape: DeleteFileSystemPolicyRequest)
634
710
  o.output = Shapes::ShapeRef.new(shape: Shapes::StructureShape.new(struct_class: Aws::EmptyStructure))
711
+ o.errors << Shapes::ShapeRef.new(shape: BadRequest)
635
712
  o.errors << Shapes::ShapeRef.new(shape: InternalServerError)
636
713
  o.errors << Shapes::ShapeRef.new(shape: FileSystemNotFound)
637
714
  o.errors << Shapes::ShapeRef.new(shape: IncorrectFileSystemLifeCycleState)
@@ -649,6 +726,18 @@ module Aws::EFS
649
726
  o.errors << Shapes::ShapeRef.new(shape: MountTargetNotFound)
650
727
  end)
651
728
 
729
+ api.add_operation(:delete_replication_configuration, Seahorse::Model::Operation.new.tap do |o|
730
+ o.name = "DeleteReplicationConfiguration"
731
+ o.http_method = "DELETE"
732
+ o.http_request_uri = "/2015-02-01/file-systems/{SourceFileSystemId}/replication-configuration"
733
+ o.input = Shapes::ShapeRef.new(shape: DeleteReplicationConfigurationRequest)
734
+ o.output = Shapes::ShapeRef.new(shape: Shapes::StructureShape.new(struct_class: Aws::EmptyStructure))
735
+ o.errors << Shapes::ShapeRef.new(shape: BadRequest)
736
+ o.errors << Shapes::ShapeRef.new(shape: InternalServerError)
737
+ o.errors << Shapes::ShapeRef.new(shape: FileSystemNotFound)
738
+ o.errors << Shapes::ShapeRef.new(shape: ReplicationNotFound)
739
+ end)
740
+
652
741
  api.add_operation(:delete_tags, Seahorse::Model::Operation.new.tap do |o|
653
742
  o.name = "DeleteTags"
654
743
  o.http_method = "POST"
@@ -707,6 +796,7 @@ module Aws::EFS
707
796
  o.http_request_uri = "/2015-02-01/file-systems/{FileSystemId}/policy"
708
797
  o.input = Shapes::ShapeRef.new(shape: DescribeFileSystemPolicyRequest)
709
798
  o.output = Shapes::ShapeRef.new(shape: FileSystemPolicyDescription)
799
+ o.errors << Shapes::ShapeRef.new(shape: BadRequest)
710
800
  o.errors << Shapes::ShapeRef.new(shape: InternalServerError)
711
801
  o.errors << Shapes::ShapeRef.new(shape: FileSystemNotFound)
712
802
  o.errors << Shapes::ShapeRef.new(shape: PolicyNotFound)
@@ -765,6 +855,19 @@ module Aws::EFS
765
855
  o.errors << Shapes::ShapeRef.new(shape: AccessPointNotFound)
766
856
  end)
767
857
 
858
+ api.add_operation(:describe_replication_configurations, Seahorse::Model::Operation.new.tap do |o|
859
+ o.name = "DescribeReplicationConfigurations"
860
+ o.http_method = "GET"
861
+ o.http_request_uri = "/2015-02-01/file-systems/replication-configurations"
862
+ o.input = Shapes::ShapeRef.new(shape: DescribeReplicationConfigurationsRequest)
863
+ o.output = Shapes::ShapeRef.new(shape: DescribeReplicationConfigurationsResponse)
864
+ o.errors << Shapes::ShapeRef.new(shape: BadRequest)
865
+ o.errors << Shapes::ShapeRef.new(shape: FileSystemNotFound)
866
+ o.errors << Shapes::ShapeRef.new(shape: InternalServerError)
867
+ o.errors << Shapes::ShapeRef.new(shape: ReplicationNotFound)
868
+ o.errors << Shapes::ShapeRef.new(shape: ValidationException)
869
+ end)
870
+
768
871
  api.add_operation(:describe_tags, Seahorse::Model::Operation.new.tap do |o|
769
872
  o.name = "DescribeTags"
770
873
  o.http_method = "GET"
@@ -844,6 +947,7 @@ module Aws::EFS
844
947
  o.http_request_uri = "/2015-02-01/file-systems/{FileSystemId}/policy"
845
948
  o.input = Shapes::ShapeRef.new(shape: PutFileSystemPolicyRequest)
846
949
  o.output = Shapes::ShapeRef.new(shape: FileSystemPolicyDescription)
950
+ o.errors << Shapes::ShapeRef.new(shape: BadRequest)
847
951
  o.errors << Shapes::ShapeRef.new(shape: InternalServerError)
848
952
  o.errors << Shapes::ShapeRef.new(shape: FileSystemNotFound)
849
953
  o.errors << Shapes::ShapeRef.new(shape: InvalidPolicyException)
@@ -48,6 +48,7 @@ module Aws::EFS
48
48
  # * {NetworkInterfaceLimitExceeded}
49
49
  # * {NoFreeAddressesInSubnet}
50
50
  # * {PolicyNotFound}
51
+ # * {ReplicationNotFound}
51
52
  # * {SecurityGroupLimitExceeded}
52
53
  # * {SecurityGroupNotFound}
53
54
  # * {SubnetNotFound}
@@ -492,6 +493,26 @@ module Aws::EFS
492
493
  end
493
494
  end
494
495
 
496
+ class ReplicationNotFound < ServiceError
497
+
498
+ # @param [Seahorse::Client::RequestContext] context
499
+ # @param [String] message
500
+ # @param [Aws::EFS::Types::ReplicationNotFound] data
501
+ def initialize(context, message, data = Aws::EmptyStructure.new)
502
+ super(context, message, data)
503
+ end
504
+
505
+ # @return [String]
506
+ def error_code
507
+ @data[:error_code]
508
+ end
509
+
510
+ # @return [String]
511
+ def message
512
+ @message || @data[:message]
513
+ end
514
+ end
515
+
495
516
  class SecurityGroupLimitExceeded < ServiceError
496
517
 
497
518
  # @param [Seahorse::Client::RequestContext] context