aws-sdk-efs 1.48.0 → 1.52.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: 54e07ef368af45883bfa16c5ae07bdc65507b568d26d5b8c1716f343e5b9a31e
4
- data.tar.gz: 1174a1bcb41000dfbbb0fca0a6032c3ff9a771dc69eb19964638a40cd5660613
3
+ metadata.gz: 76f2967d7a94c5ab88c2288d73566fcf4a2832d2114fe6129c767794c135c2a1
4
+ data.tar.gz: 0622f1deae5360e77de8b9cb6e9f599fc98883a922a6a875fa03f2a896ed8b55
5
5
  SHA512:
6
- metadata.gz: 7060fc4f9cc8bf945245534a2e9c5641487670f8f4b3e415c5e97c6f5ac28a48b113c1dc2b61f4840c3cfab8007ae69b27960169cdce00a5f395394dbfc83431
7
- data.tar.gz: 961671b654214728c491b20375df68736d9c5ec8adc02674f52da23d02c7638503ed6c1d157526b188687da570c3f4de4c041751fe2ce6a8311efa271544c514
6
+ metadata.gz: efeae8e7dc095ca485f4e26c5b6cf58678856989dcee29dee87438bdbf8aa82a50ff5ff9a80cdc99ec59ae8c110a6838e4cadf4331e3be8c858ea5ba9fbcaed8
7
+ data.tar.gz: bd27a045c3474b84db772214e8e23976a26d12899c4e4422f69a8c0371413aefc488ccc8d0aac056ead4caa5cf7e5f4500014397dc37d381738465dc71239a87
data/CHANGELOG.md CHANGED
@@ -1,6 +1,26 @@
1
1
  Unreleased Changes
2
2
  ------------------
3
3
 
4
+ 1.52.0 (2022-02-03)
5
+ ------------------
6
+
7
+ * Feature - Code Generated Changes, see `./build_tools` or `aws-sdk-core`'s CHANGELOG.md for details.
8
+
9
+ 1.51.0 (2022-01-25)
10
+ ------------------
11
+
12
+ * Feature - Use Amazon EFS Replication to replicate your Amazon EFS file system in the AWS Region of your preference.
13
+
14
+ 1.50.0 (2021-12-21)
15
+ ------------------
16
+
17
+ * Feature - Code Generated Changes, see `./build_tools` or `aws-sdk-core`'s CHANGELOG.md for details.
18
+
19
+ 1.49.0 (2021-11-30)
20
+ ------------------
21
+
22
+ * Feature - Code Generated Changes, see `./build_tools` or `aws-sdk-core`'s CHANGELOG.md for details.
23
+
4
24
  1.48.0 (2021-11-04)
5
25
  ------------------
6
26
 
data/VERSION CHANGED
@@ -1 +1 @@
1
- 1.48.0
1
+ 1.52.0
@@ -27,6 +27,8 @@ require 'aws-sdk-core/plugins/client_metrics_plugin.rb'
27
27
  require 'aws-sdk-core/plugins/client_metrics_send_plugin.rb'
28
28
  require 'aws-sdk-core/plugins/transfer_encoding.rb'
29
29
  require 'aws-sdk-core/plugins/http_checksum.rb'
30
+ require 'aws-sdk-core/plugins/defaults_mode.rb'
31
+ require 'aws-sdk-core/plugins/recursion_detection.rb'
30
32
  require 'aws-sdk-core/plugins/signature_v4.rb'
31
33
  require 'aws-sdk-core/plugins/protocols/rest_json.rb'
32
34
 
@@ -73,6 +75,8 @@ module Aws::EFS
73
75
  add_plugin(Aws::Plugins::ClientMetricsSendPlugin)
74
76
  add_plugin(Aws::Plugins::TransferEncoding)
75
77
  add_plugin(Aws::Plugins::HttpChecksum)
78
+ add_plugin(Aws::Plugins::DefaultsMode)
79
+ add_plugin(Aws::Plugins::RecursionDetection)
76
80
  add_plugin(Aws::Plugins::SignatureV4)
77
81
  add_plugin(Aws::Plugins::Protocols::RestJson)
78
82
 
