aws-cdk-lib 2.90.0__py3-none-any.whl → 2.92.0__py3-none-any.whl

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.

Potentially problematic release.


This version of aws-cdk-lib might be problematic. Click here for more details.

Files changed (55) hide show
  1. aws_cdk/__init__.py +22 -4
  2. aws_cdk/_jsii/__init__.py +2 -2
  3. aws_cdk/_jsii/{aws-cdk-lib@2.90.0.jsii.tgz → aws-cdk-lib@2.92.0.jsii.tgz} +0 -0
  4. aws_cdk/aws_appstream/__init__.py +3 -3
  5. aws_cdk/aws_batch/__init__.py +39 -18
  6. aws_cdk/aws_billingconductor/__init__.py +44 -13
  7. aws_cdk/aws_cleanrooms/__init__.py +2 -4
  8. aws_cdk/aws_cloudtrail/__init__.py +35 -10
  9. aws_cdk/aws_cloudwatch/__init__.py +3 -3
  10. aws_cdk/aws_codebuild/__init__.py +7 -7
  11. aws_cdk/aws_cognito/__init__.py +8 -8
  12. aws_cdk/aws_config/__init__.py +220 -0
  13. aws_cdk/aws_datasync/__init__.py +22 -35
  14. aws_cdk/aws_dms/__init__.py +909 -4
  15. aws_cdk/aws_dynamodb/__init__.py +0 -1
  16. aws_cdk/aws_ec2/__init__.py +59 -21
  17. aws_cdk/aws_ecs/__init__.py +45 -21
  18. aws_cdk/aws_evidently/__init__.py +3 -3
  19. aws_cdk/aws_fsx/__init__.py +6 -5
  20. aws_cdk/aws_glue/__init__.py +438 -10
  21. aws_cdk/aws_guardduty/__init__.py +60 -17
  22. aws_cdk/aws_iam/__init__.py +8 -9
  23. aws_cdk/aws_iot/__init__.py +5 -1
  24. aws_cdk/aws_kms/__init__.py +95 -47
  25. aws_cdk/aws_lambda/__init__.py +4 -2
  26. aws_cdk/aws_lambda_nodejs/__init__.py +3 -3
  27. aws_cdk/aws_mediatailor/__init__.py +2902 -892
  28. aws_cdk/aws_mwaa/__init__.py +13 -8
  29. aws_cdk/aws_neptune/__init__.py +50 -2
  30. aws_cdk/aws_omics/__init__.py +80 -0
  31. aws_cdk/aws_opensearchserverless/__init__.py +3 -3
  32. aws_cdk/aws_opensearchservice/__init__.py +247 -14
  33. aws_cdk/aws_organizations/__init__.py +17 -17
  34. aws_cdk/aws_personalize/__init__.py +41 -25
  35. aws_cdk/aws_rds/__init__.py +24 -10
  36. aws_cdk/aws_resiliencehub/__init__.py +22 -22
  37. aws_cdk/aws_rolesanywhere/__init__.py +58 -74
  38. aws_cdk/aws_route53/__init__.py +3 -1
  39. aws_cdk/aws_s3/__init__.py +17 -7
  40. aws_cdk/aws_sagemaker/__init__.py +396 -5
  41. aws_cdk/aws_sns/__init__.py +8 -8
  42. aws_cdk/aws_sqs/__init__.py +231 -4
  43. aws_cdk/aws_ssm/__init__.py +6 -28
  44. aws_cdk/aws_stepfunctions/__init__.py +7 -7
  45. aws_cdk/aws_timestream/__init__.py +243 -0
  46. aws_cdk/aws_transfer/__init__.py +250 -52
  47. aws_cdk/aws_vpclattice/__init__.py +10 -6
  48. aws_cdk/aws_wafv2/__init__.py +7517 -5036
  49. aws_cdk/custom_resources/__init__.py +18 -30
  50. {aws_cdk_lib-2.90.0.dist-info → aws_cdk_lib-2.92.0.dist-info}/METADATA +8 -8
  51. {aws_cdk_lib-2.90.0.dist-info → aws_cdk_lib-2.92.0.dist-info}/RECORD +55 -55
  52. {aws_cdk_lib-2.90.0.dist-info → aws_cdk_lib-2.92.0.dist-info}/WHEEL +1 -1
  53. {aws_cdk_lib-2.90.0.dist-info → aws_cdk_lib-2.92.0.dist-info}/LICENSE +0 -0
  54. {aws_cdk_lib-2.90.0.dist-info → aws_cdk_lib-2.92.0.dist-info}/NOTICE +0 -0
  55. {aws_cdk_lib-2.90.0.dist-info → aws_cdk_lib-2.92.0.dist-info}/top_level.txt +0 -0
@@ -606,8 +606,14 @@ class CfnConfigRule(
606
606
  ),
607
607
 
608
608
  # the properties below are optional
609
+ compliance=config.CfnConfigRule.ComplianceProperty(
610
+ type="type"
611
+ ),
609
612
  config_rule_name="configRuleName",
610
613
  description="description",
614
+ evaluation_modes=[config.CfnConfigRule.EvaluationModeConfigurationProperty(
615
+ mode="mode"
616
+ )],
611
617
  input_parameters=input_parameters,
612
618
  maximum_execution_frequency="maximumExecutionFrequency",
613
619
  scope=config.CfnConfigRule.ScopeProperty(
@@ -625,8 +631,10 @@ class CfnConfigRule(
625
631
  id: builtins.str,
626
632
  *,
627
633
  source: typing.Union[_IResolvable_da3f097b, typing.Union["CfnConfigRule.SourceProperty", typing.Dict[builtins.str, typing.Any]]],
634
+ compliance: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnConfigRule.ComplianceProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
628
635
  config_rule_name: typing.Optional[builtins.str] = None,
629
636
  description: typing.Optional[builtins.str] = None,
637
+ evaluation_modes: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union["CfnConfigRule.EvaluationModeConfigurationProperty", typing.Dict[builtins.str, typing.Any]]]]]] = None,
630
638
  input_parameters: typing.Any = None,
