aws-cdk-lib 2.200.2__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 (569) hide show
  1. aws_cdk/__init__.py +1349 -373
  2. aws_cdk/_jsii/__init__.py +1 -1
  3. aws_cdk/_jsii/{aws-cdk-lib@2.200.2.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 +1017 -155
  12. aws_cdk/aws_apigatewayv2/__init__.py +2796 -379
  13. aws_cdk/aws_apigatewayv2_integrations/__init__.py +94 -16
  14. aws_cdk/aws_appconfig/__init__.py +298 -43
  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 +29 -6
  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 +94 -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 +227 -53
  24. aws_cdk/aws_apptest/__init__.py +71 -2
  25. aws_cdk/aws_aps/__init__.py +1875 -132
  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 +135 -55
  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 +317 -28
  35. aws_cdk/aws_backupgateway/__init__.py +13 -2
  36. aws_cdk/aws_batch/__init__.py +1405 -178
  37. aws_cdk/aws_bcmdataexports/__init__.py +21 -2
  38. aws_cdk/aws_bedrock/__init__.py +6747 -627
  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 +42 -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 +237 -32
  45. aws_cdk/aws_chatbot/__init__.py +70 -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 +345 -166
  50. aws_cdk/aws_cloudfront/__init__.py +2101 -680
  51. aws_cdk/aws_cloudfront/experimental/__init__.py +108 -16
  52. aws_cdk/aws_cloudfront_origins/__init__.py +614 -73
  53. aws_cdk/aws_cloudtrail/__init__.py +301 -17
  54. aws_cdk/aws_cloudwatch/__init__.py +1414 -153
  55. aws_cdk/aws_codeartifact/__init__.py +35 -6
  56. aws_cdk/aws_codebuild/__init__.py +1103 -118
  57. aws_cdk/aws_codecommit/__init__.py +23 -9
  58. aws_cdk/aws_codeconnections/__init__.py +13 -2
  59. aws_cdk/aws_codedeploy/__init__.py +67 -6
  60. aws_cdk/aws_codeguruprofiler/__init__.py +74 -2
  61. aws_cdk/aws_codegurureviewer/__init__.py +13 -2
  62. aws_cdk/aws_codepipeline/__init__.py +127 -64
  63. aws_cdk/aws_codepipeline_actions/__init__.py +749 -0
  64. aws_cdk/aws_codestar/__init__.py +13 -2
  65. aws_cdk/aws_codestarconnections/__init__.py +35 -6
  66. aws_cdk/aws_codestarnotifications/__init__.py +16 -2
  67. aws_cdk/aws_cognito/__init__.py +814 -80
  68. aws_cdk/aws_cognito_identitypool/__init__.py +17 -12
  69. aws_cdk/aws_comprehend/__init__.py +24 -4
  70. aws_cdk/aws_config/__init__.py +191 -30
  71. aws_cdk/aws_connect/__init__.py +2736 -191
  72. aws_cdk/aws_connectcampaigns/__init__.py +13 -2
  73. aws_cdk/aws_connectcampaignsv2/__init__.py +268 -6
  74. aws_cdk/aws_controltower/__init__.py +35 -6
  75. aws_cdk/aws_cur/__init__.py +100 -4
  76. aws_cdk/aws_customerprofiles/__init__.py +617 -27
  77. aws_cdk/aws_databrew/__init__.py +68 -12
  78. aws_cdk/aws_datapipeline/__init__.py +42 -2
  79. aws_cdk/aws_datasync/__init__.py +723 -203
  80. aws_cdk/aws_datazone/__init__.py +4425 -608
  81. aws_cdk/aws_dax/__init__.py +83 -6
  82. aws_cdk/aws_deadline/__init__.py +321 -32
  83. aws_cdk/aws_detective/__init__.py +35 -6
  84. aws_cdk/aws_devicefarm/__init__.py +68 -12
  85. aws_cdk/aws_devopsguru/__init__.py +37 -6
  86. aws_cdk/aws_directoryservice/__init__.py +53 -4
  87. aws_cdk/aws_dlm/__init__.py +13 -2
  88. aws_cdk/aws_dms/__init__.py +184 -27
  89. aws_cdk/aws_docdb/__init__.py +323 -46
  90. aws_cdk/aws_docdbelastic/__init__.py +13 -2
  91. aws_cdk/aws_dsql/__init__.py +340 -12
  92. aws_cdk/aws_dynamodb/__init__.py +1463 -166
  93. aws_cdk/aws_ec2/__init__.py +9636 -1120
  94. aws_cdk/aws_ecr/__init__.py +631 -43
  95. aws_cdk/aws_ecr_assets/__init__.py +4 -0
  96. aws_cdk/aws_ecs/__init__.py +6524 -497
  97. aws_cdk/aws_ecs_patterns/__init__.py +2 -0
  98. aws_cdk/aws_efs/__init__.py +264 -24
  99. aws_cdk/aws_eks/__init__.py +1050 -218
  100. aws_cdk/aws_elasticache/__init__.py +373 -20
  101. aws_cdk/aws_elasticbeanstalk/__init__.py +75 -8
  102. aws_cdk/aws_elasticloadbalancing/__init__.py +16 -2
  103. aws_cdk/aws_elasticloadbalancingv2/__init__.py +1670 -106
  104. aws_cdk/aws_elasticsearch/__init__.py +282 -9
  105. aws_cdk/aws_emr/__init__.py +187 -20
  106. aws_cdk/aws_emrcontainers/__init__.py +71 -2
  107. aws_cdk/aws_emrserverless/__init__.py +188 -3
  108. aws_cdk/aws_entityresolution/__init__.py +585 -58
  109. aws_cdk/aws_events/__init__.py +969 -124
  110. aws_cdk/aws_events_targets/__init__.py +310 -54
  111. aws_cdk/aws_eventschemas/__init__.py +46 -8
  112. aws_cdk/aws_evidently/__init__.py +57 -10
  113. aws_cdk/aws_evs/__init__.py +2244 -0
  114. aws_cdk/aws_finspace/__init__.py +71 -2
  115. aws_cdk/aws_fis/__init__.py +26 -4
  116. aws_cdk/aws_fms/__init__.py +35 -6
  117. aws_cdk/aws_forecast/__init__.py +24 -4
  118. aws_cdk/aws_frauddetector/__init__.py +79 -14
  119. aws_cdk/aws_fsx/__init__.py +1236 -142
  120. aws_cdk/aws_gamelift/__init__.py +653 -78
  121. aws_cdk/aws_gameliftstreams/__init__.py +38 -16
  122. aws_cdk/aws_globalaccelerator/__init__.py +55 -14
  123. aws_cdk/aws_glue/__init__.py +1368 -320
  124. aws_cdk/aws_grafana/__init__.py +13 -2
  125. aws_cdk/aws_greengrass/__init__.py +654 -32
  126. aws_cdk/aws_greengrassv2/__init__.py +53 -4
  127. aws_cdk/aws_groundstation/__init__.py +122 -6
  128. aws_cdk/aws_guardduty/__init__.py +1613 -123
  129. aws_cdk/aws_healthimaging/__init__.py +71 -2
  130. aws_cdk/aws_healthlake/__init__.py +42 -2
  131. aws_cdk/aws_iam/__init__.py +480 -140
  132. aws_cdk/aws_identitystore/__init__.py +24 -4
  133. aws_cdk/aws_imagebuilder/__init__.py +1433 -183
  134. aws_cdk/aws_inspector/__init__.py +38 -6
  135. aws_cdk/aws_inspectorv2/__init__.py +2285 -243
  136. aws_cdk/aws_internetmonitor/__init__.py +71 -2
  137. aws_cdk/aws_invoicing/__init__.py +13 -2
  138. aws_cdk/aws_iot/__init__.py +1730 -86
  139. aws_cdk/aws_iotanalytics/__init__.py +162 -8
  140. aws_cdk/aws_iotcoredeviceadvisor/__init__.py +106 -40
  141. aws_cdk/aws_iotevents/__init__.py +122 -6
  142. aws_cdk/aws_iotfleethub/__init__.py +71 -2
  143. aws_cdk/aws_iotfleetwise/__init__.py +195 -14
  144. aws_cdk/aws_iotsitewise/__init__.py +1837 -89
  145. aws_cdk/aws_iotthingsgraph/__init__.py +13 -2
  146. aws_cdk/aws_iottwinmaker/__init__.py +115 -10
  147. aws_cdk/aws_iotwireless/__init__.py +649 -22
  148. aws_cdk/aws_ivs/__init__.py +561 -57
  149. aws_cdk/aws_ivschat/__init__.py +24 -4
  150. aws_cdk/aws_kafkaconnect/__init__.py +35 -6
  151. aws_cdk/aws_kendra/__init__.py +120 -28
  152. aws_cdk/aws_kendraranking/__init__.py +13 -2
  153. aws_cdk/aws_kinesis/__init__.py +622 -22
  154. aws_cdk/aws_kinesisanalytics/__init__.py +467 -94
  155. aws_cdk/aws_kinesisanalyticsv2/__init__.py +201 -11
  156. aws_cdk/aws_kinesisfirehose/__init__.py +3077 -295
  157. aws_cdk/aws_kinesisvideo/__init__.py +24 -4
  158. aws_cdk/aws_kms/__init__.py +188 -41
  159. aws_cdk/aws_lakeformation/__init__.py +80 -15
  160. aws_cdk/aws_lambda/__init__.py +2101 -252
  161. aws_cdk/aws_lambda_event_sources/__init__.py +638 -1
  162. aws_cdk/aws_lambda_nodejs/__init__.py +63 -24
  163. aws_cdk/aws_launchwizard/__init__.py +13 -2
  164. aws_cdk/aws_lex/__init__.py +871 -8
  165. aws_cdk/aws_licensemanager/__init__.py +24 -4
  166. aws_cdk/aws_lightsail/__init__.py +2159 -975
  167. aws_cdk/aws_location/__init__.py +618 -14
  168. aws_cdk/aws_logs/__init__.py +5904 -956
  169. aws_cdk/aws_lookoutequipment/__init__.py +13 -2
  170. aws_cdk/aws_lookoutmetrics/__init__.py +38 -6
  171. aws_cdk/aws_lookoutvision/__init__.py +71 -2
  172. aws_cdk/aws_m2/__init__.py +94 -19
  173. aws_cdk/aws_macie/__init__.py +49 -11
  174. aws_cdk/aws_managedblockchain/__init__.py +180 -6
  175. aws_cdk/aws_mediaconnect/__init__.py +101 -18
  176. aws_cdk/aws_mediaconvert/__init__.py +35 -6
  177. aws_cdk/aws_medialive/__init__.py +1239 -35
  178. aws_cdk/aws_mediapackage/__init__.py +59 -12
  179. aws_cdk/aws_mediapackagev2/__init__.py +1607 -225
  180. aws_cdk/aws_mediastore/__init__.py +13 -2
  181. aws_cdk/aws_mediatailor/__init__.py +583 -12
  182. aws_cdk/aws_memorydb/__init__.py +271 -12
  183. aws_cdk/aws_mpa/__init__.py +1495 -0
  184. aws_cdk/aws_msk/__init__.py +104 -18
  185. aws_cdk/aws_mwaa/__init__.py +121 -9
  186. aws_cdk/aws_neptune/__init__.py +290 -78
  187. aws_cdk/aws_neptunegraph/__init__.py +24 -4
  188. aws_cdk/aws_networkfirewall/__init__.py +1289 -273
  189. aws_cdk/aws_networkmanager/__init__.py +349 -33
  190. aws_cdk/aws_nimblestudio/__init__.py +75 -8
  191. aws_cdk/aws_notifications/__init__.py +317 -12
  192. aws_cdk/aws_notificationscontacts/__init__.py +13 -2
  193. aws_cdk/aws_oam/__init__.py +24 -4
  194. aws_cdk/aws_observabilityadmin/__init__.py +2561 -0
  195. aws_cdk/aws_odb/__init__.py +5872 -0
  196. aws_cdk/aws_omics/__init__.py +2495 -529
  197. aws_cdk/aws_opensearchserverless/__init__.py +312 -37
  198. aws_cdk/aws_opensearchservice/__init__.py +495 -19
  199. aws_cdk/aws_opsworks/__init__.py +235 -139
  200. aws_cdk/aws_opsworkscm/__init__.py +16 -52
  201. aws_cdk/aws_organizations/__init__.py +70 -10
  202. aws_cdk/aws_osis/__init__.py +167 -2
  203. aws_cdk/aws_panorama/__init__.py +151 -6
  204. aws_cdk/aws_paymentcryptography/__init__.py +24 -4
  205. aws_cdk/aws_pcaconnectorad/__init__.py +59 -10
  206. aws_cdk/aws_pcaconnectorscep/__init__.py +24 -4
  207. aws_cdk/aws_pcs/__init__.py +387 -68
  208. aws_cdk/aws_personalize/__init__.py +46 -8
  209. aws_cdk/aws_pinpoint/__init__.py +329 -38
  210. aws_cdk/aws_pinpointemail/__init__.py +48 -8
  211. aws_cdk/aws_pipes/__init__.py +12 -2
  212. aws_cdk/aws_proton/__init__.py +37 -6
  213. aws_cdk/aws_qbusiness/__init__.py +635 -34
  214. aws_cdk/aws_qldb/__init__.py +24 -4
  215. aws_cdk/aws_quicksight/__init__.py +7900 -1160
  216. aws_cdk/aws_ram/__init__.py +24 -4
  217. aws_cdk/aws_rbin/__init__.py +12 -2
  218. aws_cdk/aws_rds/__init__.py +3345 -512
  219. aws_cdk/aws_redshift/__init__.py +143 -20
  220. aws_cdk/aws_redshiftserverless/__init__.py +692 -4
  221. aws_cdk/aws_refactorspaces/__init__.py +64 -14
  222. aws_cdk/aws_rekognition/__init__.py +93 -6
  223. aws_cdk/aws_resiliencehub/__init__.py +24 -4
  224. aws_cdk/aws_resourceexplorer2/__init__.py +35 -6
  225. aws_cdk/aws_resourcegroups/__init__.py +82 -4
  226. aws_cdk/aws_robomaker/__init__.py +72 -12
  227. aws_cdk/aws_rolesanywhere/__init__.py +180 -6
  228. aws_cdk/aws_route53/__init__.py +3273 -1442
  229. aws_cdk/aws_route53_targets/__init__.py +3 -0
  230. aws_cdk/aws_route53profiles/__init__.py +37 -6
  231. aws_cdk/aws_route53recoverycontrol/__init__.py +46 -8
  232. aws_cdk/aws_route53recoveryreadiness/__init__.py +104 -8
  233. aws_cdk/aws_route53resolver/__init__.py +226 -36
  234. aws_cdk/aws_rtbfabric/__init__.py +3498 -0
  235. aws_cdk/aws_rum/__init__.py +13 -2
  236. aws_cdk/aws_s3/__init__.py +1291 -158
  237. aws_cdk/aws_s3_assets/__init__.py +11 -11
  238. aws_cdk/aws_s3_deployment/__init__.py +147 -11
  239. aws_cdk/aws_s3_notifications/__init__.py +7 -7
  240. aws_cdk/aws_s3express/__init__.py +266 -8
  241. aws_cdk/aws_s3objectlambda/__init__.py +68 -16
  242. aws_cdk/aws_s3outposts/__init__.py +46 -8
  243. aws_cdk/aws_s3tables/__init__.py +2000 -323
  244. aws_cdk/aws_s3vectors/__init__.py +1378 -0
  245. aws_cdk/aws_sagemaker/__init__.py +6617 -363
  246. aws_cdk/aws_sam/__init__.py +79 -14
  247. aws_cdk/aws_scheduler/__init__.py +237 -4
  248. aws_cdk/aws_sdb/__init__.py +12 -2
  249. aws_cdk/aws_secretsmanager/__init__.py +170 -14
  250. aws_cdk/aws_securityhub/__init__.py +3121 -176
  251. aws_cdk/aws_securitylake/__init__.py +46 -8
  252. aws_cdk/aws_servicecatalog/__init__.py +405 -246
  253. aws_cdk/aws_servicecatalogappregistry/__init__.py +164 -8
  254. aws_cdk/aws_servicediscovery/__init__.py +140 -47
  255. aws_cdk/aws_ses/__init__.py +1231 -140
  256. aws_cdk/aws_shield/__init__.py +46 -8
  257. aws_cdk/aws_signer/__init__.py +27 -4
  258. aws_cdk/aws_simspaceweaver/__init__.py +42 -2
  259. aws_cdk/aws_smsvoice/__init__.py +4716 -0
  260. aws_cdk/aws_sns/__init__.py +245 -29
  261. aws_cdk/aws_sns_subscriptions/__init__.py +3 -1
  262. aws_cdk/aws_sqs/__init__.py +211 -14
  263. aws_cdk/aws_ssm/__init__.py +401 -58
  264. aws_cdk/aws_ssmcontacts/__init__.py +46 -8
  265. aws_cdk/aws_ssmguiconnect/__init__.py +13 -2
  266. aws_cdk/aws_ssmincidents/__init__.py +24 -4
  267. aws_cdk/aws_ssmquicksetup/__init__.py +383 -6
  268. aws_cdk/aws_sso/__init__.py +70 -12
  269. aws_cdk/aws_stepfunctions/__init__.py +615 -70
  270. aws_cdk/aws_stepfunctions_tasks/__init__.py +781 -144
  271. aws_cdk/aws_supportapp/__init__.py +39 -6
  272. aws_cdk/aws_synthetics/__init__.py +861 -75
  273. aws_cdk/aws_systemsmanagersap/__init__.py +13 -2
  274. aws_cdk/aws_timestream/__init__.py +104 -8
  275. aws_cdk/aws_transfer/__init__.py +784 -87
  276. aws_cdk/aws_verifiedpermissions/__init__.py +145 -17
  277. aws_cdk/aws_voiceid/__init__.py +41 -2
  278. aws_cdk/aws_vpclattice/__init__.py +376 -30
  279. aws_cdk/aws_waf/__init__.py +79 -14
  280. aws_cdk/aws_wafregional/__init__.py +123 -22
  281. aws_cdk/aws_wafv2/__init__.py +1179 -60
  282. aws_cdk/aws_wisdom/__init__.py +1401 -90
  283. aws_cdk/aws_workspaces/__init__.py +93 -6
  284. aws_cdk/aws_workspacesinstances/__init__.py +3940 -0
  285. aws_cdk/aws_workspacesthinclient/__init__.py +79 -10
  286. aws_cdk/aws_workspacesweb/__init__.py +1057 -141
  287. aws_cdk/aws_xray/__init__.py +48 -8
  288. aws_cdk/cloud_assembly_schema/__init__.py +231 -6
  289. aws_cdk/custom_resources/__init__.py +40 -12
  290. aws_cdk/cx_api/__init__.py +85 -14
  291. aws_cdk/interfaces/__init__.py +739 -0
  292. aws_cdk/interfaces/alexa_ask/__init__.py +146 -0
  293. aws_cdk/interfaces/aws_accessanalyzer/__init__.py +146 -0
  294. aws_cdk/interfaces/aws_acmpca/__init__.py +501 -0
  295. aws_cdk/interfaces/aws_aiops/__init__.py +146 -0
  296. aws_cdk/interfaces/aws_amazonmq/__init__.py +386 -0
  297. aws_cdk/interfaces/aws_amplify/__init__.py +352 -0
  298. aws_cdk/interfaces/aws_amplifyuibuilder/__init__.py +454 -0
  299. aws_cdk/interfaces/aws_apigateway/__init__.py +2486 -0
  300. aws_cdk/interfaces/aws_apigatewayv2/__init__.py +1651 -0
  301. aws_cdk/interfaces/aws_appconfig/__init__.py +1020 -0
  302. aws_cdk/interfaces/aws_appflow/__init__.py +404 -0
  303. aws_cdk/interfaces/aws_appintegrations/__init__.py +396 -0
  304. aws_cdk/interfaces/aws_applicationautoscaling/__init__.py +307 -0
  305. aws_cdk/interfaces/aws_applicationinsights/__init__.py +148 -0
  306. aws_cdk/interfaces/aws_applicationsignals/__init__.py +358 -0
  307. aws_cdk/interfaces/aws_appmesh/__init__.py +888 -0
  308. aws_cdk/interfaces/aws_apprunner/__init__.py +564 -0
  309. aws_cdk/interfaces/aws_appstream/__init__.py +1482 -0
  310. aws_cdk/interfaces/aws_appsync/__init__.py +1326 -0
  311. aws_cdk/interfaces/aws_apptest/__init__.py +163 -0
  312. aws_cdk/interfaces/aws_aps/__init__.py +558 -0
  313. aws_cdk/interfaces/aws_arcregionswitch/__init__.py +146 -0
  314. aws_cdk/interfaces/aws_arczonalshift/__init__.py +273 -0
  315. aws_cdk/interfaces/aws_athena/__init__.py +575 -0
  316. aws_cdk/interfaces/aws_auditmanager/__init__.py +163 -0
  317. aws_cdk/interfaces/aws_autoscaling/__init__.py +705 -0
  318. aws_cdk/interfaces/aws_autoscalingplans/__init__.py +148 -0
  319. aws_cdk/interfaces/aws_b2bi/__init__.py +524 -0
  320. aws_cdk/interfaces/aws_backup/__init__.py +955 -0
  321. aws_cdk/interfaces/aws_backupgateway/__init__.py +146 -0
  322. aws_cdk/interfaces/aws_batch/__init__.py +681 -0
  323. aws_cdk/interfaces/aws_bcmdataexports/__init__.py +146 -0
  324. aws_cdk/interfaces/aws_bedrock/__init__.py +1942 -0
  325. aws_cdk/interfaces/aws_bedrockagentcore/__init__.py +934 -0
  326. aws_cdk/interfaces/aws_billing/__init__.py +146 -0
  327. aws_cdk/interfaces/aws_billingconductor/__init__.py +463 -0
  328. aws_cdk/interfaces/aws_budgets/__init__.py +261 -0
  329. aws_cdk/interfaces/aws_cassandra/__init__.py +381 -0
  330. aws_cdk/interfaces/aws_ce/__init__.py +352 -0
  331. aws_cdk/interfaces/aws_certificatemanager/__init__.py +251 -0
  332. aws_cdk/interfaces/aws_chatbot/__init__.py +366 -0
  333. aws_cdk/interfaces/aws_cleanrooms/__init__.py +1103 -0
  334. aws_cdk/interfaces/aws_cleanroomsml/__init__.py +148 -0
  335. aws_cdk/interfaces/aws_cloud9/__init__.py +166 -0
  336. aws_cdk/interfaces/aws_cloudformation/__init__.py +1919 -0
  337. aws_cdk/interfaces/aws_cloudfront/__init__.py +1998 -0
  338. aws_cdk/interfaces/aws_cloudtrail/__init__.py +570 -0
  339. aws_cdk/interfaces/aws_cloudwatch/__init__.py +733 -0
  340. aws_cdk/interfaces/aws_codeartifact/__init__.py +352 -0
  341. aws_cdk/interfaces/aws_codebuild/__init__.py +487 -0
  342. aws_cdk/interfaces/aws_codecommit/__init__.py +163 -0
  343. aws_cdk/interfaces/aws_codeconnections/__init__.py +146 -0
  344. aws_cdk/interfaces/aws_codedeploy/__init__.py +352 -0
  345. aws_cdk/interfaces/aws_codeguruprofiler/__init__.py +168 -0
  346. aws_cdk/interfaces/aws_codegurureviewer/__init__.py +148 -0
  347. aws_cdk/interfaces/aws_codepipeline/__init__.py +388 -0
  348. aws_cdk/interfaces/aws_codestar/__init__.py +146 -0
  349. aws_cdk/interfaces/aws_codestarconnections/__init__.py +370 -0
  350. aws_cdk/interfaces/aws_codestarnotifications/__init__.py +148 -0
  351. aws_cdk/interfaces/aws_cognito/__init__.py +1929 -0
  352. aws_cdk/interfaces/aws_comprehend/__init__.py +251 -0
  353. aws_cdk/interfaces/aws_config/__init__.py +1165 -0
  354. aws_cdk/interfaces/aws_connect/__init__.py +2949 -0
  355. aws_cdk/interfaces/aws_connectcampaigns/__init__.py +146 -0
  356. aws_cdk/interfaces/aws_connectcampaignsv2/__init__.py +146 -0
  357. aws_cdk/interfaces/aws_controltower/__init__.py +394 -0
  358. aws_cdk/interfaces/aws_cur/__init__.py +146 -0
  359. aws_cdk/interfaces/aws_customerprofiles/__init__.py +915 -0
  360. aws_cdk/interfaces/aws_databrew/__init__.py +661 -0
  361. aws_cdk/interfaces/aws_datapipeline/__init__.py +146 -0
  362. aws_cdk/interfaces/aws_datasync/__init__.py +1384 -0
  363. aws_cdk/interfaces/aws_datazone/__init__.py +2238 -0
  364. aws_cdk/interfaces/aws_dax/__init__.py +364 -0
  365. aws_cdk/interfaces/aws_deadline/__init__.py +1303 -0
  366. aws_cdk/interfaces/aws_detective/__init__.py +364 -0
  367. aws_cdk/interfaces/aws_devicefarm/__init__.py +663 -0
  368. aws_cdk/interfaces/aws_devopsguru/__init__.py +362 -0
  369. aws_cdk/interfaces/aws_directoryservice/__init__.py +251 -0
  370. aws_cdk/interfaces/aws_dlm/__init__.py +166 -0
  371. aws_cdk/interfaces/aws_dms/__init__.py +1176 -0
  372. aws_cdk/interfaces/aws_docdb/__init__.py +560 -0
  373. aws_cdk/interfaces/aws_docdbelastic/__init__.py +146 -0
  374. aws_cdk/interfaces/aws_dsql/__init__.py +146 -0
  375. aws_cdk/interfaces/aws_dynamodb/__init__.py +278 -0
  376. aws_cdk/interfaces/aws_ec2/__init__.py +11963 -0
  377. aws_cdk/interfaces/aws_ecr/__init__.py +814 -0
  378. aws_cdk/interfaces/aws_ecs/__init__.py +845 -0
  379. aws_cdk/interfaces/aws_efs/__init__.py +392 -0
  380. aws_cdk/interfaces/aws_eks/__init__.py +948 -0
  381. aws_cdk/interfaces/aws_elasticache/__init__.py +1108 -0
  382. aws_cdk/interfaces/aws_elasticbeanstalk/__init__.py +503 -0
  383. aws_cdk/interfaces/aws_elasticloadbalancing/__init__.py +148 -0
  384. aws_cdk/interfaces/aws_elasticloadbalancingv2/__init__.py +795 -0
  385. aws_cdk/interfaces/aws_elasticsearch/__init__.py +158 -0
  386. aws_cdk/interfaces/aws_emr/__init__.py +913 -0
  387. aws_cdk/interfaces/aws_emrcontainers/__init__.py +168 -0
  388. aws_cdk/interfaces/aws_emrserverless/__init__.py +166 -0
  389. aws_cdk/interfaces/aws_entityresolution/__init__.py +608 -0
  390. aws_cdk/interfaces/aws_events/__init__.py +872 -0
  391. aws_cdk/interfaces/aws_eventschemas/__init__.py +455 -0
  392. aws_cdk/interfaces/aws_evidently/__init__.py +558 -0
  393. aws_cdk/interfaces/aws_evs/__init__.py +166 -0
  394. aws_cdk/interfaces/aws_finspace/__init__.py +166 -0
  395. aws_cdk/interfaces/aws_fis/__init__.py +271 -0
  396. aws_cdk/interfaces/aws_fms/__init__.py +364 -0
  397. aws_cdk/interfaces/aws_forecast/__init__.py +249 -0
  398. aws_cdk/interfaces/aws_frauddetector/__init__.py +764 -0
  399. aws_cdk/interfaces/aws_fsx/__init__.py +663 -0
  400. aws_cdk/interfaces/aws_gamelift/__init__.py +1325 -0
  401. aws_cdk/interfaces/aws_gameliftstreams/__init__.py +249 -0
  402. aws_cdk/interfaces/aws_globalaccelerator/__init__.py +461 -0
  403. aws_cdk/interfaces/aws_glue/__init__.py +2377 -0
  404. aws_cdk/interfaces/aws_grafana/__init__.py +146 -0
  405. aws_cdk/interfaces/aws_greengrass/__init__.py +1871 -0
  406. aws_cdk/interfaces/aws_greengrassv2/__init__.py +251 -0
  407. aws_cdk/interfaces/aws_groundstation/__init__.py +396 -0
  408. aws_cdk/interfaces/aws_guardduty/__init__.py +1225 -0
  409. aws_cdk/interfaces/aws_healthimaging/__init__.py +163 -0
  410. aws_cdk/interfaces/aws_healthlake/__init__.py +146 -0
  411. aws_cdk/interfaces/aws_iam/__init__.py +1803 -0
  412. aws_cdk/interfaces/aws_identitystore/__init__.py +288 -0
  413. aws_cdk/interfaces/aws_imagebuilder/__init__.py +984 -0
  414. aws_cdk/interfaces/aws_inspector/__init__.py +354 -0
  415. aws_cdk/interfaces/aws_inspectorv2/__init__.py +467 -0
  416. aws_cdk/interfaces/aws_internetmonitor/__init__.py +163 -0
  417. aws_cdk/interfaces/aws_invoicing/__init__.py +146 -0
  418. aws_cdk/interfaces/aws_iot/__init__.py +3483 -0
  419. aws_cdk/interfaces/aws_iotanalytics/__init__.py +455 -0
  420. aws_cdk/interfaces/aws_iotcoredeviceadvisor/__init__.py +168 -0
  421. aws_cdk/interfaces/aws_iotevents/__init__.py +352 -0
  422. aws_cdk/interfaces/aws_iotfleethub/__init__.py +166 -0
  423. aws_cdk/interfaces/aws_iotfleetwise/__init__.py +892 -0
  424. aws_cdk/interfaces/aws_iotsitewise/__init__.py +1097 -0
  425. aws_cdk/interfaces/aws_iotthingsgraph/__init__.py +146 -0
  426. aws_cdk/interfaces/aws_iottwinmaker/__init__.py +711 -0
  427. aws_cdk/interfaces/aws_iotwireless/__init__.py +1401 -0
  428. aws_cdk/interfaces/aws_ivs/__init__.py +1075 -0
  429. aws_cdk/interfaces/aws_ivschat/__init__.py +251 -0
  430. aws_cdk/interfaces/aws_kafkaconnect/__init__.py +354 -0
  431. aws_cdk/interfaces/aws_kendra/__init__.py +428 -0
  432. aws_cdk/interfaces/aws_kendraranking/__init__.py +166 -0
  433. aws_cdk/interfaces/aws_kinesis/__init__.py +364 -0
  434. aws_cdk/interfaces/aws_kinesisanalytics/__init__.py +364 -0
  435. aws_cdk/interfaces/aws_kinesisanalyticsv2/__init__.py +479 -0
  436. aws_cdk/interfaces/aws_kinesisfirehose/__init__.py +168 -0
  437. aws_cdk/interfaces/aws_kinesisvideo/__init__.py +283 -0
  438. aws_cdk/interfaces/aws_kms/__init__.py +376 -0
  439. aws_cdk/interfaces/aws_lakeformation/__init__.py +860 -0
  440. aws_cdk/interfaces/aws_lambda/__init__.py +1141 -0
  441. aws_cdk/interfaces/aws_launchwizard/__init__.py +146 -0
  442. aws_cdk/interfaces/aws_lex/__init__.py +513 -0
  443. aws_cdk/interfaces/aws_licensemanager/__init__.py +249 -0
  444. aws_cdk/interfaces/aws_lightsail/__init__.py +1744 -0
  445. aws_cdk/interfaces/aws_location/__init__.py +879 -0
  446. aws_cdk/interfaces/aws_logs/__init__.py +1667 -0
  447. aws_cdk/interfaces/aws_lookoutequipment/__init__.py +168 -0
  448. aws_cdk/interfaces/aws_lookoutmetrics/__init__.py +251 -0
  449. aws_cdk/interfaces/aws_lookoutvision/__init__.py +163 -0
  450. aws_cdk/interfaces/aws_m2/__init__.py +352 -0
  451. aws_cdk/interfaces/aws_macie/__init__.py +512 -0
  452. aws_cdk/interfaces/aws_managedblockchain/__init__.py +381 -0
  453. aws_cdk/interfaces/aws_mediaconnect/__init__.py +1028 -0
  454. aws_cdk/interfaces/aws_mediaconvert/__init__.py +396 -0
  455. aws_cdk/interfaces/aws_medialive/__init__.py +1755 -0
  456. aws_cdk/interfaces/aws_mediapackage/__init__.py +644 -0
  457. aws_cdk/interfaces/aws_mediapackagev2/__init__.py +618 -0
  458. aws_cdk/interfaces/aws_mediastore/__init__.py +146 -0
  459. aws_cdk/interfaces/aws_mediatailor/__init__.py +788 -0
  460. aws_cdk/interfaces/aws_memorydb/__init__.py +685 -0
  461. aws_cdk/interfaces/aws_mpa/__init__.py +249 -0
  462. aws_cdk/interfaces/aws_msk/__init__.py +764 -0
  463. aws_cdk/interfaces/aws_mwaa/__init__.py +166 -0
  464. aws_cdk/interfaces/aws_neptune/__init__.py +663 -0
  465. aws_cdk/interfaces/aws_neptunegraph/__init__.py +265 -0
  466. aws_cdk/interfaces/aws_networkfirewall/__init__.py +669 -0
  467. aws_cdk/interfaces/aws_networkmanager/__init__.py +1832 -0
  468. aws_cdk/interfaces/aws_nimblestudio/__init__.py +388 -0
  469. aws_cdk/interfaces/aws_notifications/__init__.py +868 -0
  470. aws_cdk/interfaces/aws_notificationscontacts/__init__.py +148 -0
  471. aws_cdk/interfaces/aws_oam/__init__.py +249 -0
  472. aws_cdk/interfaces/aws_observabilityadmin/__init__.py +362 -0
  473. aws_cdk/interfaces/aws_odb/__init__.py +562 -0
  474. aws_cdk/interfaces/aws_omics/__init__.py +838 -0
  475. aws_cdk/interfaces/aws_opensearchserverless/__init__.py +859 -0
  476. aws_cdk/interfaces/aws_opensearchservice/__init__.py +283 -0
  477. aws_cdk/interfaces/aws_opsworks/__init__.py +772 -0
  478. aws_cdk/interfaces/aws_opsworkscm/__init__.py +146 -0
  479. aws_cdk/interfaces/aws_organizations/__init__.py +646 -0
  480. aws_cdk/interfaces/aws_osis/__init__.py +146 -0
  481. aws_cdk/interfaces/aws_panorama/__init__.py +420 -0
  482. aws_cdk/interfaces/aws_paymentcryptography/__init__.py +249 -0
  483. aws_cdk/interfaces/aws_pcaconnectorad/__init__.py +608 -0
  484. aws_cdk/interfaces/aws_pcaconnectorscep/__init__.py +249 -0
  485. aws_cdk/interfaces/aws_pcs/__init__.py +352 -0
  486. aws_cdk/interfaces/aws_personalize/__init__.py +455 -0
  487. aws_cdk/interfaces/aws_pinpoint/__init__.py +2125 -0
  488. aws_cdk/interfaces/aws_pinpointemail/__init__.py +467 -0
  489. aws_cdk/interfaces/aws_pipes/__init__.py +158 -0
  490. aws_cdk/interfaces/aws_proton/__init__.py +360 -0
  491. aws_cdk/interfaces/aws_qbusiness/__init__.py +1122 -0
  492. aws_cdk/interfaces/aws_qldb/__init__.py +283 -0
  493. aws_cdk/interfaces/aws_quicksight/__init__.py +1566 -0
  494. aws_cdk/interfaces/aws_ram/__init__.py +249 -0
  495. aws_cdk/interfaces/aws_rbin/__init__.py +146 -0
  496. aws_cdk/interfaces/aws_rds/__init__.py +1780 -0
  497. aws_cdk/interfaces/aws_redshift/__init__.py +1104 -0
  498. aws_cdk/interfaces/aws_redshiftserverless/__init__.py +356 -0
  499. aws_cdk/interfaces/aws_refactorspaces/__init__.py +605 -0
  500. aws_cdk/interfaces/aws_rekognition/__init__.py +406 -0
  501. aws_cdk/interfaces/aws_resiliencehub/__init__.py +251 -0
  502. aws_cdk/interfaces/aws_resourceexplorer2/__init__.py +354 -0
  503. aws_cdk/interfaces/aws_resourcegroups/__init__.py +261 -0
  504. aws_cdk/interfaces/aws_robomaker/__init__.py +673 -0
  505. aws_cdk/interfaces/aws_rolesanywhere/__init__.py +384 -0
  506. aws_cdk/interfaces/aws_route53/__init__.py +804 -0
  507. aws_cdk/interfaces/aws_route53profiles/__init__.py +368 -0
  508. aws_cdk/interfaces/aws_route53recoverycontrol/__init__.py +463 -0
  509. aws_cdk/interfaces/aws_route53recoveryreadiness/__init__.py +535 -0
  510. aws_cdk/interfaces/aws_route53resolver/__init__.py +1356 -0
  511. aws_cdk/interfaces/aws_rtbfabric/__init__.py +352 -0
  512. aws_cdk/interfaces/aws_rum/__init__.py +146 -0
  513. aws_cdk/interfaces/aws_s3/__init__.py +1171 -0
  514. aws_cdk/interfaces/aws_s3express/__init__.py +392 -0
  515. aws_cdk/interfaces/aws_s3objectlambda/__init__.py +271 -0
  516. aws_cdk/interfaces/aws_s3outposts/__init__.py +455 -0
  517. aws_cdk/interfaces/aws_s3tables/__init__.py +575 -0
  518. aws_cdk/interfaces/aws_s3vectors/__init__.py +354 -0
  519. aws_cdk/interfaces/aws_sagemaker/__init__.py +3797 -0
  520. aws_cdk/interfaces/aws_sam/__init__.py +603 -0
  521. aws_cdk/interfaces/aws_scheduler/__init__.py +286 -0
  522. aws_cdk/interfaces/aws_sdb/__init__.py +146 -0
  523. aws_cdk/interfaces/aws_secretsmanager/__init__.py +461 -0
  524. aws_cdk/interfaces/aws_securityhub/__init__.py +1499 -0
  525. aws_cdk/interfaces/aws_securitylake/__init__.py +474 -0
  526. aws_cdk/interfaces/aws_servicecatalog/__init__.py +1829 -0
  527. aws_cdk/interfaces/aws_servicecatalogappregistry/__init__.py +557 -0
  528. aws_cdk/interfaces/aws_servicediscovery/__init__.py +636 -0
  529. aws_cdk/interfaces/aws_ses/__init__.py +2018 -0
  530. aws_cdk/interfaces/aws_shield/__init__.py +455 -0
  531. aws_cdk/interfaces/aws_signer/__init__.py +266 -0
  532. aws_cdk/interfaces/aws_simspaceweaver/__init__.py +146 -0
  533. aws_cdk/interfaces/aws_smsvoice/__init__.py +892 -0
  534. aws_cdk/interfaces/aws_sns/__init__.py +455 -0
  535. aws_cdk/interfaces/aws_sqs/__init__.py +364 -0
  536. aws_cdk/interfaces/aws_ssm/__init__.py +982 -0
  537. aws_cdk/interfaces/aws_ssmcontacts/__init__.py +455 -0
  538. aws_cdk/interfaces/aws_ssmguiconnect/__init__.py +146 -0
  539. aws_cdk/interfaces/aws_ssmincidents/__init__.py +249 -0
  540. aws_cdk/interfaces/aws_ssmquicksetup/__init__.py +253 -0
  541. aws_cdk/interfaces/aws_sso/__init__.py +797 -0
  542. aws_cdk/interfaces/aws_stepfunctions/__init__.py +459 -0
  543. aws_cdk/interfaces/aws_supportapp/__init__.py +372 -0
  544. aws_cdk/interfaces/aws_synthetics/__init__.py +249 -0
  545. aws_cdk/interfaces/aws_systemsmanagersap/__init__.py +148 -0
  546. aws_cdk/interfaces/aws_timestream/__init__.py +526 -0
  547. aws_cdk/interfaces/aws_transfer/__init__.py +967 -0
  548. aws_cdk/interfaces/aws_verifiedpermissions/__init__.py +538 -0
  549. aws_cdk/interfaces/aws_voiceid/__init__.py +146 -0
  550. aws_cdk/interfaces/aws_vpclattice/__init__.py +1418 -0
  551. aws_cdk/interfaces/aws_waf/__init__.py +764 -0
  552. aws_cdk/interfaces/aws_wafregional/__init__.py +1182 -0
  553. aws_cdk/interfaces/aws_wafv2/__init__.py +870 -0
  554. aws_cdk/interfaces/aws_wisdom/__init__.py +1556 -0
  555. aws_cdk/interfaces/aws_workspaces/__init__.py +352 -0
  556. aws_cdk/interfaces/aws_workspacesinstances/__init__.py +390 -0
  557. aws_cdk/interfaces/aws_workspacesthinclient/__init__.py +168 -0
  558. aws_cdk/interfaces/aws_workspacesweb/__init__.py +1085 -0
  559. aws_cdk/interfaces/aws_xray/__init__.py +457 -0
  560. aws_cdk/pipelines/__init__.py +192 -42
  561. aws_cdk/region_info/__init__.py +3 -0
  562. aws_cdk/triggers/__init__.py +60 -18
  563. {aws_cdk_lib-2.200.2.dist-info → aws_cdk_lib-2.224.0.dist-info}/METADATA +338 -16
  564. aws_cdk_lib-2.224.0.dist-info/RECORD +584 -0
  565. aws_cdk_lib-2.200.2.dist-info/RECORD +0 -304
  566. {aws_cdk_lib-2.200.2.dist-info → aws_cdk_lib-2.224.0.dist-info}/LICENSE +0 -0
  567. {aws_cdk_lib-2.200.2.dist-info → aws_cdk_lib-2.224.0.dist-info}/NOTICE +0 -0
  568. {aws_cdk_lib-2.200.2.dist-info → aws_cdk_lib-2.224.0.dist-info}/WHEEL +0 -0
  569. {aws_cdk_lib-2.200.2.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,
@@ -1042,6 +1065,7 @@ class CfnFileSystem(
1042
1065
  throughput_capacity=123,
1043
1066
  weekly_maintenance_start_time="weeklyMaintenanceStartTime"
1044
1067
  ),
1068
+ network_type="networkType",
1045
1069
  ontap_configuration=fsx.CfnFileSystem.OntapConfigurationProperty(
1046
1070
  deployment_type="deploymentType",
1047
1071
 
@@ -1053,6 +1077,7 @@ class CfnFileSystem(
1053
1077
  mode="mode"
1054
1078
  ),
1055
1079
  endpoint_ip_address_range="endpointIpAddressRange",
1080
+ endpoint_ipv6_address_range="endpointIpv6AddressRange",
1056
1081
  fsx_admin_password="fsxAdminPassword",
1057
1082
  ha_pairs=123,
1058
1083
  preferred_subnet_id="preferredSubnetId",
@@ -1074,6 +1099,7 @@ class CfnFileSystem(
1074
1099
  mode="mode"
1075
1100
  ),
1076
1101
  endpoint_ip_address_range="endpointIpAddressRange",
1102
+ endpoint_ipv6_address_range="endpointIpv6AddressRange",
1077
1103
  options=["options"],
1078
1104
  preferred_subnet_id="preferredSubnetId",
1079
1105
  read_cache_configuration=fsx.CfnFileSystem.ReadCacheConfigurationProperty(
@@ -1154,6 +1180,7 @@ class CfnFileSystem(
1154
1180
  file_system_type_version: typing.Optional[builtins.str] = None,
1155
1181
  kms_key_id: typing.Optional[builtins.str] = None,
1156
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,
1157
1184
  ontap_configuration: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnFileSystem.OntapConfigurationProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
1158
1185
  open_zfs_configuration: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnFileSystem.OpenZFSConfigurationProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
1159
1186
  security_group_ids: typing.Optional[typing.Sequence[builtins.str]] = None,
@@ -1162,22 +1189,24 @@ class CfnFileSystem(
1162
1189
  tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,
1163
1190
  windows_configuration: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnFileSystem.WindowsConfigurationProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
1164
1191
  ) -> None:
1165
- '''
1192
+ '''Create a new ``AWS::FSx::FileSystem``.
1193
+
1166
1194
  :param scope: Scope in which this resource is defined.
1167
1195
  :param id: Construct identifier for this resource (unique in its scope).
1168
1196
  :param file_system_type: The type of Amazon FSx file system, which can be ``LUSTRE`` , ``WINDOWS`` , ``ONTAP`` , or ``OPENZFS`` .
1169
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.
1170
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>`_ .
1171
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.
1172
- :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
1173
- :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``
1174
- :param ontap_configuration: The ONTAP configuration properties of the FSx for ONTAP file system that you are creating.
1175
- :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`` .
1176
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.
1177
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).
1178
- :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* .
1179
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* .
1180
- :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`` .
1181
1210
  '''
1182
1211
  if __debug__:
1183
1212
  type_hints = typing.get_type_hints(_typecheckingstub__2d13764c3dcb8d96799af4fa191d042ff4511c33cfd1aecbf235dded3234d3c5)
@@ -1190,6 +1219,7 @@ class CfnFileSystem(
1190
1219
  file_system_type_version=file_system_type_version,
1191
1220
  kms_key_id=kms_key_id,
1192
1221
  lustre_configuration=lustre_configuration,
1222
+ network_type=network_type,
1193
1223
  ontap_configuration=ontap_configuration,
1194
1224
  open_zfs_configuration=open_zfs_configuration,
1195
1225
  security_group_ids=security_group_ids,
@@ -1290,6 +1320,12 @@ class CfnFileSystem(
1290
1320
  def _cfn_properties(self) -> typing.Mapping[builtins.str, typing.Any]:
1291
1321
  return typing.cast(typing.Mapping[builtins.str, typing.Any], jsii.get(self, "cfnProperties"))
1292
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
+
1293
1329
  @builtins.property
1294
1330
  @jsii.member(jsii_name="tags")
1295
1331
  def tags(self) -> _TagManager_0a598cb3:
@@ -1379,6 +1415,19 @@ class CfnFileSystem(
1379
1415
  check_type(argname="argument value", value=value, expected_type=type_hints["value"])
1380
1416
  jsii.set(self, "lustreConfiguration", value) # pyright: ignore[reportArgumentType]
1381
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
+
1382
1431
  @builtins.property
1383
1432
  @jsii.member(jsii_name="ontapConfiguration")
1384
1433
  def ontap_configuration(
@@ -1685,9 +1734,10 @@ class CfnFileSystem(
1685
1734
  size_gib: typing.Optional[jsii.Number] = None,
1686
1735
  sizing_mode: typing.Optional[builtins.str] = None,
1687
1736
  ) -> None:
1688
- '''
1689
- :param size_gib:
1690
- :param sizing_mode:
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.
1691
1741
 
1692
1742
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-fsx-filesystem-datareadcacheconfiguration.html
1693
1743
  :exampleMetadata: fixture=_generated
@@ -1715,7 +1765,10 @@ class CfnFileSystem(
1715
1765
 
1716
1766
  @builtins.property
1717
1767
  def size_gib(self) -> typing.Optional[jsii.Number]:
1718
- '''
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
+
1719
1772
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-fsx-filesystem-datareadcacheconfiguration.html#cfn-fsx-filesystem-datareadcacheconfiguration-sizegib
1720
1773
  '''
1721
1774
  result = self._values.get("size_gib")
@@ -1723,7 +1776,12 @@ class CfnFileSystem(
1723
1776
 
1724
1777
  @builtins.property
1725
1778
  def sizing_mode(self) -> typing.Optional[builtins.str]:
1726
- '''
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
+
1727
1785
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-fsx-filesystem-datareadcacheconfiguration.html#cfn-fsx-filesystem-datareadcacheconfiguration-sizingmode
1728
1786
  '''
1729
1787
  result = self._values.get("sizing_mode")
@@ -1866,16 +1924,16 @@ class CfnFileSystem(
1866
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* .
1867
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.
1868
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* .
1869
- :param data_read_cache_configuration:
1870
- :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`` )
1871
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`` .
1872
- :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`` )
1873
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.
1874
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.
1875
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.
1876
- :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.
1877
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.
1878
- :param throughput_capacity:
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.
1879
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.
1880
1938
 
1881
1939
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-fsx-filesystem-lustreconfiguration.html
@@ -2042,7 +2100,10 @@ class CfnFileSystem(
2042
2100
  def data_read_cache_configuration(
2043
2101
  self,
2044
2102
  ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnFileSystem.DataReadCacheConfigurationProperty"]]:
2045
- '''
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
+
2046
2107
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-fsx-filesystem-lustreconfiguration.html#cfn-fsx-filesystem-lustreconfiguration-datareadcacheconfiguration
2047
2108
  '''
2048
2109
  result = self._values.get("data_read_cache_configuration")
@@ -2056,7 +2117,7 @@ class CfnFileSystem(
2056
2117
 
2057
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.
2058
2119
 
2059
- 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* .
2060
2121
  .. epigraph::
2061
2122
 
2062
2123
  If you choose ``PERSISTENT_2`` , and you set ``FileSystemTypeVersion`` to ``2.10`` , the ``CreateFileSystem`` operation fails.
@@ -2087,7 +2148,10 @@ class CfnFileSystem(
2087
2148
  def efa_enabled(
2088
2149
  self,
2089
2150
  ) -> typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]]:
2090
- '''
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
+
2091
2155
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-fsx-filesystem-lustreconfiguration.html#cfn-fsx-filesystem-lustreconfiguration-efaenabled
2092
2156
  '''
2093
2157
  result = self._values.get("efa_enabled")
@@ -2143,7 +2207,8 @@ class CfnFileSystem(
2143
2207
  def metadata_configuration(
2144
2208
  self,
2145
2209
  ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnFileSystem.MetadataConfigurationProperty"]]:
2146
- '''
2210
+ '''The Lustre metadata performance configuration for the creation of an FSx for Lustre file system using a ``PERSISTENT_2`` deployment type.
2211
+
2147
2212
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-fsx-filesystem-lustreconfiguration.html#cfn-fsx-filesystem-lustreconfiguration-metadataconfiguration
2148
2213
  '''
2149
2214
  result = self._values.get("metadata_configuration")
@@ -2168,7 +2233,10 @@ class CfnFileSystem(
2168
2233
 
2169
2234
  @builtins.property
2170
2235
  def throughput_capacity(self) -> typing.Optional[jsii.Number]:
2171
- '''
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
+
2172
2240
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-fsx-filesystem-lustreconfiguration.html#cfn-fsx-filesystem-lustreconfiguration-throughputcapacity
2173
2241
  '''
2174
2242
  result = self._values.get("throughput_capacity")
@@ -2208,9 +2276,10 @@ class CfnFileSystem(
2208
2276
  iops: typing.Optional[jsii.Number] = None,
2209
2277
  mode: typing.Optional[builtins.str] = None,
2210
2278
  ) -> None:
2211
- '''
2212
- :param iops:
2213
- :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.
2214
2283
 
2215
2284
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-fsx-filesystem-metadataconfiguration.html
2216
2285
  :exampleMetadata: fixture=_generated
@@ -2238,7 +2307,8 @@ class CfnFileSystem(
2238
2307
 
2239
2308
  @builtins.property
2240
2309
  def iops(self) -> typing.Optional[jsii.Number]:
2241
- '''
2310
+ '''The number of Metadata IOPS provisioned for the file system.
2311
+
2242
2312
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-fsx-filesystem-metadataconfiguration.html#cfn-fsx-filesystem-metadataconfiguration-iops
2243
2313
  '''
2244
2314
  result = self._values.get("iops")
@@ -2246,7 +2316,8 @@ class CfnFileSystem(
2246
2316
 
2247
2317
  @builtins.property
2248
2318
  def mode(self) -> typing.Optional[builtins.str]:
2249
- '''
2319
+ '''Specifies whether the file system is using the AUTOMATIC setting of metadata IOPS or if it is using a USER_PROVISIONED value.
2320
+
2250
2321
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-fsx-filesystem-metadataconfiguration.html#cfn-fsx-filesystem-metadataconfiguration-mode
2251
2322
  '''
2252
2323
  result = self._values.get("mode")
@@ -2332,6 +2403,7 @@ class CfnFileSystem(
2332
2403
  "daily_automatic_backup_start_time": "dailyAutomaticBackupStartTime",
2333
2404
  "disk_iops_configuration": "diskIopsConfiguration",
2334
2405
  "endpoint_ip_address_range": "endpointIpAddressRange",
2406
+ "endpoint_ipv6_address_range": "endpointIpv6AddressRange",
2335
2407
  "fsx_admin_password": "fsxAdminPassword",
2336
2408
  "ha_pairs": "haPairs",
2337
2409
  "preferred_subnet_id": "preferredSubnetId",
@@ -2350,6 +2422,7 @@ class CfnFileSystem(
2350
2422
  daily_automatic_backup_start_time: typing.Optional[builtins.str] = None,
2351
2423
  disk_iops_configuration: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnFileSystem.DiskIopsConfigurationProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
2352
2424
  endpoint_ip_address_range: typing.Optional[builtins.str] = None,
2425
+ endpoint_ipv6_address_range: typing.Optional[builtins.str] = None,
2353
2426
  fsx_admin_password: typing.Optional[builtins.str] = None,
2354
2427
  ha_pairs: typing.Optional[jsii.Number] = None,
2355
2428
  preferred_subnet_id: typing.Optional[builtins.str] = None,
@@ -2364,7 +2437,8 @@ class CfnFileSystem(
2364
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`` .
2365
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.
2366
2439
  :param disk_iops_configuration: The SSD IOPS configuration for the FSx for ONTAP file system.
2367
- :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:
2368
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.
2369
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`` .
2370
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.
@@ -2393,6 +2467,7 @@ class CfnFileSystem(
2393
2467
  mode="mode"
2394
2468
  ),
2395
2469
  endpoint_ip_address_range="endpointIpAddressRange",
2470
+ endpoint_ipv6_address_range="endpointIpv6AddressRange",
2396
2471
  fsx_admin_password="fsxAdminPassword",
2397
2472
  ha_pairs=123,
2398
2473
  preferred_subnet_id="preferredSubnetId",
@@ -2409,6 +2484,7 @@ class CfnFileSystem(
2409
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"])
2410
2485
  check_type(argname="argument disk_iops_configuration", value=disk_iops_configuration, expected_type=type_hints["disk_iops_configuration"])
2411
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"])
2412
2488
  check_type(argname="argument fsx_admin_password", value=fsx_admin_password, expected_type=type_hints["fsx_admin_password"])
2413
2489
  check_type(argname="argument ha_pairs", value=ha_pairs, expected_type=type_hints["ha_pairs"])
2414
2490
  check_type(argname="argument preferred_subnet_id", value=preferred_subnet_id, expected_type=type_hints["preferred_subnet_id"])
@@ -2427,6 +2503,8 @@ class CfnFileSystem(
2427
2503
  self._values["disk_iops_configuration"] = disk_iops_configuration
2428
2504
  if endpoint_ip_address_range is not None:
2429
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
2430
2508
  if fsx_admin_password is not None:
2431
2509
  self._values["fsx_admin_password"] = fsx_admin_password
2432
2510
  if ha_pairs is not None:
@@ -2494,7 +2572,7 @@ class CfnFileSystem(
2494
2572
 
2495
2573
  @builtins.property
2496
2574
  def endpoint_ip_address_range(self) -> typing.Optional[builtins.str]:
2497
- '''(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.
2498
2576
 
2499
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.
2500
2578
 
@@ -2503,6 +2581,14 @@ class CfnFileSystem(
2503
2581
  result = self._values.get("endpoint_ip_address_range")
2504
2582
  return typing.cast(typing.Optional[builtins.str], result)
2505
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
+
2506
2592
  @builtins.property
2507
2593
  def fsx_admin_password(self) -> typing.Optional[builtins.str]:
2508
2594
  '''The ONTAP administrative password for the ``fsxadmin`` user with which you administer your file system using the NetApp ONTAP CLI and REST API.
@@ -2625,6 +2711,7 @@ class CfnFileSystem(
2625
2711
  "daily_automatic_backup_start_time": "dailyAutomaticBackupStartTime",
2626
2712
  "disk_iops_configuration": "diskIopsConfiguration",
2627
2713
  "endpoint_ip_address_range": "endpointIpAddressRange",
2714
+ "endpoint_ipv6_address_range": "endpointIpv6AddressRange",
2628
2715
  "options": "options",
2629
2716
  "preferred_subnet_id": "preferredSubnetId",
2630
2717
  "read_cache_configuration": "readCacheConfiguration",
@@ -2645,6 +2732,7 @@ class CfnFileSystem(
2645
2732
  daily_automatic_backup_start_time: typing.Optional[builtins.str] = None,
2646
2733
  disk_iops_configuration: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnFileSystem.DiskIopsConfigurationProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
2647
2734
  endpoint_ip_address_range: typing.Optional[builtins.str] = None,
2735
+ endpoint_ipv6_address_range: typing.Optional[builtins.str] = None,
2648
2736
  options: typing.Optional[typing.Sequence[builtins.str]] = None,
2649
2737
  preferred_subnet_id: typing.Optional[builtins.str] = None,
2650
2738
  read_cache_configuration: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnFileSystem.ReadCacheConfigurationProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
@@ -2661,13 +2749,14 @@ class CfnFileSystem(
2661
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.
2662
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.
2663
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).
2664
- :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.
2665
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.
2666
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.
2667
2756
  :param read_cache_configuration: Specifies the optional provisioned SSD read cache on file systems that use the Intelligent-Tiering storage class.
2668
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.
2669
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.
2670
- :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.
2671
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.
2672
2761
 
2673
2762
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-fsx-filesystem-openzfsconfiguration.html
@@ -2692,6 +2781,7 @@ class CfnFileSystem(
2692
2781
  mode="mode"
2693
2782
  ),
2694
2783
  endpoint_ip_address_range="endpointIpAddressRange",
2784
+ endpoint_ipv6_address_range="endpointIpv6AddressRange",
2695
2785
  options=["options"],
2696
2786
  preferred_subnet_id="preferredSubnetId",
2697
2787
  read_cache_configuration=fsx.CfnFileSystem.ReadCacheConfigurationProperty(
@@ -2729,6 +2819,7 @@ class CfnFileSystem(
2729
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"])
2730
2820
  check_type(argname="argument disk_iops_configuration", value=disk_iops_configuration, expected_type=type_hints["disk_iops_configuration"])
2731
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"])
2732
2823
  check_type(argname="argument options", value=options, expected_type=type_hints["options"])
2733
2824
  check_type(argname="argument preferred_subnet_id", value=preferred_subnet_id, expected_type=type_hints["preferred_subnet_id"])
2734
2825
  check_type(argname="argument read_cache_configuration", value=read_cache_configuration, expected_type=type_hints["read_cache_configuration"])
@@ -2751,6 +2842,8 @@ class CfnFileSystem(
2751
2842
  self._values["disk_iops_configuration"] = disk_iops_configuration
2752
2843
  if endpoint_ip_address_range is not None:
2753
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
2754
2847
  if options is not None:
2755
2848
  self._values["options"] = options
2756
2849
  if preferred_subnet_id is not None:
@@ -2847,7 +2940,7 @@ class CfnFileSystem(
2847
2940
 
2848
2941
  @builtins.property
2849
2942
  def endpoint_ip_address_range(self) -> typing.Optional[builtins.str]:
2850
- '''(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.
2851
2944
 
2852
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.
2853
2946
 
@@ -2856,6 +2949,17 @@ class CfnFileSystem(
2856
2949
  result = self._values.get("endpoint_ip_address_range")
2857
2950
  return typing.cast(typing.Optional[builtins.str], result)
2858
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
+
2859
2963
  @builtins.property
2860
2964
  def options(self) -> typing.Optional[typing.List[builtins.str]]:
2861
2965
  '''To delete a file system if there are child volumes present below the root volume, use the string ``DELETE_CHILD_VOLUMES_AND_SNAPSHOTS`` .
@@ -2917,6 +3021,8 @@ class CfnFileSystem(
2917
3021
  def throughput_capacity(self) -> typing.Optional[jsii.Number]:
2918
3022
  '''Specifies the throughput of an Amazon FSx for OpenZFS file system, measured in megabytes per second (MBps).
2919
3023
 
3024
+ Required if you are creating a new file system.
3025
+
2920
3026
  Valid values depend on the ``DeploymentType`` that you choose, as follows:
2921
3027
 
2922
3028
  - For ``MULTI_AZ_1`` and ``SINGLE_AZ_2`` , valid values are 160, 320, 640, 1280, 2560, 3840, 5120, 7680, or 10240 MBps.
@@ -2963,7 +3069,7 @@ class CfnFileSystem(
2963
3069
  size_gib: typing.Optional[jsii.Number] = None,
2964
3070
  sizing_mode: typing.Optional[builtins.str] = None,
2965
3071
  ) -> None:
2966
- '''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.
2967
3073
 
2968
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).
2969
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.
@@ -3740,6 +3846,7 @@ class CfnFileSystem(
3740
3846
  "file_system_type_version": "fileSystemTypeVersion",
3741
3847
  "kms_key_id": "kmsKeyId",
3742
3848
  "lustre_configuration": "lustreConfiguration",
3849
+ "network_type": "networkType",
3743
3850
  "ontap_configuration": "ontapConfiguration",
3744
3851
  "open_zfs_configuration": "openZfsConfiguration",
3745
3852
  "security_group_ids": "securityGroupIds",
@@ -3759,6 +3866,7 @@ class CfnFileSystemProps:
3759
3866
  file_system_type_version: typing.Optional[builtins.str] = None,
3760
3867
  kms_key_id: typing.Optional[builtins.str] = None,
3761
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,
3762
3870
  ontap_configuration: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnFileSystem.OntapConfigurationProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
3763
3871
  open_zfs_configuration: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnFileSystem.OpenZFSConfigurationProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
3764
3872
  security_group_ids: typing.Optional[typing.Sequence[builtins.str]] = None,
@@ -3773,15 +3881,16 @@ class CfnFileSystemProps:
3773
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.
3774
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>`_ .
3775
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.
3776
- :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
3777
- :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``
3778
- :param ontap_configuration: The ONTAP configuration properties of the FSx for ONTAP file system that you are creating.
3779
- :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`` .
3780
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.
3781
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).
3782
- :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* .
3783
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* .
3784
- :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`` .
3785
3894
 
3786
3895
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-fsx-filesystem.html
3787
3896
  :exampleMetadata: fixture=_generated
@@ -3824,6 +3933,7 @@ class CfnFileSystemProps:
3824
3933
  throughput_capacity=123,
3825
3934
  weekly_maintenance_start_time="weeklyMaintenanceStartTime"
3826
3935
  ),
3936
+ network_type="networkType",
3827
3937
  ontap_configuration=fsx.CfnFileSystem.OntapConfigurationProperty(
3828
3938
  deployment_type="deploymentType",
3829
3939
 
@@ -3835,6 +3945,7 @@ class CfnFileSystemProps:
3835
3945
  mode="mode"
3836
3946
  ),
3837
3947
  endpoint_ip_address_range="endpointIpAddressRange",
3948
+ endpoint_ipv6_address_range="endpointIpv6AddressRange",
3838
3949
  fsx_admin_password="fsxAdminPassword",
3839
3950
  ha_pairs=123,
3840
3951
  preferred_subnet_id="preferredSubnetId",
@@ -3856,6 +3967,7 @@ class CfnFileSystemProps:
3856
3967
  mode="mode"
3857
3968
  ),
3858
3969
  endpoint_ip_address_range="endpointIpAddressRange",
3970
+ endpoint_ipv6_address_range="endpointIpv6AddressRange",
3859
3971
  options=["options"],
3860
3972
  preferred_subnet_id="preferredSubnetId",
3861
3973
  read_cache_configuration=fsx.CfnFileSystem.ReadCacheConfigurationProperty(
@@ -3932,6 +4044,7 @@ class CfnFileSystemProps:
3932
4044
  check_type(argname="argument file_system_type_version", value=file_system_type_version, expected_type=type_hints["file_system_type_version"])
3933
4045
  check_type(argname="argument kms_key_id", value=kms_key_id, expected_type=type_hints["kms_key_id"])
3934
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"])
3935
4048
  check_type(argname="argument ontap_configuration", value=ontap_configuration, expected_type=type_hints["ontap_configuration"])
3936
4049
  check_type(argname="argument open_zfs_configuration", value=open_zfs_configuration, expected_type=type_hints["open_zfs_configuration"])
3937
4050
  check_type(argname="argument security_group_ids", value=security_group_ids, expected_type=type_hints["security_group_ids"])
@@ -3951,6 +4064,8 @@ class CfnFileSystemProps:
3951
4064
  self._values["kms_key_id"] = kms_key_id
3952
4065
  if lustre_configuration is not None:
3953
4066
  self._values["lustre_configuration"] = lustre_configuration
4067
+ if network_type is not None:
4068
+ self._values["network_type"] = network_type
3954
4069
  if ontap_configuration is not None:
3955
4070
  self._values["ontap_configuration"] = ontap_configuration
3956
4071
  if open_zfs_configuration is not None:
@@ -4035,6 +4150,8 @@ class CfnFileSystemProps:
4035
4150
  - Amazon FSx for OpenZFS
4036
4151
  - Amazon FSx for Windows File Server
4037
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
+
4038
4155
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-fsx-filesystem.html#cfn-fsx-filesystem-kmskeyid
4039
4156
  '''
4040
4157
  result = self._values.get("kms_key_id")
@@ -4046,122 +4163,956 @@ class CfnFileSystemProps:
4046
4163
  ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, CfnFileSystem.LustreConfigurationProperty]]:
4047
4164
  '''The Lustre configuration for the file system being created.
4048
4165
 
4049
- .. epigraph::
4166
+ This configuration is required if the ``FileSystemType`` is set to ``LUSTRE`` .
4167
+ .. epigraph::
4168
+
4169
+ The following parameters are not supported when creating Lustre file systems with a data repository association.
4170
+
4171
+ - ``AutoImportPolicy``
4172
+ - ``ExportPath``
4173
+ - ``ImportedChunkSize``
4174
+ - ``ImportPath``
4175
+
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)
4050
4915
 
4051
- The following parameters are not supported when creating Lustre file systems with a data repository association.
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.
4052
4921
 
4053
- - ``AutoImportPolicy``
4054
- - ``ExportPath``
4055
- - ``ImportedChunkSize``
4056
- - ``ImportPath``
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)
4057
4926
 
4058
- :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-fsx-filesystem.html#cfn-fsx-filesystem-lustreconfiguration
4059
- '''
4060
- result = self._values.get("lustre_configuration")
4061
- return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, CfnFileSystem.LustreConfigurationProperty]], result)
4927
+ def __eq__(self, rhs: typing.Any) -> builtins.bool:
4928
+ return isinstance(rhs, self.__class__) and rhs._values == self._values
4062
4929
 
4063
- @builtins.property
4064
- def ontap_configuration(
4065
- self,
4066
- ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, CfnFileSystem.OntapConfigurationProperty]]:
4067
- '''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)
4068
4932
 