@@ -119,7 +123,9 @@ module Aws::EFS
119
123
  # * EC2/ECS IMDS instance profile - When used by default, the timeouts
120
124
  # are very aggressive. Construct and pass an instance of
121
125
  # `Aws::InstanceProfileCredentails` or `Aws::ECSCredentials` to
122
- # enable retries and extended timeouts.
126
+ # enable retries and extended timeouts. Instance profile credential
127
+ # fetching can be disabled by setting ENV['AWS_EC2_METADATA_DISABLED']
128
+ # to true.
123
129
  #
124
130
  # @option options [required, String] :region
125
131
  # The AWS region to connect to. The configured `:region` is
@@ -173,6 +179,10 @@ module Aws::EFS
173
179
  # Used only in `standard` and adaptive retry modes. Specifies whether to apply
174
180
  # a clock skew correction and retry requests with skewed client clocks.
175
181
  #
182
+ # @option options [String] :defaults_mode ("legacy")
183
+ # See {Aws::DefaultsModeConfiguration} for a list of the
184
+ # accepted modes and the configuration defaults that are included.
185
+ #
176
186
  # @option options [Boolean] :disable_host_prefix_injection (false)
177
187
  # Set to true to disable SDK automatically adding host prefix
178
188
  # to default service endpoint when available.
@@ -295,7 +305,7 @@ module Aws::EFS
295
305
  # seconds to wait when opening a HTTP session before raising a
296
306
  # `Timeout::Error`.
297
307
  #
298
- # @option options [Integer] :http_read_timeout (60) The default
308
+ # @option options [Float] :http_read_timeout (60) The default
299
309
  # number of seconds to wait for response data. This value can
300
310
  # safely be set per-request on the session.
301
311
  #
@@ -311,6 +321,9 @@ module Aws::EFS
311
321
  # disables this behaviour. This value can safely be set per
312
322
  # request on the session.
313
323
  #
324
+ # @option options [Float] :ssl_timeout (nil) Sets the SSL timeout
325
+ # in seconds.
326
+ #
314
327
  # @option options [Boolean] :http_wire_trace (false) When `true`,
315
328
  # HTTP debug output will be sent to the `:logger`.
316
329
  #
@@ -553,17 +566,17 @@ module Aws::EFS
553
566
  # @option params [Boolean] :encrypted
554
567
  # A Boolean value that, if true, creates an encrypted file system. When
555
568
  # creating an encrypted file system, you have the option of specifying
556
- # CreateFileSystemRequest$KmsKeyId for an existing Key Management
557
- # Service (KMS customer master key (CMK). If you don't specify a CMK,
558
- # then the default CMK for Amazon EFS, `/aws/elasticfilesystem`, is used
559
- # to protect the encrypted file system.
569
+ # an existing Key Management Service key (KMS key). If you don't
570
+ # specify a KMS key, then the default KMS key for Amazon EFS,
571
+ # `/aws/elasticfilesystem`, is used to protect the encrypted file
572
+ # system.
560
573
  #
561
574
  # @option params [String] :kms_key_id
562
- # The ID of the KMS CMK that you want to use to protect the encrypted
575
+ # The ID of the KMS key that you want to use to protect the encrypted
563
576
  # file system. This parameter is only required if you want to use a
564
577
  # non-default KMS key. If this parameter is not specified, the default
565
- # CMK for Amazon EFS is used. This ID can be in one of the following
566
- # formats:
578
+ # KMS key for Amazon EFS is used. You can specify a KMS key ID using the
579
+ # following formats:
567
580
  #
568
581
  # * Key ID - A unique identifier of the key, for example
569
582
  # `1234abcd-12ab-34cd-56ef-1234567890ab`.
@@ -577,11 +590,11 @@ module Aws::EFS
577
590
  # * Key alias ARN - An ARN for a key alias, for example
578
591
  # `arn:aws:kms:us-west-2:444455556666:alias/projectKey1`.
579
592
  #
580
- # If `KmsKeyId` is specified, the CreateFileSystemRequest$Encrypted
581
- # parameter must be set to true.
593
+ # If you use `KmsKeyId`, you must set the
594
+ # CreateFileSystemRequest$Encrypted parameter to true.
582
595
  #