631
639
  maximum_execution_frequency: typing.Optional[builtins.str] = None,
632
640
  scope: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnConfigRule.ScopeProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
@@ -635,8 +643,10 @@ class CfnConfigRule(
635
643
  :param scope_: Scope in which this resource is defined.
636
644
  :param id: Construct identifier for this resource (unique in its scope).
637
645
  :param source: Provides the rule owner ( ``AWS`` for managed rules, ``CUSTOM_POLICY`` for Custom Policy rules, and ``CUSTOM_LAMBDA`` for Custom Lambda rules), the rule identifier, and the notifications that cause the function to evaluate your AWS resources.
646
+ :param compliance: Compliance details of the Config rule.
638
647
  :param config_rule_name: A name for the AWS Config rule. If you don't specify a name, AWS CloudFormation generates a unique physical ID and uses that ID for the rule name. For more information, see `Name Type <https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-name.html>`_ .
639
648
  :param description: The description that you provide for the AWS Config rule.
649
+ :param evaluation_modes: List of EvaluationModeConfiguration objects.
640
650
  :param input_parameters: A string, in JSON format, that is passed to the AWS Config rule Lambda function.
641
651
  :param maximum_execution_frequency: The maximum frequency with which AWS Config runs evaluations for a rule. You can specify a value for ``MaximumExecutionFrequency`` when: - You are using an AWS managed rule that is triggered at a periodic frequency. - Your custom rule is triggered when AWS Config delivers the configuration snapshot. For more information, see `ConfigSnapshotDeliveryProperties <https://docs.aws.amazon.com/config/latest/APIReference/API_ConfigSnapshotDeliveryProperties.html>`_ . .. epigraph:: By default, rules with a periodic trigger are evaluated every 24 hours. To change the frequency, specify a valid value for the ``MaximumExecutionFrequency`` parameter.
642
652
  :param scope: Defines which resources can trigger an evaluation for the rule. The scope can include one or more resource types, a combination of one resource type and one resource ID, or a combination of a tag key and value. Specify a scope to constrain the resources that can trigger an evaluation for the rule. If you do not specify a scope, evaluations are triggered when any resource in the recording group changes. .. epigraph:: The scope can be empty.
@@ -647,8 +657,10 @@ class CfnConfigRule(
647
657
  check_type(argname="argument id", value=id, expected_type=type_hints["id"])
648
658
  props = CfnConfigRuleProps(
649
659
  source=source,
660
+ compliance=compliance,
650
661
  config_rule_name=config_rule_name,
651
662
  description=description,
663
+ evaluation_modes=evaluation_modes,
652
664
  input_parameters=input_parameters,
653
665
  maximum_execution_frequency=maximum_execution_frequency,
654
666
  scope=scope,
@@ -736,6 +748,24 @@ class CfnConfigRule(
736
748
  check_type(argname="argument value", value=value, expected_type=type_hints["value"])
737
749
  jsii.set(self, "source", value)
738
750
 
751
+ @builtins.property
752
+ @jsii.member(jsii_name="compliance")
753
+ def compliance(
754
+ self,
755
+ ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnConfigRule.ComplianceProperty"]]:
756
+ '''Compliance details of the Config rule.'''
757
+ return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnConfigRule.ComplianceProperty"]], jsii.get(self, "compliance"))
758
+
759
+ @compliance.setter
760
+ def compliance(
761
+ self,
762
+ value: typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnConfigRule.ComplianceProperty"]],
763
+ ) -> None:
764
+ if __debug__:
765
+ type_hints = typing.get_type_hints(_typecheckingstub__743f9ee6243708ed2e606e31e618af32604f35d387093cdc8d8634e961b27324)
766
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
767
+ jsii.set(self, "compliance", value)
768
+
739
769
  @builtins.property
740
770
  @jsii.member(jsii_name="configRuleName")
741
771
  def config_rule_name(self) -> typing.Optional[builtins.str]:
@@ -762,6 +792,24 @@ class CfnConfigRule(
762
792
  check_type(argname="argument value", value=value, expected_type=type_hints["value"])
763
793
  jsii.set(self, "description", value)
764
794
 
795
+ @builtins.property
796
+ @jsii.member(jsii_name="evaluationModes")
797
+ def evaluation_modes(
798
+ self,
799
+ ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, "CfnConfigRule.EvaluationModeConfigurationProperty"]]]]:
800
+ '''List of EvaluationModeConfiguration objects.'''
801
+ return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, "CfnConfigRule.EvaluationModeConfigurationProperty"]]]], jsii.get(self, "evaluationModes"))
802
+
803
+ @evaluation_modes.setter
804
+ def evaluation_modes(
805
+ self,
806
+ value: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, "CfnConfigRule.EvaluationModeConfigurationProperty"]]]],
807
+ ) -> None:
808
+ if __debug__:
809
+ type_hints = typing.get_type_hints(_typecheckingstub__3563e34d09c0fb5a803e72a8cee06c0ed65b4c596390bf75303600bfd5df9f44)
810
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
811
+ jsii.set(self, "evaluationModes", value)
812
+
765
813
  @builtins.property
766
814
  @jsii.member(jsii_name="inputParameters")
767
815
  def input_parameters(self) -> typing.Any:
@@ -806,6 +854,57 @@ class CfnConfigRule(
806
854
  check_type(argname="argument value", value=value, expected_type=type_hints["value"])
807
855
  jsii.set(self, "scope", value)
808
856
 
857
+ @jsii.data_type(
858
+ jsii_type="aws-cdk-lib.aws_config.CfnConfigRule.ComplianceProperty",
859
+ jsii_struct_bases=[],
860
+ name_mapping={"type": "type"},
861
+ )
862
+ class ComplianceProperty:
863
+ def __init__(self, *, type: typing.Optional[builtins.str] = None) -> None:
864
+ '''Compliance details of the Config rule.
865
+
866
+ :param type: Compliance type determined by the Config rule.
867
+
868
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-config-configrule-compliance.html
869
+ :exampleMetadata: fixture=_generated
870
+
871
+ Example::
872
+
873
+ # The code below shows an example of how to instantiate this type.
874
+ # The values are placeholders you should change.
875
+ from aws_cdk import aws_config as config
876
+
877
+ compliance_property = config.CfnConfigRule.ComplianceProperty(
878
+ type="type"
879
+ )
880
+ '''
881
+ if __debug__:
882
+ type_hints = typing.get_type_hints(_typecheckingstub__4d66dbd2cc5d052bcc47c92d8ce8dd64bcb0b5dd57cfcc434e393029984359db)
883
+ check_type(argname="argument type", value=type, expected_type=type_hints["type"])
884
+ self._values: typing.Dict[builtins.str, typing.Any] = {}
885
+ if type is not None:
886
+ self._values["type"] = type
887
+
888
+ @builtins.property
889
+ def type(self) -> typing.Optional[builtins.str]:
890
+ '''Compliance type determined by the Config rule.
891
+
892
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-config-configrule-compliance.html#cfn-config-configrule-compliance-type
893
+ '''
894
+ result = self._values.get("type")
895
+ return typing.cast(typing.Optional[builtins.str], result)
896
+
897
+ def __eq__(self, rhs: typing.Any) -> builtins.bool:
898
+ return isinstance(rhs, self.__class__) and rhs._values == self._values
899
+
900
+ def __ne__(self, rhs: typing.Any) -> builtins.bool:
901
+ return not (rhs == self)
902
+
903
+ def __repr__(self) -> str:
904
+ return "ComplianceProperty(%s)" % ", ".join(
905
+ k + "=" + repr(v) for k, v in self._values.items()
906
+ )
907
+
809
908
  @jsii.data_type(
810
909
  jsii_type="aws-cdk-lib.aws_config.CfnConfigRule.CustomPolicyDetailsProperty",
811
910
  jsii_struct_bases=[],
@@ -903,6 +1002,57 @@ class CfnConfigRule(
903
1002
  k + "=" + repr(v) for k, v in self._values.items()
904
1003
  )
905
1004
 
1005
+ @jsii.data_type(
1006
+ jsii_type="aws-cdk-lib.aws_config.CfnConfigRule.EvaluationModeConfigurationProperty",
1007
+ jsii_struct_bases=[],
1008
+ name_mapping={"mode": "mode"},
1009
+ )
1010
+ class EvaluationModeConfigurationProperty:
1011
+ def __init__(self, *, mode: typing.Optional[builtins.str] = None) -> None:
1012
+ '''Evaluation mode for the AWS Config rule.
1013
+
1014
+ :param mode: Mode of evaluation of AWS Config rule.
1015
+
1016
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-config-configrule-evaluationmodeconfiguration.html
1017
+ :exampleMetadata: fixture=_generated
1018
+
1019
+ Example::
1020
+
1021
+ # The code below shows an example of how to instantiate this type.
1022
+ # The values are placeholders you should change.
1023
+ from aws_cdk import aws_config as config
1024
+
1025
+ evaluation_mode_configuration_property = config.CfnConfigRule.EvaluationModeConfigurationProperty(
1026
+ mode="mode"
1027
+ )
1028
+ '''
1029
+ if __debug__:
1030
+ type_hints = typing.get_type_hints(_typecheckingstub__8b0afa0e56a40fa7b9efd435c94956c335f03393a48dc1d31c186bf76c9f256e)
1031
+ check_type(argname="argument mode", value=mode, expected_type=type_hints["mode"])
1032
+ self._values: typing.Dict[builtins.str, typing.Any] = {}
1033
+ if mode is not None:
1034
+ self._values["mode"] = mode
1035
+
1036
+ @builtins.property
1037
+ def mode(self) -> typing.Optional[builtins.str]:
1038
+ '''Mode of evaluation of AWS Config rule.
1039
+
1040
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-config-configrule-evaluationmodeconfiguration.html#cfn-config-configrule-evaluationmodeconfiguration-mode
1041
+ '''
1042
+ result = self._values.get("mode")
1043
+ return typing.cast(typing.Optional[builtins.str], result)
1044
+
1045
+ def __eq__(self, rhs: typing.Any) -> builtins.bool:
1046
+ return isinstance(rhs, self.__class__) and rhs._values == self._values
1047
+
1048
+ def __ne__(self, rhs: typing.Any) -> builtins.bool:
1049
+ return not (rhs == self)
1050
+
1051
+ def __repr__(self) -> str:
1052
+ return "EvaluationModeConfigurationProperty(%s)" % ", ".join(
1053
+ k + "=" + repr(v) for k, v in self._values.items()
1054
+ )
1055
+
906
1056
  @jsii.data_type(
907
1057
  jsii_type="aws-cdk-lib.aws_config.CfnConfigRule.ScopeProperty",
908
1058
  jsii_struct_bases=[],
@@ -1272,8 +1422,10 @@ class CfnConfigRule(
1272
1422
  jsii_struct_bases=[],
1273
1423
  name_mapping={
1274
1424
  "source": "source",
1425
+ "compliance": "compliance",
1275
1426
  "config_rule_name": "configRuleName",
1276
1427
  "description": "description",
1428
+ "evaluation_modes": "evaluationModes",
1277
1429
  "input_parameters": "inputParameters",
1278
1430
  "maximum_execution_frequency": "maximumExecutionFrequency",
1279
1431
  "scope": "scope",
@@ -1284,8 +1436,10 @@ class CfnConfigRuleProps:
1284
1436
  self,
1285
1437
  *,
1286
1438
  source: typing.Union[_IResolvable_da3f097b, typing.Union[CfnConfigRule.SourceProperty, typing.Dict[builtins.str, typing.Any]]],
1439
+ compliance: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnConfigRule.ComplianceProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
1287
1440
  config_rule_name: typing.Optional[builtins.str] = None,
1288
1441
  description: typing.Optional[builtins.str] = None,
1442
+ evaluation_modes: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union[CfnConfigRule.EvaluationModeConfigurationProperty, typing.Dict[builtins.str, typing.Any]]]]]] = None,
1289
1443
  input_parameters: typing.Any = None,
1290
1444
  maximum_execution_frequency: typing.Optional[builtins.str] = None,
1291
1445
  scope: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnConfigRule.ScopeProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
@@ -1293,8 +1447,10 @@ class CfnConfigRuleProps:
1293
1447
  '''Properties for defining a ``CfnConfigRule``.
1294
1448
 
1295
1449
  :param source: Provides the rule owner ( ``AWS`` for managed rules, ``CUSTOM_POLICY`` for Custom Policy rules, and ``CUSTOM_LAMBDA`` for Custom Lambda rules), the rule identifier, and the notifications that cause the function to evaluate your AWS resources.
1450
+ :param compliance: Compliance details of the Config rule.
1296
1451
  :param config_rule_name: A name for the AWS Config rule. If you don't specify a name, AWS CloudFormation generates a unique physical ID and uses that ID for the rule name. For more information, see `Name Type <https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-name.html>`_ .
1297
1452
  :param description: The description that you provide for the AWS Config rule.
1453
+ :param evaluation_modes: List of EvaluationModeConfiguration objects.
1298
1454
  :param input_parameters: A string, in JSON format, that is passed to the AWS Config rule Lambda function.
1299
1455
  :param maximum_execution_frequency: The maximum frequency with which AWS Config runs evaluations for a rule. You can specify a value for ``MaximumExecutionFrequency`` when: - You are using an AWS managed rule that is triggered at a periodic frequency. - Your custom rule is triggered when AWS Config delivers the configuration snapshot. For more information, see `ConfigSnapshotDeliveryProperties <https://docs.aws.amazon.com/config/latest/APIReference/API_ConfigSnapshotDeliveryProperties.html>`_ . .. epigraph:: By default, rules with a periodic trigger are evaluated every 24 hours. To change the frequency, specify a valid value for the ``MaximumExecutionFrequency`` parameter.
1300
1456
  :param scope: Defines which resources can trigger an evaluation for the rule. The scope can include one or more resource types, a combination of one resource type and one resource ID, or a combination of a tag key and value. Specify a scope to constrain the resources that can trigger an evaluation for the rule. If you do not specify a scope, evaluations are triggered when any resource in the recording group changes. .. epigraph:: The scope can be empty.
@@ -1331,8 +1487,14 @@ class CfnConfigRuleProps:
1331
1487
  ),
1332
1488
 
1333
1489
  # the properties below are optional
1490
+ compliance=config.CfnConfigRule.ComplianceProperty(
1491
+ type="type"
1492
+ ),
1334
1493
  config_rule_name="configRuleName",
1335
1494
  description="description",
1495
+ evaluation_modes=[config.CfnConfigRule.EvaluationModeConfigurationProperty(
1496
+ mode="mode"
1497
+ )],
1336
1498
  input_parameters=input_parameters,
1337
1499
  maximum_execution_frequency="maximumExecutionFrequency",
1338
1500
  scope=config.CfnConfigRule.ScopeProperty(
@@ -1346,18 +1508,24 @@ class CfnConfigRuleProps:
1346
1508
  if __debug__:
1347
1509
  type_hints = typing.get_type_hints(_typecheckingstub__116f429a66beeda0419005586893a32aeefeb73824ac9dc6668b4e69b23facc2)
1348
1510
  check_type(argname="argument source", value=source, expected_type=type_hints["source"])
1511
+ check_type(argname="argument compliance", value=compliance, expected_type=type_hints["compliance"])
1349
1512
  check_type(argname="argument config_rule_name", value=config_rule_name, expected_type=type_hints["config_rule_name"])
1350
1513
  check_type(argname="argument description", value=description, expected_type=type_hints["description"])
1514
+ check_type(argname="argument evaluation_modes", value=evaluation_modes, expected_type=type_hints["evaluation_modes"])
1351
1515
  check_type(argname="argument input_parameters", value=input_parameters, expected_type=type_hints["input_parameters"])
1352
1516
  check_type(argname="argument maximum_execution_frequency", value=maximum_execution_frequency, expected_type=type_hints["maximum_execution_frequency"])
1353
1517
  check_type(argname="argument scope", value=scope, expected_type=type_hints["scope"])
1354
1518
  self._values: typing.Dict[builtins.str, typing.Any] = {
1355
1519
  "source": source,
1356
1520
  }
1521
+ if compliance is not None:
1522
+ self._values["compliance"] = compliance
1357
1523
  if config_rule_name is not None:
1358
1524
  self._values["config_rule_name"] = config_rule_name
1359
1525
  if description is not None:
1360
1526
  self._values["description"] = description
1527
+ if evaluation_modes is not None:
1528
+ self._values["evaluation_modes"] = evaluation_modes
1361
1529
  if input_parameters is not None:
1362
1530
  self._values["input_parameters"] = input_parameters
1363
1531
  if maximum_execution_frequency is not None:
@@ -1377,6 +1545,17 @@ class CfnConfigRuleProps:
1377
1545
  assert result is not None, "Required property 'source' is missing"
1378
1546
  return typing.cast(typing.Union[_IResolvable_da3f097b, CfnConfigRule.SourceProperty], result)
1379
1547
 
1548
+ @builtins.property
1549
+ def compliance(
1550
+ self,
1551
+ ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, CfnConfigRule.ComplianceProperty]]:
1552
+ '''Compliance details of the Config rule.
1553
+
1554
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-config-configrule.html#cfn-config-configrule-compliance
1555
+ '''
1556
+ result = self._values.get("compliance")
1557
+ return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, CfnConfigRule.ComplianceProperty]], result)
1558
+
1380
1559
  @builtins.property
1381
1560
  def config_rule_name(self) -> typing.Optional[builtins.str]:
1382
1561
  '''A name for the AWS Config rule.
@@ -1397,6 +1576,17 @@ class CfnConfigRuleProps:
1397
1576
  result = self._values.get("description")
1398
1577
  return typing.cast(typing.Optional[builtins.str], result)
1399
1578
 
1579
+ @builtins.property
1580
+ def evaluation_modes(
1581
+ self,
1582
+ ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, CfnConfigRule.EvaluationModeConfigurationProperty]]]]:
1583
+ '''List of EvaluationModeConfiguration objects.
1584
+
1585
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-config-configrule.html#cfn-config-configrule-evaluationmodes
1586
+ '''
1587
+ result = self._values.get("evaluation_modes")
1588
+ return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, CfnConfigRule.EvaluationModeConfigurationProperty]]]], result)
1589
+
1400
1590
  @builtins.property
