aws-sdk-datasync 1.44.0 → 1.47.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 8c2efc6b70bdee6d055996b722aa9c8270e100da4d9c4674df7bccf45af4c197
4
- data.tar.gz: 52e20ca7e271fd9a4a21286b5e57c3560c3ed9ef459da3ae5b3816bcce620f49
3
+ metadata.gz: f4b4666d779f79d3e61f739a78e58ce6c2f99dd4896bca06a5c8974f27687418
4
+ data.tar.gz: 9bef7aa7fb8dfbc06c9ed60e1866017981cfe83749133ce08f2ce3ba393d8d9f
5
5
  SHA512:
6
- metadata.gz: ba869cf5f4d09f71a1c7661feeca4febafd689ec0dba84985bcd6794c290044e24e042dcbd6f3a4ed28e6d87e484e28211b9ed51bc84e3779a480d320dad8382
7
- data.tar.gz: fd40c644489a8baf373d2f0227c67ce5695d253938c5bc804f454169d4f19277c2ff764d33979ae2ef2daa70284c6c1176a6eb32f9dffe135a7d90481e67dedc
6
+ metadata.gz: 14263ad0d6e96e6ff3cc74963fdb1716d5956bf6c0fd85a93b57e02da0da9cd3cd3b76e87f0ed91850100ee7bb1532ec54c09e4180f8ade5254c10b0c8e3a0dc
7
+ data.tar.gz: 2cafbcf534a3933d757cebb5d39b78a5679f91df0f7baac2aec6e9c88e744f6452268b77835cdfa655de193c3ab7f7afe5e6a212c8b7116e7e4cfb9201444eed
data/CHANGELOG.md CHANGED
@@ -1,6 +1,21 @@
1
1
  Unreleased Changes
2
2
  ------------------
3
3
 
4
+ 1.47.0 (2022-05-27)
5
+ ------------------
6
+
7
+ * Feature - AWS DataSync now supports TLS encryption in transit, file system policies and access points for EFS locations.
8
+
9
+ 1.46.0 (2022-05-05)
10
+ ------------------
11
+
12
+ * Feature - AWS DataSync now supports a new ObjectTags Task API option that can be used to control whether Object Tags are transferred.
13
+
14
+ 1.45.0 (2022-04-05)
15
+ ------------------
16
+
17
+ * Feature - AWS DataSync now supports Amazon FSx for OpenZFS locations.
18
+
4
19
  1.44.0 (2022-02-24)
5
20
  ------------------
6
21
 
data/VERSION CHANGED
@@ -1 +1 @@
1
- 1.44.0
1
+ 1.47.0
@@ -508,50 +508,53 @@ module Aws::DataSync
508
508
  req.send_request(options)
509
509
  end
510
510
 
511
- # Creates an endpoint for an Amazon EFS file system.
511
+ # Creates an endpoint for an Amazon EFS file system that DataSync can
512
+ # access for a transfer. For more information, see [Creating a location
513
+ # for Amazon EFS][1].
514
+ #
515
+ #
516
+ #
517
+ # [1]: https://docs.aws.amazon.com/datasync/latest/userguide/create-efs-location.html
512
518
  #
513
519
  # @option params [String] :subdirectory
514
- # A subdirectory in the location’s path. This subdirectory in the EFS
515
- # file system is used to read data from the EFS source location or write
516
- # data to the EFS destination. By default, DataSync uses the root
517
- # directory.
520
+ # Specifies a mount path for your Amazon EFS file system. This is where
521
+ # DataSync reads or writes data (depending on if this is a source or
522
+ # destination location). By default, DataSync uses the root directory,
523
+ # but you can also include subdirectories.
518
524
  #
519
- # <note markdown="1"> `Subdirectory` must be specified with forward slashes. For example,
520
- # `/path/to/folder`.
525
+ # <note markdown="1"> You must specify a value with forward slashes (for example,
526
+ # `/path/to/folder`).
521
527
  #
522
528
  # </note>
523
529
  #
524
530
  # @option params [required, String] :efs_filesystem_arn
525
- # The Amazon Resource Name (ARN) for the Amazon EFS file system.
531
+ # Specifies the ARN for the Amazon EFS file system.
526
532
  #
527
533
  # @option params [required, Types::Ec2Config] :ec2_config
528
- # The subnet and security group that the Amazon EFS file system uses.
529
- # The security group that you provide needs to be able to communicate
530
- # with the security group on the mount target in the subnet specified.
534
+ # Specifies the subnet and security groups DataSync uses to access your
535
+ # Amazon EFS file system.
531
536
  #
532
- # The exact relationship between security group M (of the mount target)
533
- # and security group S (which you provide for DataSync to use at this
534
- # stage) is as follows:
537
+ # @option params [Array<Types::TagListEntry>] :tags
538
+ # Specifies the key-value pair that represents a tag that you want to
539
+ # add to the resource. The value can be an empty string. This value
540
+ # helps you manage, filter, and search for your resources. We recommend
541
+ # that you create a name tag for your location.
535
542
  #
536
- # * Security group M (which you associate with the mount target) must
537
- # allow inbound access for the Transmission Control Protocol (TCP) on
538
- # the NFS port (2049) from security group S. You can enable inbound
539
- # connections either by IP address (CIDR range) or security group.
543
+ # @option params [String] :access_point_arn
544
+ # Specifies the Amazon Resource Name (ARN) of the access point that
545
+ # DataSync uses to access the Amazon EFS file system.
540
546
  #
541
- # * Security group S (provided to DataSync to access EFS) should have a
542
- # rule that enables outbound connections to the NFS port on one of the
543
- # file system’s mount targets. You can enable outbound connections
544
- # either by IP address (CIDR range) or security group.
547
+ # @option params [String] :file_system_access_role_arn
548
+ # Specifies an Identity and Access Management (IAM) role that DataSync
549
+ # assumes when mounting the Amazon EFS file system.
545
550
  #
546
- # For information about security groups and mount targets, see
547
- # Security Groups for Amazon EC2 Instances and Mount Targets in the
548
- # *Amazon EFS User Guide.*
551
+ # @option params [String] :in_transit_encryption
552
+ # Specifies whether you want DataSync to use TLS encryption when
553
+ # transferring data to or from your Amazon EFS file system.
549
554
  #
550
- # @option params [Array<Types::TagListEntry>] :tags
551
- # The key-value pair that represents a tag that you want to add to the
552
- # resource. The value can be an empty string. This value helps you
553
- # manage, filter, and search for your resources. We recommend that you
554
- # create a name tag for your location.
555
+ # If you specify an access point using `AccessPointArn` or an IAM role
556
+ # using `FileSystemAccessRoleArn`, you must set this parameter to
557
+ # `TLS1_2`.
555
558
  #
556
559
  # @return [Types::CreateLocationEfsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
557
560
  #
@@ -572,6 +575,9 @@ module Aws::DataSync
572
575
  # value: "TagValue",
573
576
  # },
574
577
  # ],
578
+ # access_point_arn: "EfsAccessPointArn",
579
+ # file_system_access_role_arn: "IamRoleArn",
580
+ # in_transit_encryption: "NONE", # accepts NONE, TLS1_2
575
581
  # })
576
582
  #
577
583
  # @example Response structure
@@ -638,6 +644,67 @@ module Aws::DataSync
638
644
  req.send_request(options)
639
645
  end
640
646
 
647
+ # Creates an endpoint for an Amazon FSx for OpenZFS file system.
648
+ #
649
+ # @option params [required, String] :fsx_filesystem_arn
650
+ # The Amazon Resource Name (ARN) of the FSx for OpenZFS file system.
651
+ #
652
+ # @option params [required, Types::FsxProtocol] :protocol
653
+ # The type of protocol that DataSync uses to access your file system.
654
+ #
655
+ # @option params [required, Array<String>] :security_group_arns
656
+ # The ARNs of the security groups that are used to configure the FSx for
657
+ # OpenZFS file system.
658
+ #
659
+ # @option params [String] :subdirectory
660
+ # A subdirectory in the location's path that must begin with `/fsx`.
661
+ # DataSync uses this subdirectory to read or write data (depending on
662
+ # whether the file system is a source or destination location).
663
+ #
664
+ # @option params [Array<Types::TagListEntry>] :tags
665
+ # The key-value pair that represents a tag that you want to add to the
666
+ # resource. The value can be an empty string. This value helps you
667
+ # manage, filter, and search for your resources. We recommend that you
668
+ # create a name tag for your location.
669
+ #
670
+ # @return [Types::CreateLocationFsxOpenZfsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
671
+ #
672
+ # * {Types::CreateLocationFsxOpenZfsResponse#location_arn #location_arn} => String
673
+ #
674
+ # @example Request syntax with placeholder values
675
+ #
676
+ # resp = client.create_location_fsx_open_zfs({
677
+ # fsx_filesystem_arn: "FsxFilesystemArn", # required
678
+ # protocol: { # required
679
+ # nfs: {
680
+ # mount_options: {
681
+ # version: "AUTOMATIC", # accepts AUTOMATIC, NFS3, NFS4_0, NFS4_1
682
+ # },
683
+ # },
684
+ # },
685
+ # security_group_arns: ["Ec2SecurityGroupArn"], # required
686
+ # subdirectory: "FsxOpenZfsSubdirectory",
687
+ # tags: [
688
+ # {
689
+ # key: "TagKey", # required
690
+ # value: "TagValue",
691
+ # },
692
+ # ],
693
+ # })
694
+ #
695
+ # @example Response structure
696
+ #
697
+ # resp.location_arn #=> String
698
+ #
699
+ # @see http://docs.aws.amazon.com/goto/WebAPI/datasync-2018-11-09/CreateLocationFsxOpenZfs AWS API Documentation
700
+ #
701
+ # @overload create_location_fsx_open_zfs(params = {})
702
+ # @param [Hash] params ({})
703
+ def create_location_fsx_open_zfs(params = {}, options = {})
704
+ req = build_request(:create_location_fsx_open_zfs, params)
705
+ req.send_request(options)
706
+ end
707
+
641
708
  # Creates an endpoint for an Amazon FSx for Windows File Server file