583
596
  # EFS accepts only symmetric KMS keys. You cannot use asymmetric KMS
584
- # keys with EFS file systems.
597
+ # keys with Amazon EFS file systems.
585
598
  #
586
599
  # @option params [String] :throughput_mode
587
600
  # Specifies the throughput mode for the file system, either `bursting`
@@ -640,8 +653,8 @@ module Aws::EFS
640
653
  # Default is `false`. However, if you specify an `AvailabilityZoneName`,
641
654
  # the default is `true`.
642
655
  #
643
- # <note markdown="1"> Backup is not available in all Amazon Web Services Regionswhere Amazon
644
- # EFS is available.
656
+ # <note markdown="1"> Backup is not available in all Amazon Web Services Regions where
657
+ # Amazon EFS is available.
645
658
  #
646
659
  # </note>
647
660
  #
@@ -982,6 +995,122 @@ module Aws::EFS
982
995
  req.send_request(options)
983
996
  end
984
997
 
998
+ # Creates a replication configuration that replicates an existing EFS
999
+ # file system to a new, read-only file system. For more information, see
1000
+ # [Amazon EFS replication][1]. The replication configuration specifies
1001
+ # the following:
1002
+ #
1003
+ # * **Source file system** - an existing EFS file system that you want
1004
+ # replicated. The source file system cannot be a destination file
1005
+ # system in an existing replication configuration.
1006
+ #
1007
+ # * **Destination file system configuration** - the configuration of the
1008
+ # destination file system to which the source file system will be
1009
+ # replicated. There can only be one destination file system in a
1010
+ # replication configuration.
1011
+ #
1012
+ # * **Amazon Web Services Region** - The Amazon Web Services Region in
1013
+ # which the destination file system is created. EFS Replication is
1014
+ # available in all Amazon Web Services Region that Amazon EFS is
1015
+ # available in, except the following regions: Asia Pacific (Hong
1016
+ # Kong) Europe (Milan), Middle East (Bahrain), Africa (Cape Town),
1017
+ # and Asia Pacific (Jakarta).
1018
+ #
1019
+ # * **Availability zone** - If you want the destination file system to
1020
+ # use One Zone availability and durability, you must specify the
1021
+ # Availability Zone to create the file system in. For more
1022
+ # information about EFS storage classes, see [ Amazon EFS storage
1023
+ # classes][2] in the *Amazon EFS User Guide*.
1024
+ #
1025
+ # * **Encryption** - All destination file systems are created with
1026
+ # encryption at rest enabled. You can specify the KMS key that is
1027
+ # used to encrypt the destination file system. Your service-managed
1028
+ # KMS key for Amazon EFS is used if you don't specify a KMS key.
1029
+ # You cannot change this after the file system is created.
1030
+ #
1031
+ # The following properties are set by default:
1032
+ #
1033
+ # * **Performance mode** - The destination file system's performance
1034
+ # mode will match that of the source file system, unless the
1035
+ # destination file system uses One Zone storage. In that case, the
1036
+ # *General Purpose* performance mode is used. The Performance mode
1037
+ # cannot be changed.
1038
+ #
1039
+ # * **Throughput mode** - The destination file system use the Bursting
1040
+ # throughput mode by default. You can modify the throughput mode once
1041
+ # the file system is created.
1042
+ #
1043
+ # The following properties are turned off by default:
1044
+ #
1045
+ # * **Lifecycle management** - EFS lifecycle management and intelligent
1046
+ # tiering are not enabled on the destination file system. You can
1047
+ # enable EFS lifecycle management and intelligent tiering after the
1048
+ # destination file system is created.
1049
+ #
1050
+ # * **Automatic backups** - Automatic daily backups not enabled on the
1051
+ # destination file system. You can change this setting after the file
1052
+ # system is created.
1053
+ #
1054
+ # For more information, see [Amazon EFS replication][1].
1055
+ #
1056
+ #
1057
+ #
1058
+ # [1]: https://docs.aws.amazon.com/efs/latest/ug/efs-replication.html
1059
+ # [2]: https://docs.aws.amazon.com/efs/latest/ug/storage-classes.html
1060
+ #
1061
+ # @option params [required, String] :source_file_system_id
1062
+ # Specifies the Amazon EFS file system that you want to replicate. This
1063
+ # file system cannot already be a source or destination file system in
1064
+ # another replication configuration.
1065
+ #
1066
+ # @option params [required, Array<Types::DestinationToCreate>] :destinations
1067
+ # An array of destination configuration objects. Only one destination
1068
+ # configuration object is supported.
1069
+ #
1070
+ # @return [Types::ReplicationConfigurationDescription] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1071
+ #
1072
+ # * {Types::ReplicationConfigurationDescription#source_file_system_id #source_file_system_id} => String
1073
+ # * {Types::ReplicationConfigurationDescription#source_file_system_region #source_file_system_region} => String
1074
+ # * {Types::ReplicationConfigurationDescription#source_file_system_arn #source_file_system_arn} => String
1075
+ # * {Types::ReplicationConfigurationDescription#original_source_file_system_arn #original_source_file_system_arn} => String
1076
+ # * {Types::ReplicationConfigurationDescription#creation_time #creation_time} => Time
1077
+ # * {Types::ReplicationConfigurationDescription#destinations #destinations} => Array&lt;Types::Destination&gt;
1078
+ #
1079
+ # @example Request syntax with placeholder values
1080
+ #
1081
+ # resp = client.create_replication_configuration({
1082
+ # source_file_system_id: "FileSystemId", # required
1083
+ # destinations: [ # required
1084
+ # {
1085
+ # region: "RegionName",
1086
+ # availability_zone_name: "AvailabilityZoneName",
1087
+ # kms_key_id: "KmsKeyId",
1088
+ # },
1089
+ # ],
1090
+ # })
1091
+ #
1092
+ # @example Response structure
1093
+ #
1094
+ # resp.source_file_system_id #=> String
1095
+ # resp.source_file_system_region #=> String
1096
+ # resp.source_file_system_arn #=> String
1097
+ # resp.original_source_file_system_arn #=> String
1098
+ # resp.creation_time #=> Time
1099
+ # resp.destinations #=> Array
1100
+ # resp.destinations[0].status #=> String, one of "ENABLED", "ENABLING", "DELETING", "ERROR"
1101
+ # resp.destinations[0].file_system_id #=> String
1102
+ # resp.destinations[0].region #=> String
1103
+ # resp.destinations[0].last_replicated_timestamp #=> Time
1104
+ #
1105
+ # @see http://docs.aws.amazon.com/goto/WebAPI/elasticfilesystem-2015-02-01/CreateReplicationConfiguration AWS API Documentation
1106
+ #
1107
+ # @overload create_replication_configuration(params = {})
1108
+ # @param [Hash] params ({})
1109
+ def create_replication_configuration(params = {}, options = {})
1110
+ req = build_request(:create_replication_configuration, params)
1111
+ req.send_request(options)
1112
+ end
1113
+
985
1114
  # <note markdown="1"> DEPRECATED - CreateTags is deprecated and not maintained. Please use
