aws-cdk-lib 2.195.0__py3-none-any.whl → 2.224.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 (572) hide show
  1. aws_cdk/__init__.py +1806 -417
  2. aws_cdk/_jsii/__init__.py +1 -1
  3. aws_cdk/_jsii/{aws-cdk-lib@2.195.0.jsii.tgz → aws-cdk-lib@2.224.0.jsii.tgz} +0 -0
  4. aws_cdk/alexa_ask/__init__.py +12 -2
  5. aws_cdk/aws_accessanalyzer/__init__.py +323 -6
  6. aws_cdk/aws_acmpca/__init__.py +53 -10
  7. aws_cdk/aws_aiops/__init__.py +1019 -0
  8. aws_cdk/aws_amazonmq/__init__.py +357 -313
  9. aws_cdk/aws_amplify/__init__.py +173 -17
  10. aws_cdk/aws_amplifyuibuilder/__init__.py +35 -6
  11. aws_cdk/aws_apigateway/__init__.py +1245 -215
  12. aws_cdk/aws_apigatewayv2/__init__.py +3890 -476
  13. aws_cdk/aws_apigatewayv2_integrations/__init__.py +94 -16
  14. aws_cdk/aws_appconfig/__init__.py +618 -91
  15. aws_cdk/aws_appflow/__init__.py +151 -6
  16. aws_cdk/aws_appintegrations/__init__.py +546 -6
  17. aws_cdk/aws_applicationautoscaling/__init__.py +75 -10
  18. aws_cdk/aws_applicationinsights/__init__.py +13 -2
  19. aws_cdk/aws_applicationsignals/__init__.py +374 -6
  20. aws_cdk/aws_appmesh/__init__.py +136 -26
  21. aws_cdk/aws_apprunner/__init__.py +66 -18
  22. aws_cdk/aws_appstream/__init__.py +309 -55
  23. aws_cdk/aws_appsync/__init__.py +350 -94
  24. aws_cdk/aws_apptest/__init__.py +71 -2
  25. aws_cdk/aws_aps/__init__.py +2188 -94
  26. aws_cdk/aws_arcregionswitch/__init__.py +5095 -0
  27. aws_cdk/aws_arczonalshift/__init__.py +39 -12
  28. aws_cdk/aws_athena/__init__.py +365 -29
  29. aws_cdk/aws_auditmanager/__init__.py +71 -2
  30. aws_cdk/aws_autoscaling/__init__.py +165 -60
  31. aws_cdk/aws_autoscaling_common/__init__.py +3 -0
  32. aws_cdk/aws_autoscalingplans/__init__.py +13 -2
  33. aws_cdk/aws_b2bi/__init__.py +1819 -99
  34. aws_cdk/aws_backup/__init__.py +370 -42
  35. aws_cdk/aws_backupgateway/__init__.py +13 -2
  36. aws_cdk/aws_batch/__init__.py +1462 -163
  37. aws_cdk/aws_bcmdataexports/__init__.py +21 -2
  38. aws_cdk/aws_bedrock/__init__.py +7867 -727
  39. aws_cdk/aws_bedrockagentcore/__init__.py +10425 -0
  40. aws_cdk/aws_billingconductor/__init__.py +197 -11
  41. aws_cdk/aws_budgets/__init__.py +611 -4
  42. aws_cdk/aws_cassandra/__init__.py +247 -6
  43. aws_cdk/aws_ce/__init__.py +35 -6
  44. aws_cdk/aws_certificatemanager/__init__.py +258 -32
  45. aws_cdk/aws_chatbot/__init__.py +76 -6
  46. aws_cdk/aws_cleanrooms/__init__.py +709 -206
  47. aws_cdk/aws_cleanroomsml/__init__.py +13 -2
  48. aws_cdk/aws_cloud9/__init__.py +13 -2
  49. aws_cdk/aws_cloudformation/__init__.py +362 -189
  50. aws_cdk/aws_cloudfront/__init__.py +2188 -674
  51. aws_cdk/aws_cloudfront/experimental/__init__.py +114 -16
  52. aws_cdk/aws_cloudfront_origins/__init__.py +615 -74
  53. aws_cdk/aws_cloudtrail/__init__.py +311 -21
  54. aws_cdk/aws_cloudwatch/__init__.py +3093 -1038
  55. aws_cdk/aws_cloudwatch_actions/__init__.py +75 -1
  56. aws_cdk/aws_codeartifact/__init__.py +35 -6
  57. aws_cdk/aws_codebuild/__init__.py +1303 -135
  58. aws_cdk/aws_codecommit/__init__.py +29 -9
  59. aws_cdk/aws_codeconnections/__init__.py +13 -2
  60. aws_cdk/aws_codedeploy/__init__.py +130 -6
  61. aws_cdk/aws_codeguruprofiler/__init__.py +80 -2
  62. aws_cdk/aws_codegurureviewer/__init__.py +13 -2
  63. aws_cdk/aws_codepipeline/__init__.py +177 -71
  64. aws_cdk/aws_codepipeline_actions/__init__.py +753 -4
  65. aws_cdk/aws_codestar/__init__.py +13 -2
  66. aws_cdk/aws_codestarconnections/__init__.py +35 -6
  67. aws_cdk/aws_codestarnotifications/__init__.py +22 -2
  68. aws_cdk/aws_cognito/__init__.py +905 -92
  69. aws_cdk/aws_cognito_identitypool/__init__.py +23 -12
  70. aws_cdk/aws_comprehend/__init__.py +24 -4
  71. aws_cdk/aws_config/__init__.py +227 -30
  72. aws_cdk/aws_connect/__init__.py +2736 -191
  73. aws_cdk/aws_connectcampaigns/__init__.py +13 -2
  74. aws_cdk/aws_connectcampaignsv2/__init__.py +268 -6
  75. aws_cdk/aws_controltower/__init__.py +35 -6
  76. aws_cdk/aws_cur/__init__.py +100 -4
  77. aws_cdk/aws_customerprofiles/__init__.py +617 -27
  78. aws_cdk/aws_databrew/__init__.py +68 -12
  79. aws_cdk/aws_datapipeline/__init__.py +42 -2
  80. aws_cdk/aws_datasync/__init__.py +1514 -977
  81. aws_cdk/aws_datazone/__init__.py +7426 -1763
  82. aws_cdk/aws_dax/__init__.py +83 -6
  83. aws_cdk/aws_deadline/__init__.py +511 -36
  84. aws_cdk/aws_detective/__init__.py +35 -6
  85. aws_cdk/aws_devicefarm/__init__.py +68 -12
  86. aws_cdk/aws_devopsguru/__init__.py +37 -6
  87. aws_cdk/aws_directoryservice/__init__.py +53 -4
  88. aws_cdk/aws_dlm/__init__.py +13 -2
  89. aws_cdk/aws_dms/__init__.py +184 -27
  90. aws_cdk/aws_docdb/__init__.py +350 -49
  91. aws_cdk/aws_docdbelastic/__init__.py +13 -2
  92. aws_cdk/aws_dsql/__init__.py +386 -16
  93. aws_cdk/aws_dynamodb/__init__.py +1479 -170
  94. aws_cdk/aws_ec2/__init__.py +10465 -1335
  95. aws_cdk/aws_ecr/__init__.py +637 -43
  96. aws_cdk/aws_ecr_assets/__init__.py +10 -0
  97. aws_cdk/aws_ecs/__init__.py +6629 -490
  98. aws_cdk/aws_ecs_patterns/__init__.py +124 -12
  99. aws_cdk/aws_efs/__init__.py +276 -24
  100. aws_cdk/aws_eks/__init__.py +1132 -227
  101. aws_cdk/aws_elasticache/__init__.py +378 -25
  102. aws_cdk/aws_elasticbeanstalk/__init__.py +75 -8
  103. aws_cdk/aws_elasticloadbalancing/__init__.py +22 -2
  104. aws_cdk/aws_elasticloadbalancingv2/__init__.py +1796 -123
  105. aws_cdk/aws_elasticsearch/__init__.py +291 -9
  106. aws_cdk/aws_emr/__init__.py +219 -18
  107. aws_cdk/aws_emrcontainers/__init__.py +71 -2
  108. aws_cdk/aws_emrserverless/__init__.py +188 -3
  109. aws_cdk/aws_entityresolution/__init__.py +585 -58
  110. aws_cdk/aws_events/__init__.py +1007 -126
  111. aws_cdk/aws_events_targets/__init__.py +398 -65
  112. aws_cdk/aws_eventschemas/__init__.py +46 -8
  113. aws_cdk/aws_evidently/__init__.py +57 -10
  114. aws_cdk/aws_evs/__init__.py +2244 -0
  115. aws_cdk/aws_finspace/__init__.py +71 -2
  116. aws_cdk/aws_fis/__init__.py +26 -4
  117. aws_cdk/aws_fms/__init__.py +35 -6
  118. aws_cdk/aws_forecast/__init__.py +24 -4
  119. aws_cdk/aws_frauddetector/__init__.py +79 -14
  120. aws_cdk/aws_fsx/__init__.py +1349 -127
  121. aws_cdk/aws_gamelift/__init__.py +755 -94
  122. aws_cdk/aws_gameliftstreams/__init__.py +44 -22
  123. aws_cdk/aws_globalaccelerator/__init__.py +73 -14
  124. aws_cdk/aws_glue/__init__.py +1455 -378
  125. aws_cdk/aws_grafana/__init__.py +13 -2
  126. aws_cdk/aws_greengrass/__init__.py +654 -32
  127. aws_cdk/aws_greengrassv2/__init__.py +53 -4
  128. aws_cdk/aws_groundstation/__init__.py +122 -6
  129. aws_cdk/aws_guardduty/__init__.py +1613 -123
  130. aws_cdk/aws_healthimaging/__init__.py +71 -2
  131. aws_cdk/aws_healthlake/__init__.py +42 -2
  132. aws_cdk/aws_iam/__init__.py +921 -141
  133. aws_cdk/aws_identitystore/__init__.py +24 -4
  134. aws_cdk/aws_imagebuilder/__init__.py +1454 -199
  135. aws_cdk/aws_inspector/__init__.py +44 -6
  136. aws_cdk/aws_inspectorv2/__init__.py +2285 -243
  137. aws_cdk/aws_internetmonitor/__init__.py +71 -2
  138. aws_cdk/aws_invoicing/__init__.py +13 -2
  139. aws_cdk/aws_iot/__init__.py +1760 -64
  140. aws_cdk/aws_iotanalytics/__init__.py +162 -8
  141. aws_cdk/aws_iotcoredeviceadvisor/__init__.py +106 -40
  142. aws_cdk/aws_iotevents/__init__.py +122 -6
  143. aws_cdk/aws_iotfleethub/__init__.py +71 -2
  144. aws_cdk/aws_iotfleetwise/__init__.py +195 -14
  145. aws_cdk/aws_iotsitewise/__init__.py +1837 -89
  146. aws_cdk/aws_iotthingsgraph/__init__.py +13 -2
  147. aws_cdk/aws_iottwinmaker/__init__.py +115 -10
  148. aws_cdk/aws_iotwireless/__init__.py +649 -22
  149. aws_cdk/aws_ivs/__init__.py +561 -57
  150. aws_cdk/aws_ivschat/__init__.py +24 -4
  151. aws_cdk/aws_kafkaconnect/__init__.py +35 -6
  152. aws_cdk/aws_kendra/__init__.py +120 -28
  153. aws_cdk/aws_kendraranking/__init__.py +13 -2
  154. aws_cdk/aws_kinesis/__init__.py +641 -23
  155. aws_cdk/aws_kinesisanalytics/__init__.py +467 -96
  156. aws_cdk/aws_kinesisanalyticsv2/__init__.py +207 -19
  157. aws_cdk/aws_kinesisfirehose/__init__.py +3087 -295
  158. aws_cdk/aws_kinesisvideo/__init__.py +24 -4
  159. aws_cdk/aws_kms/__init__.py +204 -45
  160. aws_cdk/aws_lakeformation/__init__.py +80 -15
  161. aws_cdk/aws_lambda/__init__.py +2236 -297
  162. aws_cdk/aws_lambda_event_sources/__init__.py +638 -1
  163. aws_cdk/aws_lambda_nodejs/__init__.py +63 -24
  164. aws_cdk/aws_launchwizard/__init__.py +13 -2
  165. aws_cdk/aws_lex/__init__.py +2162 -212
  166. aws_cdk/aws_licensemanager/__init__.py +24 -4
  167. aws_cdk/aws_lightsail/__init__.py +2958 -1322
  168. aws_cdk/aws_location/__init__.py +618 -14
  169. aws_cdk/aws_logs/__init__.py +6014 -923
  170. aws_cdk/aws_lookoutequipment/__init__.py +13 -2
  171. aws_cdk/aws_lookoutmetrics/__init__.py +38 -6
  172. aws_cdk/aws_lookoutvision/__init__.py +71 -2
  173. aws_cdk/aws_m2/__init__.py +94 -19
  174. aws_cdk/aws_macie/__init__.py +49 -11
  175. aws_cdk/aws_managedblockchain/__init__.py +180 -6
  176. aws_cdk/aws_mediaconnect/__init__.py +101 -18
  177. aws_cdk/aws_mediaconvert/__init__.py +35 -6
  178. aws_cdk/aws_medialive/__init__.py +1938 -532
  179. aws_cdk/aws_mediapackage/__init__.py +59 -12
  180. aws_cdk/aws_mediapackagev2/__init__.py +1616 -233
  181. aws_cdk/aws_mediastore/__init__.py +13 -2
  182. aws_cdk/aws_mediatailor/__init__.py +583 -12
  183. aws_cdk/aws_memorydb/__init__.py +271 -12
  184. aws_cdk/aws_mpa/__init__.py +1495 -0
  185. aws_cdk/aws_msk/__init__.py +108 -22
  186. aws_cdk/aws_mwaa/__init__.py +121 -9
  187. aws_cdk/aws_neptune/__init__.py +290 -78
  188. aws_cdk/aws_neptunegraph/__init__.py +24 -4
  189. aws_cdk/aws_networkfirewall/__init__.py +1184 -164
  190. aws_cdk/aws_networkmanager/__init__.py +349 -33
  191. aws_cdk/aws_nimblestudio/__init__.py +283 -408
  192. aws_cdk/aws_notifications/__init__.py +317 -12
  193. aws_cdk/aws_notificationscontacts/__init__.py +13 -2
  194. aws_cdk/aws_oam/__init__.py +24 -4
  195. aws_cdk/aws_observabilityadmin/__init__.py +2561 -0
  196. aws_cdk/aws_odb/__init__.py +5872 -0
  197. aws_cdk/aws_omics/__init__.py +2967 -162
  198. aws_cdk/aws_opensearchserverless/__init__.py +312 -37
  199. aws_cdk/aws_opensearchservice/__init__.py +501 -19
  200. aws_cdk/aws_opsworks/__init__.py +235 -139
  201. aws_cdk/aws_opsworkscm/__init__.py +16 -52
  202. aws_cdk/aws_organizations/__init__.py +70 -10
  203. aws_cdk/aws_osis/__init__.py +167 -2
  204. aws_cdk/aws_panorama/__init__.py +181 -9
  205. aws_cdk/aws_paymentcryptography/__init__.py +24 -4
  206. aws_cdk/aws_pcaconnectorad/__init__.py +59 -10
  207. aws_cdk/aws_pcaconnectorscep/__init__.py +24 -4
  208. aws_cdk/aws_pcs/__init__.py +516 -64
  209. aws_cdk/aws_personalize/__init__.py +46 -8
  210. aws_cdk/aws_pinpoint/__init__.py +329 -38
  211. aws_cdk/aws_pinpointemail/__init__.py +48 -8
  212. aws_cdk/aws_pipes/__init__.py +12 -2
  213. aws_cdk/aws_proton/__init__.py +37 -6
  214. aws_cdk/aws_qbusiness/__init__.py +635 -34
  215. aws_cdk/aws_qldb/__init__.py +24 -4
  216. aws_cdk/aws_quicksight/__init__.py +7900 -1160
  217. aws_cdk/aws_ram/__init__.py +24 -4
  218. aws_cdk/aws_rbin/__init__.py +12 -2
  219. aws_cdk/aws_rds/__init__.py +3721 -573
  220. aws_cdk/aws_redshift/__init__.py +143 -20
  221. aws_cdk/aws_redshiftserverless/__init__.py +699 -11
  222. aws_cdk/aws_refactorspaces/__init__.py +64 -14
  223. aws_cdk/aws_rekognition/__init__.py +93 -6
  224. aws_cdk/aws_resiliencehub/__init__.py +24 -4
  225. aws_cdk/aws_resourceexplorer2/__init__.py +35 -6
  226. aws_cdk/aws_resourcegroups/__init__.py +82 -4
  227. aws_cdk/aws_robomaker/__init__.py +72 -12
  228. aws_cdk/aws_rolesanywhere/__init__.py +194 -19
  229. aws_cdk/aws_route53/__init__.py +3965 -1436
  230. aws_cdk/aws_route53_targets/__init__.py +3 -0
  231. aws_cdk/aws_route53profiles/__init__.py +37 -6
  232. aws_cdk/aws_route53recoverycontrol/__init__.py +46 -8
  233. aws_cdk/aws_route53recoveryreadiness/__init__.py +104 -8
  234. aws_cdk/aws_route53resolver/__init__.py +189 -40
  235. aws_cdk/aws_rtbfabric/__init__.py +3498 -0
  236. aws_cdk/aws_rum/__init__.py +13 -2
  237. aws_cdk/aws_s3/__init__.py +1742 -221
  238. aws_cdk/aws_s3_assets/__init__.py +11 -11
  239. aws_cdk/aws_s3_deployment/__init__.py +153 -11
  240. aws_cdk/aws_s3_notifications/__init__.py +7 -7
  241. aws_cdk/aws_s3express/__init__.py +1053 -6
  242. aws_cdk/aws_s3objectlambda/__init__.py +68 -16
  243. aws_cdk/aws_s3outposts/__init__.py +46 -8
  244. aws_cdk/aws_s3tables/__init__.py +2000 -323
  245. aws_cdk/aws_s3vectors/__init__.py +1378 -0
  246. aws_cdk/aws_sagemaker/__init__.py +6848 -373
  247. aws_cdk/aws_sam/__init__.py +79 -14
  248. aws_cdk/aws_scheduler/__init__.py +249 -4
  249. aws_cdk/aws_sdb/__init__.py +12 -2
  250. aws_cdk/aws_secretsmanager/__init__.py +194 -14
  251. aws_cdk/aws_securityhub/__init__.py +3121 -176
  252. aws_cdk/aws_securitylake/__init__.py +46 -8
  253. aws_cdk/aws_servicecatalog/__init__.py +429 -246
  254. aws_cdk/aws_servicecatalogappregistry/__init__.py +164 -8
  255. aws_cdk/aws_servicediscovery/__init__.py +188 -47
  256. aws_cdk/aws_ses/__init__.py +2265 -369
  257. aws_cdk/aws_shield/__init__.py +46 -8
  258. aws_cdk/aws_signer/__init__.py +33 -4
  259. aws_cdk/aws_simspaceweaver/__init__.py +42 -2
  260. aws_cdk/aws_smsvoice/__init__.py +4716 -0
  261. aws_cdk/aws_sns/__init__.py +263 -29
  262. aws_cdk/aws_sns_subscriptions/__init__.py +265 -2
  263. aws_cdk/aws_sqs/__init__.py +223 -14
  264. aws_cdk/aws_ssm/__init__.py +413 -58
  265. aws_cdk/aws_ssmcontacts/__init__.py +98 -9
  266. aws_cdk/aws_ssmguiconnect/__init__.py +20 -9
  267. aws_cdk/aws_ssmincidents/__init__.py +24 -4
  268. aws_cdk/aws_ssmquicksetup/__init__.py +393 -8
  269. aws_cdk/aws_sso/__init__.py +70 -12
  270. aws_cdk/aws_stepfunctions/__init__.py +823 -94
  271. aws_cdk/aws_stepfunctions_tasks/__init__.py +2323 -150
  272. aws_cdk/aws_supportapp/__init__.py +39 -6
  273. aws_cdk/aws_synthetics/__init__.py +1088 -126
  274. aws_cdk/aws_systemsmanagersap/__init__.py +13 -2
  275. aws_cdk/aws_timestream/__init__.py +104 -8
  276. aws_cdk/aws_transfer/__init__.py +784 -87
  277. aws_cdk/aws_verifiedpermissions/__init__.py +306 -13
  278. aws_cdk/aws_voiceid/__init__.py +54 -5
  279. aws_cdk/aws_vpclattice/__init__.py +589 -231
  280. aws_cdk/aws_waf/__init__.py +79 -14
  281. aws_cdk/aws_wafregional/__init__.py +123 -22
  282. aws_cdk/aws_wafv2/__init__.py +1183 -64
  283. aws_cdk/aws_wisdom/__init__.py +1403 -90
  284. aws_cdk/aws_workspaces/__init__.py +134 -6
  285. aws_cdk/aws_workspacesinstances/__init__.py +3940 -0
  286. aws_cdk/aws_workspacesthinclient/__init__.py +79 -10
  287. aws_cdk/aws_workspacesweb/__init__.py +1057 -141
  288. aws_cdk/aws_xray/__init__.py +48 -8
  289. aws_cdk/cloud_assembly_schema/__init__.py +368 -48
  290. aws_cdk/custom_resources/__init__.py +58 -12
  291. aws_cdk/cx_api/__init__.py +125 -21
  292. aws_cdk/interfaces/__init__.py +739 -0
  293. aws_cdk/interfaces/alexa_ask/__init__.py +146 -0
  294. aws_cdk/interfaces/aws_accessanalyzer/__init__.py +146 -0
  295. aws_cdk/interfaces/aws_acmpca/__init__.py +501 -0
  296. aws_cdk/interfaces/aws_aiops/__init__.py +146 -0
  297. aws_cdk/interfaces/aws_amazonmq/__init__.py +386 -0
  298. aws_cdk/interfaces/aws_amplify/__init__.py +352 -0
  299. aws_cdk/interfaces/aws_amplifyuibuilder/__init__.py +454 -0
  300. aws_cdk/interfaces/aws_apigateway/__init__.py +2486 -0
  301. aws_cdk/interfaces/aws_apigatewayv2/__init__.py +1651 -0
  302. aws_cdk/interfaces/aws_appconfig/__init__.py +1020 -0
  303. aws_cdk/interfaces/aws_appflow/__init__.py +404 -0
  304. aws_cdk/interfaces/aws_appintegrations/__init__.py +396 -0
  305. aws_cdk/interfaces/aws_applicationautoscaling/__init__.py +307 -0
  306. aws_cdk/interfaces/aws_applicationinsights/__init__.py +148 -0
  307. aws_cdk/interfaces/aws_applicationsignals/__init__.py +358 -0
  308. aws_cdk/interfaces/aws_appmesh/__init__.py +888 -0
  309. aws_cdk/interfaces/aws_apprunner/__init__.py +564 -0
  310. aws_cdk/interfaces/aws_appstream/__init__.py +1482 -0
  311. aws_cdk/interfaces/aws_appsync/__init__.py +1326 -0
  312. aws_cdk/interfaces/aws_apptest/__init__.py +163 -0
  313. aws_cdk/interfaces/aws_aps/__init__.py +558 -0
  314. aws_cdk/interfaces/aws_arcregionswitch/__init__.py +146 -0
  315. aws_cdk/interfaces/aws_arczonalshift/__init__.py +273 -0
  316. aws_cdk/interfaces/aws_athena/__init__.py +575 -0
  317. aws_cdk/interfaces/aws_auditmanager/__init__.py +163 -0
  318. aws_cdk/interfaces/aws_autoscaling/__init__.py +705 -0
  319. aws_cdk/interfaces/aws_autoscalingplans/__init__.py +148 -0
  320. aws_cdk/interfaces/aws_b2bi/__init__.py +524 -0
  321. aws_cdk/interfaces/aws_backup/__init__.py +955 -0
  322. aws_cdk/interfaces/aws_backupgateway/__init__.py +146 -0
  323. aws_cdk/interfaces/aws_batch/__init__.py +681 -0
  324. aws_cdk/interfaces/aws_bcmdataexports/__init__.py +146 -0
  325. aws_cdk/interfaces/aws_bedrock/__init__.py +1942 -0
  326. aws_cdk/interfaces/aws_bedrockagentcore/__init__.py +934 -0
  327. aws_cdk/interfaces/aws_billing/__init__.py +146 -0
  328. aws_cdk/interfaces/aws_billingconductor/__init__.py +463 -0
  329. aws_cdk/interfaces/aws_budgets/__init__.py +261 -0
  330. aws_cdk/interfaces/aws_cassandra/__init__.py +381 -0
  331. aws_cdk/interfaces/aws_ce/__init__.py +352 -0
  332. aws_cdk/interfaces/aws_certificatemanager/__init__.py +251 -0
  333. aws_cdk/interfaces/aws_chatbot/__init__.py +366 -0
  334. aws_cdk/interfaces/aws_cleanrooms/__init__.py +1103 -0
  335. aws_cdk/interfaces/aws_cleanroomsml/__init__.py +148 -0
  336. aws_cdk/interfaces/aws_cloud9/__init__.py +166 -0
  337. aws_cdk/interfaces/aws_cloudformation/__init__.py +1919 -0
  338. aws_cdk/interfaces/aws_cloudfront/__init__.py +1998 -0
  339. aws_cdk/interfaces/aws_cloudtrail/__init__.py +570 -0
  340. aws_cdk/interfaces/aws_cloudwatch/__init__.py +733 -0
  341. aws_cdk/interfaces/aws_codeartifact/__init__.py +352 -0
  342. aws_cdk/interfaces/aws_codebuild/__init__.py +487 -0
  343. aws_cdk/interfaces/aws_codecommit/__init__.py +163 -0
  344. aws_cdk/interfaces/aws_codeconnections/__init__.py +146 -0
  345. aws_cdk/interfaces/aws_codedeploy/__init__.py +352 -0
  346. aws_cdk/interfaces/aws_codeguruprofiler/__init__.py +168 -0
  347. aws_cdk/interfaces/aws_codegurureviewer/__init__.py +148 -0
  348. aws_cdk/interfaces/aws_codepipeline/__init__.py +388 -0
  349. aws_cdk/interfaces/aws_codestar/__init__.py +146 -0
  350. aws_cdk/interfaces/aws_codestarconnections/__init__.py +370 -0
  351. aws_cdk/interfaces/aws_codestarnotifications/__init__.py +148 -0
  352. aws_cdk/interfaces/aws_cognito/__init__.py +1929 -0
  353. aws_cdk/interfaces/aws_comprehend/__init__.py +251 -0
  354. aws_cdk/interfaces/aws_config/__init__.py +1165 -0
  355. aws_cdk/interfaces/aws_connect/__init__.py +2949 -0
  356. aws_cdk/interfaces/aws_connectcampaigns/__init__.py +146 -0
  357. aws_cdk/interfaces/aws_connectcampaignsv2/__init__.py +146 -0
  358. aws_cdk/interfaces/aws_controltower/__init__.py +394 -0
  359. aws_cdk/interfaces/aws_cur/__init__.py +146 -0
  360. aws_cdk/interfaces/aws_customerprofiles/__init__.py +915 -0
  361. aws_cdk/interfaces/aws_databrew/__init__.py +661 -0
  362. aws_cdk/interfaces/aws_datapipeline/__init__.py +146 -0
  363. aws_cdk/interfaces/aws_datasync/__init__.py +1384 -0
  364. aws_cdk/interfaces/aws_datazone/__init__.py +2238 -0
  365. aws_cdk/interfaces/aws_dax/__init__.py +364 -0
  366. aws_cdk/interfaces/aws_deadline/__init__.py +1303 -0
  367. aws_cdk/interfaces/aws_detective/__init__.py +364 -0
  368. aws_cdk/interfaces/aws_devicefarm/__init__.py +663 -0
  369. aws_cdk/interfaces/aws_devopsguru/__init__.py +362 -0
  370. aws_cdk/interfaces/aws_directoryservice/__init__.py +251 -0
  371. aws_cdk/interfaces/aws_dlm/__init__.py +166 -0
  372. aws_cdk/interfaces/aws_dms/__init__.py +1176 -0
  373. aws_cdk/interfaces/aws_docdb/__init__.py +560 -0
  374. aws_cdk/interfaces/aws_docdbelastic/__init__.py +146 -0
  375. aws_cdk/interfaces/aws_dsql/__init__.py +146 -0
  376. aws_cdk/interfaces/aws_dynamodb/__init__.py +278 -0
  377. aws_cdk/interfaces/aws_ec2/__init__.py +11963 -0
  378. aws_cdk/interfaces/aws_ecr/__init__.py +814 -0
  379. aws_cdk/interfaces/aws_ecs/__init__.py +845 -0
  380. aws_cdk/interfaces/aws_efs/__init__.py +392 -0
  381. aws_cdk/interfaces/aws_eks/__init__.py +948 -0
  382. aws_cdk/interfaces/aws_elasticache/__init__.py +1108 -0
  383. aws_cdk/interfaces/aws_elasticbeanstalk/__init__.py +503 -0
  384. aws_cdk/interfaces/aws_elasticloadbalancing/__init__.py +148 -0
  385. aws_cdk/interfaces/aws_elasticloadbalancingv2/__init__.py +795 -0
  386. aws_cdk/interfaces/aws_elasticsearch/__init__.py +158 -0
  387. aws_cdk/interfaces/aws_emr/__init__.py +913 -0
  388. aws_cdk/interfaces/aws_emrcontainers/__init__.py +168 -0
  389. aws_cdk/interfaces/aws_emrserverless/__init__.py +166 -0
  390. aws_cdk/interfaces/aws_entityresolution/__init__.py +608 -0
  391. aws_cdk/interfaces/aws_events/__init__.py +872 -0
  392. aws_cdk/interfaces/aws_eventschemas/__init__.py +455 -0
  393. aws_cdk/interfaces/aws_evidently/__init__.py +558 -0
  394. aws_cdk/interfaces/aws_evs/__init__.py +166 -0
  395. aws_cdk/interfaces/aws_finspace/__init__.py +166 -0
  396. aws_cdk/interfaces/aws_fis/__init__.py +271 -0
  397. aws_cdk/interfaces/aws_fms/__init__.py +364 -0
  398. aws_cdk/interfaces/aws_forecast/__init__.py +249 -0
  399. aws_cdk/interfaces/aws_frauddetector/__init__.py +764 -0
  400. aws_cdk/interfaces/aws_fsx/__init__.py +663 -0
  401. aws_cdk/interfaces/aws_gamelift/__init__.py +1325 -0
  402. aws_cdk/interfaces/aws_gameliftstreams/__init__.py +249 -0
  403. aws_cdk/interfaces/aws_globalaccelerator/__init__.py +461 -0
  404. aws_cdk/interfaces/aws_glue/__init__.py +2377 -0
  405. aws_cdk/interfaces/aws_grafana/__init__.py +146 -0
  406. aws_cdk/interfaces/aws_greengrass/__init__.py +1871 -0
  407. aws_cdk/interfaces/aws_greengrassv2/__init__.py +251 -0
  408. aws_cdk/interfaces/aws_groundstation/__init__.py +396 -0
  409. aws_cdk/interfaces/aws_guardduty/__init__.py +1225 -0
  410. aws_cdk/interfaces/aws_healthimaging/__init__.py +163 -0
  411. aws_cdk/interfaces/aws_healthlake/__init__.py +146 -0
  412. aws_cdk/interfaces/aws_iam/__init__.py +1803 -0
  413. aws_cdk/interfaces/aws_identitystore/__init__.py +288 -0
  414. aws_cdk/interfaces/aws_imagebuilder/__init__.py +984 -0
  415. aws_cdk/interfaces/aws_inspector/__init__.py +354 -0
  416. aws_cdk/interfaces/aws_inspectorv2/__init__.py +467 -0
  417. aws_cdk/interfaces/aws_internetmonitor/__init__.py +163 -0
  418. aws_cdk/interfaces/aws_invoicing/__init__.py +146 -0
  419. aws_cdk/interfaces/aws_iot/__init__.py +3483 -0
  420. aws_cdk/interfaces/aws_iotanalytics/__init__.py +455 -0
  421. aws_cdk/interfaces/aws_iotcoredeviceadvisor/__init__.py +168 -0
  422. aws_cdk/interfaces/aws_iotevents/__init__.py +352 -0
  423. aws_cdk/interfaces/aws_iotfleethub/__init__.py +166 -0
  424. aws_cdk/interfaces/aws_iotfleetwise/__init__.py +892 -0
  425. aws_cdk/interfaces/aws_iotsitewise/__init__.py +1097 -0
  426. aws_cdk/interfaces/aws_iotthingsgraph/__init__.py +146 -0
  427. aws_cdk/interfaces/aws_iottwinmaker/__init__.py +711 -0
  428. aws_cdk/interfaces/aws_iotwireless/__init__.py +1401 -0
  429. aws_cdk/interfaces/aws_ivs/__init__.py +1075 -0
  430. aws_cdk/interfaces/aws_ivschat/__init__.py +251 -0
  431. aws_cdk/interfaces/aws_kafkaconnect/__init__.py +354 -0
  432. aws_cdk/interfaces/aws_kendra/__init__.py +428 -0
  433. aws_cdk/interfaces/aws_kendraranking/__init__.py +166 -0
  434. aws_cdk/interfaces/aws_kinesis/__init__.py +364 -0
  435. aws_cdk/interfaces/aws_kinesisanalytics/__init__.py +364 -0
  436. aws_cdk/interfaces/aws_kinesisanalyticsv2/__init__.py +479 -0
  437. aws_cdk/interfaces/aws_kinesisfirehose/__init__.py +168 -0
  438. aws_cdk/interfaces/aws_kinesisvideo/__init__.py +283 -0
  439. aws_cdk/interfaces/aws_kms/__init__.py +376 -0
  440. aws_cdk/interfaces/aws_lakeformation/__init__.py +860 -0
  441. aws_cdk/interfaces/aws_lambda/__init__.py +1141 -0
  442. aws_cdk/interfaces/aws_launchwizard/__init__.py +146 -0
  443. aws_cdk/interfaces/aws_lex/__init__.py +513 -0
  444. aws_cdk/interfaces/aws_licensemanager/__init__.py +249 -0
  445. aws_cdk/interfaces/aws_lightsail/__init__.py +1744 -0
  446. aws_cdk/interfaces/aws_location/__init__.py +879 -0
  447. aws_cdk/interfaces/aws_logs/__init__.py +1667 -0
  448. aws_cdk/interfaces/aws_lookoutequipment/__init__.py +168 -0
  449. aws_cdk/interfaces/aws_lookoutmetrics/__init__.py +251 -0
  450. aws_cdk/interfaces/aws_lookoutvision/__init__.py +163 -0
  451. aws_cdk/interfaces/aws_m2/__init__.py +352 -0
  452. aws_cdk/interfaces/aws_macie/__init__.py +512 -0
  453. aws_cdk/interfaces/aws_managedblockchain/__init__.py +381 -0
  454. aws_cdk/interfaces/aws_mediaconnect/__init__.py +1028 -0
  455. aws_cdk/interfaces/aws_mediaconvert/__init__.py +396 -0
  456. aws_cdk/interfaces/aws_medialive/__init__.py +1755 -0
  457. aws_cdk/interfaces/aws_mediapackage/__init__.py +644 -0
  458. aws_cdk/interfaces/aws_mediapackagev2/__init__.py +618 -0
  459. aws_cdk/interfaces/aws_mediastore/__init__.py +146 -0
  460. aws_cdk/interfaces/aws_mediatailor/__init__.py +788 -0
  461. aws_cdk/interfaces/aws_memorydb/__init__.py +685 -0
  462. aws_cdk/interfaces/aws_mpa/__init__.py +249 -0
  463. aws_cdk/interfaces/aws_msk/__init__.py +764 -0
  464. aws_cdk/interfaces/aws_mwaa/__init__.py +166 -0
  465. aws_cdk/interfaces/aws_neptune/__init__.py +663 -0
  466. aws_cdk/interfaces/aws_neptunegraph/__init__.py +265 -0
  467. aws_cdk/interfaces/aws_networkfirewall/__init__.py +669 -0
  468. aws_cdk/interfaces/aws_networkmanager/__init__.py +1832 -0
  469. aws_cdk/interfaces/aws_nimblestudio/__init__.py +388 -0
  470. aws_cdk/interfaces/aws_notifications/__init__.py +868 -0
  471. aws_cdk/interfaces/aws_notificationscontacts/__init__.py +148 -0
  472. aws_cdk/interfaces/aws_oam/__init__.py +249 -0
  473. aws_cdk/interfaces/aws_observabilityadmin/__init__.py +362 -0
  474. aws_cdk/interfaces/aws_odb/__init__.py +562 -0
  475. aws_cdk/interfaces/aws_omics/__init__.py +838 -0
  476. aws_cdk/interfaces/aws_opensearchserverless/__init__.py +859 -0
  477. aws_cdk/interfaces/aws_opensearchservice/__init__.py +283 -0
  478. aws_cdk/interfaces/aws_opsworks/__init__.py +772 -0
  479. aws_cdk/interfaces/aws_opsworkscm/__init__.py +146 -0
  480. aws_cdk/interfaces/aws_organizations/__init__.py +646 -0
  481. aws_cdk/interfaces/aws_osis/__init__.py +146 -0
  482. aws_cdk/interfaces/aws_panorama/__init__.py +420 -0
  483. aws_cdk/interfaces/aws_paymentcryptography/__init__.py +249 -0
  484. aws_cdk/interfaces/aws_pcaconnectorad/__init__.py +608 -0
  485. aws_cdk/interfaces/aws_pcaconnectorscep/__init__.py +249 -0
  486. aws_cdk/interfaces/aws_pcs/__init__.py +352 -0
  487. aws_cdk/interfaces/aws_personalize/__init__.py +455 -0
  488. aws_cdk/interfaces/aws_pinpoint/__init__.py +2125 -0
  489. aws_cdk/interfaces/aws_pinpointemail/__init__.py +467 -0
  490. aws_cdk/interfaces/aws_pipes/__init__.py +158 -0
  491. aws_cdk/interfaces/aws_proton/__init__.py +360 -0
  492. aws_cdk/interfaces/aws_qbusiness/__init__.py +1122 -0
  493. aws_cdk/interfaces/aws_qldb/__init__.py +283 -0
  494. aws_cdk/interfaces/aws_quicksight/__init__.py +1566 -0
  495. aws_cdk/interfaces/aws_ram/__init__.py +249 -0
  496. aws_cdk/interfaces/aws_rbin/__init__.py +146 -0
  497. aws_cdk/interfaces/aws_rds/__init__.py +1780 -0
  498. aws_cdk/interfaces/aws_redshift/__init__.py +1104 -0
  499. aws_cdk/interfaces/aws_redshiftserverless/__init__.py +356 -0
  500. aws_cdk/interfaces/aws_refactorspaces/__init__.py +605 -0
  501. aws_cdk/interfaces/aws_rekognition/__init__.py +406 -0
  502. aws_cdk/interfaces/aws_resiliencehub/__init__.py +251 -0
  503. aws_cdk/interfaces/aws_resourceexplorer2/__init__.py +354 -0
  504. aws_cdk/interfaces/aws_resourcegroups/__init__.py +261 -0
  505. aws_cdk/interfaces/aws_robomaker/__init__.py +673 -0
  506. aws_cdk/interfaces/aws_rolesanywhere/__init__.py +384 -0
  507. aws_cdk/interfaces/aws_route53/__init__.py +804 -0
  508. aws_cdk/interfaces/aws_route53profiles/__init__.py +368 -0
  509. aws_cdk/interfaces/aws_route53recoverycontrol/__init__.py +463 -0
  510. aws_cdk/interfaces/aws_route53recoveryreadiness/__init__.py +535 -0
  511. aws_cdk/interfaces/aws_route53resolver/__init__.py +1356 -0
  512. aws_cdk/interfaces/aws_rtbfabric/__init__.py +352 -0
  513. aws_cdk/interfaces/aws_rum/__init__.py +146 -0
  514. aws_cdk/interfaces/aws_s3/__init__.py +1171 -0
  515. aws_cdk/interfaces/aws_s3express/__init__.py +392 -0
  516. aws_cdk/interfaces/aws_s3objectlambda/__init__.py +271 -0
  517. aws_cdk/interfaces/aws_s3outposts/__init__.py +455 -0
  518. aws_cdk/interfaces/aws_s3tables/__init__.py +575 -0
  519. aws_cdk/interfaces/aws_s3vectors/__init__.py +354 -0
  520. aws_cdk/interfaces/aws_sagemaker/__init__.py +3797 -0
  521. aws_cdk/interfaces/aws_sam/__init__.py +603 -0
  522. aws_cdk/interfaces/aws_scheduler/__init__.py +286 -0
  523. aws_cdk/interfaces/aws_sdb/__init__.py +146 -0
  524. aws_cdk/interfaces/aws_secretsmanager/__init__.py +461 -0
  525. aws_cdk/interfaces/aws_securityhub/__init__.py +1499 -0
  526. aws_cdk/interfaces/aws_securitylake/__init__.py +474 -0
  527. aws_cdk/interfaces/aws_servicecatalog/__init__.py +1829 -0
  528. aws_cdk/interfaces/aws_servicecatalogappregistry/__init__.py +557 -0
  529. aws_cdk/interfaces/aws_servicediscovery/__init__.py +636 -0
  530. aws_cdk/interfaces/aws_ses/__init__.py +2018 -0
  531. aws_cdk/interfaces/aws_shield/__init__.py +455 -0
  532. aws_cdk/interfaces/aws_signer/__init__.py +266 -0
  533. aws_cdk/interfaces/aws_simspaceweaver/__init__.py +146 -0
  534. aws_cdk/interfaces/aws_smsvoice/__init__.py +892 -0
  535. aws_cdk/interfaces/aws_sns/__init__.py +455 -0
  536. aws_cdk/interfaces/aws_sqs/__init__.py +364 -0
  537. aws_cdk/interfaces/aws_ssm/__init__.py +982 -0
  538. aws_cdk/interfaces/aws_ssmcontacts/__init__.py +455 -0
  539. aws_cdk/interfaces/aws_ssmguiconnect/__init__.py +146 -0
  540. aws_cdk/interfaces/aws_ssmincidents/__init__.py +249 -0
  541. aws_cdk/interfaces/aws_ssmquicksetup/__init__.py +253 -0
  542. aws_cdk/interfaces/aws_sso/__init__.py +797 -0
  543. aws_cdk/interfaces/aws_stepfunctions/__init__.py +459 -0
  544. aws_cdk/interfaces/aws_supportapp/__init__.py +372 -0
  545. aws_cdk/interfaces/aws_synthetics/__init__.py +249 -0
  546. aws_cdk/interfaces/aws_systemsmanagersap/__init__.py +148 -0
  547. aws_cdk/interfaces/aws_timestream/__init__.py +526 -0
  548. aws_cdk/interfaces/aws_transfer/__init__.py +967 -0
  549. aws_cdk/interfaces/aws_verifiedpermissions/__init__.py +538 -0
  550. aws_cdk/interfaces/aws_voiceid/__init__.py +146 -0
  551. aws_cdk/interfaces/aws_vpclattice/__init__.py +1418 -0
  552. aws_cdk/interfaces/aws_waf/__init__.py +764 -0
  553. aws_cdk/interfaces/aws_wafregional/__init__.py +1182 -0
  554. aws_cdk/interfaces/aws_wafv2/__init__.py +870 -0
  555. aws_cdk/interfaces/aws_wisdom/__init__.py +1556 -0
  556. aws_cdk/interfaces/aws_workspaces/__init__.py +352 -0
  557. aws_cdk/interfaces/aws_workspacesinstances/__init__.py +390 -0
  558. aws_cdk/interfaces/aws_workspacesthinclient/__init__.py +168 -0
  559. aws_cdk/interfaces/aws_workspacesweb/__init__.py +1085 -0
  560. aws_cdk/interfaces/aws_xray/__init__.py +457 -0
  561. aws_cdk/lambda_layer_awscli/__init__.py +6 -0
  562. aws_cdk/lambda_layer_node_proxy_agent/__init__.py +6 -0
  563. aws_cdk/pipelines/__init__.py +202 -52
  564. aws_cdk/region_info/__init__.py +3 -0
  565. aws_cdk/triggers/__init__.py +66 -18
  566. {aws_cdk_lib-2.195.0.dist-info → aws_cdk_lib-2.224.0.dist-info}/METADATA +418 -18
  567. aws_cdk_lib-2.224.0.dist-info/RECORD +584 -0
  568. aws_cdk_lib-2.195.0.dist-info/RECORD +0 -304
  569. {aws_cdk_lib-2.195.0.dist-info → aws_cdk_lib-2.224.0.dist-info}/LICENSE +0 -0
  570. {aws_cdk_lib-2.195.0.dist-info → aws_cdk_lib-2.224.0.dist-info}/NOTICE +0 -0
  571. {aws_cdk_lib-2.195.0.dist-info → aws_cdk_lib-2.224.0.dist-info}/WHEEL +0 -0
  572. {aws_cdk_lib-2.195.0.dist-info → aws_cdk_lib-2.224.0.dist-info}/top_level.txt +0 -0
