aws-sdk-efs 1.47.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: 6898867f3bec3e6dcaf26262a58b0a72e48917d1c2dc922ac0d09ee0ecad1640
4
- data.tar.gz: 436070b567ac24245c7c5f184691ff996869e9d007496051cee9f9641d57eb93
3
+ metadata.gz: ade5009e88ca6d89db4b83c6cad5ff9c3755b2ac433a202a62205f3aef405eac
4
+ data.tar.gz: ef29448e193328ce69977b94ef79c7d98b6d64862362d4d9048720384f54cf00
5
5
  SHA512:
6
- metadata.gz: 49d3edc0d27dd3dc179f25273ff31e1c9321838262ecca5559df0bdccd947e1f67680928469ec4012c5c06ee564ac26ab20c7e22ecaa7009fc50bc5ce85cd0b7
7
- data.tar.gz: 5622527906dda671e1bcae4257cb5e338bf6cf626106738b6ceffff880645031c0d4fc92c43b7705e1042e44246005d8347307d681d776d7b4d7c2da92807af3
6
+ metadata.gz: 5cdb7bf4af60623b1829256b77663df39beff76e367047cea279b4a4f770faa1c316188aa0aee242cc8c5ebaeaecd186376eaabf9f9bda949612ad5a56e78668
7
+ data.tar.gz: b8035eaf267b7fe92c1a096e99e8f13f742cb7dc47ea70f59970f34d040ff04b3cac3eae5ea887160b3074c12b71c09104ca678440e30288e0b9f4f60e2c18dd
data/CHANGELOG.md CHANGED
@@ -1,6 +1,26 @@
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
+
9
+ 1.50.0 (2021-12-21)
10
+ ------------------
11
+
12
+ * Feature - Code Generated Changes, see `./build_tools` or `aws-sdk-core`'s CHANGELOG.md for details.
13
+
14
+ 1.49.0 (2021-11-30)
15
+ ------------------
16
+
17
+ * Feature - Code Generated Changes, see `./build_tools` or `aws-sdk-core`'s CHANGELOG.md for details.
18
+
19
+ 1.48.0 (2021-11-04)
20
+ ------------------
21
+
22
+ * Feature - Code Generated Changes, see `./build_tools` or `aws-sdk-core`'s CHANGELOG.md for details.
23
+
4
24
  1.47.0 (2021-10-18)
5
25
  ------------------
6
26
 
data/VERSION CHANGED
@@ -1 +1 @@
1
- 1.47.0
1
+ 1.51.0
@@ -27,6 +27,7 @@ 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'
30
31
  require 'aws-sdk-core/plugins/signature_v4.rb'
31
32
  require 'aws-sdk-core/plugins/protocols/rest_json.rb'
32
33
 
@@ -73,6 +74,7 @@ module Aws::EFS
73
74
  add_plugin(Aws::Plugins::ClientMetricsSendPlugin)
74
75
  add_plugin(Aws::Plugins::TransferEncoding)
75
76
  add_plugin(Aws::Plugins::HttpChecksum)
77
+ add_plugin(Aws::Plugins::DefaultsMode)
76
78
  add_plugin(Aws::Plugins::SignatureV4)
77
79
  add_plugin(Aws::Plugins::Protocols::RestJson)
78
80
 
@@ -119,7 +121,9 @@ module Aws::EFS
119
121
  # * EC2/ECS IMDS instance profile - When used by default, the timeouts
120
122
  # are very aggressive. Construct and pass an instance of
121
123
  # `Aws::InstanceProfileCredentails` or `Aws::ECSCredentials` to
122
- # enable retries and extended timeouts.
124
+ # enable retries and extended timeouts. Instance profile credential
125
+ # fetching can be disabled by setting ENV['AWS_EC2_METADATA_DISABLED']
126
+ # to true.
123
127
  #
124
128
  # @option options [required, String] :region
125
129
  # The AWS region to connect to. The configured `:region` is
@@ -173,6 +177,10 @@ module Aws::EFS
173
177
  # Used only in `standard` and adaptive retry modes. Specifies whether to apply
174
178
  # a clock skew correction and retry requests with skewed client clocks.
175
179
  #
180
+ # @option options [String] :defaults_mode ("legacy")
181
+ # See {Aws::DefaultsModeConfiguration} for a list of the
182
+ # accepted modes and the configuration defaults that are included.
183
+ #
176
184
  # @option options [Boolean] :disable_host_prefix_injection (false)
177
185
  # Set to true to disable SDK automatically adding host prefix
178
186
  # to default service endpoint when available.
@@ -275,6 +283,15 @@ module Aws::EFS
275
283
  # ** Please note ** When response stubbing is enabled, no HTTP
276
284
  # requests are made, and retries are disabled.
277
285
  #
286
+ # @option options [Boolean] :use_dualstack_endpoint
287
+ # When set to `true`, dualstack enabled endpoints (with `.aws` TLD)
288
+ # will be used if available.
289
+ #
290
+ # @option options [Boolean] :use_fips_endpoint
291
+ # When set to `true`, fips compatible endpoints will be used if available.
292
+ # When a `fips` region is used, the region is normalized and this config
293
+ # is set to `true`.
294
+ #
278
295
  # @option options [Boolean] :validate_params (true)