4069
- :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-fsx-filesystem.html#cfn-fsx-filesystem-ontapconfiguration
4070
- '''
4071
- result = self._values.get("ontap_configuration")
4072
- 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
+ )
4073
4937
 
4074
- @builtins.property
4075
- def open_zfs_configuration(
4076
- self,
4077
- ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, CfnFileSystem.OpenZFSConfigurationProperty]]:
4078
- '''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).
4079
4946
 
4080
- :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-fsx-filesystem.html#cfn-fsx-filesystem-openzfsconfiguration
4081
- '''
4082
- result = self._values.get("open_zfs_configuration")
4083
- 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.
4084
4948
 
4085
- @builtins.property
4086
- def security_group_ids(self) -> typing.Optional[typing.List[builtins.str]]:
4087
- '''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
4088
4951
 
4089
- This list isn't returned in later requests to describe the file system.
4090
- .. epigraph::
4952
+ Example::
4091
4953
 
4092
- 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
+ }
4093
4968
 
4094
- :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-fsx-filesystem.html#cfn-fsx-filesystem-securitygroupids
4095
- '''
4096
- result = self._values.get("security_group_ids")
4097
- 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.
4098
4972
 
4099
- @builtins.property
4100
- def storage_capacity(self) -> typing.Optional[jsii.Number]:
4101
- '''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)
4102
4978
 