@@ -329,10 +329,24 @@ from ..aws_ec2 import (
329
329
  ISubnet as _ISubnet_d57d1229,
330
330
  IVpc as _IVpc_f30d5663,
331
331
  )
332
- from ..aws_kms import IKey as _IKey_5f11635f
332
+ from ..interfaces.aws_fsx import (
333
+ DataRepositoryAssociationReference as _DataRepositoryAssociationReference_ec908964,
334
+ FileSystemReference as _FileSystemReference_1300395b,
335
+ IDataRepositoryAssociationRef as _IDataRepositoryAssociationRef_1317fd39,
336
+ IFileSystemRef as _IFileSystemRef_0a2e414d,
337
+ IS3AccessPointAttachmentRef as _IS3AccessPointAttachmentRef_22b962a0,
338
+ ISnapshotRef as _ISnapshotRef_fbdde5f5,
339
+ IStorageVirtualMachineRef as _IStorageVirtualMachineRef_3a0f4396,
340
+ IVolumeRef as _IVolumeRef_7f52c3ee,
341
+ S3AccessPointAttachmentReference as _S3AccessPointAttachmentReference_4957ffc1,
342
+ SnapshotReference as _SnapshotReference_84fbb991,
343
+ StorageVirtualMachineReference as _StorageVirtualMachineReference_27e496a6,
344
+ VolumeReference as _VolumeReference_ad7f96eb,
345
+ )
346
+ from ..interfaces.aws_kms import IKeyRef as _IKeyRef_d4fc6ef3
333
347
 
334
348
 