642
709
  # system.
643
710
  #
@@ -652,8 +719,8 @@ module Aws::DataSync
652
719
  # file system.
653
720
  #
654
721
  # @option params [required, Array<String>] :security_group_arns
655
- # The Amazon Resource Names (ARNs) of the security groups that are used
656
- # to configure the FSx for Windows File Server file system.
722
+ # The ARNs of the security groups that are used to configure the FSx for
723
+ # Windows File Server file system.
657
724
  #
658
725
  # @option params [Array<Types::TagListEntry>] :tags
659
726
  # The key-value pair that represents a tag that you want to add to the
@@ -884,7 +951,7 @@ module Aws::DataSync
884
951
  # @option params [required, String] :server_hostname
885
952
  # The name of the NFS server. This value is the IP address or Domain
886
953
  # Name Service (DNS) name of the NFS server. An agent that is installed
887
- # on-premises uses this host name to mount the NFS server in a network.
954
+ # on-premises uses this hostname to mount the NFS server in a network.
888
955
  #
889
956
  # If you are copying data to or from your Snowcone device, see [NFS
890
957
  # Server on Snowcone][1] for more information.
@@ -964,8 +1031,8 @@ module Aws::DataSync
964
1031
  # @option params [required, String] :server_hostname
965
1032
  # The name of the self-managed object storage server. This value is the
966
1033
  # IP address or Domain Name Service (DNS) name of the object storage
967
- # server. An agent uses this host name to mount the object storage
968
- # server in a network.
1034
+ # server. An agent uses this hostname to mount the object storage server
1035
+ # in a network.
969
1036
  #
970
1037
  # @option params [Integer] :server_port
971
1038
  # The port that your self-managed object storage server accepts inbound
@@ -1079,13 +1146,13 @@ module Aws::DataSync
1079
1146
  #
1080
1147
  # @option params [required, Types::S3Config] :s3_config
1081
1148
  # The Amazon Resource Name (ARN) of the Identity and Access Management
1082
- # (IAM) role that is used to access an Amazon S3 bucket.
1149
+ # (IAM) role used to access an Amazon S3 bucket.
1083
1150
  #
1084
1151
  # For detailed information about using such a role, see Creating a
1085
1152
  # Location for Amazon S3 in the *DataSync User Guide*.
1086
1153
  #
1087
1154
  # @option params [Array<String>] :agent_arns
1088
- # If you are using DataSync on an Amazon Web Services Outpost, specify
1155
+ # If you're using DataSync on an Amazon Web Services Outpost, specify
1089
1156
  # the Amazon Resource Names (ARNs) of the DataSync agents deployed on
1090
1157
  # your Outpost. For more information about launching a DataSync agent on
1091
1158
  # an Amazon Web Services Outpost, see [Deploy your DataSync agent on
@@ -1343,6 +1410,7 @@ module Aws::DataSync
1343
1410
  # log_level: "OFF", # accepts OFF, BASIC, TRANSFER
1344
1411
  # transfer_mode: "CHANGED", # accepts CHANGED, ALL
1345
1412
  # security_descriptor_copy_flags: "NONE", # accepts NONE, OWNER_DACL, OWNER_DACL_SACL
1413
+ # object_tags: "PRESERVE", # accepts PRESERVE, NONE
1346
1414
  # },
1347
1415
  # excludes: [
1348
1416
  # {
@@ -1500,11 +1568,12 @@ module Aws::DataSync
1500
1568
  req.send_request(options)
1501
1569
  end
1502
1570
 
1503
- # Returns metadata, such as the path information about an Amazon EFS
1504
- # location.
1571
+ # Returns metadata about your DataSync location for an Amazon EFS file
1572
+ # system.
1505
1573
  #
1506
1574
  # @option params [required, String] :location_arn
1507
- # The Amazon Resource Name (ARN) of the EFS location to describe.
1575
+ # The Amazon Resource Name (ARN) of the Amazon EFS file system location
1576
+ # that you want information about.
1508
1577
  #
1509
1578
  # @return [Types::DescribeLocationEfsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1510
1579
  #
@@ -1512,6 +1581,9 @@ module Aws::DataSync
1512
1581
  # * {Types::DescribeLocationEfsResponse#location_uri #location_uri} => String
1513
1582
  # * {Types::DescribeLocationEfsResponse#ec2_config #ec2_config} => Types::Ec2Config
1514
1583
  # * {Types::DescribeLocationEfsResponse#creation_time #creation_time} => Time
1584
+ # * {Types::DescribeLocationEfsResponse#access_point_arn #access_point_arn} => String
1585
+ # * {Types::DescribeLocationEfsResponse#file_system_access_role_arn #file_system_access_role_arn} => String
1586
+ # * {Types::DescribeLocationEfsResponse#in_transit_encryption #in_transit_encryption} => String
1515
1587
  #
1516
1588
  # @example Request syntax with placeholder values
1517
1589
  #
@@ -1527,6 +1599,9 @@ module Aws::DataSync
1527
1599
  # resp.ec2_config.security_group_arns #=> Array
1528
1600
  # resp.ec2_config.security_group_arns[0] #=> String
1529
1601
  # resp.creation_time #=> Time
1602
+ # resp.access_point_arn #=> String
1603
+ # resp.file_system_access_role_arn #=> String
1604
+ # resp.in_transit_encryption #=> String, one of "NONE", "TLS1_2"
1530
1605
  #
1531
1606
  # @see http://docs.aws.amazon.com/goto/WebAPI/datasync-2018-11-09/DescribeLocationEfs AWS API Documentation
1532
1607
  #
@@ -1537,8 +1612,8 @@ module Aws::DataSync
1537
1612
  req.send_request(options)
1538
1613
  end
1539
1614
 
1540
- # Returns metadata, such as the path information about an Amazon FSx for
1541
- # Lustre location.
1615
+ # Returns metadata about an Amazon FSx for Lustre location, such as
1616
+ # information about its path.
1542
1617
  #
1543
1618
  # @option params [required, String] :location_arn
1544
1619
  # The Amazon Resource Name (ARN) of the FSx for Lustre location to
@@ -1574,8 +1649,47 @@ module Aws::DataSync
1574
1649
  req.send_request(options)
1575
1650
  end
1576
1651
 
1577
- # Returns metadata, such as the path information about an Amazon FSx for
1578
- # Windows File Server location.
1652
+ # Returns metadata about an Amazon FSx for OpenZFS location, such as
1653
+ # information about its path.
1654
+ #
1655
+ # @option params [required, String] :location_arn
1656
+ # The Amazon Resource Name (ARN) of the FSx for OpenZFS location to
1657
+ # describe.
1658
+ #
1659
+ # @return [Types::DescribeLocationFsxOpenZfsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1660
+ #
1661
+ # * {Types::DescribeLocationFsxOpenZfsResponse#location_arn #location_arn} => String
1662
+ # * {Types::DescribeLocationFsxOpenZfsResponse#location_uri #location_uri} => String
1663
+ # * {Types::DescribeLocationFsxOpenZfsResponse#security_group_arns #security_group_arns} => Array&lt;String&gt;
1664
+ # * {Types::DescribeLocationFsxOpenZfsResponse#protocol #protocol} => Types::FsxProtocol
1665
+ # * {Types::DescribeLocationFsxOpenZfsResponse#creation_time #creation_time} => Time
1666
+ #
1667
+ # @example Request syntax with placeholder values
1668
+ #
1669
+ # resp = client.describe_location_fsx_open_zfs({
1670
+ # location_arn: "LocationArn", # required
1671
+ # })
1672
+ #
1673
+ # @example Response structure
1674
+ #
1675
+ # resp.location_arn #=> String
1676
+ # resp.location_uri #=> String
1677
+ # resp.security_group_arns #=> Array
1678
+ # resp.security_group_arns[0] #=> String
1679
+ # resp.protocol.nfs.mount_options.version #=> String, one of "AUTOMATIC", "NFS3", "NFS4_0", "NFS4_1"
1680
+ # resp.creation_time #=> Time
1681
+ #
1682
+ # @see http://docs.aws.amazon.com/goto/WebAPI/datasync-2018-11-09/DescribeLocationFsxOpenZfs AWS API Documentation
1683
+ #
1684
+ # @overload describe_location_fsx_open_zfs(params = {})
1685
+ # @param [Hash] params ({})
1686
+ def describe_location_fsx_open_zfs(params = {}, options = {})
1687
+ req = build_request(:describe_location_fsx_open_zfs, params)
1688
+ req.send_request(options)
1689
+ end
1690
+
1691
+ # Returns metadata about an Amazon FSx for Windows File Server location,
1692
+ # such as information about its path.
1579
1693
  #