986
1115
  # the API action to create tags for EFS resources.
987
1116
  #
@@ -1215,6 +1344,32 @@ module Aws::EFS
1215
1344
  req.send_request(options)
1216
1345
  end
1217
1346
 
1347
+ # Deletes an existing replication configuration. To delete a replication
1348
+ # configuration, you must make the request from the Amazon Web Services
1349
+ # Region in which the destination file system is located. Deleting a
1350
+ # replication configuration ends the replication process. You can write
1351
+ # to the destination file system once it's status becomes `Writeable`.
1352
+ #
1353
+ # @option params [required, String] :source_file_system_id
1354
+ # The ID of the source file system in the replication configuration.
1355
+ #
1356
+ # @return [Struct] Returns an empty {Seahorse::Client::Response response}.
1357
+ #
1358
+ # @example Request syntax with placeholder values
1359
+ #
1360
+ # resp = client.delete_replication_configuration({
1361
+ # source_file_system_id: "FileSystemId", # required
1362
+ # })
1363
+ #
1364
+ # @see http://docs.aws.amazon.com/goto/WebAPI/elasticfilesystem-2015-02-01/DeleteReplicationConfiguration AWS API Documentation
1365
+ #
1366
+ # @overload delete_replication_configuration(params = {})
1367
+ # @param [Hash] params ({})
1368
+ def delete_replication_configuration(params = {}, options = {})
1369
+ req = build_request(:delete_replication_configuration, params)
1370
+ req.send_request(options)
1371
+ end
1372
+
1218
1373
  # <note markdown="1"> DEPRECATED - DeleteTags is deprecated and not maintained. Please use