335
- @jsii.implements(_IInspectable_c2943556, _ITaggable_36806126)
349
+ @jsii.implements(_IInspectable_c2943556, _IDataRepositoryAssociationRef_1317fd39, _ITaggable_36806126)
336
350
  class CfnDataRepositoryAssociation(
337
351
  _CfnResource_9df397a6,
338
352
  metaclass=jsii.JSIIMeta,
@@ -390,7 +404,8 @@ class CfnDataRepositoryAssociation(
390
404
  s3: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnDataRepositoryAssociation.S3Property", typing.Dict[builtins.str, typing.Any]]]] = None,
391
405
  tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,
392
406
  ) -> None:
393
- '''
407
+ '''Create a new ``AWS::FSx::DataRepositoryAssociation``.
408
+
394
409
  :param scope: Scope in which this resource is defined.
395
410
  :param id: Construct identifier for this resource (unique in its scope).
396
411
  :param data_repository_path: The path to the Amazon S3 data repository that will be linked to the file system. The path can be an S3 bucket or prefix in the format ``s3://myBucket/myPrefix/`` . This path specifies where in the S3 data repository files will be imported from or exported to.
@@ -474,6 +489,14 @@ class CfnDataRepositoryAssociation(
474
489
  def _cfn_properties(self) -> typing.Mapping[builtins.str, typing.Any]:
475
490
  return typing.cast(typing.Mapping[builtins.str, typing.Any], jsii.get(self, "cfnProperties"))
476
491
 
492
+ @builtins.property
493
+ @jsii.member(jsii_name="dataRepositoryAssociationRef")
494
+ def data_repository_association_ref(
495
+ self,
496
+ ) -> _DataRepositoryAssociationReference_ec908964:
497
+ '''A reference to a DataRepositoryAssociation resource.'''
498
+ return typing.cast(_DataRepositoryAssociationReference_ec908964, jsii.get(self, "dataRepositoryAssociationRef"))
499
+
477
500
  @builtins.property
478
501
  @jsii.member(jsii_name="tags")
479
502
  def tags(self) -> _TagManager_0a598cb3:
@@ -985,7 +1008,7 @@ class CfnDataRepositoryAssociationProps:
985
1008
  )
986
1009
 
987
1010
 
988
- @jsii.implements(_IInspectable_c2943556, _ITaggable_36806126)
1011
+ @jsii.implements(_IInspectable_c2943556, _IFileSystemRef_0a2e414d, _ITaggable_36806126)
989
1012
  class CfnFileSystem(
990
1013
  _CfnResource_9df397a6,
991
1014
  metaclass=jsii.JSIIMeta,
@@ -1024,6 +1047,10 @@ class CfnFileSystem(
1024
1047
  copy_tags_to_backups=False,
1025
1048
  daily_automatic_backup_start_time="dailyAutomaticBackupStartTime",
1026
1049
  data_compression_type="dataCompressionType",
1050
+ data_read_cache_configuration=fsx.CfnFileSystem.DataReadCacheConfigurationProperty(
1051
+ size_gi_b=123,
1052
+ sizing_mode="sizingMode"
1053
+ ),
1027
1054
  deployment_type="deploymentType",
1028
1055
  drive_cache_type="driveCacheType",
1029
1056
  efa_enabled=False,
@@ -1035,8 +1062,10 @@ class CfnFileSystem(
1035
1062
  mode="mode"
1036
1063
  ),
1037
1064
  per_unit_storage_throughput=123,
1065
+ throughput_capacity=123,
1038
1066
  weekly_maintenance_start_time="weeklyMaintenanceStartTime"
1039
1067
  ),
1068
+ network_type="networkType",
1040
1069
  ontap_configuration=fsx.CfnFileSystem.OntapConfigurationProperty(
1041
1070
  deployment_type="deploymentType",
1042
1071
 
@@ -1048,6 +1077,7 @@ class CfnFileSystem(
1048
1077
  mode="mode"
1049
1078
  ),
1050
1079
  endpoint_ip_address_range="endpointIpAddressRange",
1080
+ endpoint_ipv6_address_range="endpointIpv6AddressRange",
1051
1081
  fsx_admin_password="fsxAdminPassword",
1052
1082
  ha_pairs=123,
1053
1083
  preferred_subnet_id="preferredSubnetId",
@@ -1069,6 +1099,7 @@ class CfnFileSystem(
1069
1099
  mode="mode"
1070
1100
  ),
1071
1101
  endpoint_ip_address_range="endpointIpAddressRange",
1102
+ endpoint_ipv6_address_range="endpointIpv6AddressRange",
1072
1103
  options=["options"],
1073
1104
  preferred_subnet_id="preferredSubnetId",
1074
1105
  read_cache_configuration=fsx.CfnFileSystem.ReadCacheConfigurationProperty(
@@ -1149,6 +1180,7 @@ class CfnFileSystem(
1149
1180
  file_system_type_version: typing.Optional[builtins.str] = None,
1150
1181
  kms_key_id: typing.Optional[builtins.str] = None,
1151
1182
  lustre_configuration: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnFileSystem.LustreConfigurationProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
1183
+ network_type: typing.Optional[builtins.str] = None,
1152
1184
  ontap_configuration: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnFileSystem.OntapConfigurationProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
1153
1185
  open_zfs_configuration: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnFileSystem.OpenZFSConfigurationProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
1154
1186
  security_group_ids: typing.Optional[typing.Sequence[builtins.str]] = None,
@@ -1157,22 +1189,24 @@ class CfnFileSystem(
1157
1189
  tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,
1158
1190
  windows_configuration: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnFileSystem.WindowsConfigurationProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
1159
1191
  ) -> None:
1160
- '''
1192
+ '''Create a new ``AWS::FSx::FileSystem``.
1193
+
1161
1194
  :param scope: Scope in which this resource is defined.
1162
1195
  :param id: Construct identifier for this resource (unique in its scope).
1163
1196
  :param file_system_type: The type of Amazon FSx file system, which can be ``LUSTRE`` , ``WINDOWS`` , ``ONTAP`` , or ``OPENZFS`` .
1164
1197
  :param subnet_ids: Specifies the IDs of the subnets that the file system will be accessible from. For Windows and ONTAP ``MULTI_AZ_1`` deployment types,provide exactly two subnet IDs, one for the preferred file server and one for the standby file server. You specify one of these subnets as the preferred subnet using the ``WindowsConfiguration > PreferredSubnetID`` or ``OntapConfiguration > PreferredSubnetID`` properties. For more information about Multi-AZ file system configuration, see `Availability and durability: Single-AZ and Multi-AZ file systems <https://docs.aws.amazon.com/fsx/latest/WindowsGuide/high-availability-multiAZ.html>`_ in the *Amazon FSx for Windows User Guide* and `Availability and durability <https://docs.aws.amazon.com/fsx/latest/ONTAPGuide/high-availability-multiAZ.html>`_ in the *Amazon FSx for ONTAP User Guide* . For Windows ``SINGLE_AZ_1`` and ``SINGLE_AZ_2`` and all Lustre deployment types, provide exactly one subnet ID. The file server is launched in that subnet's Availability Zone.
1165
1198
  :param backup_id: The ID of the file system backup that you are using to create a file system. For more information, see `CreateFileSystemFromBackup <https://docs.aws.amazon.com/fsx/latest/APIReference/API_CreateFileSystemFromBackup.html>`_ .
1166
1199
  :param file_system_type_version: For FSx for Lustre file systems, sets the Lustre version for the file system that you're creating. Valid values are ``2.10`` , ``2.12`` , and ``2.15`` : - ``2.10`` is supported by the Scratch and Persistent_1 Lustre deployment types. - ``2.12`` is supported by all Lustre deployment types, except for ``PERSISTENT_2`` with a metadata configuration mode. - ``2.15`` is supported by all Lustre deployment types and is recommended for all new file systems. Default value is ``2.10`` , except for the following deployments: - Default value is ``2.12`` when ``DeploymentType`` is set to ``PERSISTENT_2`` without a metadata configuration mode. - Default value is ``2.15`` when ``DeploymentType`` is set to ``PERSISTENT_2`` with a metadata configuration mode.
1167
- :param kms_key_id: The ID of the AWS Key Management Service ( AWS KMS ) key used to encrypt Amazon FSx file system data. Used as follows with Amazon FSx file system types: - Amazon FSx for Lustre ``PERSISTENT_1`` and ``PERSISTENT_2`` deployment types only. ``SCRATCH_1`` and ``SCRATCH_2`` types are encrypted using the Amazon FSx service AWS KMS key for your account. - Amazon FSx for NetApp ONTAP - Amazon FSx for OpenZFS - Amazon FSx for Windows File Server
1168
- :param lustre_configuration: The Lustre configuration for the file system being created. .. epigraph:: The following parameters are not supported when creating Lustre file systems with a data repository association. - ``AutoImportPolicy`` - ``ExportPath`` - ``ImportedChunkSize`` - ``ImportPath``
1169
- :param ontap_configuration: The ONTAP configuration properties of the FSx for ONTAP file system that you are creating.
1170
- :param open_zfs_configuration: The Amazon FSx for OpenZFS configuration properties for the file system that you are creating.
1200
+ :param kms_key_id: The ID of the AWS Key Management Service ( AWS KMS ) key used to encrypt Amazon FSx file system data. Used as follows with Amazon FSx file system types: - Amazon FSx for Lustre ``PERSISTENT_1`` and ``PERSISTENT_2`` deployment types only. ``SCRATCH_1`` and ``SCRATCH_2`` types are encrypted using the Amazon FSx service AWS KMS key for your account. - Amazon FSx for NetApp ONTAP - Amazon FSx for OpenZFS - Amazon FSx for Windows File Server If this ID isn't specified, the Amazon FSx-managed key for your account is used. For more information, see `Encrypt <https://docs.aws.amazon.com//kms/latest/APIReference/API_Encrypt.html>`_ in the *AWS Key Management Service API Reference* .
1201
+ :param lustre_configuration: The Lustre configuration for the file system being created. This configuration is required if the ``FileSystemType`` is set to ``LUSTRE`` . .. epigraph:: The following parameters are not supported when creating Lustre file systems with a data repository association. - ``AutoImportPolicy`` - ``ExportPath`` - ``ImportedChunkSize`` - ``ImportPath``
1202
+ :param network_type: The network type of the file system.
1203
+ :param ontap_configuration: The ONTAP configuration properties of the FSx for ONTAP file system that you are creating. This configuration is required if the ``FileSystemType`` is set to ``ONTAP`` .
1204
+ :param open_zfs_configuration: The Amazon FSx for OpenZFS configuration properties for the file system that you are creating. This configuration is required if the ``FileSystemType`` is set to ``OPENZFS`` .
1171
1205
  :param security_group_ids: A list of IDs specifying the security groups to apply to all network interfaces created for file system access. This list isn't returned in later requests to describe the file system. .. epigraph:: You must specify a security group if you are creating a Multi-AZ FSx for ONTAP file system in a VPC subnet that has been shared with you.
1172
1206
  :param storage_capacity: Sets the storage capacity of the file system that you're creating. ``StorageCapacity`` is required if you are creating a new file system. It is not required if you are creating a file system by restoring a backup. *FSx for Lustre file systems* - The amount of storage capacity that you can configure depends on the value that you set for ``StorageType`` and the Lustre ``DeploymentType`` , as follows: - For ``SCRATCH_2`` , ``PERSISTENT_2`` and ``PERSISTENT_1`` deployment types using SSD storage type, the valid values are 1200 GiB, 2400 GiB, and increments of 2400 GiB. - For ``PERSISTENT_1`` HDD file systems, valid values are increments of 6000 GiB for 12 MB/s/TiB file systems and increments of 1800 GiB for 40 MB/s/TiB file systems. - For ``SCRATCH_1`` deployment type, valid values are 1200 GiB, 2400 GiB, and increments of 3600 GiB. *FSx for ONTAP file systems* - The amount of SSD storage capacity that you can configure depends on the value of the ``HAPairs`` property. The minimum value is calculated as 1,024 GiB * HAPairs and the maximum is calculated as 524,288 GiB * HAPairs, up to a maximum amount of SSD storage capacity of 1,048,576 GiB (1 pebibyte). *FSx for OpenZFS file systems* - The amount of storage capacity that you can configure is from 64 GiB up to 524,288 GiB (512 TiB). If you are creating a file system from a backup, you can specify a storage capacity equal to or greater than the original file system's storage capacity. *FSx for Windows File Server file systems* - The amount of storage capacity that you can configure depends on the value that you set for ``StorageType`` as follows: - For SSD storage, valid values are 32 GiB-65,536 GiB (64 TiB). - For HDD storage, valid values are 2000 GiB-65,536 GiB (64 TiB).
1173
- :param storage_type: Sets the storage class for the file system that you're creating. Valid values are ``SSD`` , ``HDD`` , and ``INTELLIGENT_TIERING`` . - Set to ``SSD`` to use solid state drive storage. SSD is supported on all Windows, Lustre, ONTAP, and OpenZFS deployment types. - Set to ``HDD`` to use hard disk drive storage, which is supported on ``SINGLE_AZ_2`` and ``MULTI_AZ_1`` Windows file system deployment types, and on ``PERSISTENT_1`` Lustre file system deployment types. - Set to ``INTELLIGENT_TIERING`` to use fully elastic, intelligently-tiered storage. Intelligent-Tiering is only available for OpenZFS file systems with the Multi-AZ deployment type. Default value is ``SSD`` . For more information, see `Storage type options <https://docs.aws.amazon.com/fsx/latest/WindowsGuide/optimize-fsx-costs.html#storage-type-options>`_ in the *FSx for Windows File Server User Guide* , `Multiple storage options <https://docs.aws.amazon.com/fsx/latest/LustreGuide/what-is.html#storage-options>`_ in the *FSx for Lustre User Guide* , and `Working with Intelligent-Tiering <https://docs.aws.amazon.com/fsx/latest/OpenZFSGuide/performance-intelligent-tiering>`_ in the *Amazon FSx for OpenZFS User Guide* .
1207
+ :param storage_type: Sets the storage class for the file system that you're creating. Valid values are ``SSD`` , ``HDD`` , and ``INTELLIGENT_TIERING`` . - Set to ``SSD`` to use solid state drive storage. SSD is supported on all Windows, Lustre, ONTAP, and OpenZFS deployment types. - Set to ``HDD`` to use hard disk drive storage, which is supported on ``SINGLE_AZ_2`` and ``MULTI_AZ_1`` Windows file system deployment types, and on ``PERSISTENT_1`` Lustre file system deployment types. - Set to ``INTELLIGENT_TIERING`` to use fully elastic, intelligently-tiered storage. Intelligent-Tiering is only available for OpenZFS file systems with the Multi-AZ deployment type and for Lustre file systems with the Persistent_2 deployment type. Default value is ``SSD`` . For more information, see `Storage type options <https://docs.aws.amazon.com/fsx/latest/WindowsGuide/optimize-fsx-costs.html#storage-type-options>`_ in the *FSx for Windows File Server User Guide* , `FSx for Lustre storage classes <https://docs.aws.amazon.com/fsx/latest/LustreGuide/using-fsx-lustre.html#lustre-storage-classes>`_ in the *FSx for Lustre User Guide* , and `Working with Intelligent-Tiering <https://docs.aws.amazon.com/fsx/latest/OpenZFSGuide/performance-intelligent-tiering>`_ in the *Amazon FSx for OpenZFS User Guide* .
1174
1208
  :param tags: The tags to associate with the file system. For more information, see `Tagging your Amazon FSx resources <https://docs.aws.amazon.com/fsx/latest/LustreGuide/tag-resources.html>`_ in the *Amazon FSx for Lustre User Guide* .
1175
- :param windows_configuration: The configuration object for the Microsoft Windows file system you are creating. This value is required if ``FileSystemType`` is set to ``WINDOWS`` .
1209
+ :param windows_configuration: The configuration object for the Microsoft Windows file system you are creating. This configuration is required if ``FileSystemType`` is set to ``WINDOWS`` .
1176
1210
  '''
1177
1211
  if __debug__:
1178
1212
  type_hints = typing.get_type_hints(_typecheckingstub__2d13764c3dcb8d96799af4fa191d042ff4511c33cfd1aecbf235dded3234d3c5)
@@ -1185,6 +1219,7 @@ class CfnFileSystem(
1185
1219
  file_system_type_version=file_system_type_version,
1186
1220
  kms_key_id=kms_key_id,
1187
1221
  lustre_configuration=lustre_configuration,
1222
+ network_type=network_type,
1188
1223
  ontap_configuration=ontap_configuration,
1189
1224
  open_zfs_configuration=open_zfs_configuration,
1190
1225
  security_group_ids=security_group_ids,
@@ -1285,6 +1320,12 @@ class CfnFileSystem(
1285
1320
  def _cfn_properties(self) -> typing.Mapping[builtins.str, typing.Any]:
1286
1321
  return typing.cast(typing.Mapping[builtins.str, typing.Any], jsii.get(self, "cfnProperties"))
1287
1322
 
1323
+ @builtins.property
1324
+ @jsii.member(jsii_name="fileSystemRef")
1325
+ def file_system_ref(self) -> _FileSystemReference_1300395b:
1326
+ '''A reference to a FileSystem resource.'''
1327
+ return typing.cast(_FileSystemReference_1300395b, jsii.get(self, "fileSystemRef"))
1328
+
1288
1329
  @builtins.property
1289
1330
  @jsii.member(jsii_name="tags")
1290
1331
  def tags(self) -> _TagManager_0a598cb3:
@@ -1374,6 +1415,19 @@ class CfnFileSystem(
1374
1415
  check_type(argname="argument value", value=value, expected_type=type_hints["value"])
1375
1416
  jsii.set(self, "lustreConfiguration", value) # pyright: ignore[reportArgumentType]
1376
1417
 
1418
+ @builtins.property
1419
+ @jsii.member(jsii_name="networkType")
1420
+ def network_type(self) -> typing.Optional[builtins.str]:
1421
+ '''The network type of the file system.'''
1422
+ return typing.cast(typing.Optional[builtins.str], jsii.get(self, "networkType"))
1423
+
1424
+ @network_type.setter
1425
+ def network_type(self, value: typing.Optional[builtins.str]) -> None:
1426
+ if __debug__:
1427
+ type_hints = typing.get_type_hints(_typecheckingstub__7799a7898c1d78dcdd2f9531854e7ff35a8f4a27f4de33e706134e2fa35387ac)
1428
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
1429
+ jsii.set(self, "networkType", value) # pyright: ignore[reportArgumentType]
1430
+
1377
1431
  @builtins.property
1378
1432
  @jsii.member(jsii_name="ontapConfiguration")
1379
1433
  def ontap_configuration(
@@ -1668,6 +1722,82 @@ class CfnFileSystem(
1668
1722
  k + "=" + repr(v) for k, v in self._values.items()
1669
1723
  )
1670
1724
 
1725
+ @jsii.data_type(
1726
+ jsii_type="aws-cdk-lib.aws_fsx.CfnFileSystem.DataReadCacheConfigurationProperty",
1727
+ jsii_struct_bases=[],
1728
+ name_mapping={"size_gib": "sizeGiB", "sizing_mode": "sizingMode"},
1729
+ )
1730
+ class DataReadCacheConfigurationProperty:
1731
+ def __init__(
1732
+ self,
1733
+ *,
1734
+ size_gib: typing.Optional[jsii.Number] = None,
1735
+ sizing_mode: typing.Optional[builtins.str] = None,
1736
+ ) -> None:
1737
+ '''The configuration for the optional provisioned SSD read cache on Amazon FSx for Lustre file systems that use the Intelligent-Tiering storage class.
1738
+
1739
+ :param size_gib: Required if ``SizingMode`` is set to ``USER_PROVISIONED`` . Specifies the size of the file system's SSD read cache, in gibibytes (GiB).
1740
+ :param sizing_mode: Specifies how the provisioned SSD read cache is sized, as follows:. - Set to ``NO_CACHE`` if you do not want to use an SSD read cache with your Intelligent-Tiering file system. - Set to ``USER_PROVISIONED`` to specify the exact size of your SSD read cache. - Set to ``PROPORTIONAL_TO_THROUGHPUT_CAPACITY`` to have your SSD read cache automatically sized based on your throughput capacity.
1741
+
1742
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-fsx-filesystem-datareadcacheconfiguration.html
1743
+ :exampleMetadata: fixture=_generated
1744
+
1745
+ Example::
1746
+
1747
+ # The code below shows an example of how to instantiate this type.
1748
+ # The values are placeholders you should change.
1749
+ from aws_cdk import aws_fsx as fsx
1750
+
1751
+ data_read_cache_configuration_property = fsx.CfnFileSystem.DataReadCacheConfigurationProperty(
1752
+ size_gi_b=123,
1753
+ sizing_mode="sizingMode"
1754
+ )
1755
+ '''
1756
+ if __debug__:
1757
+ type_hints = typing.get_type_hints(_typecheckingstub__3cb2d4a98bff48f203d8eaee325b8f6c388372cb868c4fa792f5c5693518337f)
1758
+ check_type(argname="argument size_gib", value=size_gib, expected_type=type_hints["size_gib"])
1759
+ check_type(argname="argument sizing_mode", value=sizing_mode, expected_type=type_hints["sizing_mode"])
1760
+ self._values: typing.Dict[builtins.str, typing.Any] = {}
1761
+ if size_gib is not None:
1762
+ self._values["size_gib"] = size_gib
1763
+ if sizing_mode is not None:
1764
+ self._values["sizing_mode"] = sizing_mode
1765
+
1766
+ @builtins.property
1767
+ def size_gib(self) -> typing.Optional[jsii.Number]:
1768
+ '''Required if ``SizingMode`` is set to ``USER_PROVISIONED`` .
1769
+
1770
+ Specifies the size of the file system's SSD read cache, in gibibytes (GiB).
1771
+
1772
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-fsx-filesystem-datareadcacheconfiguration.html#cfn-fsx-filesystem-datareadcacheconfiguration-sizegib
1773
+ '''
1774
+ result = self._values.get("size_gib")
1775
+ return typing.cast(typing.Optional[jsii.Number], result)
1776
+
1777
+ @builtins.property
1778
+ def sizing_mode(self) -> typing.Optional[builtins.str]:
1779
+ '''Specifies how the provisioned SSD read cache is sized, as follows:.
1780
+
1781
+ - Set to ``NO_CACHE`` if you do not want to use an SSD read cache with your Intelligent-Tiering file system.
1782
+ - Set to ``USER_PROVISIONED`` to specify the exact size of your SSD read cache.
1783
+ - Set to ``PROPORTIONAL_TO_THROUGHPUT_CAPACITY`` to have your SSD read cache automatically sized based on your throughput capacity.
1784
+
1785
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-fsx-filesystem-datareadcacheconfiguration.html#cfn-fsx-filesystem-datareadcacheconfiguration-sizingmode
1786
+ '''
1787
+ result = self._values.get("sizing_mode")
1788
+ return typing.cast(typing.Optional[builtins.str], result)
1789
+
1790
+ def __eq__(self, rhs: typing.Any) -> builtins.bool:
1791
+ return isinstance(rhs, self.__class__) and rhs._values == self._values
1792
+
1793
+ def __ne__(self, rhs: typing.Any) -> builtins.bool:
1794
+ return not (rhs == self)
1795
+
1796
+ def __repr__(self) -> str:
1797
+ return "DataReadCacheConfigurationProperty(%s)" % ", ".join(
1798
+ k + "=" + repr(v) for k, v in self._values.items()
1799
+ )
1800
+
1671
1801
  @jsii.data_type(
1672
1802
  jsii_type="aws-cdk-lib.aws_fsx.CfnFileSystem.DiskIopsConfigurationProperty",
1673
1803
  jsii_struct_bases=[],
@@ -1753,6 +1883,7 @@ class CfnFileSystem(
1753
1883
  "copy_tags_to_backups": "copyTagsToBackups",
1754
1884
  "daily_automatic_backup_start_time": "dailyAutomaticBackupStartTime",
1755
1885
  "data_compression_type": "dataCompressionType",
1886
+ "data_read_cache_configuration": "dataReadCacheConfiguration",
1756
1887
  "deployment_type": "deploymentType",
1757
1888
  "drive_cache_type": "driveCacheType",
1758
1889
  "efa_enabled": "efaEnabled",
@@ -1761,6 +1892,7 @@ class CfnFileSystem(
1761
1892
  "import_path": "importPath",
1762
1893
  "metadata_configuration": "metadataConfiguration",
1763
1894
  "per_unit_storage_throughput": "perUnitStorageThroughput",
1895
+ "throughput_capacity": "throughputCapacity",
1764
1896
  "weekly_maintenance_start_time": "weeklyMaintenanceStartTime",
1765
1897
  },
1766
1898
  )
@@ -1773,6 +1905,7 @@ class CfnFileSystem(
1773
1905
  copy_tags_to_backups: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]] = None,
1774
1906
  daily_automatic_backup_start_time: typing.Optional[builtins.str] = None,
1775
1907
  data_compression_type: typing.Optional[builtins.str] = None,
1908
+ data_read_cache_configuration: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnFileSystem.DataReadCacheConfigurationProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
1776
1909
  deployment_type: typing.Optional[builtins.str] = None,
1777
1910
  drive_cache_type: typing.Optional[builtins.str] = None,
1778
1911
  efa_enabled: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]] = None,
@@ -1781,6 +1914,7 @@ class CfnFileSystem(
1781
1914
  import_path: typing.Optional[builtins.str] = None,
1782
1915
  metadata_configuration: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnFileSystem.MetadataConfigurationProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
1783
1916
  per_unit_storage_throughput: typing.Optional[jsii.Number] = None,
1917
+ throughput_capacity: typing.Optional[jsii.Number] = None,
1784
1918
  weekly_maintenance_start_time: typing.Optional[builtins.str] = None,
1785
1919
  ) -> None:
1786
1920
  '''The configuration for the Amazon FSx for Lustre file system.
@@ -1790,14 +1924,16 @@ class CfnFileSystem(
1790
1924
  :param copy_tags_to_backups: (Optional) Not available for use with file systems that are linked to a data repository. A boolean flag indicating whether tags for the file system should be copied to backups. The default value is false. If ``CopyTagsToBackups`` is set to true, all file system tags are copied to all automatic and user-initiated backups when the user doesn't specify any backup-specific tags. If ``CopyTagsToBackups`` is set to true and you specify one or more backup tags, only the specified tags are copied to backups. If you specify one or more tags when creating a user-initiated backup, no tags are copied from the file system, regardless of this value. (Default = ``false`` ) For more information, see `Working with backups <https://docs.aws.amazon.com/fsx/latest/LustreGuide/using-backups-fsx.html>`_ in the *Amazon FSx for Lustre User Guide* .
1791
1925
  :param daily_automatic_backup_start_time: A recurring daily time, in the format ``HH:MM`` . ``HH`` is the zero-padded hour of the day (0-23), and ``MM`` is the zero-padded minute of the hour. For example, ``05:00`` specifies 5 AM daily.
1792
1926
  :param data_compression_type: Sets the data compression configuration for the file system. ``DataCompressionType`` can have the following values:. - ``NONE`` - (Default) Data compression is turned off when the file system is created. - ``LZ4`` - Data compression is turned on with the LZ4 algorithm. For more information, see `Lustre data compression <https://docs.aws.amazon.com/fsx/latest/LustreGuide/data-compression.html>`_ in the *Amazon FSx for Lustre User Guide* .
1793
- :param deployment_type: (Optional) Choose ``SCRATCH_1`` and ``SCRATCH_2`` deployment types when you need temporary storage and shorter-term processing of data. The ``SCRATCH_2`` deployment type provides in-transit encryption of data and higher burst throughput capacity than ``SCRATCH_1`` . Choose ``PERSISTENT_1`` for longer-term storage and for throughput-focused workloads that aren’t latency-sensitive. ``PERSISTENT_1`` supports encryption of data in transit, and is available in all AWS Regions in which FSx for Lustre is available. Choose ``PERSISTENT_2`` for longer-term storage and for latency-sensitive workloads that require the highest levels of IOPS/throughput. ``PERSISTENT_2`` supports SSD storage, and offers higher ``PerUnitStorageThroughput`` (up to 1000 MB/s/TiB). You can optionally specify a metadata configuration mode for ``PERSISTENT_2`` which supports increasing metadata performance. ``PERSISTENT_2`` is available in a limited number of AWS Regions . For more information, and an up-to-date list of AWS Regions in which ``PERSISTENT_2`` is available, see `File system deployment options for FSx for Lustre <https://docs.aws.amazon.com/fsx/latest/LustreGuide/using-fsx-lustre.html#lustre-deployment-types>`_ in the *Amazon FSx for Lustre User Guide* . .. epigraph:: If you choose ``PERSISTENT_2`` , and you set ``FileSystemTypeVersion`` to ``2.10`` , the ``CreateFileSystem`` operation fails. Encryption of data in transit is automatically turned on when you access ``SCRATCH_2`` , ``PERSISTENT_1`` , and ``PERSISTENT_2`` file systems from Amazon EC2 instances that support automatic encryption in the AWS Regions where they are available. For more information about encryption in transit for FSx for Lustre file systems, see `Encrypting data in transit <https://docs.aws.amazon.com/fsx/latest/LustreGuide/encryption-in-transit-fsxl.html>`_ in the *Amazon FSx for Lustre User Guide* . (Default = ``SCRATCH_1`` )
1927
+ :param data_read_cache_configuration: Specifies the optional provisioned SSD read cache on FSx for Lustre file systems that use the Intelligent-Tiering storage class. Required when ``StorageType`` is set to ``INTELLIGENT_TIERING`` .
1928
+ :param deployment_type: (Optional) Choose ``SCRATCH_1`` and ``SCRATCH_2`` deployment types when you need temporary storage and shorter-term processing of data. The ``SCRATCH_2`` deployment type provides in-transit encryption of data and higher burst throughput capacity than ``SCRATCH_1`` . Choose ``PERSISTENT_1`` for longer-term storage and for throughput-focused workloads that aren’t latency-sensitive. ``PERSISTENT_1`` supports encryption of data in transit, and is available in all AWS Regions in which FSx for Lustre is available. Choose ``PERSISTENT_2`` for longer-term storage and for latency-sensitive workloads that require the highest levels of IOPS/throughput. ``PERSISTENT_2`` supports the SSD and Intelligent-Tiering storage classes. You can optionally specify a metadata configuration mode for ``PERSISTENT_2`` which supports increasing metadata performance. ``PERSISTENT_2`` is available in a limited number of AWS Regions . For more information, and an up-to-date list of AWS Regions in which ``PERSISTENT_2`` is available, see `Deployment and storage class options for FSx for Lustre file systems <https://docs.aws.amazon.com/fsx/latest/LustreGuide/using-fsx-lustre.html>`_ in the *Amazon FSx for Lustre User Guide* . .. epigraph:: If you choose ``PERSISTENT_2`` , and you set ``FileSystemTypeVersion`` to ``2.10`` , the ``CreateFileSystem`` operation fails. Encryption of data in transit is automatically turned on when you access ``SCRATCH_2`` , ``PERSISTENT_1`` , and ``PERSISTENT_2`` file systems from Amazon EC2 instances that support automatic encryption in the AWS Regions where they are available. For more information about encryption in transit for FSx for Lustre file systems, see `Encrypting data in transit <https://docs.aws.amazon.com/fsx/latest/LustreGuide/encryption-in-transit-fsxl.html>`_ in the *Amazon FSx for Lustre User Guide* . (Default = ``SCRATCH_1`` )
1794
1929
  :param drive_cache_type: The type of drive cache used by ``PERSISTENT_1`` file systems that are provisioned with HDD storage devices. This parameter is required when storage type is HDD. Set this property to ``READ`` to improve the performance for frequently accessed files by caching up to 20% of the total storage capacity of the file system. This parameter is required when ``StorageType`` is set to ``HDD`` and ``DeploymentType`` is ``PERSISTENT_1`` .
1795
- :param efa_enabled:
1930
+ :param efa_enabled: (Optional) Specifies whether Elastic Fabric Adapter (EFA) and GPUDirect Storage (GDS) support is enabled for the Amazon FSx for Lustre file system. (Default = ``false`` )
1796
1931
  :param export_path: (Optional) Specifies the path in the Amazon S3 bucket where the root of your Amazon FSx file system is exported. The path must use the same Amazon S3 bucket as specified in ImportPath. You can provide an optional prefix to which new and changed data is to be exported from your Amazon FSx for Lustre file system. If an ``ExportPath`` value is not provided, Amazon FSx sets a default export path, ``s3://import-bucket/FSxLustre[creation-timestamp]`` . The timestamp is in UTC format, for example ``s3://import-bucket/FSxLustre20181105T222312Z`` . The Amazon S3 export bucket must be the same as the import bucket specified by ``ImportPath`` . If you specify only a bucket name, such as ``s3://import-bucket`` , you get a 1:1 mapping of file system objects to S3 bucket objects. This mapping means that the input data in S3 is overwritten on export. If you provide a custom prefix in the export path, such as ``s3://import-bucket/[custom-optional-prefix]`` , Amazon FSx exports the contents of your file system to that export prefix in the Amazon S3 bucket. .. epigraph:: This parameter is not supported for file systems with a data repository association.
1797
1932
  :param imported_file_chunk_size: (Optional) For files imported from a data repository, this value determines the stripe count and maximum amount of data per file (in MiB) stored on a single physical disk. The maximum number of disks that a single file can be striped across is limited by the total number of disks that make up the file system. The default chunk size is 1,024 MiB (1 GiB) and can go as high as 512,000 MiB (500 GiB). Amazon S3 objects have a maximum size of 5 TB. .. epigraph:: This parameter is not supported for Lustre file systems with a data repository association.
1798
1933
  :param import_path: (Optional) The path to the Amazon S3 bucket (including the optional prefix) that you're using as the data repository for your Amazon FSx for Lustre file system. The root of your FSx for Lustre file system will be mapped to the root of the Amazon S3 bucket you select. An example is ``s3://import-bucket/optional-prefix`` . If you specify a prefix after the Amazon S3 bucket name, only object keys with that prefix are loaded into the file system. .. epigraph:: This parameter is not supported for Lustre file systems with a data repository association.
1799
- :param metadata_configuration:
1934
+ :param metadata_configuration: The Lustre metadata performance configuration for the creation of an FSx for Lustre file system using a ``PERSISTENT_2`` deployment type.
1800
1935
  :param per_unit_storage_throughput: Required with ``PERSISTENT_1`` and ``PERSISTENT_2`` deployment types, provisions the amount of read and write throughput for each 1 tebibyte (TiB) of file system storage capacity, in MB/s/TiB. File system throughput capacity is calculated by multiplying file system storage capacity (TiB) by the ``PerUnitStorageThroughput`` (MB/s/TiB). For a 2.4-TiB file system, provisioning 50 MB/s/TiB of ``PerUnitStorageThroughput`` yields 120 MB/s of file system throughput. You pay for the amount of throughput that you provision. Valid values: - For ``PERSISTENT_1`` SSD storage: 50, 100, 200 MB/s/TiB. - For ``PERSISTENT_1`` HDD storage: 12, 40 MB/s/TiB. - For ``PERSISTENT_2`` SSD storage: 125, 250, 500, 1000 MB/s/TiB.
1936
+ :param throughput_capacity: Specifies the throughput of an FSx for Lustre file system using the Intelligent-Tiering storage class, measured in megabytes per second (MBps). Valid values are 4000 MBps or multiples of 4000 MBps. You pay for the amount of throughput that you provision.
1801
1937
  :param weekly_maintenance_start_time: The preferred start time to perform weekly maintenance, formatted d:HH:MM in the UTC time zone, where d is the weekday number, from 1 through 7, beginning with Monday and ending with Sunday. For example, ``1:05:00`` specifies maintenance at 5 AM Monday.
1802
1938
 
1803
1939
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-fsx-filesystem-lustreconfiguration.html
@@ -1815,6 +1951,10 @@ class CfnFileSystem(
1815
1951
  copy_tags_to_backups=False,
1816
1952
  daily_automatic_backup_start_time="dailyAutomaticBackupStartTime",
1817
1953
  data_compression_type="dataCompressionType",
1954
+ data_read_cache_configuration=fsx.CfnFileSystem.DataReadCacheConfigurationProperty(
1955
+ size_gi_b=123,
1956
+ sizing_mode="sizingMode"
1957
+ ),
1818
1958
  deployment_type="deploymentType",
1819
1959
  drive_cache_type="driveCacheType",
1820
1960
  efa_enabled=False,
@@ -1826,6 +1966,7 @@ class CfnFileSystem(
1826
1966
  mode="mode"
1827
1967
  ),
1828
1968
  per_unit_storage_throughput=123,
1969
+ throughput_capacity=123,
1829
1970
  weekly_maintenance_start_time="weeklyMaintenanceStartTime"
1830
1971
  )
1831
1972
  '''
@@ -1836,6 +1977,7 @@ class CfnFileSystem(
1836
1977
  check_type(argname="argument copy_tags_to_backups", value=copy_tags_to_backups, expected_type=type_hints["copy_tags_to_backups"])
1837
1978
  check_type(argname="argument daily_automatic_backup_start_time", value=daily_automatic_backup_start_time, expected_type=type_hints["daily_automatic_backup_start_time"])
1838
1979
  check_type(argname="argument data_compression_type", value=data_compression_type, expected_type=type_hints["data_compression_type"])
1980
+ check_type(argname="argument data_read_cache_configuration", value=data_read_cache_configuration, expected_type=type_hints["data_read_cache_configuration"])
1839
1981
  check_type(argname="argument deployment_type", value=deployment_type, expected_type=type_hints["deployment_type"])
1840
1982
  check_type(argname="argument drive_cache_type", value=drive_cache_type, expected_type=type_hints["drive_cache_type"])
1841
1983
  check_type(argname="argument efa_enabled", value=efa_enabled, expected_type=type_hints["efa_enabled"])
@@ -1844,6 +1986,7 @@ class CfnFileSystem(
1844
1986
  check_type(argname="argument import_path", value=import_path, expected_type=type_hints["import_path"])
1845
1987
  check_type(argname="argument metadata_configuration", value=metadata_configuration, expected_type=type_hints["metadata_configuration"])
1846
1988
  check_type(argname="argument per_unit_storage_throughput", value=per_unit_storage_throughput, expected_type=type_hints["per_unit_storage_throughput"])
1989
+ check_type(argname="argument throughput_capacity", value=throughput_capacity, expected_type=type_hints["throughput_capacity"])
1847
1990
  check_type(argname="argument weekly_maintenance_start_time", value=weekly_maintenance_start_time, expected_type=type_hints["weekly_maintenance_start_time"])
1848
1991
  self._values: typing.Dict[builtins.str, typing.Any] = {}
1849
1992
  if auto_import_policy is not None:
@@ -1856,6 +1999,8 @@ class CfnFileSystem(
1856
1999
  self._values["daily_automatic_backup_start_time"] = daily_automatic_backup_start_time
1857
2000
  if data_compression_type is not None:
1858
2001
  self._values["data_compression_type"] = data_compression_type
2002
+ if data_read_cache_configuration is not None:
2003
+ self._values["data_read_cache_configuration"] = data_read_cache_configuration
1859
2004
  if deployment_type is not None:
1860
2005
  self._values["deployment_type"] = deployment_type
1861
2006
  if drive_cache_type is not None:
@@ -1872,6 +2017,8 @@ class CfnFileSystem(
1872
2017
  self._values["metadata_configuration"] = metadata_configuration
1873
2018
  if per_unit_storage_throughput is not None:
1874
2019
  self._values["per_unit_storage_throughput"] = per_unit_storage_throughput
2020
+ if throughput_capacity is not None:
2021
+ self._values["throughput_capacity"] = throughput_capacity
1875
2022
  if weekly_maintenance_start_time is not None:
1876
2023
  self._values["weekly_maintenance_start_time"] = weekly_maintenance_start_time
1877
2024
 
@@ -1949,6 +2096,19 @@ class CfnFileSystem(
1949
2096
  result = self._values.get("data_compression_type")
1950
2097
  return typing.cast(typing.Optional[builtins.str], result)
1951
2098
 
2099
+ @builtins.property
2100
+ def data_read_cache_configuration(
2101
+ self,
2102
+ ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnFileSystem.DataReadCacheConfigurationProperty"]]:
2103
+ '''Specifies the optional provisioned SSD read cache on FSx for Lustre file systems that use the Intelligent-Tiering storage class.
2104
+
2105
+ Required when ``StorageType`` is set to ``INTELLIGENT_TIERING`` .
2106
+
2107
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-fsx-filesystem-lustreconfiguration.html#cfn-fsx-filesystem-lustreconfiguration-datareadcacheconfiguration
2108
+ '''
2109
+ result = self._values.get("data_read_cache_configuration")
2110
+ return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnFileSystem.DataReadCacheConfigurationProperty"]], result)
2111
+
1952
2112
  @builtins.property
1953
2113
  def deployment_type(self) -> typing.Optional[builtins.str]:
1954
2114
  '''(Optional) Choose ``SCRATCH_1`` and ``SCRATCH_2`` deployment types when you need temporary storage and shorter-term processing of data.
@@ -1957,7 +2117,7 @@ class CfnFileSystem(
1957
2117
 
1958
2118
  Choose ``PERSISTENT_1`` for longer-term storage and for throughput-focused workloads that aren’t latency-sensitive. ``PERSISTENT_1`` supports encryption of data in transit, and is available in all AWS Regions in which FSx for Lustre is available.
1959
2119
 
1960
- Choose ``PERSISTENT_2`` for longer-term storage and for latency-sensitive workloads that require the highest levels of IOPS/throughput. ``PERSISTENT_2`` supports SSD storage, and offers higher ``PerUnitStorageThroughput`` (up to 1000 MB/s/TiB). You can optionally specify a metadata configuration mode for ``PERSISTENT_2`` which supports increasing metadata performance. ``PERSISTENT_2`` is available in a limited number of AWS Regions . For more information, and an up-to-date list of AWS Regions in which ``PERSISTENT_2`` is available, see `File system deployment options for FSx for Lustre <https://docs.aws.amazon.com/fsx/latest/LustreGuide/using-fsx-lustre.html#lustre-deployment-types>`_ in the *Amazon FSx for Lustre User Guide* .
2120
+ Choose ``PERSISTENT_2`` for longer-term storage and for latency-sensitive workloads that require the highest levels of IOPS/throughput. ``PERSISTENT_2`` supports the SSD and Intelligent-Tiering storage classes. You can optionally specify a metadata configuration mode for ``PERSISTENT_2`` which supports increasing metadata performance. ``PERSISTENT_2`` is available in a limited number of AWS Regions . For more information, and an up-to-date list of AWS Regions in which ``PERSISTENT_2`` is available, see `Deployment and storage class options for FSx for Lustre file systems <https://docs.aws.amazon.com/fsx/latest/LustreGuide/using-fsx-lustre.html>`_ in the *Amazon FSx for Lustre User Guide* .
1961
2121
  .. epigraph::
1962
2122
 
1963
2123
  If you choose ``PERSISTENT_2`` , and you set ``FileSystemTypeVersion`` to ``2.10`` , the ``CreateFileSystem`` operation fails.
@@ -1988,7 +2148,10 @@ class CfnFileSystem(
1988
2148
  def efa_enabled(
1989
2149
  self,
1990
2150
  ) -> typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]]:
1991
- '''
2151
+ '''(Optional) Specifies whether Elastic Fabric Adapter (EFA) and GPUDirect Storage (GDS) support is enabled for the Amazon FSx for Lustre file system.
2152
+
2153
+ (Default = ``false`` )
2154
+
1992
2155
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-fsx-filesystem-lustreconfiguration.html#cfn-fsx-filesystem-lustreconfiguration-efaenabled
1993
2156
  '''
1994
2157
  result = self._values.get("efa_enabled")
@@ -2044,7 +2207,8 @@ class CfnFileSystem(
2044
2207
  def metadata_configuration(
2045
2208
  self,
2046
2209
  ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnFileSystem.MetadataConfigurationProperty"]]:
2047
- '''
2210
+ '''The Lustre metadata performance configuration for the creation of an FSx for Lustre file system using a ``PERSISTENT_2`` deployment type.
2211
+
2048
2212
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-fsx-filesystem-lustreconfiguration.html#cfn-fsx-filesystem-lustreconfiguration-metadataconfiguration
2049
2213
  '''
2050
2214
  result = self._values.get("metadata_configuration")
@@ -2067,6 +2231,17 @@ class CfnFileSystem(
2067
2231
  result = self._values.get("per_unit_storage_throughput")
2068
2232
  return typing.cast(typing.Optional[jsii.Number], result)
2069
2233
 
2234
+ @builtins.property
2235
+ def throughput_capacity(self) -> typing.Optional[jsii.Number]:
2236
+ '''Specifies the throughput of an FSx for Lustre file system using the Intelligent-Tiering storage class, measured in megabytes per second (MBps).
2237
+
2238
+ Valid values are 4000 MBps or multiples of 4000 MBps. You pay for the amount of throughput that you provision.
2239
+
2240
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-fsx-filesystem-lustreconfiguration.html#cfn-fsx-filesystem-lustreconfiguration-throughputcapacity
2241
+ '''
2242
+ result = self._values.get("throughput_capacity")
2243
+ return typing.cast(typing.Optional[jsii.Number], result)
2244
+
2070
2245
  @builtins.property
2071
2246
  def weekly_maintenance_start_time(self) -> typing.Optional[builtins.str]:
2072
2247
  '''The preferred start time to perform weekly maintenance, formatted d:HH:MM in the UTC time zone, where d is the weekday number, from 1 through 7, beginning with Monday and ending with Sunday.
@@ -2101,9 +2276,10 @@ class CfnFileSystem(
2101
2276
  iops: typing.Optional[jsii.Number] = None,
2102
2277
  mode: typing.Optional[builtins.str] = None,
2103
2278
  ) -> None:
2104
- '''
2105
- :param iops:
2106
- :param mode:
2279
+ '''The configuration that allows you to specify the performance of metadata operations for an FSx for Lustre file system.
2280
+
2281
+ :param iops: The number of Metadata IOPS provisioned for the file system.
2282
+ :param mode: Specifies whether the file system is using the AUTOMATIC setting of metadata IOPS or if it is using a USER_PROVISIONED value.
2107
2283
 
2108
2284
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-fsx-filesystem-metadataconfiguration.html
2109
2285
  :exampleMetadata: fixture=_generated
@@ -2131,7 +2307,8 @@ class CfnFileSystem(
2131
2307
 
2132
2308
  @builtins.property
2133
2309
  def iops(self) -> typing.Optional[jsii.Number]:
2134
- '''
2310
+ '''The number of Metadata IOPS provisioned for the file system.
2311
+
2135
2312
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-fsx-filesystem-metadataconfiguration.html#cfn-fsx-filesystem-metadataconfiguration-iops
2136
2313
  '''
2137
2314
  result = self._values.get("iops")
@@ -2139,7 +2316,8 @@ class CfnFileSystem(
2139
2316
 
2140
2317
  @builtins.property
2141
2318
  def mode(self) -> typing.Optional[builtins.str]:
2142
- '''
2319
+ '''Specifies whether the file system is using the AUTOMATIC setting of metadata IOPS or if it is using a USER_PROVISIONED value.
2320
+
2143
2321
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-fsx-filesystem-metadataconfiguration.html#cfn-fsx-filesystem-metadataconfiguration-mode
2144
2322
  '''
2145
2323
  result = self._values.get("mode")
@@ -2225,6 +2403,7 @@ class CfnFileSystem(
2225
2403
  "daily_automatic_backup_start_time": "dailyAutomaticBackupStartTime",
2226
2404
  "disk_iops_configuration": "diskIopsConfiguration",
2227
2405
  "endpoint_ip_address_range": "endpointIpAddressRange",
2406
+ "endpoint_ipv6_address_range": "endpointIpv6AddressRange",
2228
2407
  "fsx_admin_password": "fsxAdminPassword",
2229
2408
  "ha_pairs": "haPairs",
2230
2409
  "preferred_subnet_id": "preferredSubnetId",
@@ -2243,6 +2422,7 @@ class CfnFileSystem(
2243
2422
  daily_automatic_backup_start_time: typing.Optional[builtins.str] = None,
2244
2423
  disk_iops_configuration: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnFileSystem.DiskIopsConfigurationProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
2245
2424
  endpoint_ip_address_range: typing.Optional[builtins.str] = None,
2425
+ endpoint_ipv6_address_range: typing.Optional[builtins.str] = None,
2246
2426
  fsx_admin_password: typing.Optional[builtins.str] = None,
2247
2427
  ha_pairs: typing.Optional[jsii.Number] = None,
2248
2428
  preferred_subnet_id: typing.Optional[builtins.str] = None,
@@ -2257,7 +2437,8 @@ class CfnFileSystem(
2257
2437
  :param automatic_backup_retention_days: The number of days to retain automatic backups. Setting this property to ``0`` disables automatic backups. You can retain automatic backups for a maximum of 90 days. The default is ``30`` .
2258
2438
  :param daily_automatic_backup_start_time: A recurring daily time, in the format ``HH:MM`` . ``HH`` is the zero-padded hour of the day (0-23), and ``MM`` is the zero-padded minute of the hour. For example, ``05:00`` specifies 5 AM daily.
2259
2439
  :param disk_iops_configuration: The SSD IOPS configuration for the FSx for ONTAP file system.
2260
- :param endpoint_ip_address_range: (Multi-AZ only) Specifies the IP address range in which the endpoints to access your file system will be created. By default in the Amazon FSx API, Amazon FSx selects an unused IP address range for you from the 198.19.* range. By default in the Amazon FSx console, Amazon FSx chooses the last 64 IP addresses from the VPC’s primary CIDR range to use as the endpoint IP address range for the file system. You can have overlapping endpoint IP addresses for file systems deployed in the same VPC/route tables, as long as they don't overlap with any subnet.
2440
+ :param endpoint_ip_address_range: (Multi-AZ only) Specifies the IPv4 address range in which the endpoints to access your file system will be created. By default in the Amazon FSx API, Amazon FSx selects an unused IP address range for you from the 198.19.* range. By default in the Amazon FSx console, Amazon FSx chooses the last 64 IP addresses from the VPC’s primary CIDR range to use as the endpoint IP address range for the file system. You can have overlapping endpoint IP addresses for file systems deployed in the same VPC/route tables, as long as they don't overlap with any subnet.
2441
+ :param endpoint_ipv6_address_range:
2261
2442
  :param fsx_admin_password: The ONTAP administrative password for the ``fsxadmin`` user with which you administer your file system using the NetApp ONTAP CLI and REST API.
2262
2443
  :param ha_pairs: Specifies how many high-availability (HA) pairs of file servers will power your file system. First-generation file systems are powered by 1 HA pair. Second-generation multi-AZ file systems are powered by 1 HA pair. Second generation single-AZ file systems are powered by up to 12 HA pairs. The default value is 1. The value of this property affects the values of ``StorageCapacity`` , ``Iops`` , and ``ThroughputCapacity`` . For more information, see `High-availability (HA) pairs <https://docs.aws.amazon.com/fsx/latest/ONTAPGuide/administering-file-systems.html#HA-pairs>`_ in the FSx for ONTAP user guide. Block storage protocol support (iSCSI and NVMe over TCP) is disabled on file systems with more than 6 HA pairs. For more information, see `Using block storage protocols <https://docs.aws.amazon.com/fsx/latest/ONTAPGuide/supported-fsx-clients.html#using-block-storage>`_ . Amazon FSx responds with an HTTP status code 400 (Bad Request) for the following conditions: - The value of ``HAPairs`` is less than 1 or greater than 12. - The value of ``HAPairs`` is greater than 1 and the value of ``DeploymentType`` is ``SINGLE_AZ_1`` , ``MULTI_AZ_1`` , or ``MULTI_AZ_2`` .
2263
2444
  :param preferred_subnet_id: Required when ``DeploymentType`` is set to ``MULTI_AZ_1`` or ``MULTI_AZ_2`` . This specifies the subnet in which you want the preferred file server to be located.
@@ -2286,6 +2467,7 @@ class CfnFileSystem(
2286
2467
  mode="mode"
2287
2468
  ),
2288
2469
  endpoint_ip_address_range="endpointIpAddressRange",
2470
+ endpoint_ipv6_address_range="endpointIpv6AddressRange",
2289
2471
  fsx_admin_password="fsxAdminPassword",
2290
2472
  ha_pairs=123,
2291
2473
  preferred_subnet_id="preferredSubnetId",
@@ -2302,6 +2484,7 @@ class CfnFileSystem(
2302
2484
  check_type(argname="argument daily_automatic_backup_start_time", value=daily_automatic_backup_start_time, expected_type=type_hints["daily_automatic_backup_start_time"])
2303
2485
  check_type(argname="argument disk_iops_configuration", value=disk_iops_configuration, expected_type=type_hints["disk_iops_configuration"])
2304
2486
  check_type(argname="argument endpoint_ip_address_range", value=endpoint_ip_address_range, expected_type=type_hints["endpoint_ip_address_range"])
2487
+ check_type(argname="argument endpoint_ipv6_address_range", value=endpoint_ipv6_address_range, expected_type=type_hints["endpoint_ipv6_address_range"])
2305
2488
  check_type(argname="argument fsx_admin_password", value=fsx_admin_password, expected_type=type_hints["fsx_admin_password"])
2306
2489
  check_type(argname="argument ha_pairs", value=ha_pairs, expected_type=type_hints["ha_pairs"])
2307
2490
  check_type(argname="argument preferred_subnet_id", value=preferred_subnet_id, expected_type=type_hints["preferred_subnet_id"])
@@ -2320,6 +2503,8 @@ class CfnFileSystem(
2320
2503
  self._values["disk_iops_configuration"] = disk_iops_configuration
2321
2504
  if endpoint_ip_address_range is not None:
2322
2505
  self._values["endpoint_ip_address_range"] = endpoint_ip_address_range
2506
+ if endpoint_ipv6_address_range is not None:
2507
+ self._values["endpoint_ipv6_address_range"] = endpoint_ipv6_address_range
2323
2508
  if fsx_admin_password is not None:
2324
2509
  self._values["fsx_admin_password"] = fsx_admin_password
2325
2510
  if ha_pairs is not None:
@@ -2387,7 +2572,7 @@ class CfnFileSystem(
2387
2572
 
2388
2573
  @builtins.property
2389
2574
  def endpoint_ip_address_range(self) -> typing.Optional[builtins.str]:
2390
- '''(Multi-AZ only) Specifies the IP address range in which the endpoints to access your file system will be created.
2575
+ '''(Multi-AZ only) Specifies the IPv4 address range in which the endpoints to access your file system will be created.
2391
2576
 
2392
2577
  By default in the Amazon FSx API, Amazon FSx selects an unused IP address range for you from the 198.19.* range. By default in the Amazon FSx console, Amazon FSx chooses the last 64 IP addresses from the VPC’s primary CIDR range to use as the endpoint IP address range for the file system. You can have overlapping endpoint IP addresses for file systems deployed in the same VPC/route tables, as long as they don't overlap with any subnet.
2393
2578
 
@@ -2396,6 +2581,14 @@ class CfnFileSystem(
2396
2581
  result = self._values.get("endpoint_ip_address_range")
2397
2582
  return typing.cast(typing.Optional[builtins.str], result)
2398
2583
 
2584
+ @builtins.property
2585
+ def endpoint_ipv6_address_range(self) -> typing.Optional[builtins.str]:
2586
+ '''
2587
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-fsx-filesystem-ontapconfiguration.html#cfn-fsx-filesystem-ontapconfiguration-endpointipv6addressrange
2588
+ '''
2589
+ result = self._values.get("endpoint_ipv6_address_range")
2590
+ return typing.cast(typing.Optional[builtins.str], result)
2591
+
2399
2592
  @builtins.property
2400
2593
  def fsx_admin_password(self) -> typing.Optional[builtins.str]:
2401
2594
  '''The ONTAP administrative password for the ``fsxadmin`` user with which you administer your file system using the NetApp ONTAP CLI and REST API.
@@ -2518,6 +2711,7 @@ class CfnFileSystem(
2518
2711
  "daily_automatic_backup_start_time": "dailyAutomaticBackupStartTime",
2519
2712
  "disk_iops_configuration": "diskIopsConfiguration",
2520
2713
  "endpoint_ip_address_range": "endpointIpAddressRange",
2714
+ "endpoint_ipv6_address_range": "endpointIpv6AddressRange",
2521
2715
  "options": "options",
2522
2716
  "preferred_subnet_id": "preferredSubnetId",
2523
2717
  "read_cache_configuration": "readCacheConfiguration",
@@ -2538,6 +2732,7 @@ class CfnFileSystem(
2538
2732
  daily_automatic_backup_start_time: typing.Optional[builtins.str] = None,
2539
2733
  disk_iops_configuration: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnFileSystem.DiskIopsConfigurationProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
2540
2734
  endpoint_ip_address_range: typing.Optional[builtins.str] = None,
2735
+ endpoint_ipv6_address_range: typing.Optional[builtins.str] = None,
2541
2736
  options: typing.Optional[typing.Sequence[builtins.str]] = None,
2542
2737
  preferred_subnet_id: typing.Optional[builtins.str] = None,
2543
2738
  read_cache_configuration: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnFileSystem.ReadCacheConfigurationProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
@@ -2554,13 +2749,14 @@ class CfnFileSystem(
2554
2749
  :param copy_tags_to_volumes: A Boolean value indicating whether tags for the file system should be copied to volumes. This value defaults to ``false`` . If it's set to ``true`` , all tags for the file system are copied to volumes where the user doesn't specify tags. If this value is ``true`` , and you specify one or more tags, only the specified tags are copied to volumes. If you specify one or more tags when creating the volume, no tags are copied from the file system, regardless of this value.
2555
2750
  :param daily_automatic_backup_start_time: A recurring daily time, in the format ``HH:MM`` . ``HH`` is the zero-padded hour of the day (0-23), and ``MM`` is the zero-padded minute of the hour. For example, ``05:00`` specifies 5 AM daily.
2556
2751
  :param disk_iops_configuration: The SSD IOPS (input/output operations per second) configuration for an Amazon FSx for NetApp ONTAP, Amazon FSx for Windows File Server, or FSx for OpenZFS file system. By default, Amazon FSx automatically provisions 3 IOPS per GB of storage capacity. You can provision additional IOPS per GB of storage. The configuration consists of the total number of provisioned SSD IOPS and how it is was provisioned, or the mode (by the customer or by Amazon FSx).
2557
- :param endpoint_ip_address_range: (Multi-AZ only) Specifies the IP address range in which the endpoints to access your file system will be created. By default in the Amazon FSx API and Amazon FSx console, Amazon FSx selects an available /28 IP address range for you from one of the VPC's CIDR ranges. You can have overlapping endpoint IP addresses for file systems deployed in the same VPC/route tables, as long as they don't overlap with any subnet.
2752
+ :param endpoint_ip_address_range: (Multi-AZ only) Specifies the IPv4 address range in which the endpoints to access your file system will be created. By default in the Amazon FSx API and Amazon FSx console, Amazon FSx selects an available /28 IP address range for you from one of the VPC's CIDR ranges. You can have overlapping endpoint IP addresses for file systems deployed in the same VPC/route tables, as long as they don't overlap with any subnet.
2753
+ :param endpoint_ipv6_address_range: (Multi-AZ only) Specifies the IP address range in which the endpoints to access your file system will be created. By default in the Amazon FSx API and Amazon FSx console, Amazon FSx selects an available /118 IP address range for you from one of the VPC's CIDR ranges. You can have overlapping endpoint IP addresses for file systems deployed in the same VPC/route tables, as long as they don't overlap with any subnet.
2558
2754
  :param options: To delete a file system if there are child volumes present below the root volume, use the string ``DELETE_CHILD_VOLUMES_AND_SNAPSHOTS`` . If your file system has child volumes and you don't use this option, the delete request will fail.
2559
2755
  :param preferred_subnet_id: Required when ``DeploymentType`` is set to ``MULTI_AZ_1`` . This specifies the subnet in which you want the preferred file server to be located.
2560
2756
  :param read_cache_configuration: Specifies the optional provisioned SSD read cache on file systems that use the Intelligent-Tiering storage class.
2561
2757
  :param root_volume_configuration: The configuration Amazon FSx uses when creating the root value of the Amazon FSx for OpenZFS file system. All volumes are children of the root volume.
2562
2758
  :param route_table_ids: (Multi-AZ only) Specifies the route tables in which Amazon FSx creates the rules for routing traffic to the correct file server. You should specify all virtual private cloud (VPC) route tables associated with the subnets in which your clients are located. By default, Amazon FSx selects your VPC's default route table.
2563
- :param throughput_capacity: Specifies the throughput of an Amazon FSx for OpenZFS file system, measured in megabytes per second (MBps). Valid values depend on the ``DeploymentType`` that you choose, as follows: - For ``MULTI_AZ_1`` and ``SINGLE_AZ_2`` , valid values are 160, 320, 640, 1280, 2560, 3840, 5120, 7680, or 10240 MBps. - For ``SINGLE_AZ_1`` , valid values are 64, 128, 256, 512, 1024, 2048, 3072, or 4096 MBps. You pay for additional throughput capacity that you provision.
2759
+ :param throughput_capacity: Specifies the throughput of an Amazon FSx for OpenZFS file system, measured in megabytes per second (MBps). Required if you are creating a new file system. Valid values depend on the ``DeploymentType`` that you choose, as follows: - For ``MULTI_AZ_1`` and ``SINGLE_AZ_2`` , valid values are 160, 320, 640, 1280, 2560, 3840, 5120, 7680, or 10240 MBps. - For ``SINGLE_AZ_1`` , valid values are 64, 128, 256, 512, 1024, 2048, 3072, or 4096 MBps. You pay for additional throughput capacity that you provision.
2564
2760
  :param weekly_maintenance_start_time: The preferred start time to perform weekly maintenance, formatted d:HH:MM in the UTC time zone, where d is the weekday number, from 1 through 7, beginning with Monday and ending with Sunday. For example, ``1:05:00`` specifies maintenance at 5 AM Monday.
2565
2761
 
2566
2762
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-fsx-filesystem-openzfsconfiguration.html
@@ -2585,6 +2781,7 @@ class CfnFileSystem(
2585
2781
  mode="mode"
2586
2782
  ),
2587
2783
  endpoint_ip_address_range="endpointIpAddressRange",
2784
+ endpoint_ipv6_address_range="endpointIpv6AddressRange",
2588
2785
  options=["options"],
2589
2786
  preferred_subnet_id="preferredSubnetId",
2590
2787
  read_cache_configuration=fsx.CfnFileSystem.ReadCacheConfigurationProperty(
@@ -2622,6 +2819,7 @@ class CfnFileSystem(
2622
2819
  check_type(argname="argument daily_automatic_backup_start_time", value=daily_automatic_backup_start_time, expected_type=type_hints["daily_automatic_backup_start_time"])
2623
2820
  check_type(argname="argument disk_iops_configuration", value=disk_iops_configuration, expected_type=type_hints["disk_iops_configuration"])
2624
2821
  check_type(argname="argument endpoint_ip_address_range", value=endpoint_ip_address_range, expected_type=type_hints["endpoint_ip_address_range"])
2822
+ check_type(argname="argument endpoint_ipv6_address_range", value=endpoint_ipv6_address_range, expected_type=type_hints["endpoint_ipv6_address_range"])
2625
2823
  check_type(argname="argument options", value=options, expected_type=type_hints["options"])
2626
2824
  check_type(argname="argument preferred_subnet_id", value=preferred_subnet_id, expected_type=type_hints["preferred_subnet_id"])
2627
2825
  check_type(argname="argument read_cache_configuration", value=read_cache_configuration, expected_type=type_hints["read_cache_configuration"])
@@ -2644,6 +2842,8 @@ class CfnFileSystem(
2644
2842
  self._values["disk_iops_configuration"] = disk_iops_configuration
2645
2843
  if endpoint_ip_address_range is not None:
2646
2844
  self._values["endpoint_ip_address_range"] = endpoint_ip_address_range
2845
+ if endpoint_ipv6_address_range is not None:
2846
+ self._values["endpoint_ipv6_address_range"] = endpoint_ipv6_address_range
2647
2847
  if options is not None:
2648
2848
  self._values["options"] = options
2649
2849
  if preferred_subnet_id is not None:
@@ -2740,7 +2940,7 @@ class CfnFileSystem(
2740
2940
 
2741
2941
  @builtins.property
2742
2942
  def endpoint_ip_address_range(self) -> typing.Optional[builtins.str]:
2743
- '''(Multi-AZ only) Specifies the IP address range in which the endpoints to access your file system will be created.
2943
+ '''(Multi-AZ only) Specifies the IPv4 address range in which the endpoints to access your file system will be created.
2744
2944
 
2745
2945
  By default in the Amazon FSx API and Amazon FSx console, Amazon FSx selects an available /28 IP address range for you from one of the VPC's CIDR ranges. You can have overlapping endpoint IP addresses for file systems deployed in the same VPC/route tables, as long as they don't overlap with any subnet.
2746
2946
 
@@ -2749,6 +2949,17 @@ class CfnFileSystem(
2749
2949
  result = self._values.get("endpoint_ip_address_range")
2750
2950
  return typing.cast(typing.Optional[builtins.str], result)
2751
2951
 
2952
+ @builtins.property
2953
+ def endpoint_ipv6_address_range(self) -> typing.Optional[builtins.str]:
2954
+ '''(Multi-AZ only) Specifies the IP address range in which the endpoints to access your file system will be created.
2955
+
2956
+ By default in the Amazon FSx API and Amazon FSx console, Amazon FSx selects an available /118 IP address range for you from one of the VPC's CIDR ranges. You can have overlapping endpoint IP addresses for file systems deployed in the same VPC/route tables, as long as they don't overlap with any subnet.
2957
+
2958
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-fsx-filesystem-openzfsconfiguration.html#cfn-fsx-filesystem-openzfsconfiguration-endpointipv6addressrange
2959
+ '''
2960
+ result = self._values.get("endpoint_ipv6_address_range")
2961
+ return typing.cast(typing.Optional[builtins.str], result)
2962
+
2752
2963
  @builtins.property
2753
2964
  def options(self) -> typing.Optional[typing.List[builtins.str]]:
2754
2965
  '''To delete a file system if there are child volumes present below the root volume, use the string ``DELETE_CHILD_VOLUMES_AND_SNAPSHOTS`` .
@@ -2810,6 +3021,8 @@ class CfnFileSystem(
2810
3021
  def throughput_capacity(self) -> typing.Optional[jsii.Number]:
2811
3022
  '''Specifies the throughput of an Amazon FSx for OpenZFS file system, measured in megabytes per second (MBps).
2812
3023
 
3024
+ Required if you are creating a new file system.
3025
+
2813
3026
  Valid values depend on the ``DeploymentType`` that you choose, as follows:
2814
3027
 
2815
3028
  - For ``MULTI_AZ_1`` and ``SINGLE_AZ_2`` , valid values are 160, 320, 640, 1280, 2560, 3840, 5120, 7680, or 10240 MBps.
@@ -2856,7 +3069,7 @@ class CfnFileSystem(
2856
3069
  size_gib: typing.Optional[jsii.Number] = None,
2857
3070
  sizing_mode: typing.Optional[builtins.str] = None,
2858
3071
  ) -> None:
2859
- '''The configuration for the optional provisioned SSD read cache on file systems that use the Intelligent-Tiering storage class.
3072
+ '''The configuration for the optional provisioned SSD read cache on Amazon FSx for OpenZFS file systems that use the Intelligent-Tiering storage class.
2860
3073
 
2861
3074
  :param size_gib: Required if ``SizingMode`` is set to ``USER_PROVISIONED`` . Specifies the size of the file system's SSD read cache, in gibibytes (GiB).
2862
3075
  :param sizing_mode: Specifies how the provisioned SSD read cache is sized, as follows:. - Set to ``NO_CACHE`` if you do not want to use an SSD read cache with your Intelligent-Tiering file system. - Set to ``USER_PROVISIONED`` to specify the exact size of your SSD read cache. - Set to ``PROPORTIONAL_TO_THROUGHPUT_CAPACITY`` to have your SSD read cache automatically sized based on your throughput capacity.
@@ -3633,6 +3846,7 @@ class CfnFileSystem(
3633
3846
  "file_system_type_version": "fileSystemTypeVersion",
3634
3847
  "kms_key_id": "kmsKeyId",
3635
3848
  "lustre_configuration": "lustreConfiguration",
3849
+ "network_type": "networkType",
3636
3850
  "ontap_configuration": "ontapConfiguration",
3637
3851
  "open_zfs_configuration": "openZfsConfiguration",
3638
3852
  "security_group_ids": "securityGroupIds",
@@ -3652,6 +3866,7 @@ class CfnFileSystemProps:
3652
3866
  file_system_type_version: typing.Optional[builtins.str] = None,
3653
3867
  kms_key_id: typing.Optional[builtins.str] = None,
3654
3868
  lustre_configuration: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnFileSystem.LustreConfigurationProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
3869
+ network_type: typing.Optional[builtins.str] = None,
3655
3870
  ontap_configuration: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnFileSystem.OntapConfigurationProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
3656
3871
  open_zfs_configuration: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnFileSystem.OpenZFSConfigurationProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
3657
3872
  security_group_ids: typing.Optional[typing.Sequence[builtins.str]] = None,
@@ -3666,15 +3881,16 @@ class CfnFileSystemProps:
3666
3881
  :param subnet_ids: Specifies the IDs of the subnets that the file system will be accessible from. For Windows and ONTAP ``MULTI_AZ_1`` deployment types,provide exactly two subnet IDs, one for the preferred file server and one for the standby file server. You specify one of these subnets as the preferred subnet using the ``WindowsConfiguration > PreferredSubnetID`` or ``OntapConfiguration > PreferredSubnetID`` properties. For more information about Multi-AZ file system configuration, see `Availability and durability: Single-AZ and Multi-AZ file systems <https://docs.aws.amazon.com/fsx/latest/WindowsGuide/high-availability-multiAZ.html>`_ in the *Amazon FSx for Windows User Guide* and `Availability and durability <https://docs.aws.amazon.com/fsx/latest/ONTAPGuide/high-availability-multiAZ.html>`_ in the *Amazon FSx for ONTAP User Guide* . For Windows ``SINGLE_AZ_1`` and ``SINGLE_AZ_2`` and all Lustre deployment types, provide exactly one subnet ID. The file server is launched in that subnet's Availability Zone.
3667
3882
  :param backup_id: The ID of the file system backup that you are using to create a file system. For more information, see `CreateFileSystemFromBackup <https://docs.aws.amazon.com/fsx/latest/APIReference/API_CreateFileSystemFromBackup.html>`_ .
3668
3883
  :param file_system_type_version: For FSx for Lustre file systems, sets the Lustre version for the file system that you're creating. Valid values are ``2.10`` , ``2.12`` , and ``2.15`` : - ``2.10`` is supported by the Scratch and Persistent_1 Lustre deployment types. - ``2.12`` is supported by all Lustre deployment types, except for ``PERSISTENT_2`` with a metadata configuration mode. - ``2.15`` is supported by all Lustre deployment types and is recommended for all new file systems. Default value is ``2.10`` , except for the following deployments: - Default value is ``2.12`` when ``DeploymentType`` is set to ``PERSISTENT_2`` without a metadata configuration mode. - Default value is ``2.15`` when ``DeploymentType`` is set to ``PERSISTENT_2`` with a metadata configuration mode.
3669
- :param kms_key_id: The ID of the AWS Key Management Service ( AWS KMS ) key used to encrypt Amazon FSx file system data. Used as follows with Amazon FSx file system types: - Amazon FSx for Lustre ``PERSISTENT_1`` and ``PERSISTENT_2`` deployment types only. ``SCRATCH_1`` and ``SCRATCH_2`` types are encrypted using the Amazon FSx service AWS KMS key for your account. - Amazon FSx for NetApp ONTAP - Amazon FSx for OpenZFS - Amazon FSx for Windows File Server
3670
- :param lustre_configuration: The Lustre configuration for the file system being created. .. epigraph:: The following parameters are not supported when creating Lustre file systems with a data repository association. - ``AutoImportPolicy`` - ``ExportPath`` - ``ImportedChunkSize`` - ``ImportPath``
3671
- :param ontap_configuration: The ONTAP configuration properties of the FSx for ONTAP file system that you are creating.
3672
- :param open_zfs_configuration: The Amazon FSx for OpenZFS configuration properties for the file system that you are creating.
3884
+ :param kms_key_id: The ID of the AWS Key Management Service ( AWS KMS ) key used to encrypt Amazon FSx file system data. Used as follows with Amazon FSx file system types: - Amazon FSx for Lustre ``PERSISTENT_1`` and ``PERSISTENT_2`` deployment types only. ``SCRATCH_1`` and ``SCRATCH_2`` types are encrypted using the Amazon FSx service AWS KMS key for your account. - Amazon FSx for NetApp ONTAP - Amazon FSx for OpenZFS - Amazon FSx for Windows File Server If this ID isn't specified, the Amazon FSx-managed key for your account is used. For more information, see `Encrypt <https://docs.aws.amazon.com//kms/latest/APIReference/API_Encrypt.html>`_ in the *AWS Key Management Service API Reference* .
3885
+ :param lustre_configuration: The Lustre configuration for the file system being created. This configuration is required if the ``FileSystemType`` is set to ``LUSTRE`` . .. epigraph:: The following parameters are not supported when creating Lustre file systems with a data repository association. - ``AutoImportPolicy`` - ``ExportPath`` - ``ImportedChunkSize`` - ``ImportPath``
3886
+ :param network_type: The network type of the file system.
3887
+ :param ontap_configuration: The ONTAP configuration properties of the FSx for ONTAP file system that you are creating. This configuration is required if the ``FileSystemType`` is set to ``ONTAP`` .
3888
+ :param open_zfs_configuration: The Amazon FSx for OpenZFS configuration properties for the file system that you are creating. This configuration is required if the ``FileSystemType`` is set to ``OPENZFS`` .
3673
3889
  :param security_group_ids: A list of IDs specifying the security groups to apply to all network interfaces created for file system access. This list isn't returned in later requests to describe the file system. .. epigraph:: You must specify a security group if you are creating a Multi-AZ FSx for ONTAP file system in a VPC subnet that has been shared with you.
3674
3890
  :param storage_capacity: Sets the storage capacity of the file system that you're creating. ``StorageCapacity`` is required if you are creating a new file system. It is not required if you are creating a file system by restoring a backup. *FSx for Lustre file systems* - The amount of storage capacity that you can configure depends on the value that you set for ``StorageType`` and the Lustre ``DeploymentType`` , as follows: - For ``SCRATCH_2`` , ``PERSISTENT_2`` and ``PERSISTENT_1`` deployment types using SSD storage type, the valid values are 1200 GiB, 2400 GiB, and increments of 2400 GiB. - For ``PERSISTENT_1`` HDD file systems, valid values are increments of 6000 GiB for 12 MB/s/TiB file systems and increments of 1800 GiB for 40 MB/s/TiB file systems. - For ``SCRATCH_1`` deployment type, valid values are 1200 GiB, 2400 GiB, and increments of 3600 GiB. *FSx for ONTAP file systems* - The amount of SSD storage capacity that you can configure depends on the value of the ``HAPairs`` property. The minimum value is calculated as 1,024 GiB * HAPairs and the maximum is calculated as 524,288 GiB * HAPairs, up to a maximum amount of SSD storage capacity of 1,048,576 GiB (1 pebibyte). *FSx for OpenZFS file systems* - The amount of storage capacity that you can configure is from 64 GiB up to 524,288 GiB (512 TiB). If you are creating a file system from a backup, you can specify a storage capacity equal to or greater than the original file system's storage capacity. *FSx for Windows File Server file systems* - The amount of storage capacity that you can configure depends on the value that you set for ``StorageType`` as follows: - For SSD storage, valid values are 32 GiB-65,536 GiB (64 TiB). - For HDD storage, valid values are 2000 GiB-65,536 GiB (64 TiB).
3675
- :param storage_type: Sets the storage class for the file system that you're creating. Valid values are ``SSD`` , ``HDD`` , and ``INTELLIGENT_TIERING`` . - Set to ``SSD`` to use solid state drive storage. SSD is supported on all Windows, Lustre, ONTAP, and OpenZFS deployment types. - Set to ``HDD`` to use hard disk drive storage, which is supported on ``SINGLE_AZ_2`` and ``MULTI_AZ_1`` Windows file system deployment types, and on ``PERSISTENT_1`` Lustre file system deployment types. - Set to ``INTELLIGENT_TIERING`` to use fully elastic, intelligently-tiered storage. Intelligent-Tiering is only available for OpenZFS file systems with the Multi-AZ deployment type. Default value is ``SSD`` . For more information, see `Storage type options <https://docs.aws.amazon.com/fsx/latest/WindowsGuide/optimize-fsx-costs.html#storage-type-options>`_ in the *FSx for Windows File Server User Guide* , `Multiple storage options <https://docs.aws.amazon.com/fsx/latest/LustreGuide/what-is.html#storage-options>`_ in the *FSx for Lustre User Guide* , and `Working with Intelligent-Tiering <https://docs.aws.amazon.com/fsx/latest/OpenZFSGuide/performance-intelligent-tiering>`_ in the *Amazon FSx for OpenZFS User Guide* .
3891
+ :param storage_type: Sets the storage class for the file system that you're creating. Valid values are ``SSD`` , ``HDD`` , and ``INTELLIGENT_TIERING`` . - Set to ``SSD`` to use solid state drive storage. SSD is supported on all Windows, Lustre, ONTAP, and OpenZFS deployment types. - Set to ``HDD`` to use hard disk drive storage, which is supported on ``SINGLE_AZ_2`` and ``MULTI_AZ_1`` Windows file system deployment types, and on ``PERSISTENT_1`` Lustre file system deployment types. - Set to ``INTELLIGENT_TIERING`` to use fully elastic, intelligently-tiered storage. Intelligent-Tiering is only available for OpenZFS file systems with the Multi-AZ deployment type and for Lustre file systems with the Persistent_2 deployment type. Default value is ``SSD`` . For more information, see `Storage type options <https://docs.aws.amazon.com/fsx/latest/WindowsGuide/optimize-fsx-costs.html#storage-type-options>`_ in the *FSx for Windows File Server User Guide* , `FSx for Lustre storage classes <https://docs.aws.amazon.com/fsx/latest/LustreGuide/using-fsx-lustre.html#lustre-storage-classes>`_ in the *FSx for Lustre User Guide* , and `Working with Intelligent-Tiering <https://docs.aws.amazon.com/fsx/latest/OpenZFSGuide/performance-intelligent-tiering>`_ in the *Amazon FSx for OpenZFS User Guide* .
3676
3892
  :param tags: The tags to associate with the file system. For more information, see `Tagging your Amazon FSx resources <https://docs.aws.amazon.com/fsx/latest/LustreGuide/tag-resources.html>`_ in the *Amazon FSx for Lustre User Guide* .
3677
- :param windows_configuration: The configuration object for the Microsoft Windows file system you are creating. This value is required if ``FileSystemType`` is set to ``WINDOWS`` .
3893
+ :param windows_configuration: The configuration object for the Microsoft Windows file system you are creating. This configuration is required if ``FileSystemType`` is set to ``WINDOWS`` .
3678
3894
 
3679
3895
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-fsx-filesystem.html
3680
3896
  :exampleMetadata: fixture=_generated
@@ -3699,6 +3915,10 @@ class CfnFileSystemProps:
3699
3915
  copy_tags_to_backups=False,
3700
3916
  daily_automatic_backup_start_time="dailyAutomaticBackupStartTime",
3701
3917
  data_compression_type="dataCompressionType",
3918
+ data_read_cache_configuration=fsx.CfnFileSystem.DataReadCacheConfigurationProperty(
3919
+ size_gi_b=123,
3920
+ sizing_mode="sizingMode"
3921
+ ),
3702
3922
  deployment_type="deploymentType",
3703
3923
  drive_cache_type="driveCacheType",
3704
3924
  efa_enabled=False,
@@ -3710,8 +3930,10 @@ class CfnFileSystemProps:
3710
3930
  mode="mode"
3711
3931
  ),
3712
3932
  per_unit_storage_throughput=123,
3933
+ throughput_capacity=123,
3713
3934
  weekly_maintenance_start_time="weeklyMaintenanceStartTime"
3714
3935
  ),
3936
+ network_type="networkType",
3715
3937
  ontap_configuration=fsx.CfnFileSystem.OntapConfigurationProperty(
3716
3938
  deployment_type="deploymentType",
3717
3939
 
@@ -3723,6 +3945,7 @@ class CfnFileSystemProps:
3723
3945
  mode="mode"
3724
3946
  ),
3725
3947
  endpoint_ip_address_range="endpointIpAddressRange",
3948
+ endpoint_ipv6_address_range="endpointIpv6AddressRange",
3726
3949
  fsx_admin_password="fsxAdminPassword",
3727
3950
  ha_pairs=123,
3728
3951
  preferred_subnet_id="preferredSubnetId",
@@ -3744,6 +3967,7 @@ class CfnFileSystemProps:
3744
3967
  mode="mode"
3745
3968
  ),
3746
3969
  endpoint_ip_address_range="endpointIpAddressRange",
3970
+ endpoint_ipv6_address_range="endpointIpv6AddressRange",
3747
3971
  options=["options"],
3748
3972
  preferred_subnet_id="preferredSubnetId",
3749
3973
  read_cache_configuration=fsx.CfnFileSystem.ReadCacheConfigurationProperty(
@@ -3820,6 +4044,7 @@ class CfnFileSystemProps:
3820
4044
  check_type(argname="argument file_system_type_version", value=file_system_type_version, expected_type=type_hints["file_system_type_version"])
3821
4045
  check_type(argname="argument kms_key_id", value=kms_key_id, expected_type=type_hints["kms_key_id"])
3822
4046
  check_type(argname="argument lustre_configuration", value=lustre_configuration, expected_type=type_hints["lustre_configuration"])
4047
+ check_type(argname="argument network_type", value=network_type, expected_type=type_hints["network_type"])
3823
4048
  check_type(argname="argument ontap_configuration", value=ontap_configuration, expected_type=type_hints["ontap_configuration"])
3824
4049
  check_type(argname="argument open_zfs_configuration", value=open_zfs_configuration, expected_type=type_hints["open_zfs_configuration"])
3825
4050
  check_type(argname="argument security_group_ids", value=security_group_ids, expected_type=type_hints["security_group_ids"])
@@ -3839,6 +4064,8 @@ class CfnFileSystemProps:
3839
4064
  self._values["kms_key_id"] = kms_key_id
3840
4065
  if lustre_configuration is not None:
3841
4066
  self._values["lustre_configuration"] = lustre_configuration
4067
+ if network_type is not None:
4068
+ self._values["network_type"] = network_type
3842
4069
  if ontap_configuration is not None:
3843
4070
  self._values["ontap_configuration"] = ontap_configuration
3844
4071
  if open_zfs_configuration is not None:
@@ -3923,6 +4150,8 @@ class CfnFileSystemProps:
3923
4150
  - Amazon FSx for OpenZFS
3924
4151
  - Amazon FSx for Windows File Server
3925
4152
 
4153
+ If this ID isn't specified, the Amazon FSx-managed key for your account is used. For more information, see `Encrypt <https://docs.aws.amazon.com//kms/latest/APIReference/API_Encrypt.html>`_ in the *AWS Key Management Service API Reference* .
4154
+
3926
4155
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-fsx-filesystem.html#cfn-fsx-filesystem-kmskeyid
3927
4156
  '''
3928
4157
  result = self._values.get("kms_key_id")
@@ -3934,6 +4163,7 @@ class CfnFileSystemProps:
3934
4163
  ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, CfnFileSystem.LustreConfigurationProperty]]:
3935
4164
  '''The Lustre configuration for the file system being created.
3936
4165
 
4166
+ This configuration is required if the ``FileSystemType`` is set to ``LUSTRE`` .
3937
4167
  .. epigraph::
3938
4168
 
3939
4169
  The following parameters are not supported when creating Lustre file systems with a data repository association.
@@ -3943,113 +4173,946 @@ class CfnFileSystemProps:
3943
4173
  - ``ImportedChunkSize``
3944
4174
  - ``ImportPath``
3945
4175
 
3946
- :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-fsx-filesystem.html#cfn-fsx-filesystem-lustreconfiguration
3947
- '''
3948
- result = self._values.get("lustre_configuration")
3949
- return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, CfnFileSystem.LustreConfigurationProperty]], result)
4176
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-fsx-filesystem.html#cfn-fsx-filesystem-lustreconfiguration
4177
+ '''
4178
+ result = self._values.get("lustre_configuration")
4179
+ return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, CfnFileSystem.LustreConfigurationProperty]], result)
4180
+
4181
+ @builtins.property
4182
+ def network_type(self) -> typing.Optional[builtins.str]:
4183
+ '''The network type of the file system.
4184
+
4185
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-fsx-filesystem.html#cfn-fsx-filesystem-networktype
4186
+ '''
4187
+ result = self._values.get("network_type")
4188
+ return typing.cast(typing.Optional[builtins.str], result)
4189
+
4190
+ @builtins.property
4191
+ def ontap_configuration(
4192
+ self,
4193
+ ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, CfnFileSystem.OntapConfigurationProperty]]:
4194
+ '''The ONTAP configuration properties of the FSx for ONTAP file system that you are creating.
4195
+
4196
+ This configuration is required if the ``FileSystemType`` is set to ``ONTAP`` .
4197
+
4198
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-fsx-filesystem.html#cfn-fsx-filesystem-ontapconfiguration
4199
+ '''
4200
+ result = self._values.get("ontap_configuration")
4201
+ return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, CfnFileSystem.OntapConfigurationProperty]], result)
4202
+
4203
+ @builtins.property
4204
+ def open_zfs_configuration(
4205
+ self,
4206
+ ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, CfnFileSystem.OpenZFSConfigurationProperty]]:
4207
+ '''The Amazon FSx for OpenZFS configuration properties for the file system that you are creating.
4208
+
4209
+ This configuration is required if the ``FileSystemType`` is set to ``OPENZFS`` .
4210
+
4211
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-fsx-filesystem.html#cfn-fsx-filesystem-openzfsconfiguration
4212
+ '''
4213
+ result = self._values.get("open_zfs_configuration")
4214
+ return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, CfnFileSystem.OpenZFSConfigurationProperty]], result)
4215
+
4216
+ @builtins.property
4217
+ def security_group_ids(self) -> typing.Optional[typing.List[builtins.str]]:
4218
+ '''A list of IDs specifying the security groups to apply to all network interfaces created for file system access.
4219
+
4220
+ This list isn't returned in later requests to describe the file system.
4221
+ .. epigraph::
4222
+
4223
+ You must specify a security group if you are creating a Multi-AZ FSx for ONTAP file system in a VPC subnet that has been shared with you.
4224
+
4225
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-fsx-filesystem.html#cfn-fsx-filesystem-securitygroupids
4226
+ '''
4227
+ result = self._values.get("security_group_ids")
4228
+ return typing.cast(typing.Optional[typing.List[builtins.str]], result)
4229
+
4230
+ @builtins.property
4231
+ def storage_capacity(self) -> typing.Optional[jsii.Number]:
4232
+ '''Sets the storage capacity of the file system that you're creating.
4233
+
4234
+ ``StorageCapacity`` is required if you are creating a new file system. It is not required if you are creating a file system by restoring a backup.
4235
+
4236
+ *FSx for Lustre file systems* - The amount of storage capacity that you can configure depends on the value that you set for ``StorageType`` and the Lustre ``DeploymentType`` , as follows:
4237
+
4238
+ - For ``SCRATCH_2`` , ``PERSISTENT_2`` and ``PERSISTENT_1`` deployment types using SSD storage type, the valid values are 1200 GiB, 2400 GiB, and increments of 2400 GiB.
4239
+ - For ``PERSISTENT_1`` HDD file systems, valid values are increments of 6000 GiB for 12 MB/s/TiB file systems and increments of 1800 GiB for 40 MB/s/TiB file systems.
4240
+ - For ``SCRATCH_1`` deployment type, valid values are 1200 GiB, 2400 GiB, and increments of 3600 GiB.
4241
+
4242
+ *FSx for ONTAP file systems* - The amount of SSD storage capacity that you can configure depends on the value of the ``HAPairs`` property. The minimum value is calculated as 1,024 GiB * HAPairs and the maximum is calculated as 524,288 GiB * HAPairs, up to a maximum amount of SSD storage capacity of 1,048,576 GiB (1 pebibyte).
4243
+
4244
+ *FSx for OpenZFS file systems* - The amount of storage capacity that you can configure is from 64 GiB up to 524,288 GiB (512 TiB). If you are creating a file system from a backup, you can specify a storage capacity equal to or greater than the original file system's storage capacity.
4245
+
4246
+ *FSx for Windows File Server file systems* - The amount of storage capacity that you can configure depends on the value that you set for ``StorageType`` as follows:
4247
+
4248
+ - For SSD storage, valid values are 32 GiB-65,536 GiB (64 TiB).
4249
+ - For HDD storage, valid values are 2000 GiB-65,536 GiB (64 TiB).
4250
+
4251
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-fsx-filesystem.html#cfn-fsx-filesystem-storagecapacity
4252
+ '''
4253
+ result = self._values.get("storage_capacity")
4254
+ return typing.cast(typing.Optional[jsii.Number], result)
4255
+
4256
+ @builtins.property
4257
+ def storage_type(self) -> typing.Optional[builtins.str]:
4258
+ '''Sets the storage class for the file system that you're creating.
4259
+
4260
+ Valid values are ``SSD`` , ``HDD`` , and ``INTELLIGENT_TIERING`` .
4261
+
4262
+ - Set to ``SSD`` to use solid state drive storage. SSD is supported on all Windows, Lustre, ONTAP, and OpenZFS deployment types.
4263
+ - Set to ``HDD`` to use hard disk drive storage, which is supported on ``SINGLE_AZ_2`` and ``MULTI_AZ_1`` Windows file system deployment types, and on ``PERSISTENT_1`` Lustre file system deployment types.
4264
+ - Set to ``INTELLIGENT_TIERING`` to use fully elastic, intelligently-tiered storage. Intelligent-Tiering is only available for OpenZFS file systems with the Multi-AZ deployment type and for Lustre file systems with the Persistent_2 deployment type.
4265
+
4266
+ Default value is ``SSD`` . For more information, see `Storage type options <https://docs.aws.amazon.com/fsx/latest/WindowsGuide/optimize-fsx-costs.html#storage-type-options>`_ in the *FSx for Windows File Server User Guide* , `FSx for Lustre storage classes <https://docs.aws.amazon.com/fsx/latest/LustreGuide/using-fsx-lustre.html#lustre-storage-classes>`_ in the *FSx for Lustre User Guide* , and `Working with Intelligent-Tiering <https://docs.aws.amazon.com/fsx/latest/OpenZFSGuide/performance-intelligent-tiering>`_ in the *Amazon FSx for OpenZFS User Guide* .
4267
+
4268
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-fsx-filesystem.html#cfn-fsx-filesystem-storagetype
4269
+ '''
4270
+ result = self._values.get("storage_type")
4271
+ return typing.cast(typing.Optional[builtins.str], result)
4272
+
4273
+ @builtins.property
4274
+ def tags(self) -> typing.Optional[typing.List[_CfnTag_f6864754]]:
4275
+ '''The tags to associate with the file system.
4276
+
4277
+ For more information, see `Tagging your Amazon FSx resources <https://docs.aws.amazon.com/fsx/latest/LustreGuide/tag-resources.html>`_ in the *Amazon FSx for Lustre User Guide* .
4278
+
4279
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-fsx-filesystem.html#cfn-fsx-filesystem-tags
4280
+ '''
4281
+ result = self._values.get("tags")
4282
+ return typing.cast(typing.Optional[typing.List[_CfnTag_f6864754]], result)
4283
+
4284
+ @builtins.property
4285
+ def windows_configuration(
4286
+ self,
4287
+ ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, CfnFileSystem.WindowsConfigurationProperty]]:
4288
+ '''The configuration object for the Microsoft Windows file system you are creating.
4289
+
4290
+ This configuration is required if ``FileSystemType`` is set to ``WINDOWS`` .
4291
+
4292
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-fsx-filesystem.html#cfn-fsx-filesystem-windowsconfiguration
4293
+ '''
4294
+ result = self._values.get("windows_configuration")
4295
+ return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, CfnFileSystem.WindowsConfigurationProperty]], result)
4296
+
4297
+ def __eq__(self, rhs: typing.Any) -> builtins.bool:
4298
+ return isinstance(rhs, self.__class__) and rhs._values == self._values
4299
+
4300
+ def __ne__(self, rhs: typing.Any) -> builtins.bool:
4301
+ return not (rhs == self)
4302
+
4303
+ def __repr__(self) -> str:
4304
+ return "CfnFileSystemProps(%s)" % ", ".join(
4305
+ k + "=" + repr(v) for k, v in self._values.items()
4306
+ )
4307
+
4308
+
4309
+ @jsii.implements(_IInspectable_c2943556, _IS3AccessPointAttachmentRef_22b962a0)
4310
+ class CfnS3AccessPointAttachment(
4311
+ _CfnResource_9df397a6,
4312
+ metaclass=jsii.JSIIMeta,
4313
+ jsii_type="aws-cdk-lib.aws_fsx.CfnS3AccessPointAttachment",
4314
+ ):
4315
+ '''An S3 access point attached to an Amazon FSx volume.
4316
+
4317
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-fsx-s3accesspointattachment.html
4318
+ :cloudformationResource: AWS::FSx::S3AccessPointAttachment
4319
+ :exampleMetadata: fixture=_generated
4320
+
4321
+ Example::
4322
+
4323
+ # The code below shows an example of how to instantiate this type.
4324
+ # The values are placeholders you should change.
4325
+ from aws_cdk import aws_fsx as fsx
4326
+
4327
+ # policy: Any
4328
+
4329
+ cfn_s3_access_point_attachment = fsx.CfnS3AccessPointAttachment(self, "MyCfnS3AccessPointAttachment",
4330
+ name="name",
4331
+ open_zfs_configuration=fsx.CfnS3AccessPointAttachment.S3AccessPointOpenZFSConfigurationProperty(
4332
+ file_system_identity=fsx.CfnS3AccessPointAttachment.OpenZFSFileSystemIdentityProperty(
4333
+ posix_user=fsx.CfnS3AccessPointAttachment.OpenZFSPosixFileSystemUserProperty(
4334
+ gid=123,
4335
+ uid=123,
4336
+
4337
+ # the properties below are optional
4338
+ secondary_gids=[fsx.CfnS3AccessPointAttachment.FileSystemGIDProperty(
4339
+ gid=123
4340
+ )]
4341
+ ),
4342
+ type="type"
4343
+ ),
4344
+ volume_id="volumeId"
4345
+ ),
4346
+ type="type",
4347
+
4348
+ # the properties below are optional
4349
+ s3_access_point=fsx.CfnS3AccessPointAttachment.S3AccessPointProperty(
4350
+ alias="alias",
4351
+ policy=policy,
4352
+ resource_arn="resourceArn",
4353
+ vpc_configuration=fsx.CfnS3AccessPointAttachment.S3AccessPointVpcConfigurationProperty(
4354
+ vpc_id="vpcId"
4355
+ )
4356
+ )
4357
+ )
4358
+ '''
4359
+
4360
+ def __init__(
4361
+ self,
4362
+ scope: _constructs_77d1e7e8.Construct,
4363
+ id: builtins.str,
4364
+ *,
4365
+ name: builtins.str,
4366
+ open_zfs_configuration: typing.Union[_IResolvable_da3f097b, typing.Union["CfnS3AccessPointAttachment.S3AccessPointOpenZFSConfigurationProperty", typing.Dict[builtins.str, typing.Any]]],
4367
+ type: builtins.str,
4368
+ s3_access_point: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnS3AccessPointAttachment.S3AccessPointProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
4369
+ ) -> None:
4370
+ '''Create a new ``AWS::FSx::S3AccessPointAttachment``.
4371
+
4372
+ :param scope: Scope in which this resource is defined.
4373
+ :param id: Construct identifier for this resource (unique in its scope).
4374
+ :param name: The name of the S3 access point attachment; also used for the name of the S3 access point.
4375
+ :param open_zfs_configuration: The OpenZFSConfiguration of the S3 access point attachment.
4376
+ :param type: The type of Amazon FSx volume that the S3 access point is attached to.
4377
+ :param s3_access_point: The S3 access point configuration of the S3 access point attachment.
4378
+ '''
4379
+ if __debug__:
4380
+ type_hints = typing.get_type_hints(_typecheckingstub__f51e0b107c6c6ca8bc284dbcf4013f6c7bcdd088cb084476fdf615b4d8ae257e)
4381
+ check_type(argname="argument scope", value=scope, expected_type=type_hints["scope"])
4382
+ check_type(argname="argument id", value=id, expected_type=type_hints["id"])
4383
+ props = CfnS3AccessPointAttachmentProps(
4384
+ name=name,
4385
+ open_zfs_configuration=open_zfs_configuration,
4386
+ type=type,
4387
+ s3_access_point=s3_access_point,
4388
+ )
4389
+
4390
+ jsii.create(self.__class__, self, [scope, id, props])
4391
+
4392
+ @jsii.member(jsii_name="inspect")
4393
+ def inspect(self, inspector: _TreeInspector_488e0dd5) -> None:
4394
+ '''Examines the CloudFormation resource and discloses attributes.
4395
+
4396
+ :param inspector: tree inspector to collect and process attributes.
4397
+ '''
4398
+ if __debug__:
4399
+ type_hints = typing.get_type_hints(_typecheckingstub__6e021f2b2cc052b241526f0c8b04451cdbb773840ed5e597d710011b7885f25f)
4400
+ check_type(argname="argument inspector", value=inspector, expected_type=type_hints["inspector"])
4401
+ return typing.cast(None, jsii.invoke(self, "inspect", [inspector]))
4402
+
4403
+ @jsii.member(jsii_name="renderProperties")
4404
+ def _render_properties(
4405
+ self,
4406
+ props: typing.Mapping[builtins.str, typing.Any],
4407
+ ) -> typing.Mapping[builtins.str, typing.Any]:
4408
+ '''
4409
+ :param props: -
4410
+ '''
4411
+ if __debug__:
4412
+ type_hints = typing.get_type_hints(_typecheckingstub__e4764700463d52298286c209b2ab565142140f7bfb04556d307ca9bd56430fb2)
4413
+ check_type(argname="argument props", value=props, expected_type=type_hints["props"])
4414
+ return typing.cast(typing.Mapping[builtins.str, typing.Any], jsii.invoke(self, "renderProperties", [props]))
4415
+
4416
+ @jsii.python.classproperty
4417
+ @jsii.member(jsii_name="CFN_RESOURCE_TYPE_NAME")
4418
+ def CFN_RESOURCE_TYPE_NAME(cls) -> builtins.str:
4419
+ '''The CloudFormation resource type name for this resource class.'''
4420
+ return typing.cast(builtins.str, jsii.sget(cls, "CFN_RESOURCE_TYPE_NAME"))
4421
+
4422
+ @builtins.property
4423
+ @jsii.member(jsii_name="attrS3AccessPointAlias")
4424
+ def attr_s3_access_point_alias(self) -> builtins.str:
4425
+ '''The S3 access point's alias.
4426
+
4427
+ :cloudformationAttribute: S3AccessPoint.Alias
4428
+ '''
4429
+ return typing.cast(builtins.str, jsii.get(self, "attrS3AccessPointAlias"))
4430
+
4431
+ @builtins.property
4432
+ @jsii.member(jsii_name="attrS3AccessPointResourceArn")
4433
+ def attr_s3_access_point_resource_arn(self) -> builtins.str:
4434
+ '''The S3 access point's ARN.
4435
+
4436
+ :cloudformationAttribute: S3AccessPoint.ResourceARN
4437
+ '''
4438
+ return typing.cast(builtins.str, jsii.get(self, "attrS3AccessPointResourceArn"))
4439
+
4440
+ @builtins.property
4441
+ @jsii.member(jsii_name="cfnProperties")
4442
+ def _cfn_properties(self) -> typing.Mapping[builtins.str, typing.Any]:
4443
+ return typing.cast(typing.Mapping[builtins.str, typing.Any], jsii.get(self, "cfnProperties"))
4444
+
4445
+ @builtins.property
4446
+ @jsii.member(jsii_name="s3AccessPointAttachmentRef")
4447
+ def s3_access_point_attachment_ref(
4448
+ self,
4449
+ ) -> _S3AccessPointAttachmentReference_4957ffc1:
4450
+ '''A reference to a S3AccessPointAttachment resource.'''
4451
+ return typing.cast(_S3AccessPointAttachmentReference_4957ffc1, jsii.get(self, "s3AccessPointAttachmentRef"))
4452
+
4453
+ @builtins.property
4454
+ @jsii.member(jsii_name="name")
4455
+ def name(self) -> builtins.str:
4456
+ '''The name of the S3 access point attachment;'''
4457
+ return typing.cast(builtins.str, jsii.get(self, "name"))
4458
+
4459
+ @name.setter
4460
+ def name(self, value: builtins.str) -> None:
4461
+ if __debug__:
4462
+ type_hints = typing.get_type_hints(_typecheckingstub__644edd6bd850880f5ebd47e103e56e49b7d7f21e620f2807e12dac453933e59d)
4463
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
4464
+ jsii.set(self, "name", value) # pyright: ignore[reportArgumentType]
4465
+
4466
+ @builtins.property
4467
+ @jsii.member(jsii_name="openZfsConfiguration")
4468
+ def open_zfs_configuration(
4469
+ self,
4470
+ ) -> typing.Union[_IResolvable_da3f097b, "CfnS3AccessPointAttachment.S3AccessPointOpenZFSConfigurationProperty"]:
4471
+ '''The OpenZFSConfiguration of the S3 access point attachment.'''
4472
+ return typing.cast(typing.Union[_IResolvable_da3f097b, "CfnS3AccessPointAttachment.S3AccessPointOpenZFSConfigurationProperty"], jsii.get(self, "openZfsConfiguration"))
4473
+
4474
+ @open_zfs_configuration.setter
4475
+ def open_zfs_configuration(
4476
+ self,
4477
+ value: typing.Union[_IResolvable_da3f097b, "CfnS3AccessPointAttachment.S3AccessPointOpenZFSConfigurationProperty"],
4478
+ ) -> None:
4479
+ if __debug__:
4480
+ type_hints = typing.get_type_hints(_typecheckingstub__0756a73fef71599ffefeead45c6d0ea227439b511cdc73a360780b4f4c0df186)
4481
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
4482
+ jsii.set(self, "openZfsConfiguration", value) # pyright: ignore[reportArgumentType]
4483
+
4484
+ @builtins.property
4485
+ @jsii.member(jsii_name="type")
4486
+ def type(self) -> builtins.str:
4487
+ '''The type of Amazon FSx volume that the S3 access point is attached to.'''
4488
+ return typing.cast(builtins.str, jsii.get(self, "type"))
4489
+
4490
+ @type.setter
4491
+ def type(self, value: builtins.str) -> None:
4492
+ if __debug__:
4493
+ type_hints = typing.get_type_hints(_typecheckingstub__ece88a5ab6d3a69d75415d92fc3eea5b9fd91186f1a15239e5ec10f6c6c0005a)
4494
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
4495
+ jsii.set(self, "type", value) # pyright: ignore[reportArgumentType]
4496
+
4497
+ @builtins.property
4498
+ @jsii.member(jsii_name="s3AccessPoint")
4499
+ def s3_access_point(
4500
+ self,
4501
+ ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnS3AccessPointAttachment.S3AccessPointProperty"]]:
4502
+ '''The S3 access point configuration of the S3 access point attachment.'''
4503
+ return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnS3AccessPointAttachment.S3AccessPointProperty"]], jsii.get(self, "s3AccessPoint"))
4504
+
4505
+ @s3_access_point.setter
4506
+ def s3_access_point(
4507
+ self,
4508
+ value: typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnS3AccessPointAttachment.S3AccessPointProperty"]],
4509
+ ) -> None:
4510
+ if __debug__:
4511
+ type_hints = typing.get_type_hints(_typecheckingstub__1588dcc78f8354bc56e434d157b8dadab331295e3cbf0c065b7bd4b4b793aaa0)
4512
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
4513
+ jsii.set(self, "s3AccessPoint", value) # pyright: ignore[reportArgumentType]
4514
+
4515
+ @jsii.data_type(
4516
+ jsii_type="aws-cdk-lib.aws_fsx.CfnS3AccessPointAttachment.FileSystemGIDProperty",
4517
+ jsii_struct_bases=[],
4518
+ name_mapping={"gid": "gid"},
4519
+ )
4520
+ class FileSystemGIDProperty:
4521
+ def __init__(self, *, gid: jsii.Number) -> None:
4522
+ '''The GID of the file system user.
4523
+
4524
+ :param gid: The GID of the file system user.
4525
+
4526
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-fsx-s3accesspointattachment-filesystemgid.html
4527
+ :exampleMetadata: fixture=_generated
4528
+
4529
+ Example::
4530
+
4531
+ # The code below shows an example of how to instantiate this type.
4532
+ # The values are placeholders you should change.
4533
+ from aws_cdk import aws_fsx as fsx
4534
+
4535
+ file_system_gIDProperty = fsx.CfnS3AccessPointAttachment.FileSystemGIDProperty(
4536
+ gid=123
4537
+ )
4538
+ '''
4539
+ if __debug__:
4540
+ type_hints = typing.get_type_hints(_typecheckingstub__72efd25b3b6057030d910de35b2f8e4104cb66dc72f89dc8ebb3b89daaf6a69f)
4541
+ check_type(argname="argument gid", value=gid, expected_type=type_hints["gid"])
4542
+ self._values: typing.Dict[builtins.str, typing.Any] = {
4543
+ "gid": gid,
4544
+ }
4545
+
4546
+ @builtins.property
4547
+ def gid(self) -> jsii.Number:
4548
+ '''The GID of the file system user.
4549
+
4550
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-fsx-s3accesspointattachment-filesystemgid.html#cfn-fsx-s3accesspointattachment-filesystemgid-gid
4551
+ '''
4552
+ result = self._values.get("gid")
4553
+ assert result is not None, "Required property 'gid' is missing"
4554
+ return typing.cast(jsii.Number, result)
4555
+
4556
+ def __eq__(self, rhs: typing.Any) -> builtins.bool:
4557
+ return isinstance(rhs, self.__class__) and rhs._values == self._values
4558
+
4559
+ def __ne__(self, rhs: typing.Any) -> builtins.bool:
4560
+ return not (rhs == self)
4561
+
4562
+ def __repr__(self) -> str:
4563
+ return "FileSystemGIDProperty(%s)" % ", ".join(
4564
+ k + "=" + repr(v) for k, v in self._values.items()
4565
+ )
4566
+
4567
+ @jsii.data_type(
4568
+ jsii_type="aws-cdk-lib.aws_fsx.CfnS3AccessPointAttachment.OpenZFSFileSystemIdentityProperty",
4569
+ jsii_struct_bases=[],
4570
+ name_mapping={"posix_user": "posixUser", "type": "type"},
4571
+ )
4572
+ class OpenZFSFileSystemIdentityProperty:
4573
+ def __init__(
4574
+ self,
4575
+ *,
4576
+ posix_user: typing.Union[_IResolvable_da3f097b, typing.Union["CfnS3AccessPointAttachment.OpenZFSPosixFileSystemUserProperty", typing.Dict[builtins.str, typing.Any]]],
4577
+ type: builtins.str,
4578
+ ) -> None:
4579
+ '''Specifies the file system user identity that will be used for authorizing all file access requests that are made using the S3 access point.
4580
+
4581
+ :param posix_user: Specifies the UID and GIDs of the file system POSIX user.
4582
+ :param type: Specifies the FSx for OpenZFS user identity type, accepts only ``POSIX`` .
4583
+
4584
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-fsx-s3accesspointattachment-openzfsfilesystemidentity.html
4585
+ :exampleMetadata: fixture=_generated
4586
+
4587
+ Example::
4588
+
4589
+ # The code below shows an example of how to instantiate this type.
4590
+ # The values are placeholders you should change.
4591
+ from aws_cdk import aws_fsx as fsx
4592
+
4593
+ open_zFSFile_system_identity_property = fsx.CfnS3AccessPointAttachment.OpenZFSFileSystemIdentityProperty(
4594
+ posix_user=fsx.CfnS3AccessPointAttachment.OpenZFSPosixFileSystemUserProperty(
4595
+ gid=123,
4596
+ uid=123,
4597
+
4598
+ # the properties below are optional
4599
+ secondary_gids=[fsx.CfnS3AccessPointAttachment.FileSystemGIDProperty(
4600
+ gid=123
4601
+ )]
4602
+ ),
4603
+ type="type"
4604
+ )
4605
+ '''
4606
+ if __debug__:
4607
+ type_hints = typing.get_type_hints(_typecheckingstub__af3bbbb456f8fdedf7c641c4786d89bf08acb663687e1b91f1ffdb83ab9819cb)
4608
+ check_type(argname="argument posix_user", value=posix_user, expected_type=type_hints["posix_user"])
4609
+ check_type(argname="argument type", value=type, expected_type=type_hints["type"])
4610
+ self._values: typing.Dict[builtins.str, typing.Any] = {
4611
+ "posix_user": posix_user,
4612
+ "type": type,
4613
+ }
4614
+
4615
+ @builtins.property
4616
+ def posix_user(
4617
+ self,
4618
+ ) -> typing.Union[_IResolvable_da3f097b, "CfnS3AccessPointAttachment.OpenZFSPosixFileSystemUserProperty"]:
4619
+ '''Specifies the UID and GIDs of the file system POSIX user.
4620
+
4621
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-fsx-s3accesspointattachment-openzfsfilesystemidentity.html#cfn-fsx-s3accesspointattachment-openzfsfilesystemidentity-posixuser
4622
+ '''
4623
+ result = self._values.get("posix_user")
4624
+ assert result is not None, "Required property 'posix_user' is missing"
4625
+ return typing.cast(typing.Union[_IResolvable_da3f097b, "CfnS3AccessPointAttachment.OpenZFSPosixFileSystemUserProperty"], result)
4626
+
4627
+ @builtins.property
4628
+ def type(self) -> builtins.str:
4629
+ '''Specifies the FSx for OpenZFS user identity type, accepts only ``POSIX`` .
4630
+
4631
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-fsx-s3accesspointattachment-openzfsfilesystemidentity.html#cfn-fsx-s3accesspointattachment-openzfsfilesystemidentity-type
4632
+ '''
4633
+ result = self._values.get("type")
4634
+ assert result is not None, "Required property 'type' is missing"
4635
+ return typing.cast(builtins.str, result)
4636
+
4637
+ def __eq__(self, rhs: typing.Any) -> builtins.bool:
4638
+ return isinstance(rhs, self.__class__) and rhs._values == self._values
4639
+
4640
+ def __ne__(self, rhs: typing.Any) -> builtins.bool:
4641
+ return not (rhs == self)
4642
+
4643
+ def __repr__(self) -> str:
4644
+ return "OpenZFSFileSystemIdentityProperty(%s)" % ", ".join(
4645
+ k + "=" + repr(v) for k, v in self._values.items()
4646
+ )
4647
+
4648
+ @jsii.data_type(
4649
+ jsii_type="aws-cdk-lib.aws_fsx.CfnS3AccessPointAttachment.OpenZFSPosixFileSystemUserProperty",
4650
+ jsii_struct_bases=[],
4651
+ name_mapping={"gid": "gid", "uid": "uid", "secondary_gids": "secondaryGids"},
4652
+ )
4653
+ class OpenZFSPosixFileSystemUserProperty:
4654
+ def __init__(
4655
+ self,
4656
+ *,
4657
+ gid: jsii.Number,
4658
+ uid: jsii.Number,
4659
+ secondary_gids: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union["CfnS3AccessPointAttachment.FileSystemGIDProperty", typing.Dict[builtins.str, typing.Any]]]]]] = None,
4660
+ ) -> None:
4661
+ '''The FSx for OpenZFS file system user that is used for authorizing all file access requests that are made using the S3 access point.
4662
+
4663
+ :param gid: The GID of the file system user.
4664
+ :param uid: The UID of the file system user.
4665
+ :param secondary_gids: The list of secondary GIDs for the file system user.
4666
+
4667
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-fsx-s3accesspointattachment-openzfsposixfilesystemuser.html
4668
+ :exampleMetadata: fixture=_generated
4669
+
4670
+ Example::
4671
+
4672
+ # The code below shows an example of how to instantiate this type.
4673
+ # The values are placeholders you should change.
4674
+ from aws_cdk import aws_fsx as fsx
4675
+
4676
+ open_zFSPosix_file_system_user_property = fsx.CfnS3AccessPointAttachment.OpenZFSPosixFileSystemUserProperty(
4677
+ gid=123,
4678
+ uid=123,
4679
+
4680
+ # the properties below are optional
4681
+ secondary_gids=[fsx.CfnS3AccessPointAttachment.FileSystemGIDProperty(
4682
+ gid=123
4683
+ )]
4684
+ )
4685
+ '''
4686
+ if __debug__:
4687
+ type_hints = typing.get_type_hints(_typecheckingstub__3decc490fdc822be6603dab799c80c7e004416dbd58cc34ea290fa556e81be39)
4688
+ check_type(argname="argument gid", value=gid, expected_type=type_hints["gid"])
4689
+ check_type(argname="argument uid", value=uid, expected_type=type_hints["uid"])
4690
+ check_type(argname="argument secondary_gids", value=secondary_gids, expected_type=type_hints["secondary_gids"])
4691
+ self._values: typing.Dict[builtins.str, typing.Any] = {
4692
+ "gid": gid,
4693
+ "uid": uid,
4694
+ }
4695
+ if secondary_gids is not None:
4696
+ self._values["secondary_gids"] = secondary_gids
4697
+
4698
+ @builtins.property
4699
+ def gid(self) -> jsii.Number:
4700
+ '''The GID of the file system user.
4701
+
4702
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-fsx-s3accesspointattachment-openzfsposixfilesystemuser.html#cfn-fsx-s3accesspointattachment-openzfsposixfilesystemuser-gid
4703
+ '''
4704
+ result = self._values.get("gid")
4705
+ assert result is not None, "Required property 'gid' is missing"
4706
+ return typing.cast(jsii.Number, result)
4707
+
4708
+ @builtins.property
4709
+ def uid(self) -> jsii.Number:
4710
+ '''The UID of the file system user.
4711
+
4712
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-fsx-s3accesspointattachment-openzfsposixfilesystemuser.html#cfn-fsx-s3accesspointattachment-openzfsposixfilesystemuser-uid
4713
+ '''
4714
+ result = self._values.get("uid")
4715
+ assert result is not None, "Required property 'uid' is missing"
4716
+ return typing.cast(jsii.Number, result)
4717
+
4718
+ @builtins.property
4719
+ def secondary_gids(
4720
+ self,
4721
+ ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, "CfnS3AccessPointAttachment.FileSystemGIDProperty"]]]]:
4722
+ '''The list of secondary GIDs for the file system user.
4723
+
4724
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-fsx-s3accesspointattachment-openzfsposixfilesystemuser.html#cfn-fsx-s3accesspointattachment-openzfsposixfilesystemuser-secondarygids
4725
+ '''
4726
+ result = self._values.get("secondary_gids")
4727
+ return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, "CfnS3AccessPointAttachment.FileSystemGIDProperty"]]]], result)
4728
+
4729
+ def __eq__(self, rhs: typing.Any) -> builtins.bool:
4730
+ return isinstance(rhs, self.__class__) and rhs._values == self._values
4731
+
4732
+ def __ne__(self, rhs: typing.Any) -> builtins.bool:
4733
+ return not (rhs == self)
4734
+
4735
+ def __repr__(self) -> str:
4736
+ return "OpenZFSPosixFileSystemUserProperty(%s)" % ", ".join(
4737
+ k + "=" + repr(v) for k, v in self._values.items()
4738
+ )
4739
+
4740
+ @jsii.data_type(
4741
+ jsii_type="aws-cdk-lib.aws_fsx.CfnS3AccessPointAttachment.S3AccessPointOpenZFSConfigurationProperty",
4742
+ jsii_struct_bases=[],
4743
+ name_mapping={
4744
+ "file_system_identity": "fileSystemIdentity",
4745
+ "volume_id": "volumeId",
4746
+ },
4747
+ )
4748
+ class S3AccessPointOpenZFSConfigurationProperty:
4749
+ def __init__(
4750
+ self,
4751
+ *,
4752
+ file_system_identity: typing.Union[_IResolvable_da3f097b, typing.Union["CfnS3AccessPointAttachment.OpenZFSFileSystemIdentityProperty", typing.Dict[builtins.str, typing.Any]]],
4753
+ volume_id: builtins.str,
4754
+ ) -> None:
4755
+ '''Describes the FSx for OpenZFS attachment configuration of an S3 access point attachment.
4756
+
4757
+ :param file_system_identity: The file system identity used to authorize file access requests made using the S3 access point.
4758
+ :param volume_id: The ID of the FSx for OpenZFS volume that the S3 access point is attached to.
4759
+
4760
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-fsx-s3accesspointattachment-s3accesspointopenzfsconfiguration.html
4761
+ :exampleMetadata: fixture=_generated
4762
+
4763
+ Example::
4764
+
4765
+ # The code below shows an example of how to instantiate this type.
4766
+ # The values are placeholders you should change.
4767
+ from aws_cdk import aws_fsx as fsx
4768
+
4769
+ s3_access_point_open_zFSConfiguration_property = fsx.CfnS3AccessPointAttachment.S3AccessPointOpenZFSConfigurationProperty(
4770
+ file_system_identity=fsx.CfnS3AccessPointAttachment.OpenZFSFileSystemIdentityProperty(
4771
+ posix_user=fsx.CfnS3AccessPointAttachment.OpenZFSPosixFileSystemUserProperty(
4772
+ gid=123,
4773
+ uid=123,
4774
+
4775
+ # the properties below are optional
4776
+ secondary_gids=[fsx.CfnS3AccessPointAttachment.FileSystemGIDProperty(
4777
+ gid=123
4778
+ )]
4779
+ ),
4780
+ type="type"
4781
+ ),
4782
+ volume_id="volumeId"
4783
+ )
4784
+ '''
4785
+ if __debug__:
4786
+ type_hints = typing.get_type_hints(_typecheckingstub__19e4ea8fd55e864f4fe150ca7ce6a9a2838595c2d032b53647f2917e1f00ccfa)
4787
+ check_type(argname="argument file_system_identity", value=file_system_identity, expected_type=type_hints["file_system_identity"])
4788
+ check_type(argname="argument volume_id", value=volume_id, expected_type=type_hints["volume_id"])
4789
+ self._values: typing.Dict[builtins.str, typing.Any] = {
4790
+ "file_system_identity": file_system_identity,
4791
+ "volume_id": volume_id,
4792
+ }
4793
+
4794
+ @builtins.property
4795
+ def file_system_identity(
4796
+ self,
4797
+ ) -> typing.Union[_IResolvable_da3f097b, "CfnS3AccessPointAttachment.OpenZFSFileSystemIdentityProperty"]:
4798
+ '''The file system identity used to authorize file access requests made using the S3 access point.
4799
+
4800
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-fsx-s3accesspointattachment-s3accesspointopenzfsconfiguration.html#cfn-fsx-s3accesspointattachment-s3accesspointopenzfsconfiguration-filesystemidentity
4801
+ '''
4802
+ result = self._values.get("file_system_identity")
4803
+ assert result is not None, "Required property 'file_system_identity' is missing"
4804
+ return typing.cast(typing.Union[_IResolvable_da3f097b, "CfnS3AccessPointAttachment.OpenZFSFileSystemIdentityProperty"], result)
4805
+
4806
+ @builtins.property
4807
+ def volume_id(self) -> builtins.str:
4808
+ '''The ID of the FSx for OpenZFS volume that the S3 access point is attached to.
4809
+
4810
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-fsx-s3accesspointattachment-s3accesspointopenzfsconfiguration.html#cfn-fsx-s3accesspointattachment-s3accesspointopenzfsconfiguration-volumeid
4811
+ '''
4812
+ result = self._values.get("volume_id")
4813
+ assert result is not None, "Required property 'volume_id' is missing"
4814
+ return typing.cast(builtins.str, result)
4815
+
4816
+ def __eq__(self, rhs: typing.Any) -> builtins.bool:
4817
+ return isinstance(rhs, self.__class__) and rhs._values == self._values
4818
+
4819
+ def __ne__(self, rhs: typing.Any) -> builtins.bool:
4820
+ return not (rhs == self)
4821
+
4822
+ def __repr__(self) -> str:
4823
+ return "S3AccessPointOpenZFSConfigurationProperty(%s)" % ", ".join(
4824
+ k + "=" + repr(v) for k, v in self._values.items()
4825
+ )
4826
+
4827
+ @jsii.data_type(
4828
+ jsii_type="aws-cdk-lib.aws_fsx.CfnS3AccessPointAttachment.S3AccessPointProperty",
4829
+ jsii_struct_bases=[],
4830
+ name_mapping={
4831
+ "alias": "alias",
4832
+ "policy": "policy",
4833
+ "resource_arn": "resourceArn",
4834
+ "vpc_configuration": "vpcConfiguration",
4835
+ },
4836
+ )
4837
+ class S3AccessPointProperty:
4838
+ def __init__(
4839
+ self,
4840
+ *,
4841
+ alias: typing.Optional[builtins.str] = None,
4842
+ policy: typing.Any = None,
4843
+ resource_arn: typing.Optional[builtins.str] = None,
4844
+ vpc_configuration: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnS3AccessPointAttachment.S3AccessPointVpcConfigurationProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
4845
+ ) -> None:
4846
+ '''Describes the S3 access point configuration of the S3 access point attachment.
4847
+
4848
+ :param alias: The S3 access point's alias.
4849
+ :param policy: The S3 access point's policy.
4850
+ :param resource_arn: The S3 access point's ARN.
4851
+ :param vpc_configuration: The S3 access point's virtual private cloud (VPC) configuration.
4852
+
4853
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-fsx-s3accesspointattachment-s3accesspoint.html
4854
+ :exampleMetadata: fixture=_generated
4855
+
4856
+ Example::
4857
+
4858
+ # The code below shows an example of how to instantiate this type.
4859
+ # The values are placeholders you should change.
4860
+ from aws_cdk import aws_fsx as fsx
4861
+
4862
+ # policy: Any
4863
+
4864
+ s3_access_point_property = fsx.CfnS3AccessPointAttachment.S3AccessPointProperty(
4865
+ alias="alias",
4866
+ policy=policy,
4867
+ resource_arn="resourceArn",
4868
+ vpc_configuration=fsx.CfnS3AccessPointAttachment.S3AccessPointVpcConfigurationProperty(
4869
+ vpc_id="vpcId"
4870
+ )
4871
+ )
4872
+ '''
4873
+ if __debug__:
4874
+ type_hints = typing.get_type_hints(_typecheckingstub__f4a6a2c709cd1951841b5d405e10b97412387430297e85aa1495d3aab1b70367)
4875
+ check_type(argname="argument alias", value=alias, expected_type=type_hints["alias"])
4876
+ check_type(argname="argument policy", value=policy, expected_type=type_hints["policy"])
4877
+ check_type(argname="argument resource_arn", value=resource_arn, expected_type=type_hints["resource_arn"])
4878
+ check_type(argname="argument vpc_configuration", value=vpc_configuration, expected_type=type_hints["vpc_configuration"])
4879
+ self._values: typing.Dict[builtins.str, typing.Any] = {}
4880
+ if alias is not None:
4881
+ self._values["alias"] = alias
4882
+ if policy is not None:
4883
+ self._values["policy"] = policy
4884
+ if resource_arn is not None:
4885
+ self._values["resource_arn"] = resource_arn
4886
+ if vpc_configuration is not None:
4887
+ self._values["vpc_configuration"] = vpc_configuration
4888
+
4889
+ @builtins.property
4890
+ def alias(self) -> typing.Optional[builtins.str]:
4891
+ '''The S3 access point's alias.
4892
+
4893
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-fsx-s3accesspointattachment-s3accesspoint.html#cfn-fsx-s3accesspointattachment-s3accesspoint-alias
4894
+ '''
4895
+ result = self._values.get("alias")
4896
+ return typing.cast(typing.Optional[builtins.str], result)
4897
+
4898
+ @builtins.property
4899
+ def policy(self) -> typing.Any:
4900
+ '''The S3 access point's policy.
4901
+
4902
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-fsx-s3accesspointattachment-s3accesspoint.html#cfn-fsx-s3accesspointattachment-s3accesspoint-policy
4903
+ '''
4904
+ result = self._values.get("policy")
4905
+ return typing.cast(typing.Any, result)
4906
+
4907
+ @builtins.property
4908
+ def resource_arn(self) -> typing.Optional[builtins.str]:
4909
+ '''The S3 access point's ARN.
4910
+
4911
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-fsx-s3accesspointattachment-s3accesspoint.html#cfn-fsx-s3accesspointattachment-s3accesspoint-resourcearn
4912
+ '''
4913
+ result = self._values.get("resource_arn")
4914
+ return typing.cast(typing.Optional[builtins.str], result)
4915
+
4916
+ @builtins.property
4917
+ def vpc_configuration(
4918
+ self,
4919
+ ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnS3AccessPointAttachment.S3AccessPointVpcConfigurationProperty"]]:
4920
+ '''The S3 access point's virtual private cloud (VPC) configuration.
4921
+
4922
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-fsx-s3accesspointattachment-s3accesspoint.html#cfn-fsx-s3accesspointattachment-s3accesspoint-vpcconfiguration
4923
+ '''
4924
+ result = self._values.get("vpc_configuration")
4925
+ return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnS3AccessPointAttachment.S3AccessPointVpcConfigurationProperty"]], result)
4926
+
4927
+ def __eq__(self, rhs: typing.Any) -> builtins.bool:
4928
+ return isinstance(rhs, self.__class__) and rhs._values == self._values
3950
4929
 
3951
- @builtins.property
3952
- def ontap_configuration(
3953
- self,
3954
- ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, CfnFileSystem.OntapConfigurationProperty]]:
3955
- '''The ONTAP configuration properties of the FSx for ONTAP file system that you are creating.
4930
+ def __ne__(self, rhs: typing.Any) -> builtins.bool:
4931
+ return not (rhs == self)
3956
4932
 
3957
- :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-fsx-filesystem.html#cfn-fsx-filesystem-ontapconfiguration
3958
- '''
3959
- result = self._values.get("ontap_configuration")
3960
- return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, CfnFileSystem.OntapConfigurationProperty]], result)
4933
+ def __repr__(self) -> str:
4934
+ return "S3AccessPointProperty(%s)" % ", ".join(
4935
+ k + "=" + repr(v) for k, v in self._values.items()
4936
+ )
3961
4937
 