1401
1591
  def input_parameters(self) -> typing.Any:
1402
1592
  '''A string, in JSON format, that is passed to the AWS Config rule Lambda function.
@@ -12492,8 +12682,10 @@ def _typecheckingstub__deecc74e0a0f7e54fde16a159ece5d8f96f56f6b8aca025003adcc1d9
12492
12682
  id: builtins.str,
12493
12683
  *,
12494
12684
  source: typing.Union[_IResolvable_da3f097b, typing.Union[CfnConfigRule.SourceProperty, typing.Dict[builtins.str, typing.Any]]],
12685
+ compliance: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnConfigRule.ComplianceProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
12495
12686
  config_rule_name: typing.Optional[builtins.str] = None,
12496
12687
  description: typing.Optional[builtins.str] = None,
12688
+ evaluation_modes: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union[CfnConfigRule.EvaluationModeConfigurationProperty, typing.Dict[builtins.str, typing.Any]]]]]] = None,
12497
12689
  input_parameters: typing.Any = None,
12498
12690
  maximum_execution_frequency: typing.Optional[builtins.str] = None,
12499
12691
  scope: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnConfigRule.ScopeProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
@@ -12519,6 +12711,12 @@ def _typecheckingstub__a30b5901e0068cf18be7f15f8558e224eb62559802cd26646f648c0db
12519
12711
  """Type checking stubs"""
12520
12712
  pass
12521
12713
 
12714
+ def _typecheckingstub__743f9ee6243708ed2e606e31e618af32604f35d387093cdc8d8634e961b27324(
12715
+ value: typing.Optional[typing.Union[_IResolvable_da3f097b, CfnConfigRule.ComplianceProperty]],
12716
+ ) -> None:
12717
+ """Type checking stubs"""
12718
+ pass
12719
+
12522
12720
  def _typecheckingstub__4e021e024fd440e8ec5c9b4d24e2029d1629640189c221a5866e301e89aa53b6(
12523
12721
  value: typing.Optional[builtins.str],
12524
12722
  ) -> None:
@@ -12531,6 +12729,12 @@ def _typecheckingstub__446b3dad0fdf8c8a9449d165e2fed6fa45c11495397d8cfdaf24ac136
12531
12729
  """Type checking stubs"""
12532
12730
  pass
12533
12731
 
12732
+ def _typecheckingstub__3563e34d09c0fb5a803e72a8cee06c0ed65b4c596390bf75303600bfd5df9f44(
12733
+ value: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, CfnConfigRule.EvaluationModeConfigurationProperty]]]],
12734
+ ) -> None:
12735
+ """Type checking stubs"""
12736
+ pass
12737
+
12534
12738
  def _typecheckingstub__7d61437c3cdab85e8dc7a25b710d93b6aaaa2a833466cfb80eb3d13340c62da3(
12535
12739
  value: typing.Any,
12536
12740
  ) -> None:
@@ -12549,6 +12753,13 @@ def _typecheckingstub__c70fa274e56c5def397aac6cec3b30f31c7ee9cc7367d5b6bf0c78e63
12549
12753
  """Type checking stubs"""
12550
12754
  pass
12551
12755
 
12756
+ def _typecheckingstub__4d66dbd2cc5d052bcc47c92d8ce8dd64bcb0b5dd57cfcc434e393029984359db(
12757
+ *,
12758
+ type: typing.Optional[builtins.str] = None,
12759
+ ) -> None:
12760
+ """Type checking stubs"""
12761
+ pass
12762
+
12552
12763
  def _typecheckingstub__f7656d43bed3c419437bf5b25bc9711a8cf65f9f6b46c7d52710b15c35aa5af9(
12553
12764
  *,
12554
12765
  enable_debug_log_delivery: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]] = None,
@@ -12558,6 +12769,13 @@ def _typecheckingstub__f7656d43bed3c419437bf5b25bc9711a8cf65f9f6b46c7d52710b15c3
12558
12769
  """Type checking stubs"""
12559
12770
  pass
12560
12771
 
12772
+ def _typecheckingstub__8b0afa0e56a40fa7b9efd435c94956c335f03393a48dc1d31c186bf76c9f256e(
12773
+ *,
12774
+ mode: typing.Optional[builtins.str] = None,
12775
+ ) -> None:
12776
+ """Type checking stubs"""
12777
+ pass
12778
+
12561
12779
  def _typecheckingstub__b1dad2d9487ce142bd6c079d94efb61400194537a7d97b4158bc27439f9ae457(
12562
12780
  *,
12563
12781
  compliance_resource_id: typing.Optional[builtins.str] = None,
@@ -12590,8 +12808,10 @@ def _typecheckingstub__c8f7d3fbc3eba470d52b27b24c17f4eb9fae6ee74da9bf511cdb8b4ce
12590
12808
  def _typecheckingstub__116f429a66beeda0419005586893a32aeefeb73824ac9dc6668b4e69b23facc2(
12591
12809
  *,
12592
12810
  source: typing.Union[_IResolvable_da3f097b, typing.Union[CfnConfigRule.SourceProperty, typing.Dict[builtins.str, typing.Any]]],
12811
+ compliance: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnConfigRule.ComplianceProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
12593
12812
  config_rule_name: typing.Optional[builtins.str] = None,
12594
12813
  description: typing.Optional[builtins.str] = None,
12814
+ evaluation_modes: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union[CfnConfigRule.EvaluationModeConfigurationProperty, typing.Dict[builtins.str, typing.Any]]]]]] = None,
12595
12815
  input_parameters: typing.Any = None,
12596
12816
  maximum_execution_frequency: typing.Optional[builtins.str] = None,
12597
12817
  scope: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnConfigRule.ScopeProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
@@ -3752,10 +3752,10 @@ class CfnLocationNFS(
3752
3752
  '''