1219
1374
  # the API action to remove tags from EFS resources.
1220
1375
  #
@@ -1803,6 +1958,60 @@ module Aws::EFS
1803
1958
  req.send_request(options)
1804
1959
  end
1805
1960
 
1961
+ # Retrieves the replication configurations for either a specific file
1962
+ # system, or all configurations for the Amazon Web Services account in
1963
+ # an Amazon Web Services Region if a file system is not specified.
1964
+ #
1965
+ # @option params [String] :file_system_id
1966
+ # You can retrieve replication configurations for a specific file system
1967
+ # by providing a file system ID.
1968
+ #
1969
+ # @option params [String] :next_token
1970
+ # `NextToken` is present if the response is paginated. You can use
1971
+ # `NextMarker` in a subsequent request to fetch the next page of output.
1972
+ #
1973
+ # @option params [Integer] :max_results
1974
+ # (Optional) You can optionally specify the `MaxItems` parameter to
1975
+ # limit the number of objects returned in a response. The default value
1976
+ # is 100.
1977
+ #
1978
+ # @return [Types::DescribeReplicationConfigurationsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1979
+ #
1980
+ # * {Types::DescribeReplicationConfigurationsResponse#replications #replications} => Array&lt;Types::ReplicationConfigurationDescription&gt;
1981
+ # * {Types::DescribeReplicationConfigurationsResponse#next_token #next_token} => String
1982
+ #
1983
+ # @example Request syntax with placeholder values
1984
+ #
1985
+ # resp = client.describe_replication_configurations({
1986
+ # file_system_id: "FileSystemId",
1987
+ # next_token: "Token",
1988
+ # max_results: 1,
1989
+ # })
1990
+ #
1991
+ # @example Response structure
1992
+ #
1993
+ # resp.replications #=> Array
1994
+ # resp.replications[0].source_file_system_id #=> String
1995
+ # resp.replications[0].source_file_system_region #=> String
1996
+ # resp.replications[0].source_file_system_arn #=> String
1997
+ # resp.replications[0].original_source_file_system_arn #=> String
1998
+ # resp.replications[0].creation_time #=> Time
1999
+ # resp.replications[0].destinations #=> Array
2000
+ # resp.replications[0].destinations[0].status #=> String, one of "ENABLED", "ENABLING", "DELETING", "ERROR"
2001
+ # resp.replications[0].destinations[0].file_system_id #=> String
2002
+ # resp.replications[0].destinations[0].region #=> String
2003
+ # resp.replications[0].destinations[0].last_replicated_timestamp #=> Time
2004
+ # resp.next_token #=> String
2005
+ #
2006
+ # @see http://docs.aws.amazon.com/goto/WebAPI/elasticfilesystem-2015-02-01/DescribeReplicationConfigurations AWS API Documentation
2007
+ #
2008
+ # @overload describe_replication_configurations(params = {})
2009
+ # @param [Hash] params ({})
2010
+ def describe_replication_configurations(params = {}, options = {})
2011
+ req = build_request(:describe_replication_configurations, params)
2012
+ req.send_request(options)
2013
+ end
2014
+
1806
2015
  # <note markdown="1"> DEPRECATED - The DeleteTags action is deprecated and not maintained.
1807
2016
  # Please use the API action to remove tags from EFS resources.
1808
2017
  #
@@ -2433,7 +2642,7 @@ module Aws::EFS
2433
2642
  params: params,
2434
2643
  config: config)
2435
2644
  context[:gem_name] = 'aws-sdk-efs'
2436
- context[:gem_version] = '1.48.0'
2645
+ context[:gem_version] = '1.52.0'
2437
2646
  Seahorse::Client::Request.new(handlers, context)
2438
2647
  end
2439
2648
 
@@ -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