3962
- @builtins.property
3963
- def open_zfs_configuration(
3964
- self,
3965
- ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, CfnFileSystem.OpenZFSConfigurationProperty]]:
3966
- '''The Amazon FSx for OpenZFS configuration properties for the file system that you are creating.
4938
+ @jsii.data_type(
4939
+ jsii_type="aws-cdk-lib.aws_fsx.CfnS3AccessPointAttachment.S3AccessPointVpcConfigurationProperty",
4940
+ jsii_struct_bases=[],
4941
+ name_mapping={"vpc_id": "vpcId"},
4942
+ )
4943
+ class S3AccessPointVpcConfigurationProperty:
4944
+ def __init__(self, *, vpc_id: builtins.str) -> None:
4945
+ '''If included, Amazon S3 restricts access to this access point to requests from the specified virtual private cloud (VPC).
3967
4946
 
3968
- :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-fsx-filesystem.html#cfn-fsx-filesystem-openzfsconfiguration
3969
- '''
3970
- result = self._values.get("open_zfs_configuration")
3971
- return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, CfnFileSystem.OpenZFSConfigurationProperty]], result)
4947
+ :param vpc_id: Specifies the virtual private cloud (VPC) for the S3 access point VPC configuration, if one exists.
3972
4948
 
3973
- @builtins.property
3974
- def security_group_ids(self) -> typing.Optional[typing.List[builtins.str]]:
3975
- '''A list of IDs specifying the security groups to apply to all network interfaces created for file system access.
4949
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-fsx-s3accesspointattachment-s3accesspointvpcconfiguration.html
4950
+ :exampleMetadata: fixture=_generated
3976
4951
 