3753
3753
  :param scope: Scope in which this resource is defined.
3754
3754
  :param id: Construct identifier for this resource (unique in its scope).
3755
- :param on_prem_config: Specifies the Amazon Resource Names (ARNs) of agents that DataSync uses to connect to your NFS file server. If you are copying data to or from your AWS Snowcone device, see `NFS Server on AWS Snowcone <https://docs.aws.amazon.com/datasync/latest/userguide/create-nfs-location.html#nfs-on-snowcone>`_ for more information.
3756
- :param mount_options: Specifies the mount options that DataSync can use to mount your NFS share.
3757
- :param server_hostname: Specifies the IP address or domain name of your NFS file server. An agent that is installed on-premises uses this hostname to mount the NFS server in a network. If you are copying data to or from your AWS Snowcone device, see `NFS Server on AWS Snowcone <https://docs.aws.amazon.com/datasync/latest/userguide/create-nfs-location.html#nfs-on-snowcone>`_ for more information. .. epigraph:: You must specify be an IP version 4 address or Domain Name System (DNS)-compliant name.
3758
- :param subdirectory: Specifies the subdirectory in the NFS file server that DataSync transfers to or from. The NFS path should be a path that's exported by the NFS server, or a subdirectory of that path. The path should be such that it can be mounted by other NFS clients in your network. To see all the paths exported by your NFS server, run " ``showmount -e nfs-server-name`` " from an NFS client that has access to your server. You can specify any directory that appears in the results, and any subdirectory of that directory. Ensure that the NFS export is accessible without Kerberos authentication. To transfer all the data in the folder you specified, DataSync needs to have permissions to read all the data. To ensure this, either configure the NFS export with ``no_root_squash,`` or ensure that the permissions for all of the files that you want DataSync allow read access for all users. Doing either enables the agent to read the files. For the agent to access directories, you must additionally enable all execute access. If you are copying data to or from your AWS Snowcone device, see `NFS Server on AWS Snowcone <https://docs.aws.amazon.com/datasync/latest/userguide/create-nfs-location.html#nfs-on-snowcone>`_ for more information.
3755
+ :param on_prem_config: Specifies the Amazon Resource Name (ARN) of the DataSync agent that want to connect to your NFS file server. You can specify more than one agent. For more information, see `Using multiple agents for transfers <https://docs.aws.amazon.com/datasync/latest/userguide/multiple-agents.html>`_ .
3756
+ :param mount_options: Specifies the options that DataSync can use to mount your NFS file server.
3757
+ :param server_hostname: Specifies the Domain Name System (DNS) name or IP version 4 address of the NFS file server that your DataSync agent connects to.
3758
+ :param subdirectory: Specifies the export path in your NFS file server that you want DataSync to mount. This path (or a subdirectory of the path) is where DataSync transfers data to or from. For information on configuring an export for DataSync, see `Accessing NFS file servers <https://docs.aws.amazon.com/datasync/latest/userguide/create-nfs-location.html#accessing-nfs>`_ .
3759
3759
  :param tags: Specifies labels that help you categorize, filter, and search for your AWS resources. We recommend creating at least a name tag for your location.