4103
- ``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
4104
4981
 
4105
- *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)
4106
4984
 
4107
- - 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.
4108
- - 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.
4109
- - 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
+ )
4110
4989
 
4111
- *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).
4112
4990
 
4113
- *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``.
4114
5011
 
4115
- *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.
4116
5016
 
4117
- - For SSD storage, valid values are 32 GiB-65,536 GiB (64 TiB).
4118
- - 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
4119
5019
 
4120
- :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
+ )
4121
5057
  '''
4122
- result = self._values.get("storage_capacity")
4123
- 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
4124
5071
 
4125
5072
  @builtins.property
4126
- def storage_type(self) -> typing.Optional[builtins.str]:
4127
- '''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;
4128
5075
 
4129
- Valid values are ``SSD`` , ``HDD`` , and ``INTELLIGENT_TIERING`` .
5076
+ also used for the name of the S3 access point.
4130
5077
 
4131
- - Set to ``SSD`` to use solid state drive storage. SSD is supported on all Windows, Lustre, ONTAP, and OpenZFS deployment types.
4132
- - 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.
4133
- - 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)
4134
5083
 
4135
- 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.
4136
5089
 
4137
- :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
4138
5091
  '''
4139
- result = self._values.get("storage_type")
4140
- 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)
4141
5095
 
4142
5096
  @builtins.property
4143
- def tags(self) -> typing.Optional[typing.List[_CfnTag_f6864754]]:
4144
- '''The tags to associate with the file system.
5097
+ def type(self) -> builtins.str:
5098
+ '''The type of Amazon FSx volume that the S3 access point is attached to.
4145
5099
 
4146
- 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* .
4147
-
4148
- :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
4149
5101
  '''