3977
- This list isn't returned in later requests to describe the file system.
3978
- .. epigraph::
4952
+ Example::
3979
4953
 
3980
- You must specify a security group if you are creating a Multi-AZ FSx for ONTAP file system in a VPC subnet that has been shared with you.
4954
+ # The code below shows an example of how to instantiate this type.
4955
+ # The values are placeholders you should change.
4956
+ from aws_cdk import aws_fsx as fsx
4957
+
4958
+ s3_access_point_vpc_configuration_property = fsx.CfnS3AccessPointAttachment.S3AccessPointVpcConfigurationProperty(
4959
+ vpc_id="vpcId"
4960
+ )
4961
+ '''
4962
+ if __debug__:
4963
+ type_hints = typing.get_type_hints(_typecheckingstub__ca5b9e5f42caf136a78ce4c94fb03a42b36504167d07de97e63171ff15aab81d)
4964
+ check_type(argname="argument vpc_id", value=vpc_id, expected_type=type_hints["vpc_id"])
4965
+ self._values: typing.Dict[builtins.str, typing.Any] = {
4966
+ "vpc_id": vpc_id,
4967
+ }
3981
4968
 
3982
- :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-fsx-filesystem.html#cfn-fsx-filesystem-securitygroupids
3983
- '''
3984
- result = self._values.get("security_group_ids")
3985
- return typing.cast(typing.Optional[typing.List[builtins.str]], result)
4969
+ @builtins.property
4970
+ def vpc_id(self) -> builtins.str:
4971
+ '''Specifies the virtual private cloud (VPC) for the S3 access point VPC configuration, if one exists.
3986
4972
 
3987
- @builtins.property
3988
- def storage_capacity(self) -> typing.Optional[jsii.Number]:
3989
- '''Sets the storage capacity of the file system that you're creating.
4973
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-fsx-s3accesspointattachment-s3accesspointvpcconfiguration.html#cfn-fsx-s3accesspointattachment-s3accesspointvpcconfiguration-vpcid
4974
+ '''
4975
+ result = self._values.get("vpc_id")
4976
+ assert result is not None, "Required property 'vpc_id' is missing"
4977
+ return typing.cast(builtins.str, result)
3990
4978
 
3991
- ``StorageCapacity`` is required if you are creating a new file system. It is not required if you are creating a file system by restoring a backup.
4979
+ def __eq__(self, rhs: typing.Any) -> builtins.bool:
4980
+ return isinstance(rhs, self.__class__) and rhs._values == self._values
3992
4981
 
3993
- *FSx for Lustre file systems* - The amount of storage capacity that you can configure depends on the value that you set for ``StorageType`` and the Lustre ``DeploymentType`` , as follows:
4982
+ def __ne__(self, rhs: typing.Any) -> builtins.bool:
4983
+ return not (rhs == self)
3994
4984
 
3995
- - For ``SCRATCH_2`` , ``PERSISTENT_2`` and ``PERSISTENT_1`` deployment types using SSD storage type, the valid values are 1200 GiB, 2400 GiB, and increments of 2400 GiB.
3996
- - For ``PERSISTENT_1`` HDD file systems, valid values are increments of 6000 GiB for 12 MB/s/TiB file systems and increments of 1800 GiB for 40 MB/s/TiB file systems.
3997
- - For ``SCRATCH_1`` deployment type, valid values are 1200 GiB, 2400 GiB, and increments of 3600 GiB.
4985
+ def __repr__(self) -> str:
4986
+ return "S3AccessPointVpcConfigurationProperty(%s)" % ", ".join(
4987
+ k + "=" + repr(v) for k, v in self._values.items()
4988
+ )
3998
4989
 
3999
- *FSx for ONTAP file systems* - The amount of SSD storage capacity that you can configure depends on the value of the ``HAPairs`` property. The minimum value is calculated as 1,024 GiB * HAPairs and the maximum is calculated as 524,288 GiB * HAPairs, up to a maximum amount of SSD storage capacity of 1,048,576 GiB (1 pebibyte).
4000
4990
 
4001
- *FSx for OpenZFS file systems* - The amount of storage capacity that you can configure is from 64 GiB up to 524,288 GiB (512 TiB). If you are creating a file system from a backup, you can specify a storage capacity equal to or greater than the original file system's storage capacity.
4991
+ @jsii.data_type(
4992
+ jsii_type="aws-cdk-lib.aws_fsx.CfnS3AccessPointAttachmentProps",
4993
+ jsii_struct_bases=[],
4994
+ name_mapping={
4995
+ "name": "name",
4996
+ "open_zfs_configuration": "openZfsConfiguration",
4997
+ "type": "type",
4998
+ "s3_access_point": "s3AccessPoint",
4999
+ },
5000
+ )
5001
+ class CfnS3AccessPointAttachmentProps:
5002
+ def __init__(
5003
+ self,
5004
+ *,
5005
+ name: builtins.str,
5006
+ open_zfs_configuration: typing.Union[_IResolvable_da3f097b, typing.Union[CfnS3AccessPointAttachment.S3AccessPointOpenZFSConfigurationProperty, typing.Dict[builtins.str, typing.Any]]],
5007
+ type: builtins.str,
5008
+ s3_access_point: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnS3AccessPointAttachment.S3AccessPointProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
5009
+ ) -> None:
5010
+ '''Properties for defining a ``CfnS3AccessPointAttachment``.
4002
5011
 