1580
1694
  # @option params [required, String] :location_arn
1581
1695
  # The Amazon Resource Name (ARN) of the FSx for Windows File Server
@@ -1896,6 +2010,7 @@ module Aws::DataSync
1896
2010
  # resp.options.log_level #=> String, one of "OFF", "BASIC", "TRANSFER"
1897
2011
  # resp.options.transfer_mode #=> String, one of "CHANGED", "ALL"
1898
2012
  # resp.options.security_descriptor_copy_flags #=> String, one of "NONE", "OWNER_DACL", "OWNER_DACL_SACL"
2013
+ # resp.options.object_tags #=> String, one of "PRESERVE", "NONE"
1899
2014
  # resp.excludes #=> Array
1900
2015
  # resp.excludes[0].filter_type #=> String, one of "SIMPLE_PATTERN"
1901
2016
  # resp.excludes[0].value #=> String
@@ -1960,6 +2075,7 @@ module Aws::DataSync
1960
2075
  # resp.options.log_level #=> String, one of "OFF", "BASIC", "TRANSFER"
1961
2076
  # resp.options.transfer_mode #=> String, one of "CHANGED", "ALL"
1962
2077
  # resp.options.security_descriptor_copy_flags #=> String, one of "NONE", "OWNER_DACL", "OWNER_DACL_SACL"
2078
+ # resp.options.object_tags #=> String, one of "PRESERVE", "NONE"
1963
2079
  # resp.excludes #=> Array
1964
2080
  # resp.excludes[0].filter_type #=> String, one of "SIMPLE_PATTERN"
1965
2081
  # resp.excludes[0].value #=> String
@@ -2303,6 +2419,7 @@ module Aws::DataSync
2303
2419
  # log_level: "OFF", # accepts OFF, BASIC, TRANSFER
2304
2420
  # transfer_mode: "CHANGED", # accepts CHANGED, ALL
2305
2421
  # security_descriptor_copy_flags: "NONE", # accepts NONE, OWNER_DACL, OWNER_DACL_SACL
2422
+ # object_tags: "PRESERVE", # accepts PRESERVE, NONE
2306
2423
  # },
2307
2424
  # includes: [
2308
2425
  # {
@@ -2460,13 +2577,13 @@ module Aws::DataSync
2460
2577
  # The Kerberos key table (keytab) that contains mappings between the
2461
2578
  # defined Kerberos principal and the encrypted keys. You can load the
2462
2579
  # keytab from a file by providing the file's address. If you use the
2463
- # AWS CLI, it performs base64 encoding for you. Otherwise, provide the
2580
+ # CLI, it performs base64 encoding for you. Otherwise, provide the
2464
2581
  # base64-encoded text.
2465
2582
  #
2466
2583
  # @option params [String, StringIO, File] :kerberos_krb_5_conf
2467
2584
  # The `krb5.conf` file that contains the Kerberos configuration
2468
2585
  # information. You can load the `krb5.conf` file by providing the
2469
- # file's address. If you're using the AWS CLI, it performs the base64
2586
+ # file's address. If you're using the CLI, it performs the base64
2470
2587
  # encoding for you. Otherwise, provide the base64-encoded text.
2471
2588
  #
2472
2589
  # @option params [Array<String>] :agent_arns
@@ -2806,6 +2923,7 @@ module Aws::DataSync
2806
2923
  # log_level: "OFF", # accepts OFF, BASIC, TRANSFER
2807
2924
  # transfer_mode: "CHANGED", # accepts CHANGED, ALL
2808
2925
  # security_descriptor_copy_flags: "NONE", # accepts NONE, OWNER_DACL, OWNER_DACL_SACL
2926
+ # object_tags: "PRESERVE", # accepts PRESERVE, NONE
2809
2927
  # },
2810
2928
  # excludes: [
2811
2929
  # {
@@ -2891,6 +3009,7 @@ module Aws::DataSync
2891
3009
  # log_level: "OFF", # accepts OFF, BASIC, TRANSFER
2892
3010
  # transfer_mode: "CHANGED", # accepts CHANGED, ALL
2893
3011
  # security_descriptor_copy_flags: "NONE", # accepts NONE, OWNER_DACL, OWNER_DACL_SACL
3012
+ # object_tags: "PRESERVE", # accepts PRESERVE, NONE
2894
3013
  # },
2895
3014
  # })
2896
3015
  #
@@ -2916,7 +3035,7 @@ module Aws::DataSync
2916
3035
  params: params,
2917
3036
  config: config)
2918
3037
  context[:gem_name] = 'aws-sdk-datasync'
2919
- context[:gem_version] = '1.44.0'
3038
+ context[:gem_version] = '1.47.0'
2920
3039
  Seahorse::Client::Request.new(handlers, context)
2921
3040
  end
2922
3041
 
@@ -29,6 +29,8 @@ module Aws::DataSync
29
29
  CreateLocationEfsResponse = Shapes::StructureShape.new(name: 'CreateLocationEfsResponse')
30
30
  CreateLocationFsxLustreRequest = Shapes::StructureShape.new(name: 'CreateLocationFsxLustreRequest')
31
31
  CreateLocationFsxLustreResponse = Shapes::StructureShape.new(name: 'CreateLocationFsxLustreResponse')
32
+ CreateLocationFsxOpenZfsRequest = Shapes::StructureShape.new(name: 'CreateLocationFsxOpenZfsRequest')
33
+ CreateLocationFsxOpenZfsResponse = Shapes::StructureShape.new(name: 'CreateLocationFsxOpenZfsResponse')
32
34
  CreateLocationFsxWindowsRequest = Shapes::StructureShape.new(name: 'CreateLocationFsxWindowsRequest')
33
35
  CreateLocationFsxWindowsResponse = Shapes::StructureShape.new(name: 'CreateLocationFsxWindowsResponse')
34
36
  CreateLocationHdfsRequest = Shapes::StructureShape.new(name: 'CreateLocationHdfsRequest')
@@ -55,6 +57,8 @@ module Aws::DataSync
55
57
  DescribeLocationEfsResponse = Shapes::StructureShape.new(name: 'DescribeLocationEfsResponse')
56
58
  DescribeLocationFsxLustreRequest = Shapes::StructureShape.new(name: 'DescribeLocationFsxLustreRequest')
57
59
  DescribeLocationFsxLustreResponse = Shapes::StructureShape.new(name: 'DescribeLocationFsxLustreResponse')
60
+ DescribeLocationFsxOpenZfsRequest = Shapes::StructureShape.new(name: 'DescribeLocationFsxOpenZfsRequest')
61
+ DescribeLocationFsxOpenZfsResponse = Shapes::StructureShape.new(name: 'DescribeLocationFsxOpenZfsResponse')
58
62
  DescribeLocationFsxWindowsRequest = Shapes::StructureShape.new(name: 'DescribeLocationFsxWindowsRequest')
59
63
  DescribeLocationFsxWindowsResponse = Shapes::StructureShape.new(name: 'DescribeLocationFsxWindowsResponse')
60
64
  DescribeLocationHdfsRequest = Shapes::StructureShape.new(name: 'DescribeLocationHdfsRequest')
@@ -77,7 +81,9 @@ module Aws::DataSync
77
81
  Ec2SecurityGroupArn = Shapes::StringShape.new(name: 'Ec2SecurityGroupArn')
78
82
  Ec2SecurityGroupArnList = Shapes::ListShape.new(name: 'Ec2SecurityGroupArnList')
79
83
  Ec2SubnetArn = Shapes::StringShape.new(name: 'Ec2SubnetArn')
84
+ EfsAccessPointArn = Shapes::StringShape.new(name: 'EfsAccessPointArn')
80
85
  EfsFilesystemArn = Shapes::StringShape.new(name: 'EfsFilesystemArn')
86
+ EfsInTransitEncryption = Shapes::StringShape.new(name: 'EfsInTransitEncryption')
81
87
  EfsSubdirectory = Shapes::StringShape.new(name: 'EfsSubdirectory')
82
88
  Endpoint = Shapes::StringShape.new(name: 'Endpoint')
83
89
  EndpointType = Shapes::StringShape.new(name: 'EndpointType')
@@ -89,6 +95,9 @@ module Aws::DataSync
89
95
  FilterValues = Shapes::ListShape.new(name: 'FilterValues')
90
96
  FsxFilesystemArn = Shapes::StringShape.new(name: 'FsxFilesystemArn')
91
97
  FsxLustreSubdirectory = Shapes::StringShape.new(name: 'FsxLustreSubdirectory')
98
+ FsxOpenZfsSubdirectory = Shapes::StringShape.new(name: 'FsxOpenZfsSubdirectory')
99
+ FsxProtocol = Shapes::StructureShape.new(name: 'FsxProtocol')
100
+ FsxProtocolNfs = Shapes::StructureShape.new(name: 'FsxProtocolNfs')
92
101
  FsxWindowsSubdirectory = Shapes::StringShape.new(name: 'FsxWindowsSubdirectory')