279
296
  # When `true`, request parameters are validated before
280
297
  # sending the request.
@@ -286,7 +303,7 @@ module Aws::EFS
286
303
  # seconds to wait when opening a HTTP session before raising a
287
304
  # `Timeout::Error`.
288
305
  #
289
- # @option options [Integer] :http_read_timeout (60) The default
306
+ # @option options [Float] :http_read_timeout (60) The default
290
307
  # number of seconds to wait for response data. This value can
291
308
  # safely be set per-request on the session.
292
309
  #
@@ -302,6 +319,9 @@ module Aws::EFS
302
319
  # disables this behaviour. This value can safely be set per
303
320
  # request on the session.
304
321
  #
322
+ # @option options [Float] :ssl_timeout (nil) Sets the SSL timeout
323
+ # in seconds.
324
+ #
305
325
  # @option options [Boolean] :http_wire_trace (false) When `true`,
306
326
  # HTTP debug output will be sent to the `:logger`.
307
327
  #
@@ -544,17 +564,17 @@ module Aws::EFS
544
564
  # @option params [Boolean] :encrypted
545
565
  # A Boolean value that, if true, creates an encrypted file system. When
546
566
  # creating an encrypted file system, you have the option of specifying
547
- # CreateFileSystemRequest$KmsKeyId for an existing Key Management
548
- # Service (KMS customer master key (CMK). If you don't specify a CMK,
549
- # then the default CMK for Amazon EFS, `/aws/elasticfilesystem`, is used
550
- # 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.
551
571
  #
552
572
  # @option params [String] :kms_key_id
553
- # 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
554
574
  # file system. This parameter is only required if you want to use a
555
575
  # non-default KMS key. If this parameter is not specified, the default
556
- # CMK for Amazon EFS is used. This ID can be in one of the following
557
- # formats:
576
+ # KMS key for Amazon EFS is used. You can specify a KMS key ID using the
577
+ # following formats:
558
578
  #
559
579
  # * Key ID - A unique identifier of the key, for example
560
580
  # `1234abcd-12ab-34cd-56ef-1234567890ab`.
@@ -568,11 +588,11 @@ module Aws::EFS
568
588
  # * Key alias ARN - An ARN for a key alias, for example
569
589
  # `arn:aws:kms:us-west-2:444455556666:alias/projectKey1`.
570
590
  #
571
- # If `KmsKeyId` is specified, the CreateFileSystemRequest$Encrypted
572
- # parameter must be set to true.
591
+ # If you use `KmsKeyId`, you must set the
592
+ # CreateFileSystemRequest$Encrypted parameter to true.
573
593
  #
574
594
  # EFS accepts only symmetric KMS keys. You cannot use asymmetric KMS
575
- # keys with EFS file systems.
595
+ # keys with Amazon EFS file systems.
576
596
  #
577
597
  # @option params [String] :throughput_mode
578
598
  # Specifies the throughput mode for the file system, either `bursting`
@@ -631,8 +651,8 @@ module Aws::EFS
631
651
  # Default is `false`. However, if you specify an `AvailabilityZoneName`,
632
652
  # the default is `true`.
633
653
  #
634
- # <note markdown="1"> Backup is not available in all Amazon Web Services Regionswhere Amazon
635
- # EFS is available.
654
+ # <note markdown="1"> Backup is not available in all Amazon Web Services Regions where
655
+ # Amazon EFS is available.
636
656
  #
637
657
  # </note>
638
658
  #
@@ -973,6 +993,122 @@ module Aws::EFS
973
993
  req.send_request(options)
974
994
  end
975
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
+
976
1112
  # <note markdown="1"> DEPRECATED - CreateTags is deprecated and not maintained. Please use
977
1113
  # the API action to create tags for EFS resources.
978
1114
  #
@@ -1206,6 +1342,32 @@ module Aws::EFS
1206
1342
  req.send_request(options)
1207
1343
  end
1208
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
+
1209
1371
  # <note markdown="1"> DEPRECATED - DeleteTags is deprecated and not maintained. Please use
1210
1372
  # the API action to remove tags from EFS resources.
1211
1373
  #
@@ -1794,6 +1956,60 @@ module Aws::EFS
1794
1956
  req.send_request(options)
1795
1957
  end
1796
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
+
1797
2013
  # <note markdown="1"> DEPRECATED - The DeleteTags action is deprecated and not maintained.
1798
2014
  # Please use the API action to remove tags from EFS resources.
1799
2015
  #
@@ -2424,7 +2640,7 @@ module Aws::EFS
2424
2640
  params: params,
2425
2641
  config: config)
2426
2642
  context[:gem_name] = 'aws-sdk-efs'
2427
- context[:gem_version] = '1.47.0'
2643
+ context[:gem_version] = '1.51.0'
2428
2644
  Seahorse::Client::Request.new(handlers, context)
2429
2645
  end
2430
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