4003
- *FSx for Windows File Server file systems* - The amount of storage capacity that you can configure depends on the value that you set for ``StorageType`` as follows:
5012
+ :param name: The name of the S3 access point attachment; also used for the name of the S3 access point.
5013
+ :param open_zfs_configuration: The OpenZFSConfiguration of the S3 access point attachment.
5014
+ :param type: The type of Amazon FSx volume that the S3 access point is attached to.
5015
+ :param s3_access_point: The S3 access point configuration of the S3 access point attachment.
4004
5016
 
4005
- - For SSD storage, valid values are 32 GiB-65,536 GiB (64 TiB).
4006
- - For HDD storage, valid values are 2000 GiB-65,536 GiB (64 TiB).
5017
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-fsx-s3accesspointattachment.html
5018
+ :exampleMetadata: fixture=_generated
4007
5019
 
4008
- :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-fsx-filesystem.html#cfn-fsx-filesystem-storagecapacity
5020
+ Example::
5021
+
5022
+ # The code below shows an example of how to instantiate this type.
5023
+ # The values are placeholders you should change.
5024
+ from aws_cdk import aws_fsx as fsx
5025
+
5026
+ # policy: Any
5027
+
5028
+ cfn_s3_access_point_attachment_props = fsx.CfnS3AccessPointAttachmentProps(
5029
+ name="name",
5030
+ open_zfs_configuration=fsx.CfnS3AccessPointAttachment.S3AccessPointOpenZFSConfigurationProperty(
5031
+ file_system_identity=fsx.CfnS3AccessPointAttachment.OpenZFSFileSystemIdentityProperty(
5032
+ posix_user=fsx.CfnS3AccessPointAttachment.OpenZFSPosixFileSystemUserProperty(
5033
+ gid=123,
5034
+ uid=123,
5035
+
5036
+ # the properties below are optional
5037
+ secondary_gids=[fsx.CfnS3AccessPointAttachment.FileSystemGIDProperty(
5038
+ gid=123
5039
+ )]
5040
+ ),
5041
+ type="type"
5042
+ ),
5043
+ volume_id="volumeId"
5044
+ ),
5045
+ type="type",
5046
+
5047
+ # the properties below are optional
5048
+ s3_access_point=fsx.CfnS3AccessPointAttachment.S3AccessPointProperty(
5049
+ alias="alias",
5050
+ policy=policy,
5051
+ resource_arn="resourceArn",
5052
+ vpc_configuration=fsx.CfnS3AccessPointAttachment.S3AccessPointVpcConfigurationProperty(
5053
+ vpc_id="vpcId"
5054
+ )
5055
+ )
5056
+ )
4009
5057
  '''
4010
- result = self._values.get("storage_capacity")
4011
- return typing.cast(typing.Optional[jsii.Number], result)
5058
+ if __debug__:
5059
+ type_hints = typing.get_type_hints(_typecheckingstub__f8d86aefcd2904a1c36c865f774d6ff97130a2707963573cf5c4a4173e91ab0e)
5060
+ check_type(argname="argument name", value=name, expected_type=type_hints["name"])
5061
+ check_type(argname="argument open_zfs_configuration", value=open_zfs_configuration, expected_type=type_hints["open_zfs_configuration"])
5062
+ check_type(argname="argument type", value=type, expected_type=type_hints["type"])
5063
+ check_type(argname="argument s3_access_point", value=s3_access_point, expected_type=type_hints["s3_access_point"])
5064
+ self._values: typing.Dict[builtins.str, typing.Any] = {
5065
+ "name": name,
5066
+ "open_zfs_configuration": open_zfs_configuration,
5067
+ "type": type,
5068
+ }
5069
+ if s3_access_point is not None:
5070
+ self._values["s3_access_point"] = s3_access_point
4012
5071
 
4013
5072
  @builtins.property
4014
- def storage_type(self) -> typing.Optional[builtins.str]:
4015
- '''Sets the storage class for the file system that you're creating.
5073
+ def name(self) -> builtins.str:
5074
+ '''The name of the S3 access point attachment;
4016
5075
 
4017
- Valid values are ``SSD`` , ``HDD`` , and ``INTELLIGENT_TIERING`` .
5076
+ also used for the name of the S3 access point.
4018
5077
 
4019
- - Set to ``SSD`` to use solid state drive storage. SSD is supported on all Windows, Lustre, ONTAP, and OpenZFS deployment types.
4020
- - Set to ``HDD`` to use hard disk drive storage, which is supported on ``SINGLE_AZ_2`` and ``MULTI_AZ_1`` Windows file system deployment types, and on ``PERSISTENT_1`` Lustre file system deployment types.
4021
- - Set to ``INTELLIGENT_TIERING`` to use fully elastic, intelligently-tiered storage. Intelligent-Tiering is only available for OpenZFS file systems with the Multi-AZ deployment type.
5078
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-fsx-s3accesspointattachment.html#cfn-fsx-s3accesspointattachment-name
5079
+ '''
5080
+ result = self._values.get("name")
5081
+ assert result is not None, "Required property 'name' is missing"
5082
+ return typing.cast(builtins.str, result)
4022
5083
 