93
102
  Gid = Shapes::StringShape.new(name: 'Gid')
94
103
  HdfsAuthenticationType = Shapes::StringShape.new(name: 'HdfsAuthenticationType')
@@ -141,6 +150,7 @@ module Aws::DataSync
141
150
  ObjectStorageSecretKey = Shapes::StringShape.new(name: 'ObjectStorageSecretKey')
142
151
  ObjectStorageServerPort = Shapes::IntegerShape.new(name: 'ObjectStorageServerPort')
143
152
  ObjectStorageServerProtocol = Shapes::StringShape.new(name: 'ObjectStorageServerProtocol')
153
+ ObjectTags = Shapes::StringShape.new(name: 'ObjectTags')
144
154
  OnPremConfig = Shapes::StructureShape.new(name: 'OnPremConfig')
145
155
  Operator = Shapes::StringShape.new(name: 'Operator')
146
156
  Options = Shapes::StructureShape.new(name: 'Options')
@@ -244,6 +254,9 @@ module Aws::DataSync
244
254
  CreateLocationEfsRequest.add_member(:efs_filesystem_arn, Shapes::ShapeRef.new(shape: EfsFilesystemArn, required: true, location_name: "EfsFilesystemArn"))
245
255
  CreateLocationEfsRequest.add_member(:ec2_config, Shapes::ShapeRef.new(shape: Ec2Config, required: true, location_name: "Ec2Config"))
246
256
  CreateLocationEfsRequest.add_member(:tags, Shapes::ShapeRef.new(shape: InputTagList, location_name: "Tags"))
257
+ CreateLocationEfsRequest.add_member(:access_point_arn, Shapes::ShapeRef.new(shape: EfsAccessPointArn, location_name: "AccessPointArn"))
258
+ CreateLocationEfsRequest.add_member(:file_system_access_role_arn, Shapes::ShapeRef.new(shape: IamRoleArn, location_name: "FileSystemAccessRoleArn"))
259
+ CreateLocationEfsRequest.add_member(:in_transit_encryption, Shapes::ShapeRef.new(shape: EfsInTransitEncryption, location_name: "InTransitEncryption"))
247
260
  CreateLocationEfsRequest.struct_class = Types::CreateLocationEfsRequest
248
261
 
249
262
  CreateLocationEfsResponse.add_member(:location_arn, Shapes::ShapeRef.new(shape: LocationArn, location_name: "LocationArn"))
@@ -258,6 +271,16 @@ module Aws::DataSync
258
271
  CreateLocationFsxLustreResponse.add_member(:location_arn, Shapes::ShapeRef.new(shape: LocationArn, location_name: "LocationArn"))
259
272
  CreateLocationFsxLustreResponse.struct_class = Types::CreateLocationFsxLustreResponse
260
273
 
274
+ CreateLocationFsxOpenZfsRequest.add_member(:fsx_filesystem_arn, Shapes::ShapeRef.new(shape: FsxFilesystemArn, required: true, location_name: "FsxFilesystemArn"))
275
+ CreateLocationFsxOpenZfsRequest.add_member(:protocol, Shapes::ShapeRef.new(shape: FsxProtocol, required: true, location_name: "Protocol"))
276
+ CreateLocationFsxOpenZfsRequest.add_member(:security_group_arns, Shapes::ShapeRef.new(shape: Ec2SecurityGroupArnList, required: true, location_name: "SecurityGroupArns"))
277
+ CreateLocationFsxOpenZfsRequest.add_member(:subdirectory, Shapes::ShapeRef.new(shape: FsxOpenZfsSubdirectory, location_name: "Subdirectory"))
278
+ CreateLocationFsxOpenZfsRequest.add_member(:tags, Shapes::ShapeRef.new(shape: InputTagList, location_name: "Tags"))
279
+ CreateLocationFsxOpenZfsRequest.struct_class = Types::CreateLocationFsxOpenZfsRequest
280
+
281
+ CreateLocationFsxOpenZfsResponse.add_member(:location_arn, Shapes::ShapeRef.new(shape: LocationArn, location_name: "LocationArn"))
282
+ CreateLocationFsxOpenZfsResponse.struct_class = Types::CreateLocationFsxOpenZfsResponse
283
+
261
284
  CreateLocationFsxWindowsRequest.add_member(:subdirectory, Shapes::ShapeRef.new(shape: FsxWindowsSubdirectory, location_name: "Subdirectory"))
262
285
  CreateLocationFsxWindowsRequest.add_member(:fsx_filesystem_arn, Shapes::ShapeRef.new(shape: FsxFilesystemArn, required: true, location_name: "FsxFilesystemArn"))
263
286
  CreateLocationFsxWindowsRequest.add_member(:security_group_arns, Shapes::ShapeRef.new(shape: Ec2SecurityGroupArnList, required: true, location_name: "SecurityGroupArns"))
@@ -384,6 +407,9 @@ module Aws::DataSync
384
407
  DescribeLocationEfsResponse.add_member(:location_uri, Shapes::ShapeRef.new(shape: LocationUri, location_name: "LocationUri"))
385
408
  DescribeLocationEfsResponse.add_member(:ec2_config, Shapes::ShapeRef.new(shape: Ec2Config, location_name: "Ec2Config"))
386
409
  DescribeLocationEfsResponse.add_member(:creation_time, Shapes::ShapeRef.new(shape: Time, location_name: "CreationTime"))
410
+ DescribeLocationEfsResponse.add_member(:access_point_arn, Shapes::ShapeRef.new(shape: EfsAccessPointArn, location_name: "AccessPointArn"))
411
+ DescribeLocationEfsResponse.add_member(:file_system_access_role_arn, Shapes::ShapeRef.new(shape: IamRoleArn, location_name: "FileSystemAccessRoleArn"))
412
+ DescribeLocationEfsResponse.add_member(:in_transit_encryption, Shapes::ShapeRef.new(shape: EfsInTransitEncryption, location_name: "InTransitEncryption"))
387
413
  DescribeLocationEfsResponse.struct_class = Types::DescribeLocationEfsResponse
388
414
 
389
415
  DescribeLocationFsxLustreRequest.add_member(:location_arn, Shapes::ShapeRef.new(shape: LocationArn, required: true, location_name: "LocationArn"))
@@ -395,6 +421,16 @@ module Aws::DataSync
395
421
  DescribeLocationFsxLustreResponse.add_member(:creation_time, Shapes::ShapeRef.new(shape: Time, location_name: "CreationTime"))
396
422
  DescribeLocationFsxLustreResponse.struct_class = Types::DescribeLocationFsxLustreResponse
397
423
 
424
+ DescribeLocationFsxOpenZfsRequest.add_member(:location_arn, Shapes::ShapeRef.new(shape: LocationArn, required: true, location_name: "LocationArn"))
425
+ DescribeLocationFsxOpenZfsRequest.struct_class = Types::DescribeLocationFsxOpenZfsRequest
426
+
427
+ DescribeLocationFsxOpenZfsResponse.add_member(:location_arn, Shapes::ShapeRef.new(shape: LocationArn, location_name: "LocationArn"))
428
+ DescribeLocationFsxOpenZfsResponse.add_member(:location_uri, Shapes::ShapeRef.new(shape: LocationUri, location_name: "LocationUri"))
429
+ DescribeLocationFsxOpenZfsResponse.add_member(:security_group_arns, Shapes::ShapeRef.new(shape: Ec2SecurityGroupArnList, location_name: "SecurityGroupArns"))
430
+ DescribeLocationFsxOpenZfsResponse.add_member(:protocol, Shapes::ShapeRef.new(shape: FsxProtocol, location_name: "Protocol"))
431
+ DescribeLocationFsxOpenZfsResponse.add_member(:creation_time, Shapes::ShapeRef.new(shape: Time, location_name: "CreationTime"))
432
+ DescribeLocationFsxOpenZfsResponse.struct_class = Types::DescribeLocationFsxOpenZfsResponse
433
+
398
434
  DescribeLocationFsxWindowsRequest.add_member(:location_arn, Shapes::ShapeRef.new(shape: LocationArn, required: true, location_name: "LocationArn"))
399
435
  DescribeLocationFsxWindowsRequest.struct_class = Types::DescribeLocationFsxWindowsRequest
400
436
 
@@ -522,6 +558,12 @@ module Aws::DataSync
522
558
 
523
559
  FilterValues.member = Shapes::ShapeRef.new(shape: FilterAttributeValue)
524
560
 
561
+ FsxProtocol.add_member(:nfs, Shapes::ShapeRef.new(shape: FsxProtocolNfs, location_name: "NFS"))
562
+ FsxProtocol.struct_class = Types::FsxProtocol
563
+
564
+ FsxProtocolNfs.add_member(:mount_options, Shapes::ShapeRef.new(shape: NfsMountOptions, location_name: "MountOptions"))
565
+ FsxProtocolNfs.struct_class = Types::FsxProtocolNfs
566
+
525
567
  HdfsNameNode.add_member(:hostname, Shapes::ShapeRef.new(shape: HdfsServerHostname, required: true, location_name: "Hostname"))
526
568
  HdfsNameNode.add_member(:port, Shapes::ShapeRef.new(shape: HdfsServerPort, required: true, location_name: "Port"))