4150
- result = self._values.get("tags")
4151
- 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)
4152
5105
 
4153
5106
  @builtins.property
4154
- def windows_configuration(
5107
+ def s3_access_point(
4155
5108
  self,
4156
- ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, CfnFileSystem.WindowsConfigurationProperty]]:
4157
- '''The configuration object for the Microsoft Windows file system you are creating.
4158
-
4159
- 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.
4160
5111
 
4161
- :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
4162
5113
  '''
4163
- result = self._values.get("windows_configuration")
4164
- 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)
4165
5116
 
4166
5117
  def __eq__(self, rhs: typing.Any) -> builtins.bool:
4167
5118
  return isinstance(rhs, self.__class__) and rhs._values == self._values
@@ -4170,12 +5121,12 @@ class CfnFileSystemProps:
4170
5121
  return not (rhs == self)
4171
5122
 
4172
5123
  def __repr__(self) -> str:
4173
- return "CfnFileSystemProps(%s)" % ", ".join(
5124
+ return "CfnS3AccessPointAttachmentProps(%s)" % ", ".join(
4174
5125
  k + "=" + repr(v) for k, v in self._values.items()
4175
5126
  )
4176
5127
 
4177
5128
 
4178
- @jsii.implements(_IInspectable_c2943556, _ITaggable_36806126)
5129
+ @jsii.implements(_IInspectable_c2943556, _ISnapshotRef_fbdde5f5, _ITaggable_36806126)
4179
5130
  class CfnSnapshot(
4180
5131
  _CfnResource_9df397a6,
4181
5132
  metaclass=jsii.JSIIMeta,
@@ -4214,7 +5165,8 @@ class CfnSnapshot(
4214
5165
  volume_id: builtins.str,
4215
5166
  tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,
4216
5167
  ) -> None:
4217
- '''
5168
+ '''Create a new ``AWS::FSx::Snapshot``.
5169
+
4218
5170
  :param scope: Scope in which this resource is defined.
4219
5171
  :param id: Construct identifier for this resource (unique in its scope).
4220
5172
  :param name: The name of the snapshot.
@@ -4283,6 +5235,12 @@ class CfnSnapshot(
4283
5235
  def _cfn_properties(self) -> typing.Mapping[builtins.str, typing.Any]:
4284
5236
  return typing.cast(typing.Mapping[builtins.str, typing.Any], jsii.get(self, "cfnProperties"))
4285
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
+
4286
5244
  @builtins.property
4287
5245
  @jsii.member(jsii_name="tags")
4288
5246
  def tags(self) -> _TagManager_0a598cb3:
@@ -4421,7 +5379,7 @@ class CfnSnapshotProps:
4421
5379
  )
4422
5380
 
4423
5381
 
4424
- @jsii.implements(_IInspectable_c2943556, _ITaggable_36806126)
5382
+ @jsii.implements(_IInspectable_c2943556, _IStorageVirtualMachineRef_3a0f4396, _ITaggable_36806126)
4425
5383
  class CfnStorageVirtualMachine(
4426
5384
  _CfnResource_9df397a6,
4427
5385
  metaclass=jsii.JSIIMeta,
@@ -4476,7 +5434,8 @@ class CfnStorageVirtualMachine(
4476
5434
  svm_admin_password: typing.Optional[builtins.str] = None,
4477
5435
  tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,
4478
5436
  ) -> None:
4479
- '''
5437
+ '''Create a new ``AWS::FSx::StorageVirtualMachine``.
5438
+
4480
5439
  :param scope: Scope in which this resource is defined.
4481
5440
  :param id: Construct identifier for this resource (unique in its scope).
4482
5441
  :param file_system_id: Specifies the FSx for ONTAP file system on which to create the SVM.
@@ -4569,6 +5528,12 @@ class CfnStorageVirtualMachine(
4569
5528
  def _cfn_properties(self) -> typing.Mapping[builtins.str, typing.Any]:
4570
5529
  return typing.cast(typing.Mapping[builtins.str, typing.Any], jsii.get(self, "cfnProperties"))
4571
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
+
4572
5537
  @builtins.property
4573
5538
  @jsii.member(jsii_name="tags")
4574
5539
  def tags(self) -> _TagManager_0a598cb3:
@@ -5056,7 +6021,7 @@ class CfnStorageVirtualMachineProps:
5056
6021
  )
5057
6022
 
5058
6023
 
5059
- @jsii.implements(_IInspectable_c2943556, _ITaggable_36806126)
6024
+ @jsii.implements(_IInspectable_c2943556, _IVolumeRef_7f52c3ee, _ITaggable_36806126)
5060
6025
  class CfnVolume(
5061
6026
  _CfnResource_9df397a6,
5062
6027
  metaclass=jsii.JSIIMeta,
@@ -5182,7 +6147,8 @@ class CfnVolume(
5182
6147
  tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,
5183
6148
  volume_type: typing.Optional[builtins.str] = None,
5184
6149
  ) -> None:
5185
- '''
6150
+ '''Create a new ``AWS::FSx::Volume``.
6151
+
5186
6152
  :param scope: Scope in which this resource is defined.
5187
6153
  :param id: Construct identifier for this resource (unique in its scope).
5188
6154
  :param name: The name of the volume.
@@ -5281,6 +6247,12 @@ class CfnVolume(
5281
6247
  '''Tag Manager which manages the tags for this resource.'''
5282
6248
  return typing.cast(_TagManager_0a598cb3, jsii.get(self, "tags"))
5283
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
+
5284
6256
  @builtins.property
5285
6257
  @jsii.member(jsii_name="name")
5286
6258
  def name(self) -> builtins.str:
@@ -7387,7 +8359,7 @@ class FileSystemProps:
7387
8359
  storage_capacity_gib: jsii.Number,
7388
8360
  vpc: _IVpc_f30d5663,
7389
8361
  backup_id: typing.Optional[builtins.str] = None,
7390
- kms_key: typing.Optional[_IKey_5f11635f] = None,
8362
+ kms_key: typing.Optional[_IKeyRef_d4fc6ef3] = None,
7391
8363
  removal_policy: typing.Optional[_RemovalPolicy_9f93c814] = None,
7392
8364
  security_group: typing.Optional[_ISecurityGroup_acf8a799] = None,
7393
8365
  storage_type: typing.Optional["StorageType"] = None,
@@ -7412,9 +8384,9 @@ class FileSystemProps:
7412
8384
  import aws_cdk as cdk
7413
8385
  from aws_cdk import aws_ec2 as ec2
7414
8386
  from aws_cdk import aws_fsx as fsx
7415
- from aws_cdk import aws_kms as kms
8387
+ from aws_cdk.interfaces import aws_kms as interfaces_aws_kms
7416
8388
 
7417
- # key: kms.Key
8389
+ # key_ref: interfaces_aws_kms.IKeyRef
7418
8390
  # security_group: ec2.SecurityGroup
7419
8391
  # vpc: ec2.Vpc
7420
8392
 
@@ -7424,7 +8396,7 @@ class FileSystemProps:
7424
8396
 
7425
8397
  # the properties below are optional
7426
8398
  backup_id="backupId",
7427
- kms_key=key,
8399
+ kms_key=key_ref,
7428
8400
  removal_policy=cdk.RemovalPolicy.DESTROY,
7429
8401
  security_group=security_group,
7430
8402
  storage_type=fsx.StorageType.SSD
@@ -7486,13 +8458,13 @@ class FileSystemProps:
7486
8458
  return typing.cast(typing.Optional[builtins.str], result)
7487
8459
 
7488
8460
  @builtins.property
7489
- def kms_key(self) -> typing.Optional[_IKey_5f11635f]:
8461
+ def kms_key(self) -> typing.Optional[_IKeyRef_d4fc6ef3]:
7490
8462
  '''The KMS key used for encryption to protect your data at rest.
7491
8463
 
7492
8464
  :default: - the aws/fsx default KMS key for the AWS account being deployed into.
7493
8465
  '''
7494
8466
  result = self._values.get("kms_key")
7495
- return typing.cast(typing.Optional[_IKey_5f11635f], result)
8467
+ return typing.cast(typing.Optional[_IKeyRef_d4fc6ef3], result)
7496
8468
 
7497
8469
  @builtins.property
7498
8470
  def removal_policy(self) -> typing.Optional[_RemovalPolicy_9f93c814]:
@@ -8023,7 +8995,7 @@ class LustreFileSystemProps(FileSystemProps):
8023
8995
  storage_capacity_gib: jsii.Number,
8024
8996
  vpc: _IVpc_f30d5663,
8025
8997
  backup_id: typing.Optional[builtins.str] = None,
8026
- kms_key: typing.Optional[_IKey_5f11635f] = None,
8998
+ kms_key: typing.Optional[_IKeyRef_d4fc6ef3] = None,
8027
8999
  removal_policy: typing.Optional[_RemovalPolicy_9f93c814] = None,
8028
9000
  security_group: typing.Optional[_ISecurityGroup_acf8a799] = None,
8029
9001
  storage_type: typing.Optional["StorageType"] = None,
@@ -8133,13 +9105,13 @@ class LustreFileSystemProps(FileSystemProps):
8133
9105
  return typing.cast(typing.Optional[builtins.str], result)
8134
9106
 
8135
9107
  @builtins.property
8136
- def kms_key(self) -> typing.Optional[_IKey_5f11635f]:
9108
+ def kms_key(self) -> typing.Optional[_IKeyRef_d4fc6ef3]:
8137
9109
  '''The KMS key used for encryption to protect your data at rest.
8138
9110
 
8139
9111
  :default: - the aws/fsx default KMS key for the AWS account being deployed into.
8140
9112
  '''
8141
9113
  result = self._values.get("kms_key")
8142
- return typing.cast(typing.Optional[_IKey_5f11635f], result)
9114
+ return typing.cast(typing.Optional[_IKeyRef_d4fc6ef3], result)
8143
9115
 
8144
9116
  @builtins.property
8145
9117
  def removal_policy(self) -> typing.Optional[_RemovalPolicy_9f93c814]:
@@ -8525,7 +9497,7 @@ class LustreFileSystem(
8525
9497
  storage_capacity_gib: jsii.Number,
8526
9498
  vpc: _IVpc_f30d5663,
8527
9499
  backup_id: typing.Optional[builtins.str] = None,
8528
- kms_key: typing.Optional[_IKey_5f11635f] = None,
9500
+ kms_key: typing.Optional[_IKeyRef_d4fc6ef3] = None,
8529
9501
  removal_policy: typing.Optional[_RemovalPolicy_9f93c814] = None,
8530
9502
  security_group: typing.Optional[_ISecurityGroup_acf8a799] = None,
8531
9503
  storage_type: typing.Optional[StorageType] = None,
@@ -8633,6 +9605,8 @@ __all__ = [
8633
9605
  "CfnDataRepositoryAssociationProps",
8634
9606
  "CfnFileSystem",
8635
9607
  "CfnFileSystemProps",
9608
+ "CfnS3AccessPointAttachment",
9609
+ "CfnS3AccessPointAttachmentProps",
8636
9610
  "CfnSnapshot",
8637
9611
  "CfnSnapshotProps",
8638
9612
  "CfnStorageVirtualMachine",
@@ -8775,6 +9749,7 @@ def _typecheckingstub__2d13764c3dcb8d96799af4fa191d042ff4511c33cfd1aecbf235dded3
8775
9749
  file_system_type_version: typing.Optional[builtins.str] = None,
8776
9750
  kms_key_id: typing.Optional[builtins.str] = None,
8777
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,
8778
9753
  ontap_configuration: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnFileSystem.OntapConfigurationProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
8779
9754
  open_zfs_configuration: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnFileSystem.OpenZFSConfigurationProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
8780
9755
  security_group_ids: typing.Optional[typing.Sequence[builtins.str]] = None,
@@ -8834,6 +9809,12 @@ def _typecheckingstub__8646d19693a6f9abdd169bfa6ea6d4e784eba3f5391bff175f38918b4
8834
9809
  """Type checking stubs"""
8835
9810
  pass
8836
9811
 
9812
+ def _typecheckingstub__7799a7898c1d78dcdd2f9531854e7ff35a8f4a27f4de33e706134e2fa35387ac(
9813
+ value: typing.Optional[builtins.str],
9814
+ ) -> None:
9815
+ """Type checking stubs"""
9816
+ pass
9817
+
8837
9818
  def _typecheckingstub__bc9b2f53e3a613c4a5e71936700bde6bac2b8c2691534dac7d5a5ce18f7e0687(
8838
9819
  value: typing.Optional[typing.Union[_IResolvable_da3f097b, CfnFileSystem.OntapConfigurationProperty]],
8839
9820
  ) -> None:
@@ -8953,6 +9934,7 @@ def _typecheckingstub__0edc01444089461fa7f6973acca3d475ebd67f0229380856776cb1bcb
8953
9934
  daily_automatic_backup_start_time: typing.Optional[builtins.str] = None,
8954
9935
  disk_iops_configuration: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnFileSystem.DiskIopsConfigurationProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
8955
9936
  endpoint_ip_address_range: typing.Optional[builtins.str] = None,
9937
+ endpoint_ipv6_address_range: typing.Optional[builtins.str] = None,
8956
9938
  fsx_admin_password: typing.Optional[builtins.str] = None,
8957
9939
  ha_pairs: typing.Optional[jsii.Number] = None,
8958
9940
  preferred_subnet_id: typing.Optional[builtins.str] = None,
@@ -8973,6 +9955,7 @@ def _typecheckingstub__5472f29690b088eacdf6c6853ffd8b23cd15c760dc30d812107be1280
8973
9955
  daily_automatic_backup_start_time: typing.Optional[builtins.str] = None,
8974
9956
  disk_iops_configuration: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnFileSystem.DiskIopsConfigurationProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
8975
9957
  endpoint_ip_address_range: typing.Optional[builtins.str] = None,
9958
+ endpoint_ipv6_address_range: typing.Optional[builtins.str] = None,
8976
9959
  options: typing.Optional[typing.Sequence[builtins.str]] = None,
8977
9960
  preferred_subnet_id: typing.Optional[builtins.str] = None,
8978
9961
  read_cache_configuration: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnFileSystem.ReadCacheConfigurationProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
@@ -9051,6 +10034,7 @@ def _typecheckingstub__cc6cf655096c0830614c2b73c7ebf907b07fc70f50859b1aa0f76bbf6
9051
10034
  file_system_type_version: typing.Optional[builtins.str] = None,
9052
10035
  kms_key_id: typing.Optional[builtins.str] = None,
9053
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,
9054
10038
  ontap_configuration: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnFileSystem.OntapConfigurationProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
9055
10039
  open_zfs_configuration: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnFileSystem.OpenZFSConfigurationProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
9056
10040
  security_group_ids: typing.Optional[typing.Sequence[builtins.str]] = None,
@@ -9062,6 +10046,113 @@ def _typecheckingstub__cc6cf655096c0830614c2b73c7ebf907b07fc70f50859b1aa0f76bbf6
9062
10046
  """Type checking stubs"""
9063
10047
  pass
9064
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
+
9065
10156
  def _typecheckingstub__9d5d4adee5d5cd344131498bc7092a1109dbe23b110d78c712b65bf1439e1c88(
9066
10157
  scope: _constructs_77d1e7e8.Construct,
9067
10158
  id: builtins.str,
@@ -9423,7 +10514,7 @@ def _typecheckingstub__53f2e92923bf875c7e108f12d87a8f496daa12a3810536a41e896037f
9423
10514
  storage_capacity_gib: jsii.Number,
9424
10515
  vpc: _IVpc_f30d5663,
9425
10516
  backup_id: typing.Optional[builtins.str] = None,
9426
- kms_key: typing.Optional[_IKey_5f11635f] = None,
10517
+ kms_key: typing.Optional[_IKeyRef_d4fc6ef3] = None,
9427
10518
  removal_policy: typing.Optional[_RemovalPolicy_9f93c814] = None,
9428
10519
  security_group: typing.Optional[_ISecurityGroup_acf8a799] = None,
9429
10520
  storage_type: typing.Optional[StorageType] = None,
@@ -9454,7 +10545,7 @@ def _typecheckingstub__4a492bedf6926d6b61f8888b09c8516deeb8bda6c3b965e000434ef73
9454
10545
  storage_capacity_gib: jsii.Number,
9455
10546
  vpc: _IVpc_f30d5663,
9456
10547
  backup_id: typing.Optional[builtins.str] = None,
9457
- kms_key: typing.Optional[_IKey_5f11635f] = None,
10548
+ kms_key: typing.Optional[_IKeyRef_d4fc6ef3] = None,
9458
10549
  removal_policy: typing.Optional[_RemovalPolicy_9f93c814] = None,
9459
10550
  security_group: typing.Optional[_ISecurityGroup_acf8a799] = None,
9460
10551
  storage_type: typing.Optional[StorageType] = None,
@@ -9496,7 +10587,7 @@ def _typecheckingstub__fb0a1c17b53cef80f7d054c1b0c4d50733434d66dd0658819e0a58df8
9496
10587
  storage_capacity_gib: jsii.Number,
9497
10588
  vpc: _IVpc_f30d5663,
9498
10589
  backup_id: typing.Optional[builtins.str] = None,
9499
- kms_key: typing.Optional[_IKey_5f11635f] = None,
10590
+ kms_key: typing.Optional[_IKeyRef_d4fc6ef3] = None,
9500
10591
  removal_policy: typing.Optional[_RemovalPolicy_9f93c814] = None,
9501
10592
  security_group: typing.Optional[_ISecurityGroup_acf8a799] = None,
9502
10593
  storage_type: typing.Optional[StorageType] = None,
@@ -9514,3 +10605,6 @@ def _typecheckingstub__09e9dff8e14ff81d8a495f07b5f7c6e2a9d756a63b5d283b892189cdc
9514
10605
  ) -> None:
9515
10606
  """Type checking stubs"""
9516
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__'])