4023
- Default value is ``SSD`` . For more information, see `Storage type options <https://docs.aws.amazon.com/fsx/latest/WindowsGuide/optimize-fsx-costs.html#storage-type-options>`_ in the *FSx for Windows File Server User Guide* , `Multiple storage options <https://docs.aws.amazon.com/fsx/latest/LustreGuide/what-is.html#storage-options>`_ in the *FSx for Lustre User Guide* , and `Working with Intelligent-Tiering <https://docs.aws.amazon.com/fsx/latest/OpenZFSGuide/performance-intelligent-tiering>`_ in the *Amazon FSx for OpenZFS User Guide* .
5084
+ @builtins.property
5085
+ def open_zfs_configuration(
5086
+ self,
5087
+ ) -> typing.Union[_IResolvable_da3f097b, CfnS3AccessPointAttachment.S3AccessPointOpenZFSConfigurationProperty]:
5088
+ '''The OpenZFSConfiguration of the S3 access point attachment.
4024
5089
 
4025
- :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-fsx-filesystem.html#cfn-fsx-filesystem-storagetype
5090
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-fsx-s3accesspointattachment.html#cfn-fsx-s3accesspointattachment-openzfsconfiguration
4026
5091
  '''
4027
- result = self._values.get("storage_type")
4028
- return typing.cast(typing.Optional[builtins.str], result)
5092
+ result = self._values.get("open_zfs_configuration")
5093
+ assert result is not None, "Required property 'open_zfs_configuration' is missing"
5094
+ return typing.cast(typing.Union[_IResolvable_da3f097b, CfnS3AccessPointAttachment.S3AccessPointOpenZFSConfigurationProperty], result)
4029
5095
 
4030
5096
  @builtins.property
4031
- def tags(self) -> typing.Optional[typing.List[_CfnTag_f6864754]]:
4032
- '''The tags to associate with the file system.
4033
-
4034
- For more information, see `Tagging your Amazon FSx resources <https://docs.aws.amazon.com/fsx/latest/LustreGuide/tag-resources.html>`_ in the *Amazon FSx for Lustre User Guide* .
5097
+ def type(self) -> builtins.str:
5098
+ '''The type of Amazon FSx volume that the S3 access point is attached to.
4035
5099
 
4036
- :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-fsx-filesystem.html#cfn-fsx-filesystem-tags
5100
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-fsx-s3accesspointattachment.html#cfn-fsx-s3accesspointattachment-type
4037
5101
  '''
4038
- result = self._values.get("tags")
4039
- return typing.cast(typing.Optional[typing.List[_CfnTag_f6864754]], result)
5102
+ result = self._values.get("type")
5103
+ assert result is not None, "Required property 'type' is missing"
5104
+ return typing.cast(builtins.str, result)
4040
5105
 
4041
5106
  @builtins.property
4042
- def windows_configuration(
5107
+ def s3_access_point(
4043
5108
  self,
4044
- ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, CfnFileSystem.WindowsConfigurationProperty]]:
4045
- '''The configuration object for the Microsoft Windows file system you are creating.
4046
-
4047
- This value is required if ``FileSystemType`` is set to ``WINDOWS`` .
5109
+ ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, CfnS3AccessPointAttachment.S3AccessPointProperty]]:
5110
+ '''The S3 access point configuration of the S3 access point attachment.
4048
5111
 
4049
- :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-fsx-filesystem.html#cfn-fsx-filesystem-windowsconfiguration
5112
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-fsx-s3accesspointattachment.html#cfn-fsx-s3accesspointattachment-s3accesspoint
4050
5113
  '''
4051
- result = self._values.get("windows_configuration")
4052
- return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, CfnFileSystem.WindowsConfigurationProperty]], result)
5114
+ result = self._values.get("s3_access_point")
5115
+ return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, CfnS3AccessPointAttachment.S3AccessPointProperty]], result)
4053
5116
 
4054
5117
  def __eq__(self, rhs: typing.Any) -> builtins.bool:
4055
5118
  return isinstance(rhs, self.__class__) and rhs._values == self._values
@@ -4058,12 +5121,12 @@ class CfnFileSystemProps:
4058
5121
  return not (rhs == self)
4059
5122
 
4060
5123
  def __repr__(self) -> str:
4061
- return "CfnFileSystemProps(%s)" % ", ".join(
5124
+ return "CfnS3AccessPointAttachmentProps(%s)" % ", ".join(
4062
5125
  k + "=" + repr(v) for k, v in self._values.items()
4063
5126
  )
4064
5127
 
4065
5128
 
4066
- @jsii.implements(_IInspectable_c2943556, _ITaggable_36806126)
5129
+ @jsii.implements(_IInspectable_c2943556, _ISnapshotRef_fbdde5f5, _ITaggable_36806126)
4067
5130
  class CfnSnapshot(
4068
5131
  _CfnResource_9df397a6,
4069
5132
  metaclass=jsii.JSIIMeta,
@@ -4102,7 +5165,8 @@ class CfnSnapshot(
4102
5165
  volume_id: builtins.str,
4103
5166
  tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,
4104
5167
  ) -> None:
4105
- '''
5168
+ '''Create a new ``AWS::FSx::Snapshot``.
5169
+
4106
5170
  :param scope: Scope in which this resource is defined.
4107
5171
  :param id: Construct identifier for this resource (unique in its scope).
4108
5172
  :param name: The name of the snapshot.
@@ -4171,6 +5235,12 @@ class CfnSnapshot(
4171
5235
  def _cfn_properties(self) -> typing.Mapping[builtins.str, typing.Any]:
4172
5236
  return typing.cast(typing.Mapping[builtins.str, typing.Any], jsii.get(self, "cfnProperties"))
4173
5237
 
5238
+ @builtins.property
5239
+ @jsii.member(jsii_name="snapshotRef")
5240
+ def snapshot_ref(self) -> _SnapshotReference_84fbb991:
5241
+ '''A reference to a Snapshot resource.'''
5242
+ return typing.cast(_SnapshotReference_84fbb991, jsii.get(self, "snapshotRef"))
5243
+
4174
5244
  @builtins.property
4175
5245
  @jsii.member(jsii_name="tags")
4176
5246
  def tags(self) -> _TagManager_0a598cb3:
@@ -4309,7 +5379,7 @@ class CfnSnapshotProps:
4309
5379
  )
4310
5380
 
4311
5381
 
4312
- @jsii.implements(_IInspectable_c2943556, _ITaggable_36806126)
5382
+ @jsii.implements(_IInspectable_c2943556, _IStorageVirtualMachineRef_3a0f4396, _ITaggable_36806126)
4313
5383
  class CfnStorageVirtualMachine(
4314
5384
  _CfnResource_9df397a6,
4315
5385
  metaclass=jsii.JSIIMeta,
@@ -4364,7 +5434,8 @@ class CfnStorageVirtualMachine(
4364
5434
  svm_admin_password: typing.Optional[builtins.str] = None,
4365
5435
  tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,
4366
5436
  ) -> None:
4367
- '''
5437
+ '''Create a new ``AWS::FSx::StorageVirtualMachine``.
5438
+
4368
5439
  :param scope: Scope in which this resource is defined.
4369
5440
  :param id: Construct identifier for this resource (unique in its scope).
4370
5441
  :param file_system_id: Specifies the FSx for ONTAP file system on which to create the SVM.
@@ -4457,6 +5528,12 @@ class CfnStorageVirtualMachine(
4457
5528
  def _cfn_properties(self) -> typing.Mapping[builtins.str, typing.Any]:
4458
5529
  return typing.cast(typing.Mapping[builtins.str, typing.Any], jsii.get(self, "cfnProperties"))
4459
5530
 
5531
+ @builtins.property
5532
+ @jsii.member(jsii_name="storageVirtualMachineRef")
5533
+ def storage_virtual_machine_ref(self) -> _StorageVirtualMachineReference_27e496a6:
5534
+ '''A reference to a StorageVirtualMachine resource.'''
5535
+ return typing.cast(_StorageVirtualMachineReference_27e496a6, jsii.get(self, "storageVirtualMachineRef"))
5536
+
4460
5537
  @builtins.property
4461
5538
  @jsii.member(jsii_name="tags")
4462
5539
  def tags(self) -> _TagManager_0a598cb3:
@@ -4944,7 +6021,7 @@ class CfnStorageVirtualMachineProps:
4944
6021
  )
4945
6022
 
4946
6023
 
4947
- @jsii.implements(_IInspectable_c2943556, _ITaggable_36806126)
6024
+ @jsii.implements(_IInspectable_c2943556, _IVolumeRef_7f52c3ee, _ITaggable_36806126)
4948
6025
  class CfnVolume(
4949
6026
  _CfnResource_9df397a6,
4950
6027
  metaclass=jsii.JSIIMeta,
@@ -5070,7 +6147,8 @@ class CfnVolume(
5070
6147
  tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,
5071
6148
  volume_type: typing.Optional[builtins.str] = None,
5072
6149
  ) -> None:
5073
- '''
6150
+ '''Create a new ``AWS::FSx::Volume``.
6151
+
5074
6152
  :param scope: Scope in which this resource is defined.
5075
6153
  :param id: Construct identifier for this resource (unique in its scope).
5076
6154
  :param name: The name of the volume.
@@ -5169,6 +6247,12 @@ class CfnVolume(
5169
6247
  '''Tag Manager which manages the tags for this resource.'''
5170
6248
  return typing.cast(_TagManager_0a598cb3, jsii.get(self, "tags"))
5171
6249
 
6250
+ @builtins.property
6251
+ @jsii.member(jsii_name="volumeRef")
6252
+ def volume_ref(self) -> _VolumeReference_ad7f96eb:
6253
+ '''A reference to a Volume resource.'''
6254
+ return typing.cast(_VolumeReference_ad7f96eb, jsii.get(self, "volumeRef"))
6255
+
5172
6256
  @builtins.property
5173
6257
  @jsii.member(jsii_name="name")
5174
6258
  def name(self) -> builtins.str:
@@ -7275,7 +8359,7 @@ class FileSystemProps:
7275
8359
  storage_capacity_gib: jsii.Number,
7276
8360
  vpc: _IVpc_f30d5663,
7277
8361
  backup_id: typing.Optional[builtins.str] = None,
7278
- kms_key: typing.Optional[_IKey_5f11635f] = None,
8362
+ kms_key: typing.Optional[_IKeyRef_d4fc6ef3] = None,
7279
8363
  removal_policy: typing.Optional[_RemovalPolicy_9f93c814] = None,
7280
8364
  security_group: typing.Optional[_ISecurityGroup_acf8a799] = None,
7281
8365
  storage_type: typing.Optional["StorageType"] = None,
@@ -7300,9 +8384,9 @@ class FileSystemProps:
7300
8384
  import aws_cdk as cdk
7301
8385
  from aws_cdk import aws_ec2 as ec2
7302
8386
  from aws_cdk import aws_fsx as fsx
7303
- from aws_cdk import aws_kms as kms
8387
+ from aws_cdk.interfaces import aws_kms as interfaces_aws_kms
7304
8388
 
7305
- # key: kms.Key
8389
+ # key_ref: interfaces_aws_kms.IKeyRef
7306
8390
  # security_group: ec2.SecurityGroup
7307
8391
  # vpc: ec2.Vpc
7308
8392
 
@@ -7312,7 +8396,7 @@ class FileSystemProps:
7312
8396
 
7313
8397
  # the properties below are optional
7314
8398
  backup_id="backupId",
7315
- kms_key=key,
8399
+ kms_key=key_ref,
7316
8400
  removal_policy=cdk.RemovalPolicy.DESTROY,
7317
8401
  security_group=security_group,
7318
8402
  storage_type=fsx.StorageType.SSD
@@ -7374,13 +8458,13 @@ class FileSystemProps:
7374
8458
  return typing.cast(typing.Optional[builtins.str], result)
7375
8459
 
7376
8460
  @builtins.property
7377
- def kms_key(self) -> typing.Optional[_IKey_5f11635f]:
8461
+ def kms_key(self) -> typing.Optional[_IKeyRef_d4fc6ef3]:
7378
8462
  '''The KMS key used for encryption to protect your data at rest.
7379
8463
 
7380
8464
  :default: - the aws/fsx default KMS key for the AWS account being deployed into.
7381
8465
  '''
7382
8466
  result = self._values.get("kms_key")
7383
- return typing.cast(typing.Optional[_IKey_5f11635f], result)
8467
+ return typing.cast(typing.Optional[_IKeyRef_d4fc6ef3], result)
7384
8468
 
7385
8469
  @builtins.property
7386
8470
  def removal_policy(self) -> typing.Optional[_RemovalPolicy_9f93c814]:
@@ -7911,7 +8995,7 @@ class LustreFileSystemProps(FileSystemProps):
7911
8995
  storage_capacity_gib: jsii.Number,
7912
8996
  vpc: _IVpc_f30d5663,
7913
8997
  backup_id: typing.Optional[builtins.str] = None,
7914
- kms_key: typing.Optional[_IKey_5f11635f] = None,
8998
+ kms_key: typing.Optional[_IKeyRef_d4fc6ef3] = None,
7915
8999
  removal_policy: typing.Optional[_RemovalPolicy_9f93c814] = None,
7916
9000
  security_group: typing.Optional[_ISecurityGroup_acf8a799] = None,
7917
9001
  storage_type: typing.Optional["StorageType"] = None,
@@ -8021,13 +9105,13 @@ class LustreFileSystemProps(FileSystemProps):
8021
9105
  return typing.cast(typing.Optional[builtins.str], result)
8022
9106
 
8023
9107
  @builtins.property
8024
- def kms_key(self) -> typing.Optional[_IKey_5f11635f]:
9108
+ def kms_key(self) -> typing.Optional[_IKeyRef_d4fc6ef3]:
8025
9109
  '''The KMS key used for encryption to protect your data at rest.
8026
9110
 
8027
9111
  :default: - the aws/fsx default KMS key for the AWS account being deployed into.
8028
9112
  '''
8029
9113
  result = self._values.get("kms_key")
8030
- return typing.cast(typing.Optional[_IKey_5f11635f], result)
9114
+ return typing.cast(typing.Optional[_IKeyRef_d4fc6ef3], result)
8031
9115
 
8032
9116
  @builtins.property
8033
9117
  def removal_policy(self) -> typing.Optional[_RemovalPolicy_9f93c814]:
@@ -8413,7 +9497,7 @@ class LustreFileSystem(
8413
9497
  storage_capacity_gib: jsii.Number,
8414
9498
  vpc: _IVpc_f30d5663,
8415
9499
  backup_id: typing.Optional[builtins.str] = None,
8416
- kms_key: typing.Optional[_IKey_5f11635f] = None,
9500
+ kms_key: typing.Optional[_IKeyRef_d4fc6ef3] = None,
8417
9501
  removal_policy: typing.Optional[_RemovalPolicy_9f93c814] = None,
8418
9502
  security_group: typing.Optional[_ISecurityGroup_acf8a799] = None,
8419
9503
  storage_type: typing.Optional[StorageType] = None,
@@ -8482,6 +9566,12 @@ class LustreFileSystem(
8482
9566
 
8483
9567
  return typing.cast(IFileSystem, jsii.sinvoke(cls, "fromLustreFileSystemAttributes", [scope, id, attrs]))
8484
9568
 
9569
+ @jsii.python.classproperty
9570
+ @jsii.member(jsii_name="PROPERTY_INJECTION_ID")
9571
+ def PROPERTY_INJECTION_ID(cls) -> builtins.str:
9572
+ '''Uniquely identifies this class.'''
9573
+ return typing.cast(builtins.str, jsii.sget(cls, "PROPERTY_INJECTION_ID"))
9574
+
8485
9575
  @builtins.property
8486
9576
  @jsii.member(jsii_name="connections")
8487
9577
  def connections(self) -> _Connections_0f31fce8:
@@ -8515,6 +9605,8 @@ __all__ = [
8515
9605
  "CfnDataRepositoryAssociationProps",
8516
9606
  "CfnFileSystem",
8517
9607
  "CfnFileSystemProps",
9608
+ "CfnS3AccessPointAttachment",
9609
+ "CfnS3AccessPointAttachmentProps",
8518
9610
  "CfnSnapshot",
8519
9611
  "CfnSnapshotProps",
8520
9612
  "CfnStorageVirtualMachine",
@@ -8657,6 +9749,7 @@ def _typecheckingstub__2d13764c3dcb8d96799af4fa191d042ff4511c33cfd1aecbf235dded3
8657
9749
  file_system_type_version: typing.Optional[builtins.str] = None,
8658
9750
  kms_key_id: typing.Optional[builtins.str] = None,
8659
9751
  lustre_configuration: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnFileSystem.LustreConfigurationProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
9752
+ network_type: typing.Optional[builtins.str] = None,
8660
9753
  ontap_configuration: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnFileSystem.OntapConfigurationProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
8661
9754
  open_zfs_configuration: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnFileSystem.OpenZFSConfigurationProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
8662
9755
  security_group_ids: typing.Optional[typing.Sequence[builtins.str]] = None,
@@ -8716,6 +9809,12 @@ def _typecheckingstub__8646d19693a6f9abdd169bfa6ea6d4e784eba3f5391bff175f38918b4
8716
9809
  """Type checking stubs"""
8717
9810
  pass
8718
9811
 
9812
+ def _typecheckingstub__7799a7898c1d78dcdd2f9531854e7ff35a8f4a27f4de33e706134e2fa35387ac(
9813
+ value: typing.Optional[builtins.str],
9814
+ ) -> None:
9815
+ """Type checking stubs"""
9816
+ pass
9817
+
8719
9818
  def _typecheckingstub__bc9b2f53e3a613c4a5e71936700bde6bac2b8c2691534dac7d5a5ce18f7e0687(
8720
9819
  value: typing.Optional[typing.Union[_IResolvable_da3f097b, CfnFileSystem.OntapConfigurationProperty]],
8721
9820
  ) -> None:
@@ -8775,6 +9874,14 @@ def _typecheckingstub__57b05166432d66017c1f4937608bf668fb87a580b457f8d7fc86cb698
8775
9874
  """Type checking stubs"""
8776
9875
  pass
8777
9876
 
9877
+ def _typecheckingstub__3cb2d4a98bff48f203d8eaee325b8f6c388372cb868c4fa792f5c5693518337f(
9878
+ *,
9879
+ size_gib: typing.Optional[jsii.Number] = None,
9880
+ sizing_mode: typing.Optional[builtins.str] = None,
9881
+ ) -> None:
9882
+ """Type checking stubs"""
9883
+ pass
9884
+
8778
9885
  def _typecheckingstub__ae47548d0ff6b28a7e7311347d5b08153a4d8130c5f4cd5b7ebd258836f4c7e0(
8779
9886
  *,
8780
9887
  iops: typing.Optional[jsii.Number] = None,
@@ -8790,6 +9897,7 @@ def _typecheckingstub__8e1fe808b96f0eb1b8b6ed8eb3d551c8d995fe2c98c9be554bed33160
8790
9897
  copy_tags_to_backups: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]] = None,
8791
9898
  daily_automatic_backup_start_time: typing.Optional[builtins.str] = None,
8792
9899
  data_compression_type: typing.Optional[builtins.str] = None,
9900
+ data_read_cache_configuration: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnFileSystem.DataReadCacheConfigurationProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
8793
9901
  deployment_type: typing.Optional[builtins.str] = None,
8794
9902
  drive_cache_type: typing.Optional[builtins.str] = None,
8795
9903
  efa_enabled: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]] = None,
@@ -8798,6 +9906,7 @@ def _typecheckingstub__8e1fe808b96f0eb1b8b6ed8eb3d551c8d995fe2c98c9be554bed33160
8798
9906
  import_path: typing.Optional[builtins.str] = None,
8799
9907
  metadata_configuration: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnFileSystem.MetadataConfigurationProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
8800
9908
  per_unit_storage_throughput: typing.Optional[jsii.Number] = None,
9909
+ throughput_capacity: typing.Optional[jsii.Number] = None,
8801
9910
  weekly_maintenance_start_time: typing.Optional[builtins.str] = None,
8802
9911
  ) -> None:
8803
9912
  """Type checking stubs"""
@@ -8825,6 +9934,7 @@ def _typecheckingstub__0edc01444089461fa7f6973acca3d475ebd67f0229380856776cb1bcb
8825
9934
  daily_automatic_backup_start_time: typing.Optional[builtins.str] = None,
8826
9935
  disk_iops_configuration: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnFileSystem.DiskIopsConfigurationProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
8827
9936
  endpoint_ip_address_range: typing.Optional[builtins.str] = None,
9937
+ endpoint_ipv6_address_range: typing.Optional[builtins.str] = None,
8828
9938
  fsx_admin_password: typing.Optional[builtins.str] = None,
8829
9939
  ha_pairs: typing.Optional[jsii.Number] = None,
8830
9940
  preferred_subnet_id: typing.Optional[builtins.str] = None,
@@ -8845,6 +9955,7 @@ def _typecheckingstub__5472f29690b088eacdf6c6853ffd8b23cd15c760dc30d812107be1280
8845
9955
  daily_automatic_backup_start_time: typing.Optional[builtins.str] = None,
8846
9956
  disk_iops_configuration: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnFileSystem.DiskIopsConfigurationProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
8847
9957
  endpoint_ip_address_range: typing.Optional[builtins.str] = None,
9958
+ endpoint_ipv6_address_range: typing.Optional[builtins.str] = None,
8848
9959
  options: typing.Optional[typing.Sequence[builtins.str]] = None,
8849
9960
  preferred_subnet_id: typing.Optional[builtins.str] = None,
8850
9961
  read_cache_configuration: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnFileSystem.ReadCacheConfigurationProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
@@ -8923,6 +10034,7 @@ def _typecheckingstub__cc6cf655096c0830614c2b73c7ebf907b07fc70f50859b1aa0f76bbf6
8923
10034
  file_system_type_version: typing.Optional[builtins.str] = None,
8924
10035
  kms_key_id: typing.Optional[builtins.str] = None,
8925
10036
  lustre_configuration: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnFileSystem.LustreConfigurationProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
10037
+ network_type: typing.Optional[builtins.str] = None,
8926
10038
  ontap_configuration: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnFileSystem.OntapConfigurationProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
8927
10039
  open_zfs_configuration: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnFileSystem.OpenZFSConfigurationProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
8928
10040
  security_group_ids: typing.Optional[typing.Sequence[builtins.str]] = None,
@@ -8934,6 +10046,113 @@ def _typecheckingstub__cc6cf655096c0830614c2b73c7ebf907b07fc70f50859b1aa0f76bbf6
8934
10046
  """Type checking stubs"""
8935
10047
  pass
8936
10048
 
10049
+ def _typecheckingstub__f51e0b107c6c6ca8bc284dbcf4013f6c7bcdd088cb084476fdf615b4d8ae257e(
10050
+ scope: _constructs_77d1e7e8.Construct,
10051
+ id: builtins.str,
10052
+ *,
10053
+ name: builtins.str,
10054
+ open_zfs_configuration: typing.Union[_IResolvable_da3f097b, typing.Union[CfnS3AccessPointAttachment.S3AccessPointOpenZFSConfigurationProperty, typing.Dict[builtins.str, typing.Any]]],
10055
+ type: builtins.str,
10056
+ s3_access_point: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnS3AccessPointAttachment.S3AccessPointProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
10057
+ ) -> None:
10058
+ """Type checking stubs"""
10059
+ pass
10060
+
10061
+ def _typecheckingstub__6e021f2b2cc052b241526f0c8b04451cdbb773840ed5e597d710011b7885f25f(
10062
+ inspector: _TreeInspector_488e0dd5,
10063
+ ) -> None:
10064
+ """Type checking stubs"""
10065
+ pass
10066
+
10067
+ def _typecheckingstub__e4764700463d52298286c209b2ab565142140f7bfb04556d307ca9bd56430fb2(
10068
+ props: typing.Mapping[builtins.str, typing.Any],
10069
+ ) -> None:
10070
+ """Type checking stubs"""
10071
+ pass
10072
+
10073
+ def _typecheckingstub__644edd6bd850880f5ebd47e103e56e49b7d7f21e620f2807e12dac453933e59d(
10074
+ value: builtins.str,
10075
+ ) -> None:
10076
+ """Type checking stubs"""
10077
+ pass
10078
+
10079
+ def _typecheckingstub__0756a73fef71599ffefeead45c6d0ea227439b511cdc73a360780b4f4c0df186(
10080
+ value: typing.Union[_IResolvable_da3f097b, CfnS3AccessPointAttachment.S3AccessPointOpenZFSConfigurationProperty],
10081
+ ) -> None:
10082
+ """Type checking stubs"""
10083
+ pass
10084
+
10085
+ def _typecheckingstub__ece88a5ab6d3a69d75415d92fc3eea5b9fd91186f1a15239e5ec10f6c6c0005a(
10086
+ value: builtins.str,
10087
+ ) -> None:
10088
+ """Type checking stubs"""
10089
+ pass
10090
+
10091
+ def _typecheckingstub__1588dcc78f8354bc56e434d157b8dadab331295e3cbf0c065b7bd4b4b793aaa0(
10092
+ value: typing.Optional[typing.Union[_IResolvable_da3f097b, CfnS3AccessPointAttachment.S3AccessPointProperty]],
10093
+ ) -> None:
10094
+ """Type checking stubs"""
10095
+ pass
10096
+
10097
+ def _typecheckingstub__72efd25b3b6057030d910de35b2f8e4104cb66dc72f89dc8ebb3b89daaf6a69f(
10098
+ *,
10099
+ gid: jsii.Number,
10100
+ ) -> None:
10101
+ """Type checking stubs"""
10102
+ pass
10103
+
10104
+ def _typecheckingstub__af3bbbb456f8fdedf7c641c4786d89bf08acb663687e1b91f1ffdb83ab9819cb(
10105
+ *,
10106
+ posix_user: typing.Union[_IResolvable_da3f097b, typing.Union[CfnS3AccessPointAttachment.OpenZFSPosixFileSystemUserProperty, typing.Dict[builtins.str, typing.Any]]],
10107
+ type: builtins.str,
10108
+ ) -> None:
10109
+ """Type checking stubs"""
10110
+ pass
10111
+
10112
+ def _typecheckingstub__3decc490fdc822be6603dab799c80c7e004416dbd58cc34ea290fa556e81be39(
10113
+ *,
10114
+ gid: jsii.Number,
10115
+ uid: jsii.Number,
10116
+ secondary_gids: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union[CfnS3AccessPointAttachment.FileSystemGIDProperty, typing.Dict[builtins.str, typing.Any]]]]]] = None,
10117
+ ) -> None:
10118
+ """Type checking stubs"""
10119
+ pass
10120
+
10121
+ def _typecheckingstub__19e4ea8fd55e864f4fe150ca7ce6a9a2838595c2d032b53647f2917e1f00ccfa(
10122
+ *,
10123
+ file_system_identity: typing.Union[_IResolvable_da3f097b, typing.Union[CfnS3AccessPointAttachment.OpenZFSFileSystemIdentityProperty, typing.Dict[builtins.str, typing.Any]]],
10124
+ volume_id: builtins.str,
10125
+ ) -> None:
10126
+ """Type checking stubs"""
10127
+ pass
10128
+
10129
+ def _typecheckingstub__f4a6a2c709cd1951841b5d405e10b97412387430297e85aa1495d3aab1b70367(
10130
+ *,
10131
+ alias: typing.Optional[builtins.str] = None,
10132
+ policy: typing.Any = None,
10133
+ resource_arn: typing.Optional[builtins.str] = None,
10134
+ vpc_configuration: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnS3AccessPointAttachment.S3AccessPointVpcConfigurationProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
10135
+ ) -> None:
10136
+ """Type checking stubs"""
10137
+ pass
10138
+
10139
+ def _typecheckingstub__ca5b9e5f42caf136a78ce4c94fb03a42b36504167d07de97e63171ff15aab81d(
10140
+ *,
10141
+ vpc_id: builtins.str,
10142
+ ) -> None:
10143
+ """Type checking stubs"""
10144
+ pass
10145
+
10146
+ def _typecheckingstub__f8d86aefcd2904a1c36c865f774d6ff97130a2707963573cf5c4a4173e91ab0e(
10147
+ *,
10148
+ name: builtins.str,
10149
+ open_zfs_configuration: typing.Union[_IResolvable_da3f097b, typing.Union[CfnS3AccessPointAttachment.S3AccessPointOpenZFSConfigurationProperty, typing.Dict[builtins.str, typing.Any]]],
10150
+ type: builtins.str,
10151
+ s3_access_point: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnS3AccessPointAttachment.S3AccessPointProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
10152
+ ) -> None:
10153
+ """Type checking stubs"""
10154
+ pass
10155
+
8937
10156
  def _typecheckingstub__9d5d4adee5d5cd344131498bc7092a1109dbe23b110d78c712b65bf1439e1c88(
8938
10157
  scope: _constructs_77d1e7e8.Construct,
8939
10158
  id: builtins.str,
@@ -9295,7 +10514,7 @@ def _typecheckingstub__53f2e92923bf875c7e108f12d87a8f496daa12a3810536a41e896037f
9295
10514
  storage_capacity_gib: jsii.Number,
9296
10515
  vpc: _IVpc_f30d5663,
9297
10516
  backup_id: typing.Optional[builtins.str] = None,
9298
- kms_key: typing.Optional[_IKey_5f11635f] = None,
10517
+ kms_key: typing.Optional[_IKeyRef_d4fc6ef3] = None,
9299
10518
  removal_policy: typing.Optional[_RemovalPolicy_9f93c814] = None,
9300
10519
  security_group: typing.Optional[_ISecurityGroup_acf8a799] = None,
9301
10520
  storage_type: typing.Optional[StorageType] = None,
@@ -9326,7 +10545,7 @@ def _typecheckingstub__4a492bedf6926d6b61f8888b09c8516deeb8bda6c3b965e000434ef73
9326
10545
  storage_capacity_gib: jsii.Number,
9327
10546
  vpc: _IVpc_f30d5663,
9328
10547
  backup_id: typing.Optional[builtins.str] = None,
9329
- kms_key: typing.Optional[_IKey_5f11635f] = None,
10548
+ kms_key: typing.Optional[_IKeyRef_d4fc6ef3] = None,
9330
10549
  removal_policy: typing.Optional[_RemovalPolicy_9f93c814] = None,
9331
10550
  security_group: typing.Optional[_ISecurityGroup_acf8a799] = None,
9332
10551
  storage_type: typing.Optional[StorageType] = None,
@@ -9368,7 +10587,7 @@ def _typecheckingstub__fb0a1c17b53cef80f7d054c1b0c4d50733434d66dd0658819e0a58df8
9368
10587
  storage_capacity_gib: jsii.Number,
9369
10588
  vpc: _IVpc_f30d5663,
9370
10589
  backup_id: typing.Optional[builtins.str] = None,
9371
- kms_key: typing.Optional[_IKey_5f11635f] = None,
10590
+ kms_key: typing.Optional[_IKeyRef_d4fc6ef3] = None,
9372
10591
  removal_policy: typing.Optional[_RemovalPolicy_9f93c814] = None,
9373
10592
  security_group: typing.Optional[_ISecurityGroup_acf8a799] = None,
9374
10593
  storage_type: typing.Optional[StorageType] = None,
@@ -9386,3 +10605,6 @@ def _typecheckingstub__09e9dff8e14ff81d8a495f07b5f7c6e2a9d756a63b5d283b892189cdc
9386
10605
  ) -> None:
9387
10606
  """Type checking stubs"""
9388
10607
  pass
10608
+
10609
+ for cls in [IFileSystem]:
10610
+ typing.cast(typing.Any, cls).__protocol_attrs__ = typing.cast(typing.Any, cls).__protocol_attrs__ - set(['__jsii_proxy_class__', '__jsii_type__'])