527
569
  HdfsNameNode.struct_class = Types::HdfsNameNode
@@ -536,6 +578,7 @@ module Aws::DataSync
536
578
 
537
579
  InvalidRequestException.add_member(:message, Shapes::ShapeRef.new(shape: string, location_name: "message"))
538
580
  InvalidRequestException.add_member(:error_code, Shapes::ShapeRef.new(shape: string, location_name: "errorCode"))
581
+ InvalidRequestException.add_member(:datasync_error_code, Shapes::ShapeRef.new(shape: string, location_name: "datasyncErrorCode"))
539
582
  InvalidRequestException.struct_class = Types::InvalidRequestException
540
583
 
541
584
  ListAgentsRequest.add_member(:max_results, Shapes::ShapeRef.new(shape: MaxResults, location_name: "MaxResults"))
@@ -615,6 +658,7 @@ module Aws::DataSync
615
658
  Options.add_member(:log_level, Shapes::ShapeRef.new(shape: LogLevel, location_name: "LogLevel"))
616
659
  Options.add_member(:transfer_mode, Shapes::ShapeRef.new(shape: TransferMode, location_name: "TransferMode"))
617
660
  Options.add_member(:security_descriptor_copy_flags, Shapes::ShapeRef.new(shape: SmbSecurityDescriptorCopyFlags, location_name: "SecurityDescriptorCopyFlags"))
661
+ Options.add_member(:object_tags, Shapes::ShapeRef.new(shape: ObjectTags, location_name: "ObjectTags"))
618
662
  Options.struct_class = Types::Options
619
663
 
620
664
  OutputTagList.member = Shapes::ShapeRef.new(shape: TagListEntry)
@@ -832,6 +876,16 @@ module Aws::DataSync
832
876
  o.errors << Shapes::ShapeRef.new(shape: InternalException)
833
877
  end)
834
878
 
879
+ api.add_operation(:create_location_fsx_open_zfs, Seahorse::Model::Operation.new.tap do |o|
880
+ o.name = "CreateLocationFsxOpenZfs"
881
+ o.http_method = "POST"
882
+ o.http_request_uri = "/"
883
+ o.input = Shapes::ShapeRef.new(shape: CreateLocationFsxOpenZfsRequest)
884
+ o.output = Shapes::ShapeRef.new(shape: CreateLocationFsxOpenZfsResponse)
885
+ o.errors << Shapes::ShapeRef.new(shape: InvalidRequestException)
886
+ o.errors << Shapes::ShapeRef.new(shape: InternalException)
887
+ end)
888
+
835
889
  api.add_operation(:create_location_fsx_windows, Seahorse::Model::Operation.new.tap do |o|
836
890
  o.name = "CreateLocationFsxWindows"
837
891
  o.http_method = "POST"
@@ -962,6 +1016,16 @@ module Aws::DataSync
962
1016
  o.errors << Shapes::ShapeRef.new(shape: InternalException)
963
1017
  end)
964
1018
 
1019
+ api.add_operation(:describe_location_fsx_open_zfs, Seahorse::Model::Operation.new.tap do |o|
1020
+ o.name = "DescribeLocationFsxOpenZfs"
1021
+ o.http_method = "POST"
1022
+ o.http_request_uri = "/"
1023
+ o.input = Shapes::ShapeRef.new(shape: DescribeLocationFsxOpenZfsRequest)
1024
+ o.output = Shapes::ShapeRef.new(shape: DescribeLocationFsxOpenZfsResponse)
1025
+ o.errors << Shapes::ShapeRef.new(shape: InvalidRequestException)
1026
+ o.errors << Shapes::ShapeRef.new(shape: InternalException)
1027
+ end)
1028
+
965
1029
  api.add_operation(:describe_location_fsx_windows, Seahorse::Model::Operation.new.tap do |o|
966
1030
  o.name = "DescribeLocationFsxWindows"
967
1031
  o.http_method = "POST"
@@ -74,6 +74,11 @@ module Aws::DataSync
74
74
  def error_code
75
75
  @data[:error_code]
76
76
  end
77
+
78
+ # @return [String]
79
+ def datasync_error_code
80
+ @data[:datasync_error_code]
81
+ end
77
82
  end
78
83
 
79
84
  end
@@ -199,63 +199,68 @@ module Aws::DataSync
199
199
  # value: "TagValue",
200
200
  # },
201
201
  # ],
202
+ # access_point_arn: "EfsAccessPointArn",
203
+ # file_system_access_role_arn: "IamRoleArn",
204
+ # in_transit_encryption: "NONE", # accepts NONE, TLS1_2
202
205
  # }
203
206
  #
204
207
  # @!attribute [rw] subdirectory
205
- # A subdirectory in the location’s path. This subdirectory in the EFS
206
- # file system is used to read data from the EFS source location or
207
- # write data to the EFS destination. By default, DataSync uses the
208
- # root directory.
208
+ # Specifies a mount path for your Amazon EFS file system. This is
209
+ # where DataSync reads or writes data (depending on if this is a
210
+ # source or destination location). By default, DataSync uses the root
211
+ # directory, but you can also include subdirectories.
209
212
  #
210
- # <note markdown="1"> `Subdirectory` must be specified with forward slashes. For example,
211
- # `/path/to/folder`.
213
+ # <note markdown="1"> You must specify a value with forward slashes (for example,
214
+ # `/path/to/folder`).
212
215
  #
213
216
  # </note>
214
217
  # @return [String]
215
218
  #
216
219
  # @!attribute [rw] efs_filesystem_arn
217
- # The Amazon Resource Name (ARN) for the Amazon EFS file system.
220
+ # Specifies the ARN for the Amazon EFS file system.
218
221
  # @return [String]
219
222
  #
220
223
  # @!attribute [rw] ec2_config
221
- # The subnet and security group that the Amazon EFS file system uses.
222
- # The security group that you provide needs to be able to communicate
223
- # with the security group on the mount target in the subnet specified.
224
- #
225
- # The exact relationship between security group M (of the mount
226
- # target) and security group S (which you provide for DataSync to use
227
- # at this stage) is as follows:
228
- #
229
- # * Security group M (which you associate with the mount target) must
230
- # allow inbound access for the Transmission Control Protocol (TCP)
231
- # on the NFS port (2049) from security group S. You can enable
232
- # inbound connections either by IP address (CIDR range) or security
233
- # group.
234
- #
235
- # * Security group S (provided to DataSync to access EFS) should have
236
- # a rule that enables outbound connections to the NFS port on one of
237
- # the file system’s mount targets. You can enable outbound
238
- # connections either by IP address (CIDR range) or security group.
239
- #
240
- # For information about security groups and mount targets, see
241
- # Security Groups for Amazon EC2 Instances and Mount Targets in the
242
- # *Amazon EFS User Guide.*
224
+ # Specifies the subnet and security groups DataSync uses to access
225
+ # your Amazon EFS file system.
243
226
  # @return [Types::Ec2Config]
244
227
  #
245
228
  # @!attribute [rw] tags
246
- # The key-value pair that represents a tag that you want to add to the
247
- # resource. The value can be an empty string. This value helps you
248
- # manage, filter, and search for your resources. We recommend that you
249
- # create a name tag for your location.
229
+ # Specifies the key-value pair that represents a tag that you want to
230
+ # add to the resource. The value can be an empty string. This value
231
+ # helps you manage, filter, and search for your resources. We
232
+ # recommend that you create a name tag for your location.
250
233
  # @return [Array<Types::TagListEntry>]
251
234
  #
235
+ # @!attribute [rw] access_point_arn
236
+ # Specifies the Amazon Resource Name (ARN) of the access point that
237
+ # DataSync uses to access the Amazon EFS file system.
238
+ # @return [String]
239
+ #
240
+ # @!attribute [rw] file_system_access_role_arn
241
+ # Specifies an Identity and Access Management (IAM) role that DataSync
242
+ # assumes when mounting the Amazon EFS file system.
243
+ # @return [String]
244
+ #
245
+ # @!attribute [rw] in_transit_encryption
246
+ # Specifies whether you want DataSync to use TLS encryption when
247
+ # transferring data to or from your Amazon EFS file system.
248
+ #
249
+ # If you specify an access point using `AccessPointArn` or an IAM role
250
+ # using `FileSystemAccessRoleArn`, you must set this parameter to
251
+ # `TLS1_2`.
252
+ # @return [String]
253
+ #
252
254
  # @see http://docs.aws.amazon.com/goto/WebAPI/datasync-2018-11-09/CreateLocationEfsRequest AWS API Documentation
253
255
  #
254
256
  class CreateLocationEfsRequest < Struct.new(
255
257
  :subdirectory,
256
258
  :efs_filesystem_arn,
257
259
  :ec2_config,
258
- :tags)
260
+ :tags,
261
+ :access_point_arn,
262
+ :file_system_access_role_arn,
263
+ :in_transit_encryption)
259
264
  SENSITIVE = []
260
265
  include Aws::Structure
261
266
  end
@@ -264,7 +269,7 @@ module Aws::DataSync
264
269
  #
265
270
  # @!attribute [rw] location_arn
266
271
  # The Amazon Resource Name (ARN) of the Amazon EFS file system
267
- # location that is created.
272
+ # location that you create.
268
273
  # @return [String]