3760
3760
  '''
3761
3761
  if __debug__:
@@ -3836,7 +3836,7 @@ class CfnLocationNFS(
3836
3836
  def on_prem_config(
3837
3837
  self,
3838
3838
  ) -> typing.Union[_IResolvable_da3f097b, "CfnLocationNFS.OnPremConfigProperty"]:
3839
- '''Specifies the Amazon Resource Names (ARNs) of agents that DataSync uses to connect to your NFS file server.'''
3839
+ '''Specifies the Amazon Resource Name (ARN) of the DataSync agent that want to connect to your NFS file server.'''
3840
3840
  return typing.cast(typing.Union[_IResolvable_da3f097b, "CfnLocationNFS.OnPremConfigProperty"], jsii.get(self, "onPremConfig"))
3841
3841
 
3842
3842
  @on_prem_config.setter
@@ -3854,7 +3854,7 @@ class CfnLocationNFS(
3854
3854
  def mount_options(
3855
3855
  self,
3856
3856
  ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnLocationNFS.MountOptionsProperty"]]:
3857
- '''Specifies the mount options that DataSync can use to mount your NFS share.'''
3857
+ '''Specifies the options that DataSync can use to mount your NFS file server.'''
3858
3858
  return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnLocationNFS.MountOptionsProperty"]], jsii.get(self, "mountOptions"))
3859
3859
 
3860
3860
  @mount_options.setter
@@ -3870,7 +3870,7 @@ class CfnLocationNFS(
3870
3870
  @builtins.property
3871
3871
  @jsii.member(jsii_name="serverHostname")
3872
3872
  def server_hostname(self) -> typing.Optional[builtins.str]:
3873
- '''Specifies the IP address or domain name of your NFS file server.'''
3873
+ '''Specifies the Domain Name System (DNS) name or IP version 4 address of the NFS file server that your DataSync agent connects to.'''
3874
3874
  return typing.cast(typing.Optional[builtins.str], jsii.get(self, "serverHostname"))
3875
3875
 
3876
3876
  @server_hostname.setter
@@ -3883,7 +3883,7 @@ class CfnLocationNFS(
3883
3883
  @builtins.property
3884
3884
  @jsii.member(jsii_name="subdirectory")
3885
3885
  def subdirectory(self) -> typing.Optional[builtins.str]:
3886
- '''Specifies the subdirectory in the NFS file server that DataSync transfers to or from.'''
3886
+ '''Specifies the export path in your NFS file server that you want DataSync to mount.'''
3887
3887
  return typing.cast(typing.Optional[builtins.str], jsii.get(self, "subdirectory"))
3888
3888
 
3889
3889
  @subdirectory.setter
@@ -3913,7 +3913,7 @@ class CfnLocationNFS(
3913
3913
  )
3914
3914
  class MountOptionsProperty:
3915
3915
  def __init__(self, *, version: typing.Optional[builtins.str] = None) -> None:
3916
- '''Specifies the mount options that DataSync can use to mount your NFS share.
3916
+ '''Specifies the options that DataSync can use to mount your NFS file server.
3917
3917
 
3918
3918
  :param version: Specifies the NFS version that you want DataSync to use when mounting your NFS share. If the server refuses to use the version specified, the task fails. You can specify the following options: - ``AUTOMATIC`` (default): DataSync chooses NFS version 4.1. - ``NFS3`` : Stateless protocol version that allows for asynchronous writes on the server. - ``NFSv4_0`` : Stateful, firewall-friendly protocol version that supports delegations and pseudo file systems. - ``NFSv4_1`` : Stateful protocol version that supports sessions, directory delegations, and parallel data processing. NFS version 4.1 also includes all features available in version 4.0. .. epigraph:: DataSync currently only supports NFS version 3 with Amazon FSx for NetApp ONTAP locations.
3919
3919
 
@@ -3977,9 +3977,9 @@ class CfnLocationNFS(
3977
3977
  )
3978
3978
  class OnPremConfigProperty:
3979
3979
  def __init__(self, *, agent_arns: typing.Sequence[builtins.str]) -> None:
3980
- '''A list of Amazon Resource Names (ARNs) of agents to use for a Network File System (NFS) location.
3980
+ '''The AWS DataSync agents that are connecting to a Network File System (NFS) location.
3981
3981
 
3982
- :param agent_arns: ARNs of the agents to use for an NFS location.
3982
+ :param agent_arns: The Amazon Resource Names (ARNs) of the agents connecting to a transfer location.
3983
3983
 
3984
3984
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datasync-locationnfs-onpremconfig.html
3985
3985
  :exampleMetadata: fixture=_generated
@@ -4003,7 +4003,7 @@ class CfnLocationNFS(
4003
4003
 
4004
4004
  @builtins.property
4005
4005
  def agent_arns(self) -> typing.List[builtins.str]:
4006
- '''ARNs of the agents to use for an NFS location.
4006
+ '''The Amazon Resource Names (ARNs) of the agents connecting to a transfer location.
4007
4007
 
4008
4008
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-datasync-locationnfs-onpremconfig.html#cfn-datasync-locationnfs-onpremconfig-agentarns
4009
4009
  '''
@@ -4046,10 +4046,10 @@ class CfnLocationNFSProps:
4046
4046
  ) -> None:
4047
4047
  '''Properties for defining a ``CfnLocationNFS``.
4048
4048
 
4049
- :param on_prem_config: Specifies the Amazon Resource Names (ARNs) of agents that DataSync uses to connect to your NFS file server. If you are copying data to or from your AWS Snowcone device, see `NFS Server on AWS Snowcone <https://docs.aws.amazon.com/datasync/latest/userguide/create-nfs-location.html#nfs-on-snowcone>`_ for more information.
4050
- :param mount_options: Specifies the mount options that DataSync can use to mount your NFS share.
4051
- :param server_hostname: Specifies the IP address or domain name of your NFS file server. An agent that is installed on-premises uses this hostname to mount the NFS server in a network. If you are copying data to or from your AWS Snowcone device, see `NFS Server on AWS Snowcone <https://docs.aws.amazon.com/datasync/latest/userguide/create-nfs-location.html#nfs-on-snowcone>`_ for more information. .. epigraph:: You must specify be an IP version 4 address or Domain Name System (DNS)-compliant name.
4052
- :param subdirectory: Specifies the subdirectory in the NFS file server that DataSync transfers to or from. The NFS path should be a path that's exported by the NFS server, or a subdirectory of that path. The path should be such that it can be mounted by other NFS clients in your network. To see all the paths exported by your NFS server, run " ``showmount -e nfs-server-name`` " from an NFS client that has access to your server. You can specify any directory that appears in the results, and any subdirectory of that directory. Ensure that the NFS export is accessible without Kerberos authentication. To transfer all the data in the folder you specified, DataSync needs to have permissions to read all the data. To ensure this, either configure the NFS export with ``no_root_squash,`` or ensure that the permissions for all of the files that you want DataSync allow read access for all users. Doing either enables the agent to read the files. For the agent to access directories, you must additionally enable all execute access. If you are copying data to or from your AWS Snowcone device, see `NFS Server on AWS Snowcone <https://docs.aws.amazon.com/datasync/latest/userguide/create-nfs-location.html#nfs-on-snowcone>`_ for more information.
4049
+ :param on_prem_config: Specifies the Amazon Resource Name (ARN) of the DataSync agent that want to connect to your NFS file server. You can specify more than one agent. For more information, see `Using multiple agents for transfers <https://docs.aws.amazon.com/datasync/latest/userguide/multiple-agents.html>`_ .
4050
+ :param mount_options: Specifies the options that DataSync can use to mount your NFS file server.
4051
+ :param server_hostname: Specifies the Domain Name System (DNS) name or IP version 4 address of the NFS file server that your DataSync agent connects to.
4052
+ :param subdirectory: Specifies the export path in your NFS file server that you want DataSync to mount. This path (or a subdirectory of the path) is where DataSync transfers data to or from. For information on configuring an export for DataSync, see `Accessing NFS file servers <https://docs.aws.amazon.com/datasync/latest/userguide/create-nfs-location.html#accessing-nfs>`_ .
4053
4053
  :param tags: Specifies labels that help you categorize, filter, and search for your AWS resources. We recommend creating at least a name tag for your location.
4054
4054
 
4055
4055
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datasync-locationnfs.html
@@ -4101,9 +4101,9 @@ class CfnLocationNFSProps:
4101
4101
  def on_prem_config(
4102
4102
  self,
4103
4103
  ) -> typing.Union[_IResolvable_da3f097b, CfnLocationNFS.OnPremConfigProperty]:
4104
- '''Specifies the Amazon Resource Names (ARNs) of agents that DataSync uses to connect to your NFS file server.
4104
+ '''Specifies the Amazon Resource Name (ARN) of the DataSync agent that want to connect to your NFS file server.
4105
4105
 
4106
- If you are copying data to or from your AWS Snowcone device, see `NFS Server on AWS Snowcone <https://docs.aws.amazon.com/datasync/latest/userguide/create-nfs-location.html#nfs-on-snowcone>`_ for more information.
4106
+ You can specify more than one agent. For more information, see `Using multiple agents for transfers <https://docs.aws.amazon.com/datasync/latest/userguide/multiple-agents.html>`_ .
4107
4107
 
4108
4108
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datasync-locationnfs.html#cfn-datasync-locationnfs-onpremconfig
4109
4109
  '''