269
274
  #
270
275
  # @see http://docs.aws.amazon.com/goto/WebAPI/datasync-2018-11-09/CreateLocationEfsResponse AWS API Documentation
@@ -336,6 +341,79 @@ module Aws::DataSync
336
341
  include Aws::Structure
337
342
  end
338
343
 
344
+ # @note When making an API call, you may pass CreateLocationFsxOpenZfsRequest
345
+ # data as a hash:
346
+ #
347
+ # {
348
+ # fsx_filesystem_arn: "FsxFilesystemArn", # required
349
+ # protocol: { # required
350
+ # nfs: {
351
+ # mount_options: {
352
+ # version: "AUTOMATIC", # accepts AUTOMATIC, NFS3, NFS4_0, NFS4_1
353
+ # },
354
+ # },
355
+ # },
356
+ # security_group_arns: ["Ec2SecurityGroupArn"], # required
357
+ # subdirectory: "FsxOpenZfsSubdirectory",
358
+ # tags: [
359
+ # {
360
+ # key: "TagKey", # required
361
+ # value: "TagValue",
362
+ # },
363
+ # ],
364
+ # }
365
+ #
366
+ # @!attribute [rw] fsx_filesystem_arn
367
+ # The Amazon Resource Name (ARN) of the FSx for OpenZFS file system.
368
+ # @return [String]
369
+ #
370
+ # @!attribute [rw] protocol
371
+ # The type of protocol that DataSync uses to access your file system.
372
+ # @return [Types::FsxProtocol]
373
+ #
374
+ # @!attribute [rw] security_group_arns
375
+ # The ARNs of the security groups that are used to configure the FSx
376
+ # for OpenZFS file system.
377
+ # @return [Array<String>]
378
+ #
379
+ # @!attribute [rw] subdirectory
380
+ # A subdirectory in the location's path that must begin with `/fsx`.
381
+ # DataSync uses this subdirectory to read or write data (depending on
382
+ # whether the file system is a source or destination location).
383
+ # @return [String]
384
+ #
385
+ # @!attribute [rw] tags
386
+ # The key-value pair that represents a tag that you want to add to the
387
+ # resource. The value can be an empty string. This value helps you
388
+ # manage, filter, and search for your resources. We recommend that you
389
+ # create a name tag for your location.
390
+ # @return [Array<Types::TagListEntry>]
391
+ #
392
+ # @see http://docs.aws.amazon.com/goto/WebAPI/datasync-2018-11-09/CreateLocationFsxOpenZfsRequest AWS API Documentation
393
+ #
394
+ class CreateLocationFsxOpenZfsRequest < Struct.new(
395
+ :fsx_filesystem_arn,
396
+ :protocol,
397
+ :security_group_arns,
398
+ :subdirectory,
399
+ :tags)
400
+ SENSITIVE = []
401
+ include Aws::Structure
402
+ end
403
+
404
+ # @!attribute [rw] location_arn
405
+ # The ARN of the FSx for OpenZFS file system location that you
406
+ # created.
407
+ # @return [String]
408
+ #
409
+ # @see http://docs.aws.amazon.com/goto/WebAPI/datasync-2018-11-09/CreateLocationFsxOpenZfsResponse AWS API Documentation
410
+ #
411
+ class CreateLocationFsxOpenZfsResponse < Struct.new(
412
+ :location_arn)
413
+ SENSITIVE = []
414
+ include Aws::Structure
415
+ end
416
+
339
417
  # @note When making an API call, you may pass CreateLocationFsxWindowsRequest
340
418
  # data as a hash:
341
419
  #
@@ -367,8 +445,8 @@ module Aws::DataSync
367
445
  # @return [String]
368
446
  #
369
447
  # @!attribute [rw] security_group_arns
370
- # The Amazon Resource Names (ARNs) of the security groups that are
371
- # used to configure the FSx for Windows File Server file system.
448
+ # The ARNs of the security groups that are used to configure the FSx
449
+ # for Windows File Server file system.
372
450
  # @return [Array<String>]
373
451
  #
374
452
  # @!attribute [rw] tags
@@ -413,7 +491,7 @@ module Aws::DataSync
413
491
 
414
492
  # @!attribute [rw] location_arn
415
493
  # The Amazon Resource Name (ARN) of the FSx for Windows File Server
416
- # file system location that is created.
494
+ # file system location you created.
417
495
  # @return [String]
418
496
  #
419
497
  # @see http://docs.aws.amazon.com/goto/WebAPI/datasync-2018-11-09/CreateLocationFsxWindowsResponse AWS API Documentation
@@ -645,7 +723,7 @@ module Aws::DataSync
645
723
  # @!attribute [rw] server_hostname
646
724
  # The name of the NFS server. This value is the IP address or Domain
647
725
  # Name Service (DNS) name of the NFS server. An agent that is
648
- # installed on-premises uses this host name to mount the NFS server in
726
+ # installed on-premises uses this hostname to mount the NFS server in
649
727
  # a network.
650
728
  #
651
729
  # If you are copying data to or from your Snowcone device, see [NFS
@@ -735,7 +813,7 @@ module Aws::DataSync
735
813
  # @!attribute [rw] server_hostname
736
814
  # The name of the self-managed object storage server. This value is
737
815
  # the IP address or Domain Name Service (DNS) name of the object
738
- # storage server. An agent uses this host name to mount the object
816
+ # storage server. An agent uses this hostname to mount the object
739
817
  # storage server in a network.
740
818
  # @return [String]
741
819
  #
@@ -872,14 +950,14 @@ module Aws::DataSync
872
950
  #
873
951
  # @!attribute [rw] s3_config
874
952
  # The Amazon Resource Name (ARN) of the Identity and Access Management
875
- # (IAM) role that is used to access an Amazon S3 bucket.
953
+ # (IAM) role used to access an Amazon S3 bucket.
876
954
  #
877
955
  # For detailed information about using such a role, see Creating a
878
956
  # Location for Amazon S3 in the *DataSync User Guide*.
879
957
  # @return [Types::S3Config]
880
958
  #
881
959
  # @!attribute [rw] agent_arns
882
- # If you are using DataSync on an Amazon Web Services Outpost, specify
960
+ # If you're using DataSync on an Amazon Web Services Outpost, specify
883
961
  # the Amazon Resource Names (ARNs) of the DataSync agents deployed on
884
962
  # your Outpost. For more information about launching a DataSync agent
885
963
  # on an Amazon Web Services Outpost, see [Deploy your DataSync agent
@@ -1070,6 +1148,7 @@ module Aws::DataSync
1070
1148
  # log_level: "OFF", # accepts OFF, BASIC, TRANSFER
1071
1149
  # transfer_mode: "CHANGED", # accepts CHANGED, ALL
1072
1150
  # security_descriptor_copy_flags: "NONE", # accepts NONE, OWNER_DACL, OWNER_DACL_SACL
1151
+ # object_tags: "PRESERVE", # accepts PRESERVE, NONE
1073
1152
  # },
1074
1153
  # excludes: [
1075
1154
  # {
@@ -1350,7 +1429,8 @@ module Aws::DataSync
1350
1429
  # }
1351
1430
  #
1352
1431
  # @!attribute [rw] location_arn
1353
- # The Amazon Resource Name (ARN) of the EFS location to describe.
1432
+ # The Amazon Resource Name (ARN) of the Amazon EFS file system
1433
+ # location that you want information about.
1354
1434
  # @return [String]
1355
1435
  #
1356
1436
  # @see http://docs.aws.amazon.com/goto/WebAPI/datasync-2018-11-09/DescribeLocationEfsRequest AWS API Documentation
@@ -1364,33 +1444,47 @@ module Aws::DataSync
1364
1444
  # DescribeLocationEfsResponse
1365
1445
  #
1366
1446
  # @!attribute [rw] location_arn
1367
- # The Amazon Resource Name (ARN) of the EFS location that was
1368
- # described.
1447
+ # The ARN of the Amazon EFS file system location.
1369
1448
  # @return [String]
1370
1449
  #
1371
1450
  # @!attribute [rw] location_uri
1372
- # The URL of the EFS location that was described.
1451
+ # The URL of the Amazon EFS file system location.
1373
1452
  # @return [String]
1374
1453
  #
1375
1454
  # @!attribute [rw] ec2_config
1376
- # The subnet and the security group that DataSync uses to access
1377
- # target EFS file system. The subnet must have at least one mount
1378
- # target for that file system. The security group that you provide
1379
- # needs to be able to communicate with the security group on the mount
1380
- # target in the subnet specified.
1455
+ # The subnet and security groups that DataSync uses to access your
1456
+ # Amazon EFS file system.
1381
1457
  # @return [Types::Ec2Config]
1382
1458
  #
1383
1459
  # @!attribute [rw] creation_time
1384
- # The time that the EFS location was created.
1460
+ # The time that the location was created.
1385
1461
  # @return [Time]
1386
1462
  #
1463
+ # @!attribute [rw] access_point_arn
1464
+ # The ARN of the access point that DataSync uses to access the Amazon
1465
+ # EFS file system.
1466
+ # @return [String]
1467
+ #
1468
+ # @!attribute [rw] file_system_access_role_arn
1469
+ # The Identity and Access Management (IAM) role that DataSync assumes
1470
+ # when mounting the Amazon EFS file system.
1471
+ # @return [String]
1472
+ #
1473
+ # @!attribute [rw] in_transit_encryption
1474
+ # Whether DataSync uses TLS encryption when transferring data to or
1475
+ # from your Amazon EFS file system.
1476
+ # @return [String]
1477
+ #
1387
1478
  # @see http://docs.aws.amazon.com/goto/WebAPI/datasync-2018-11-09/DescribeLocationEfsResponse AWS API Documentation
1388
1479
  #
1389
1480
  class DescribeLocationEfsResponse < Struct.new(
1390
1481
  :location_arn,
1391
1482
  :location_uri,
1392
1483
  :ec2_config,
1393
- :creation_time)
1484
+ :creation_time,
1485
+ :access_point_arn,
1486
+ :file_system_access_role_arn,
1487
+ :in_transit_encryption)
1394
1488
  SENSITIVE = []
1395
1489
  include Aws::Structure
1396
1490
  end
@@ -1444,6 +1538,62 @@ module Aws::DataSync
1444
1538
  include Aws::Structure
1445
1539
  end
1446
1540
 
1541
+ # @note When making an API call, you may pass DescribeLocationFsxOpenZfsRequest
1542
+ # data as a hash:
1543
+ #
1544
+ # {
1545
+ # location_arn: "LocationArn", # required
1546
+ # }
1547
+ #
1548
+ # @!attribute [rw] location_arn
1549
+ # The Amazon Resource Name (ARN) of the FSx for OpenZFS location to
1550
+ # describe.
1551
+ # @return [String]
1552
+ #
1553
+ # @see http://docs.aws.amazon.com/goto/WebAPI/datasync-2018-11-09/DescribeLocationFsxOpenZfsRequest AWS API Documentation
1554
+ #
1555
+ class DescribeLocationFsxOpenZfsRequest < Struct.new(
1556
+ :location_arn)
1557
+ SENSITIVE = []
1558
+ include Aws::Structure
1559
+ end
1560
+
1561
+ # @!attribute [rw] location_arn
1562
+ # The ARN of the FSx for OpenZFS location that was described.
1563
+ # @return [String]
1564
+ #
1565
+ # @!attribute [rw] location_uri
1566
+ # The uniform resource identifier (URI) of the FSx for OpenZFS
1567
+ # location that was described.
1568
+ #
1569
+ # Example: `fsxz://us-west-2.fs-1234567890abcdef02/fsx/folderA/folder`
1570
+ # @return [String]
1571
+ #
1572
+ # @!attribute [rw] security_group_arns
1573
+ # The ARNs of the security groups that are configured for the FSx for
1574
+ # OpenZFS file system.
1575
+ # @return [Array<String>]
1576
+ #
1577
+ # @!attribute [rw] protocol
1578
+ # The type of protocol that DataSync uses to access your file system.
1579
+ # @return [Types::FsxProtocol]
1580
+ #
1581
+ # @!attribute [rw] creation_time
1582
+ # The time that the FSx for OpenZFS location was created.
1583
+ # @return [Time]
1584
+ #
1585
+ # @see http://docs.aws.amazon.com/goto/WebAPI/datasync-2018-11-09/DescribeLocationFsxOpenZfsResponse AWS API Documentation
1586
+ #
1587
+ class DescribeLocationFsxOpenZfsResponse < Struct.new(
1588
+ :location_arn,
1589
+ :location_uri,
1590
+ :security_group_arns,
1591
+ :protocol,
1592
+ :creation_time)
1593
+ SENSITIVE = []
1594
+ include Aws::Structure
1595
+ end
1596
+
1447
1597
  # @note When making an API call, you may pass DescribeLocationFsxWindowsRequest
1448
1598
  # data as a hash:
1449
1599
  #
@@ -1784,7 +1934,7 @@ module Aws::DataSync
1784
1934
  #
1785
1935
  # @!attribute [rw] s3_config
1786
1936
  # The Amazon Resource Name (ARN) of the Identity and Access Management
1787
- # (IAM) role that is used to access an Amazon S3 bucket.
1937
+ # (IAM) role used to access an Amazon S3 bucket.
1788
1938
  #
1789
1939
  # For detailed information about using such a role, see Creating a
1790
1940
  # Location for Amazon S3 in the *DataSync User Guide*.
@@ -2169,11 +2319,8 @@ module Aws::DataSync
2169
2319
  include Aws::Structure
2170
2320
  end
2171
2321
 
2172
- # The subnet and the security group that DataSync uses to access target
2173
- # EFS file system. The subnet must have at least one mount target for
2174
- # that file system. The security group that you provide needs to be able
2175
- # to communicate with the security group on the mount target in the
2176
- # subnet specified.
2322
+ # The subnet and security groups that DataSync uses to access your
2323
+ # Amazon EFS file system.
2177
2324
  #
2178
2325
  # @note When making an API call, you may pass Ec2Config
2179
2326
  # data as a hash:
@@ -2184,13 +2331,30 @@ module Aws::DataSync
2184
2331
  # }
2185
2332
  #
2186
2333
  # @!attribute [rw] subnet_arn
2187
- # The ARN of the subnet and the security group that DataSync uses to
2188
- # access the target EFS file system.
2334
+ # Specifies the ARN of a subnet where DataSync creates the [network
2335
+ # interfaces][1] for managing traffic during your transfer.
2336
+ #
2337
+ # The subnet must be located:
2338
+ #
2339
+ # * In the same virtual private cloud (VPC) as the Amazon EFS file
2340
+ # system.
2341
+ #
2342
+ # * In the same Availability Zone as at least one mount target for the
2343
+ # Amazon EFS file system.
2344
+ #
2345
+ # <note markdown="1"> You don't need to specify a subnet that includes a file system
2346
+ # mount target.
2347
+ #
2348
+ # </note>
2349
+ #
2350
+ #
2351
+ #
2352
+ # [1]: https://docs.aws.amazon.com/datasync/latest/userguide/datasync-network.html#required-network-interfaces
2189
2353
  # @return [String]
2190
2354
  #
2191
2355
  # @!attribute [rw] security_group_arns
2192
- # The Amazon Resource Names (ARNs) of the security groups that are
2193
- # configured for the Amazon EC2 resource.
2356
+ # Specifies the Amazon Resource Names (ARNs) of the security groups
2357
+ # associated with an Amazon EFS file system's mount target.
2194
2358
  # @return [Array<String>]
2195
2359
  #
2196
2360
  # @see http://docs.aws.amazon.com/goto/WebAPI/datasync-2018-11-09/Ec2Config AWS API Documentation
@@ -2233,6 +2397,58 @@ module Aws::DataSync
2233
2397
  include Aws::Structure
2234
2398
  end
2235
2399
 
2400
+ # Represents the protocol that DataSync uses to access your Amazon FSx
2401
+ # for OpenZFS file system.
2402
+ #
2403
+ # @note When making an API call, you may pass FsxProtocol
2404
+ # data as a hash:
2405
+ #
2406
+ # {
2407
+ # nfs: {
2408
+ # mount_options: {
2409
+ # version: "AUTOMATIC", # accepts AUTOMATIC, NFS3, NFS4_0, NFS4_1
2410
+ # },
2411
+ # },
2412
+ # }
2413
+ #
2414
+ # @!attribute [rw] nfs
2415
+ # Represents the Network File System (NFS) protocol that DataSync uses
2416
+ # to access your FSx for OpenZFS file system.
2417
+ # @return [Types::FsxProtocolNfs]
2418
+ #
2419
+ # @see http://docs.aws.amazon.com/goto/WebAPI/datasync-2018-11-09/FsxProtocol AWS API Documentation
2420
+ #
2421
+ class FsxProtocol < Struct.new(
2422
+ :nfs)
2423
+ SENSITIVE = []
2424
+ include Aws::Structure
2425
+ end
2426
+
2427
+ # Represents the Network File System (NFS) protocol that DataSync uses
2428
+ # to access your Amazon FSx for OpenZFS file system.
2429
+ #
2430
+ # @note When making an API call, you may pass FsxProtocolNfs
2431
+ # data as a hash:
2432
+ #
2433
+ # {
2434
+ # mount_options: {
2435
+ # version: "AUTOMATIC", # accepts AUTOMATIC, NFS3, NFS4_0, NFS4_1
2436
+ # },
2437
+ # }
2438
+ #
2439
+ # @!attribute [rw] mount_options
2440
+ # Represents the mount options that are available for DataSync to
2441
+ # access an NFS location.
2442
+ # @return [Types::NfsMountOptions]
2443
+ #
2444
+ # @see http://docs.aws.amazon.com/goto/WebAPI/datasync-2018-11-09/FsxProtocolNfs AWS API Documentation
2445
+ #
2446
+ class FsxProtocolNfs < Struct.new(
2447
+ :mount_options)
2448
+ SENSITIVE = []
2449
+ include Aws::Structure
2450
+ end
2451
+
2236
2452
  # The NameNode of the Hadoop Distributed File System (HDFS). The
2237
2453
  # NameNode manages the file system's namespace. The NameNode performs
2238
2454
  # operations such as opening, closing, and renaming files and