@@ -4115,7 +4115,7 @@ class CfnLocationNFSProps:
4115
4115
  def mount_options(
4116
4116
  self,
4117
4117
  ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, CfnLocationNFS.MountOptionsProperty]]:
4118
- '''Specifies the mount options that DataSync can use to mount your NFS share.
4118
+ '''Specifies the options that DataSync can use to mount your NFS file server.
4119
4119
 
4120
4120
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datasync-locationnfs.html#cfn-datasync-locationnfs-mountoptions
4121
4121
  '''
@@ -4124,14 +4124,7 @@ class CfnLocationNFSProps:
4124
4124
 
4125
4125
  @builtins.property
4126
4126
  def server_hostname(self) -> typing.Optional[builtins.str]:
4127
- '''Specifies the IP address or domain name of your NFS file server.
4128
-
4129
- An agent that is installed on-premises uses this hostname to mount the NFS server in a network.
4130
-
4131
- If you are copying data to or from your AWS Snowcone device, see `NFS Server on AWS Snowcone <https://docs.aws.amazon.com/datasync/latest/userguide/create-nfs-location.html#nfs-on-snowcone>`_ for more information.
4132
- .. epigraph::
4133
-
4134
- You must specify be an IP version 4 address or Domain Name System (DNS)-compliant name.
4127
+ '''Specifies the Domain Name System (DNS) name or IP version 4 address of the NFS file server that your DataSync agent connects to.
4135
4128
 
4136
4129
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datasync-locationnfs.html#cfn-datasync-locationnfs-serverhostname
4137
4130
  '''
@@ -4140,15 +4133,9 @@ class CfnLocationNFSProps:
4140
4133
 
4141
4134
  @builtins.property
4142
4135
  def subdirectory(self) -> typing.Optional[builtins.str]:
4143
- '''Specifies the subdirectory in the NFS file server that DataSync transfers to or from.
4144
-
4145
- The NFS path should be a path that's exported by the NFS server, or a subdirectory of that path. The path should be such that it can be mounted by other NFS clients in your network.
4146
-
4147
- To see all the paths exported by your NFS server, run " ``showmount -e nfs-server-name`` " from an NFS client that has access to your server. You can specify any directory that appears in the results, and any subdirectory of that directory. Ensure that the NFS export is accessible without Kerberos authentication.
4148
-
4149
- To transfer all the data in the folder you specified, DataSync needs to have permissions to read all the data. To ensure this, either configure the NFS export with ``no_root_squash,`` or ensure that the permissions for all of the files that you want DataSync allow read access for all users. Doing either enables the agent to read the files. For the agent to access directories, you must additionally enable all execute access.
4136
+ '''Specifies the export path in your NFS file server that you want DataSync to mount.
4150
4137
 
4151
- If you are copying data to or from your AWS Snowcone device, see `NFS Server on AWS Snowcone <https://docs.aws.amazon.com/datasync/latest/userguide/create-nfs-location.html#nfs-on-snowcone>`_ for more information.
4138
+ This path (or a subdirectory of the path) is where DataSync transfers data to or from. For information on configuring an export for DataSync, see `Accessing NFS file servers <https://docs.aws.amazon.com/datasync/latest/userguide/create-nfs-location.html#accessing-nfs>`_ .
4152
4139
 
4153
4140
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-datasync-locationnfs.html#cfn-datasync-locationnfs-subdirectory
4154
4141
  '''