@@ -2292,11 +2508,15 @@ module Aws::DataSync
2292
2508
  # @!attribute [rw] error_code
2293
2509
  # @return [String]
2294
2510
  #
2511
+ # @!attribute [rw] datasync_error_code
2512
+ # @return [String]
2513
+ #
2295
2514
  # @see http://docs.aws.amazon.com/goto/WebAPI/datasync-2018-11-09/InvalidRequestException AWS API Documentation
2296
2515
  #
2297
2516
  class InvalidRequestException < Struct.new(
2298
2517
  :message,
2299
- :error_code)
2518
+ :error_code,
2519
+ :datasync_error_code)
2300
2520
  SENSITIVE = []
2301
2521
  include Aws::Structure
2302
2522
  end
@@ -2651,14 +2871,13 @@ module Aws::DataSync
2651
2871
  #
2652
2872
  # Format: `TYPE://GLOBAL_ID/SUBDIR`.
2653
2873
  #
2654
- # TYPE designates the type of location. Valid values: NFS \| EFS \|
2655
- # S3.
2874
+ # TYPE designates the type of location (for example, `nfs` or `s3`).
2656
2875
  #
2657
2876
  # GLOBAL\_ID is the globally unique identifier of the resource that
2658
2877
  # backs the location. An example for EFS is `us-east-2.fs-abcd1234`.
2659
2878
  # An example for Amazon S3 is the bucket name, such as `myBucket`. An
2660
- # example for NFS is a valid IPv4 address or a host name compliant
2661
- # with Domain Name Service (DNS).
2879
+ # example for NFS is a valid IPv4 address or a hostname that is
2880
+ # compliant with Domain Name Service (DNS).
2662
2881
  #
2663
2882
  # SUBDIR is a valid file system path, delimited by forward slashes as
2664
2883
  # is the *nix convention. For NFS and Amazon EFS, it's the export
@@ -2777,6 +2996,7 @@ module Aws::DataSync
2777
2996
  # log_level: "OFF", # accepts OFF, BASIC, TRANSFER
2778
2997
  # transfer_mode: "CHANGED", # accepts CHANGED, ALL
2779
2998
  # security_descriptor_copy_flags: "NONE", # accepts NONE, OWNER_DACL, OWNER_DACL_SACL
2999
+ # object_tags: "PRESERVE", # accepts PRESERVE, NONE
2780
3000
  # }
2781
3001
  #
2782
3002
  # @!attribute [rw] verify_mode
@@ -2793,8 +3013,8 @@ module Aws::DataSync
2793
3013
  # POINT\_IN\_TIME\_CONSISTENT: Scan the entire source and entire
2794
3014
  # destination at the end of the transfer to verify that source and
2795
3015
  # destination are fully synchronized. This option isn't supported
2796
- # when transferring to S3 Glacier or S3 Glacier Deep Archive storage
2797
- # classes.
3016
+ # when transferring to S3 Glacier Flexible Retrieval or S3 Glacier
3017
+ # Deep Archive storage classes.
2798
3018
  #
2799
3019
  # NONE: No additional verification is done at the end of the transfer,
2800
3020
  # but all data transmissions are integrity-checked with checksum
@@ -2852,7 +3072,7 @@ module Aws::DataSync
2852
3072
  # is required for cases when you need to run the same task more than
2853
3073
  # one time.
2854
3074
  #
2855
- # Default value: PRESERVE.
3075
+ # Default Value: `PRESERVE`
2856
3076
  #
2857
3077
  # PRESERVE: Preserve original `Mtime` (recommended)
2858
3078
  #
@@ -3064,6 +3284,14 @@ module Aws::DataSync
3064
3284
  # [1]: https://docs.aws.amazon.com/datasync/latest/userguide/special-files.html
3065
3285
  # @return [String]
3066
3286
  #
3287
+ # @!attribute [rw] object_tags
3288
+ # Specifies whether object tags are maintained when transferring
3289
+ # between object storage systems. If you want your DataSync task to
3290
+ # ignore object tags, specify the `NONE` value.
3291
+ #
3292
+ # Default Value: `PRESERVE`
3293
+ # @return [String]
3294
+ #
3067
3295
  # @see http://docs.aws.amazon.com/goto/WebAPI/datasync-2018-11-09/Options AWS API Documentation
3068
3296
  #
3069
3297
  class Options < Struct.new(
@@ -3080,7 +3308,8 @@ module Aws::DataSync
3080
3308
  :task_queueing,
3081
3309
  :log_level,
3082
3310
  :transfer_mode,
3083
- :security_descriptor_copy_flags)
3311
+ :security_descriptor_copy_flags,
3312
+ :object_tags)
3084
3313
  SENSITIVE = []
3085
3314
  include Aws::Structure
3086
3315
  end
@@ -3161,7 +3390,7 @@ module Aws::DataSync
3161
3390
  end
3162
3391
 
3163
3392
  # The Amazon Resource Name (ARN) of the Identity and Access Management
3164
- # (IAM) role that is used to access an Amazon S3 bucket.
3393
+ # (IAM) role used to access an Amazon S3 bucket.
3165
3394
  #
3166
3395
  # For detailed information about using such a role, see Creating a
3167
3396
  # Location for Amazon S3 in the *DataSync User Guide*.
@@ -3174,12 +3403,7 @@ module Aws::DataSync
3174
3403
  # }
3175
3404
  #
3176
3405
  # @!attribute [rw] bucket_access_role_arn
3177
- # The Amazon S3 bucket to access. This bucket is used as a parameter
3178
- # in the [CreateLocationS3][1] operation.
3179
- #
3180
- #
3181
- #
3182
- # [1]: https://docs.aws.amazon.com/datasync/latest/userguide/API_CreateLocationS3.html
3406
+ # The ARN of the IAM role for accessing the S3 bucket.
3183
3407
  # @return [String]
3184
3408
  #
3185
3409
  # @see http://docs.aws.amazon.com/goto/WebAPI/datasync-2018-11-09/S3Config AWS API Documentation
@@ -3237,6 +3461,7 @@ module Aws::DataSync
3237
3461
  # log_level: "OFF", # accepts OFF, BASIC, TRANSFER
3238
3462
  # transfer_mode: "CHANGED", # accepts CHANGED, ALL
3239
3463
  # security_descriptor_copy_flags: "NONE", # accepts NONE, OWNER_DACL, OWNER_DACL_SACL
3464
+ # object_tags: "PRESERVE", # accepts PRESERVE, NONE
3240
3465
  # },
3241
3466
  # includes: [
3242
3467
  # {
@@ -3720,15 +3945,15 @@ module Aws::DataSync
3720
3945
  # The Kerberos key table (keytab) that contains mappings between the
3721
3946
  # defined Kerberos principal and the encrypted keys. You can load the
3722
3947
  # keytab from a file by providing the file's address. If you use the
3723
- # AWS CLI, it performs base64 encoding for you. Otherwise, provide the
3948
+ # CLI, it performs base64 encoding for you. Otherwise, provide the
3724
3949
  # base64-encoded text.
3725
3950
  # @return [String]
3726
3951
  #
3727
3952
  # @!attribute [rw] kerberos_krb_5_conf
3728
3953
  # The `krb5.conf` file that contains the Kerberos configuration
3729
3954
  # information. You can load the `krb5.conf` file by providing the
3730
- # file's address. If you're using the AWS CLI, it performs the
3731
- # base64 encoding for you. Otherwise, provide the base64-encoded text.
3955
+ # file's address. If you're using the CLI, it performs the base64
3956
+ # encoding for you. Otherwise, provide the base64-encoded text.
3732
3957
  # @return [String]
3733
3958
  #
3734
3959
  # @!attribute [rw] agent_arns
@@ -4018,6 +4243,7 @@ module Aws::DataSync
4018
4243
  # log_level: "OFF", # accepts OFF, BASIC, TRANSFER
4019
4244
  # transfer_mode: "CHANGED", # accepts CHANGED, ALL
4020
4245
  # security_descriptor_copy_flags: "NONE", # accepts NONE, OWNER_DACL, OWNER_DACL_SACL
4246
+ # object_tags: "PRESERVE", # accepts PRESERVE, NONE
4021
4247
  # },
4022
4248
  # }
4023
4249
  #
@@ -4079,6 +4305,7 @@ module Aws::DataSync
4079
4305
  # log_level: "OFF", # accepts OFF, BASIC, TRANSFER
4080
4306
  # transfer_mode: "CHANGED", # accepts CHANGED, ALL
4081
4307
  # security_descriptor_copy_flags: "NONE", # accepts NONE, OWNER_DACL, OWNER_DACL_SACL
4308
+ # object_tags: "PRESERVE", # accepts PRESERVE, NONE
4082
4309
  # },
4083
4310
  # excludes: [
4084
4311
  # {
@@ -48,6 +48,6 @@ require_relative 'aws-sdk-datasync/customizations'
48
48
  # @!group service
49
49
  module Aws::DataSync
50
50
 
51
- GEM_VERSION = '1.44.0'
51
+ GEM_VERSION = '1.47.0'
52
52
 
53
53
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: aws-sdk-datasync
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.44.0
4
+ version: 1.47.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Amazon Web Services
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2022-02-24 00:00:00.000000000 Z
11
+ date: 2022-05-27 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: aws-sdk-core