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
@@ -73,9 +73,55 @@ from .. import (
73
73
  TagManager as _TagManager_0a598cb3,
74
74
  TreeInspector as _TreeInspector_488e0dd5,
75
75
  )
76
+ from ..interfaces.aws_glue import (
77
+ ClassifierReference as _ClassifierReference_26aea84f,
78
+ ConnectionReference as _ConnectionReference_f88c2093,
79
+ CrawlerReference as _CrawlerReference_143309bb,
80
+ CustomEntityTypeReference as _CustomEntityTypeReference_151d55a9,
81
+ DataCatalogEncryptionSettingsReference as _DataCatalogEncryptionSettingsReference_35fb76c3,
82
+ DataQualityRulesetReference as _DataQualityRulesetReference_4d6e4e83,
83
+ DatabaseReference as _DatabaseReference_37094586,
84
+ DevEndpointReference as _DevEndpointReference_e8b61e51,
85
+ IClassifierRef as _IClassifierRef_580996de,
86
+ IConnectionRef as _IConnectionRef_a16488ae,
87
+ ICrawlerRef as _ICrawlerRef_51dfa641,
88
+ ICustomEntityTypeRef as _ICustomEntityTypeRef_223f7f71,
89
+ IDataCatalogEncryptionSettingsRef as _IDataCatalogEncryptionSettingsRef_8507b18b,
90
+ IDataQualityRulesetRef as _IDataQualityRulesetRef_f944e18c,
91
+ IDatabaseRef as _IDatabaseRef_df838168,
92
+ IDevEndpointRef as _IDevEndpointRef_5bb61de4,
93
+ IIntegrationResourcePropertyRef as _IIntegrationResourcePropertyRef_68a80746,
94
+ IJobRef as _IJobRef_b119043c,
95
+ IMLTransformRef as _IMLTransformRef_9f131017,
96
+ IPartitionRef as _IPartitionRef_64160494,
97
+ IRegistryRef as _IRegistryRef_fee99a35,
98
+ ISchemaRef as _ISchemaRef_48c52337,
99
+ ISchemaVersionMetadataRef as _ISchemaVersionMetadataRef_f0f20d95,
100
+ ISchemaVersionRef as _ISchemaVersionRef_fe82c194,
101
+ ISecurityConfigurationRef as _ISecurityConfigurationRef_042477d9,
102
+ ITableOptimizerRef as _ITableOptimizerRef_72703445,
103
+ ITableRef as _ITableRef_1b430560,
104
+ ITriggerRef as _ITriggerRef_d85f5014,
105
+ IUsageProfileRef as _IUsageProfileRef_7fb2f866,
106
+ IWorkflowRef as _IWorkflowRef_130478b3,
107
+ IntegrationResourcePropertyReference as _IntegrationResourcePropertyReference_0fbb76f4,
108
+ JobReference as _JobReference_d005117a,
109
+ MLTransformReference as _MLTransformReference_ea7fd169,
110
+ PartitionReference as _PartitionReference_e368d968,
111
+ RegistryReference as _RegistryReference_58b511c1,
112
+ SchemaReference as _SchemaReference_401c1d73,
113
+ SchemaVersionMetadataReference as _SchemaVersionMetadataReference_7dafd56f,
114
+ SchemaVersionReference as _SchemaVersionReference_6f6236bc,
115
+ SecurityConfigurationReference as _SecurityConfigurationReference_1d945f0e,
116
+ TableOptimizerReference as _TableOptimizerReference_392646f1,
117
+ TableReference as _TableReference_efc43a16,
118
+ TriggerReference as _TriggerReference_161c4574,
119
+ UsageProfileReference as _UsageProfileReference_1becbb69,
120
+ WorkflowReference as _WorkflowReference_c2d065d8,
121
+ )
76
122
 
77
123
 
78
- @jsii.implements(_IInspectable_c2943556)
124
+ @jsii.implements(_IInspectable_c2943556, _IClassifierRef_580996de)
79
125
  class CfnClassifier(
80
126
  _CfnResource_9df397a6,
81
127
  metaclass=jsii.JSIIMeta,
@@ -141,7 +187,8 @@ class CfnClassifier(
141
187
  json_classifier: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnClassifier.JsonClassifierProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
142
188
  xml_classifier: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnClassifier.XMLClassifierProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
143
189
  ) -> None:
144
- '''
190
+ '''Create a new ``AWS::Glue::Classifier``.
191
+
145
192
  :param scope: Scope in which this resource is defined.
146
193
  :param id: Construct identifier for this resource (unique in its scope).
147
194
  :param csv_classifier: A classifier for comma-separated values (CSV).
@@ -205,6 +252,12 @@ class CfnClassifier(
205
252
  def _cfn_properties(self) -> typing.Mapping[builtins.str, typing.Any]:
206
253
  return typing.cast(typing.Mapping[builtins.str, typing.Any], jsii.get(self, "cfnProperties"))
207
254
 
255
+ @builtins.property
256
+ @jsii.member(jsii_name="classifierRef")
257
+ def classifier_ref(self) -> _ClassifierReference_26aea84f:
258
+ '''A reference to a Classifier resource.'''
259
+ return typing.cast(_ClassifierReference_26aea84f, jsii.get(self, "classifierRef"))
260
+
208
261
  @builtins.property
209
262
  @jsii.member(jsii_name="csvClassifier")
210
263
  def csv_classifier(
@@ -904,7 +957,7 @@ class CfnClassifierProps:
904
957
  )
905
958
 
906
959
 
907
- @jsii.implements(_IInspectable_c2943556)
960
+ @jsii.implements(_IInspectable_c2943556, _IConnectionRef_a16488ae)
908
961
  class CfnConnection(
909
962
  _CfnResource_9df397a6,
910
963
  metaclass=jsii.JSIIMeta,
@@ -994,7 +1047,8 @@ class CfnConnection(
994
1047
  catalog_id: builtins.str,
995
1048
  connection_input: typing.Union[_IResolvable_da3f097b, typing.Union["CfnConnection.ConnectionInputProperty", typing.Dict[builtins.str, typing.Any]]],
996
1049
  ) -> None:
997
- '''
1050
+ '''Create a new ``AWS::Glue::Connection``.
1051
+
998
1052
  :param scope: Scope in which this resource is defined.
999
1053
  :param id: Construct identifier for this resource (unique in its scope).
1000
1054
  :param catalog_id: The ID of the data catalog to create the catalog object in. Currently, this should be the AWS account ID. .. epigraph:: To specify the account ID, you can use the ``Ref`` intrinsic function with the ``AWS::AccountId`` pseudo parameter. For example: ``!Ref AWS::AccountId`` .
@@ -1053,6 +1107,12 @@ class CfnConnection(
1053
1107
  def _cfn_properties(self) -> typing.Mapping[builtins.str, typing.Any]:
1054
1108
  return typing.cast(typing.Mapping[builtins.str, typing.Any], jsii.get(self, "cfnProperties"))
1055
1109
 
1110
+ @builtins.property
1111
+ @jsii.member(jsii_name="connectionRef")
1112
+ def connection_ref(self) -> _ConnectionReference_f88c2093:
1113
+ '''A reference to a Connection resource.'''
1114
+ return typing.cast(_ConnectionReference_f88c2093, jsii.get(self, "connectionRef"))
1115
+
1056
1116
  @builtins.property
1057
1117
  @jsii.member(jsii_name="catalogId")
1058
1118
  def catalog_id(self) -> builtins.str:
@@ -1438,7 +1498,7 @@ class CfnConnection(
1438
1498
  ) -> None:
1439
1499
  '''A structure that is used to specify a connection to create or update.
1440
1500
 
1441
- :param connection_type: The type of the connection. Currently, these types are supported:. - ``JDBC`` - Designates a connection to a database through Java Database Connectivity (JDBC). ``JDBC`` Connections use the following ConnectionParameters. - Required: All of ( ``HOST`` , ``PORT`` , ``JDBC_ENGINE`` ) or ``JDBC_CONNECTION_URL`` . - Required: All of ( ``USERNAME`` , ``PASSWORD`` ) or ``SECRET_ID`` . - Optional: ``JDBC_ENFORCE_SSL`` , ``CUSTOM_JDBC_CERT`` , ``CUSTOM_JDBC_CERT_STRING`` , ``SKIP_CUSTOM_JDBC_CERT_VALIDATION`` . These parameters are used to configure SSL with JDBC. - ``KAFKA`` - Designates a connection to an Apache Kafka streaming platform. ``KAFKA`` Connections use the following ConnectionParameters. - Required: ``KAFKA_BOOTSTRAP_SERVERS`` . - Optional: ``KAFKA_SSL_ENABLED`` , ``KAFKA_CUSTOM_CERT`` , ``KAFKA_SKIP_CUSTOM_CERT_VALIDATION`` . These parameters are used to configure SSL with ``KAFKA`` . - Optional: ``KAFKA_CLIENT_KEYSTORE`` , ``KAFKA_CLIENT_KEYSTORE_PASSWORD`` , ``KAFKA_CLIENT_KEY_PASSWORD`` , ``ENCRYPTED_KAFKA_CLIENT_KEYSTORE_PASSWORD`` , ``ENCRYPTED_KAFKA_CLIENT_KEY_PASSWORD`` . These parameters are used to configure TLS client configuration with SSL in ``KAFKA`` . - Optional: ``KAFKA_SASL_MECHANISM`` . Can be specified as ``SCRAM-SHA-512`` , ``GSSAPI`` , or ``AWS_MSK_IAM`` . - Optional: ``KAFKA_SASL_SCRAM_USERNAME`` , ``KAFKA_SASL_SCRAM_PASSWORD`` , ``ENCRYPTED_KAFKA_SASL_SCRAM_PASSWORD`` . These parameters are used to configure SASL/SCRAM-SHA-512 authentication with ``KAFKA`` . - Optional: ``KAFKA_SASL_GSSAPI_KEYTAB`` , ``KAFKA_SASL_GSSAPI_KRB5_CONF`` , ``KAFKA_SASL_GSSAPI_SERVICE`` , ``KAFKA_SASL_GSSAPI_PRINCIPAL`` . These parameters are used to configure SASL/GSSAPI authentication with ``KAFKA`` . - ``MONGODB`` - Designates a connection to a MongoDB document database. ``MONGODB`` Connections use the following ConnectionParameters. - Required: ``CONNECTION_URL`` . - Required: All of ( ``USERNAME`` , ``PASSWORD`` ) or ``SECRET_ID`` . - ``VIEW_VALIDATION_REDSHIFT`` - Designates a connection used for view validation by Amazon Redshift. - ``VIEW_VALIDATION_ATHENA`` - Designates a connection used for view validation by Amazon Athena. - ``NETWORK`` - Designates a network connection to a data source within an Amazon Virtual Private Cloud environment (Amazon VPC). ``NETWORK`` Connections do not require ConnectionParameters. Instead, provide a PhysicalConnectionRequirements. - ``MARKETPLACE`` - Uses configuration settings contained in a connector purchased from AWS Marketplace to read from and write to data stores that are not natively supported by AWS Glue . ``MARKETPLACE`` Connections use the following ConnectionParameters. - Required: ``CONNECTOR_TYPE`` , ``CONNECTOR_URL`` , ``CONNECTOR_CLASS_NAME`` , ``CONNECTION_URL`` . - Required for ``JDBC`` ``CONNECTOR_TYPE`` connections: All of ( ``USERNAME`` , ``PASSWORD`` ) or ``SECRET_ID`` . - ``CUSTOM`` - Uses configuration settings contained in a custom connector to read from and write to data stores that are not natively supported by AWS Glue . Additionally, a ``ConnectionType`` for the following SaaS connectors is supported: - ``FACEBOOKADS`` - Designates a connection to Facebook Ads. - ``GOOGLEADS`` - Designates a connection to Google Ads. - ``GOOGLESHEETS`` - Designates a connection to Google Sheets. - ``GOOGLEANALYTICS4`` - Designates a connection to Google Analytics 4. - ``HUBSPOT`` - Designates a connection to HubSpot. - ``INSTAGRAMADS`` - Designates a connection to Instagram Ads. - ``INTERCOM`` - Designates a connection to Intercom. - ``JIRACLOUD`` - Designates a connection to Jira Cloud. - ``MARKETO`` - Designates a connection to Adobe Marketo Engage. - ``NETSUITEERP`` - Designates a connection to Oracle NetSuite. - ``SALESFORCE`` - Designates a connection to Salesforce using OAuth authentication. - ``SALESFORCEMARKETINGCLOUD`` - Designates a connection to Salesforce Marketing Cloud. - ``SALESFORCEPARDOT`` - Designates a connection to Salesforce Marketing Cloud Account Engagement (MCAE). - ``SAPODATA`` - Designates a connection to SAP OData. - ``SERVICENOW`` - Designates a connection to ServiceNow. - ``SLACK`` - Designates a connection to Slack. - ``SNAPCHATADS`` - Designates a connection to Snapchat Ads. - ``STRIPE`` - Designates a connection to Stripe. - ``ZENDESK`` - Designates a connection to Zendesk. - ``ZOHOCRM`` - Designates a connection to Zoho CRM. For more information on the connection parameters needed for a particular connector, see the documentation for the connector in `Adding an AWS Glue connection <https://docs.aws.amazon.com/glue/latest/dg/console-connections.html>`_ in the AWS Glue User Guide. ``SFTP`` is not supported. For more information about how optional ConnectionProperties are used to configure features in AWS Glue , consult `AWS Glue connection properties <https://docs.aws.amazon.com/glue/latest/dg/connection-defining.html>`_ . For more information about how optional ConnectionProperties are used to configure features in AWS Glue Studio, consult `Using connectors and connections <https://docs.aws.amazon.com/glue/latest/ug/connectors-chapter.html>`_ .
1501
+ :param connection_type: The type of the connection. Currently, these types are supported:. - ``JDBC`` - Designates a connection to a database through Java Database Connectivity (JDBC). ``JDBC`` Connections use the following ConnectionParameters. - Required: All of ( ``HOST`` , ``PORT`` , ``JDBC_ENGINE`` ) or ``JDBC_CONNECTION_URL`` . - Required: All of ( ``USERNAME`` , ``PASSWORD`` ) or ``SECRET_ID`` . - Optional: ``JDBC_ENFORCE_SSL`` , ``CUSTOM_JDBC_CERT`` , ``CUSTOM_JDBC_CERT_STRING`` , ``SKIP_CUSTOM_JDBC_CERT_VALIDATION`` . These parameters are used to configure SSL with JDBC. - ``KAFKA`` - Designates a connection to an Apache Kafka streaming platform. ``KAFKA`` Connections use the following ConnectionParameters. - Required: ``KAFKA_BOOTSTRAP_SERVERS`` . - Optional: ``KAFKA_SSL_ENABLED`` , ``KAFKA_CUSTOM_CERT`` , ``KAFKA_SKIP_CUSTOM_CERT_VALIDATION`` . These parameters are used to configure SSL with ``KAFKA`` . - Optional: ``KAFKA_CLIENT_KEYSTORE`` , ``KAFKA_CLIENT_KEYSTORE_PASSWORD`` , ``KAFKA_CLIENT_KEY_PASSWORD`` , ``ENCRYPTED_KAFKA_CLIENT_KEYSTORE_PASSWORD`` , ``ENCRYPTED_KAFKA_CLIENT_KEY_PASSWORD`` . These parameters are used to configure TLS client configuration with SSL in ``KAFKA`` . - Optional: ``KAFKA_SASL_MECHANISM`` . Can be specified as ``SCRAM-SHA-512`` , ``GSSAPI`` , or ``AWS_MSK_IAM`` . - Optional: ``KAFKA_SASL_SCRAM_USERNAME`` , ``KAFKA_SASL_SCRAM_PASSWORD`` , ``ENCRYPTED_KAFKA_SASL_SCRAM_PASSWORD`` . These parameters are used to configure SASL/SCRAM-SHA-512 authentication with ``KAFKA`` . - Optional: ``KAFKA_SASL_GSSAPI_KEYTAB`` , ``KAFKA_SASL_GSSAPI_KRB5_CONF`` , ``KAFKA_SASL_GSSAPI_SERVICE`` , ``KAFKA_SASL_GSSAPI_PRINCIPAL`` . These parameters are used to configure SASL/GSSAPI authentication with ``KAFKA`` . - ``MONGODB`` - Designates a connection to a MongoDB document database. ``MONGODB`` Connections use the following ConnectionParameters. - Required: ``CONNECTION_URL`` . - Required: All of ( ``USERNAME`` , ``PASSWORD`` ) or ``SECRET_ID`` . - ``VIEW_VALIDATION_REDSHIFT`` - Designates a connection used for view validation by Amazon Redshift. - ``VIEW_VALIDATION_ATHENA`` - Designates a connection used for view validation by Amazon Athena. - ``NETWORK`` - Designates a network connection to a data source within an Amazon Virtual Private Cloud environment (Amazon VPC). ``NETWORK`` Connections do not require ConnectionParameters. Instead, provide a PhysicalConnectionRequirements. - ``MARKETPLACE`` - Uses configuration settings contained in a connector purchased from AWS Marketplace to read from and write to data stores that are not natively supported by AWS Glue . ``MARKETPLACE`` Connections use the following ConnectionParameters. - Required: ``CONNECTOR_TYPE`` , ``CONNECTOR_URL`` , ``CONNECTOR_CLASS_NAME`` , ``CONNECTION_URL`` . - Required for ``JDBC`` ``CONNECTOR_TYPE`` connections: All of ( ``USERNAME`` , ``PASSWORD`` ) or ``SECRET_ID`` . - ``CUSTOM`` - Uses configuration settings contained in a custom connector to read from and write to data stores that are not natively supported by AWS Glue . Additionally, a ``ConnectionType`` for the following SaaS connectors is supported: - ``FACEBOOKADS`` - Designates a connection to Facebook Ads. - ``GOOGLEADS`` - Designates a connection to Google Ads. - ``GOOGLESHEETS`` - Designates a connection to Google Sheets. - ``GOOGLEANALYTICS4`` - Designates a connection to Google Analytics 4. - ``HUBSPOT`` - Designates a connection to HubSpot. - ``INSTAGRAMADS`` - Designates a connection to Instagram Ads. - ``INTERCOM`` - Designates a connection to Intercom. - ``JIRACLOUD`` - Designates a connection to Jira Cloud. - ``MARKETO`` - Designates a connection to Adobe Marketo Engage. - ``NETSUITEERP`` - Designates a connection to Oracle NetSuite. - ``SALESFORCE`` - Designates a connection to Salesforce using OAuth authentication. - ``SALESFORCEMARKETINGCLOUD`` - Designates a connection to Salesforce Marketing Cloud. - ``SALESFORCEPARDOT`` - Designates a connection to Salesforce Marketing Cloud Account Engagement (MCAE). - ``SAPODATA`` - Designates a connection to SAP OData. - ``SERVICENOW`` - Designates a connection to ServiceNow. - ``SLACK`` - Designates a connection to Slack. - ``SNOWFLAKE`` - Designates a connection to Snowflake. - ``SNAPCHATADS`` - Designates a connection to Snapchat Ads. - ``STRIPE`` - Designates a connection to Stripe. - ``ZENDESK`` - Designates a connection to Zendesk. - ``ZOHOCRM`` - Designates a connection to Zoho CRM. - ``ADOBEANALYTICS`` - Designates a connection to Adobe Analytics. - ``LINKEDIN`` - Designates a connection to LinkedIn. - ``MIXPANEL`` - Designates a connection to Mixpanel. - ``ASANA`` - Designates a connection to Asana. - ``SMARTSHEET`` - Designates a connection to Smartsheet. - ``DATADOG`` - Designates a connection to Datadog. - ``WOOCOMMERCE`` - Designates a connection to WooCommerce. - ``PAYPAL`` - Designates a connection to PayPal. - ``QUICKBOOKS`` - Designates a connection to QuickBooks. - ``FACEBOOKPAGEINSIGHTS`` - Designates a connection to Facebook Page Insights. - ``FRESHDESK`` - Designates a connection to Freshdesk. - ``TWILIO`` - Designates a connection to Twilio. - ``DOCUSIGNMONITOR`` - Designates a connection to DocuSign Monitor. - ``FRESHSALES`` - Designates a connection to Freshsales. - ``ZOOM`` - Designates a connection to Zoom. - ``GOOGLESEARCHCONSOLE`` - Designates a connection to Google Search Console. - ``SALESFORCECOMMERCECLOUD`` - Designates a connection to Salesforce Commerce Cloud. - ``SAPCONCUR`` - Designates a connection to SAP Concur. - ``DYNATRACE`` - Designates a connection to Dynatrace. - ``MICROSOFTDYNAMIC365FINANCEANDOPS`` - Designates a connection to Microsoft Dynamics 365 Finance and Operations. - ``MICROSOFTTEAMS`` - Designates a connection to Microsoft Teams. - ``BLACKBAUDRAISEREDGENXT`` - Designates a connection to Blackbaud Raiser's Edge NXT. - ``MAILCHIMP`` - Designates a connection to Mailchimp. - ``GITLAB`` - Designates a connection to GitLab. - ``PENDO`` - Designates a connection to Pendo. - ``PRODUCTBOARD`` - Designates a connection to Productboard. - ``CIRCLECI`` - Designates a connection to CircleCI. - ``PIPEDIVE`` - Designates a connection to Pipedrive. - ``SENDGRID`` - Designates a connection to SendGrid. For more information on the connection parameters needed for a particular connector, see the documentation for the connector in `Adding an AWS Glue connection <https://docs.aws.amazon.com/glue/latest/dg/console-connections.html>`_ in the AWS Glue User Guide. ``SFTP`` is not supported. For more information about how optional ConnectionProperties are used to configure features in AWS Glue , consult `AWS Glue connection properties <https://docs.aws.amazon.com/glue/latest/dg/connection-defining.html>`_ . For more information about how optional ConnectionProperties are used to configure features in AWS Glue Studio, consult `Using connectors and connections <https://docs.aws.amazon.com/glue/latest/ug/connectors-chapter.html>`_ .
1442
1502
  :param athena_properties: Connection properties specific to the Athena compute environment.
1443
1503
  :param authentication_configuration: The authentication properties of the connection.
1444
1504
  :param connection_properties: These key-value pairs define parameters for the connection.
@@ -1617,10 +1677,40 @@ class CfnConnection(
1617
1677
  - ``SAPODATA`` - Designates a connection to SAP OData.
1618
1678
  - ``SERVICENOW`` - Designates a connection to ServiceNow.
1619
1679
  - ``SLACK`` - Designates a connection to Slack.
1680
+ - ``SNOWFLAKE`` - Designates a connection to Snowflake.
1620
1681
  - ``SNAPCHATADS`` - Designates a connection to Snapchat Ads.
1621
1682
  - ``STRIPE`` - Designates a connection to Stripe.
1622
1683
  - ``ZENDESK`` - Designates a connection to Zendesk.
1623
1684
  - ``ZOHOCRM`` - Designates a connection to Zoho CRM.
1685
+ - ``ADOBEANALYTICS`` - Designates a connection to Adobe Analytics.
1686
+ - ``LINKEDIN`` - Designates a connection to LinkedIn.
1687
+ - ``MIXPANEL`` - Designates a connection to Mixpanel.
1688
+ - ``ASANA`` - Designates a connection to Asana.
1689
+ - ``SMARTSHEET`` - Designates a connection to Smartsheet.
1690
+ - ``DATADOG`` - Designates a connection to Datadog.
1691
+ - ``WOOCOMMERCE`` - Designates a connection to WooCommerce.
1692
+ - ``PAYPAL`` - Designates a connection to PayPal.
1693
+ - ``QUICKBOOKS`` - Designates a connection to QuickBooks.
1694
+ - ``FACEBOOKPAGEINSIGHTS`` - Designates a connection to Facebook Page Insights.
1695
+ - ``FRESHDESK`` - Designates a connection to Freshdesk.
1696
+ - ``TWILIO`` - Designates a connection to Twilio.
1697
+ - ``DOCUSIGNMONITOR`` - Designates a connection to DocuSign Monitor.
1698
+ - ``FRESHSALES`` - Designates a connection to Freshsales.
1699
+ - ``ZOOM`` - Designates a connection to Zoom.
1700
+ - ``GOOGLESEARCHCONSOLE`` - Designates a connection to Google Search Console.
1701
+ - ``SALESFORCECOMMERCECLOUD`` - Designates a connection to Salesforce Commerce Cloud.
1702
+ - ``SAPCONCUR`` - Designates a connection to SAP Concur.
1703
+ - ``DYNATRACE`` - Designates a connection to Dynatrace.
1704
+ - ``MICROSOFTDYNAMIC365FINANCEANDOPS`` - Designates a connection to Microsoft Dynamics 365 Finance and Operations.
1705
+ - ``MICROSOFTTEAMS`` - Designates a connection to Microsoft Teams.
1706
+ - ``BLACKBAUDRAISEREDGENXT`` - Designates a connection to Blackbaud Raiser's Edge NXT.
1707
+ - ``MAILCHIMP`` - Designates a connection to Mailchimp.
1708
+ - ``GITLAB`` - Designates a connection to GitLab.
1709
+ - ``PENDO`` - Designates a connection to Pendo.
1710
+ - ``PRODUCTBOARD`` - Designates a connection to Productboard.
1711
+ - ``CIRCLECI`` - Designates a connection to CircleCI.
1712
+ - ``PIPEDIVE`` - Designates a connection to Pipedrive.
1713
+ - ``SENDGRID`` - Designates a connection to SendGrid.
1624
1714
 
1625
1715
  For more information on the connection parameters needed for a particular connector, see the documentation for the connector in `Adding an AWS Glue connection <https://docs.aws.amazon.com/glue/latest/dg/console-connections.html>`_ in the AWS Glue User Guide.
1626
1716
 
@@ -2325,7 +2415,7 @@ class CfnConnectionProps:
2325
2415
  )
2326
2416
 
2327
2417
 
2328
- @jsii.implements(_IInspectable_c2943556, _ITaggable_36806126)
2418
+ @jsii.implements(_IInspectable_c2943556, _ICrawlerRef_51dfa641, _ITaggable_36806126)
2329
2419
  class CfnCrawler(
2330
2420
  _CfnResource_9df397a6,
2331
2421
  metaclass=jsii.JSIIMeta,
@@ -2364,7 +2454,9 @@ class CfnCrawler(
2364
2454
  write_manifest=False
2365
2455
  )],
2366
2456
  dynamo_db_targets=[glue.CfnCrawler.DynamoDBTargetProperty(
2367
- path="path"
2457
+ path="path",
2458
+ scan_all=False,
2459
+ scan_rate=123
2368
2460
  )],
2369
2461
  hudi_targets=[glue.CfnCrawler.HudiTargetProperty(
2370
2462
  connection_name="connectionName",
@@ -2444,7 +2536,8 @@ class CfnCrawler(
2444
2536
  table_prefix: typing.Optional[builtins.str] = None,
2445
2537
  tags: typing.Any = None,
2446
2538
  ) -> None:
2447
- '''
2539
+ '''Create a new ``AWS::Glue::Crawler``.
2540
+
2448
2541
  :param scope: Scope in which this resource is defined.
2449
2542
  :param id: Construct identifier for this resource (unique in its scope).
2450
2543
  :param role: The Amazon Resource Name (ARN) of an IAM role that's used to access customer resources, such as Amazon Simple Storage Service (Amazon S3) data.
@@ -2485,6 +2578,27 @@ class CfnCrawler(
2485
2578
 
2486
2579
  jsii.create(self.__class__, self, [scope, id, props])
2487
2580
 
2581
+ @jsii.member(jsii_name="fromCrawlerName")
2582
+ @builtins.classmethod
2583
+ def from_crawler_name(
2584
+ cls,
2585
+ scope: _constructs_77d1e7e8.Construct,
2586
+ id: builtins.str,
2587
+ crawler_name: builtins.str,
2588
+ ) -> _ICrawlerRef_51dfa641:
2589
+ '''Creates a new ICrawlerRef from a crawlerName.
2590
+
2591
+ :param scope: -
2592
+ :param id: -
2593
+ :param crawler_name: -
2594
+ '''
2595
+ if __debug__:
2596
+ type_hints = typing.get_type_hints(_typecheckingstub__9ad087260b86f149a125685668b821ca3edecc96c6b66bdc38f719435de5a0b5)
2597
+ check_type(argname="argument scope", value=scope, expected_type=type_hints["scope"])
2598
+ check_type(argname="argument id", value=id, expected_type=type_hints["id"])
2599
+ check_type(argname="argument crawler_name", value=crawler_name, expected_type=type_hints["crawler_name"])
2600
+ return typing.cast(_ICrawlerRef_51dfa641, jsii.sinvoke(cls, "fromCrawlerName", [scope, id, crawler_name]))
2601
+
2488
2602
  @jsii.member(jsii_name="inspect")
2489
2603
  def inspect(self, inspector: _TreeInspector_488e0dd5) -> None:
2490
2604
  '''Examines the CloudFormation resource and discloses attributes.
@@ -2520,6 +2634,12 @@ class CfnCrawler(
2520
2634
  def _cfn_properties(self) -> typing.Mapping[builtins.str, typing.Any]:
2521
2635
  return typing.cast(typing.Mapping[builtins.str, typing.Any], jsii.get(self, "cfnProperties"))
2522
2636
 
2637
+ @builtins.property
2638
+ @jsii.member(jsii_name="crawlerRef")
2639
+ def crawler_ref(self) -> _CrawlerReference_143309bb:
2640
+ '''A reference to a Crawler resource.'''
2641
+ return typing.cast(_CrawlerReference_143309bb, jsii.get(self, "crawlerRef"))
2642
+
2523
2643
  @builtins.property
2524
2644
  @jsii.member(jsii_name="tags")
2525
2645
  def tags(self) -> _TagManager_0a598cb3:
@@ -2973,13 +3093,21 @@ class CfnCrawler(
2973
3093
  @jsii.data_type(
2974
3094
  jsii_type="aws-cdk-lib.aws_glue.CfnCrawler.DynamoDBTargetProperty",
2975
3095
  jsii_struct_bases=[],
2976
- name_mapping={"path": "path"},
3096
+ name_mapping={"path": "path", "scan_all": "scanAll", "scan_rate": "scanRate"},
2977
3097
  )
2978
3098
  class DynamoDBTargetProperty:
2979
- def __init__(self, *, path: typing.Optional[builtins.str] = None) -> None:
3099
+ def __init__(
3100
+ self,
3101
+ *,
3102
+ path: typing.Optional[builtins.str] = None,
3103
+ scan_all: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]] = None,
3104
+ scan_rate: typing.Optional[jsii.Number] = None,
3105
+ ) -> None:
2980
3106
  '''Specifies an Amazon DynamoDB table to crawl.
2981
3107
 
2982
3108
  :param path: The name of the DynamoDB table to crawl.
3109
+ :param scan_all: Indicates whether to scan all the records, or to sample rows from the table. Scanning all the records can take a long time when the table is not a high throughput table. A value of ``true`` means to scan all records, while a value of ``false`` means to sample the records. If no value is specified, the value defaults to ``true`` .
3110
+ :param scan_rate: The percentage of the configured read capacity units to use by the AWS Glue crawler. Read capacity units is a term defined by DynamoDB, and is a numeric value that acts as rate limiter for the number of reads that can be performed on that table per second. The valid values are null or a value between 0.1 to 1.5. A null value is used when user does not provide a value, and defaults to 0.5 of the configured Read Capacity Unit (for provisioned tables), or 0.25 of the max configured Read Capacity Unit (for tables using on-demand mode).
2983
3111
 
2984
3112
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-crawler-dynamodbtarget.html
2985
3113
  :exampleMetadata: fixture=_generated
@@ -2991,15 +3119,23 @@ class CfnCrawler(
2991
3119
  from aws_cdk import aws_glue as glue
2992
3120
 
2993
3121
  dynamo_dBTarget_property = glue.CfnCrawler.DynamoDBTargetProperty(
2994
- path="path"
3122
+ path="path",
3123
+ scan_all=False,
3124
+ scan_rate=123
2995
3125
  )
2996
3126
  '''
2997
3127
  if __debug__:
2998
3128
  type_hints = typing.get_type_hints(_typecheckingstub__4c03ffc3d1fa17ed9770b2c448e87c012b6d363001f06ce8b95bdb9c62711274)
2999
3129
  check_type(argname="argument path", value=path, expected_type=type_hints["path"])
3130
+ check_type(argname="argument scan_all", value=scan_all, expected_type=type_hints["scan_all"])
3131
+ check_type(argname="argument scan_rate", value=scan_rate, expected_type=type_hints["scan_rate"])
3000
3132
  self._values: typing.Dict[builtins.str, typing.Any] = {}
3001
3133
  if path is not None:
3002
3134
  self._values["path"] = path
3135
+ if scan_all is not None:
3136
+ self._values["scan_all"] = scan_all
3137
+ if scan_rate is not None:
3138
+ self._values["scan_rate"] = scan_rate
3003
3139
 
3004
3140
  @builtins.property
3005
3141
  def path(self) -> typing.Optional[builtins.str]:
@@ -3010,6 +3146,34 @@ class CfnCrawler(
3010
3146
  result = self._values.get("path")
3011
3147
  return typing.cast(typing.Optional[builtins.str], result)
3012
3148
 
3149
+ @builtins.property
3150
+ def scan_all(
3151
+ self,
3152
+ ) -> typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]]:
3153
+ '''Indicates whether to scan all the records, or to sample rows from the table.
3154
+
3155
+ Scanning all the records can take a long time when the table is not a high throughput table.
3156
+
3157
+ A value of ``true`` means to scan all records, while a value of ``false`` means to sample the records. If no value is specified, the value defaults to ``true`` .
3158
+
3159
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-crawler-dynamodbtarget.html#cfn-glue-crawler-dynamodbtarget-scanall
3160
+ '''
3161
+ result = self._values.get("scan_all")
3162
+ return typing.cast(typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]], result)
3163
+
3164
+ @builtins.property
3165
+ def scan_rate(self) -> typing.Optional[jsii.Number]:
3166
+ '''The percentage of the configured read capacity units to use by the AWS Glue crawler.
3167
+
3168
+ Read capacity units is a term defined by DynamoDB, and is a numeric value that acts as rate limiter for the number of reads that can be performed on that table per second.
3169
+
3170
+ The valid values are null or a value between 0.1 to 1.5. A null value is used when user does not provide a value, and defaults to 0.5 of the configured Read Capacity Unit (for provisioned tables), or 0.25 of the max configured Read Capacity Unit (for tables using on-demand mode).
3171
+
3172
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-crawler-dynamodbtarget.html#cfn-glue-crawler-dynamodbtarget-scanrate
3173
+ '''
3174
+ result = self._values.get("scan_rate")
3175
+ return typing.cast(typing.Optional[jsii.Number], result)
3176
+
3013
3177
  def __eq__(self, rhs: typing.Any) -> builtins.bool:
3014
3178
  return isinstance(rhs, self.__class__) and rhs._values == self._values
3015
3179
 
@@ -3917,7 +4081,9 @@ class CfnCrawler(
3917
4081
  write_manifest=False
3918
4082
  )],
3919
4083
  dynamo_db_targets=[glue.CfnCrawler.DynamoDBTargetProperty(
3920
- path="path"
4084
+ path="path",
4085
+ scan_all=False,
4086
+ scan_rate=123
3921
4087
  )],
3922
4088
  hudi_targets=[glue.CfnCrawler.HudiTargetProperty(
3923
4089
  connection_name="connectionName",
@@ -4163,7 +4329,9 @@ class CfnCrawlerProps:
4163
4329
  write_manifest=False
4164
4330
  )],
4165
4331
  dynamo_db_targets=[glue.CfnCrawler.DynamoDBTargetProperty(
4166
- path="path"
4332
+ path="path",
4333
+ scan_all=False,
4334
+ scan_rate=123
4167
4335
  )],
4168
4336
  hudi_targets=[glue.CfnCrawler.HudiTargetProperty(
4169
4337
  connection_name="connectionName",
@@ -4423,7 +4591,7 @@ class CfnCrawlerProps:
4423
4591
  )
4424
4592
 
4425
4593
 
4426
- @jsii.implements(_IInspectable_c2943556, _ITaggableV2_4e6798f8)
4594
+ @jsii.implements(_IInspectable_c2943556, _ICustomEntityTypeRef_223f7f71, _ITaggableV2_4e6798f8)
4427
4595
  class CfnCustomEntityType(
4428
4596
  _CfnResource_9df397a6,
4429
4597
  metaclass=jsii.JSIIMeta,
@@ -4463,7 +4631,8 @@ class CfnCustomEntityType(
4463
4631
  regex_string: typing.Optional[builtins.str] = None,
4464
4632
  tags: typing.Any = None,
4465
4633
  ) -> None:
4466
- '''
4634
+ '''Create a new ``AWS::Glue::CustomEntityType``.
4635
+
4467
4636
  :param scope: Scope in which this resource is defined.
4468
4637
  :param id: Construct identifier for this resource (unique in its scope).
4469
4638
  :param context_words: A list of context words. If none of these context words are found within the vicinity of the regular expression the data will not be detected as sensitive data. If no context words are passed only a regular expression is checked.
@@ -4484,6 +4653,27 @@ class CfnCustomEntityType(
4484
4653
 
4485
4654
  jsii.create(self.__class__, self, [scope, id, props])
4486
4655
 
4656
+ @jsii.member(jsii_name="fromCustomEntityTypeId")
4657
+ @builtins.classmethod
4658
+ def from_custom_entity_type_id(
4659
+ cls,
4660
+ scope: _constructs_77d1e7e8.Construct,
4661
+ id: builtins.str,
4662
+ custom_entity_type_id: builtins.str,
4663
+ ) -> _ICustomEntityTypeRef_223f7f71:
4664
+ '''Creates a new ICustomEntityTypeRef from a customEntityTypeId.
4665
+
4666
+ :param scope: -
4667
+ :param id: -
4668
+ :param custom_entity_type_id: -
4669
+ '''
4670
+ if __debug__:
4671
+ type_hints = typing.get_type_hints(_typecheckingstub__d9fcfdaedb8245c0773846f383316c653711b4bf502cef627cc38c7a82d234b1)
4672
+ check_type(argname="argument scope", value=scope, expected_type=type_hints["scope"])
4673
+ check_type(argname="argument id", value=id, expected_type=type_hints["id"])
4674
+ check_type(argname="argument custom_entity_type_id", value=custom_entity_type_id, expected_type=type_hints["custom_entity_type_id"])
4675
+ return typing.cast(_ICustomEntityTypeRef_223f7f71, jsii.sinvoke(cls, "fromCustomEntityTypeId", [scope, id, custom_entity_type_id]))
4676
+
4487
4677
  @jsii.member(jsii_name="inspect")
4488
4678
  def inspect(self, inspector: _TreeInspector_488e0dd5) -> None:
4489
4679
  '''Examines the CloudFormation resource and discloses attributes.
@@ -4533,6 +4723,12 @@ class CfnCustomEntityType(
4533
4723
  def _cfn_properties(self) -> typing.Mapping[builtins.str, typing.Any]:
4534
4724
  return typing.cast(typing.Mapping[builtins.str, typing.Any], jsii.get(self, "cfnProperties"))
4535
4725
 
4726
+ @builtins.property
4727
+ @jsii.member(jsii_name="customEntityTypeRef")
4728
+ def custom_entity_type_ref(self) -> _CustomEntityTypeReference_151d55a9:
4729
+ '''A reference to a CustomEntityType resource.'''
4730
+ return typing.cast(_CustomEntityTypeReference_151d55a9, jsii.get(self, "customEntityTypeRef"))
4731
+
4536
4732
  @builtins.property
4537
4733
  @jsii.member(jsii_name="contextWords")
4538
4734
  def context_words(self) -> typing.Optional[typing.List[builtins.str]]:
@@ -4700,7 +4896,7 @@ class CfnCustomEntityTypeProps:
4700
4896
  )
4701
4897
 
4702
4898
 
4703
- @jsii.implements(_IInspectable_c2943556)
4899
+ @jsii.implements(_IInspectable_c2943556, _IDataCatalogEncryptionSettingsRef_8507b18b)
4704
4900
  class CfnDataCatalogEncryptionSettings(
4705
4901
  _CfnResource_9df397a6,
4706
4902
  metaclass=jsii.JSIIMeta,
@@ -4744,7 +4940,8 @@ class CfnDataCatalogEncryptionSettings(
4744
4940
  catalog_id: builtins.str,
4745
4941
  data_catalog_encryption_settings: typing.Union[_IResolvable_da3f097b, typing.Union["CfnDataCatalogEncryptionSettings.DataCatalogEncryptionSettingsProperty", typing.Dict[builtins.str, typing.Any]]],
4746
4942
  ) -> None:
4747
- '''
4943
+ '''Create a new ``AWS::Glue::DataCatalogEncryptionSettings``.
4944
+
4748
4945
  :param scope: Scope in which this resource is defined.
4749
4946
  :param id: Construct identifier for this resource (unique in its scope).
4750
4947
  :param catalog_id: The ID of the Data Catalog in which the settings are created.
@@ -4804,6 +5001,14 @@ class CfnDataCatalogEncryptionSettings(
4804
5001
  def _cfn_properties(self) -> typing.Mapping[builtins.str, typing.Any]:
4805
5002
  return typing.cast(typing.Mapping[builtins.str, typing.Any], jsii.get(self, "cfnProperties"))
4806
5003
 
5004
+ @builtins.property
5005
+ @jsii.member(jsii_name="dataCatalogEncryptionSettingsRef")
5006
+ def data_catalog_encryption_settings_ref(
5007
+ self,
5008
+ ) -> _DataCatalogEncryptionSettingsReference_35fb76c3:
5009
+ '''A reference to a DataCatalogEncryptionSettings resource.'''
5010
+ return typing.cast(_DataCatalogEncryptionSettingsReference_35fb76c3, jsii.get(self, "dataCatalogEncryptionSettingsRef"))
5011
+
4807
5012
  @builtins.property
4808
5013
  @jsii.member(jsii_name="catalogId")
4809
5014
  def catalog_id(self) -> builtins.str:
@@ -5183,7 +5388,7 @@ class CfnDataCatalogEncryptionSettingsProps:
5183
5388
  )
5184
5389
 
5185
5390
 
5186
- @jsii.implements(_IInspectable_c2943556, _ITaggableV2_4e6798f8)
5391
+ @jsii.implements(_IInspectable_c2943556, _IDataQualityRulesetRef_f944e18c, _ITaggableV2_4e6798f8)
5187
5392
  class CfnDataQualityRuleset(
5188
5393
  _CfnResource_9df397a6,
5189
5394
  metaclass=jsii.JSIIMeta,
@@ -5230,7 +5435,8 @@ class CfnDataQualityRuleset(
5230
5435
  tags: typing.Any = None,
5231
5436
  target_table: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnDataQualityRuleset.DataQualityTargetTableProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
5232
5437
  ) -> None:
5233
- '''
5438
+ '''Create a new ``AWS::Glue::DataQualityRuleset``.
5439
+
5234
5440
  :param scope: Scope in which this resource is defined.
5235
5441
  :param id: Construct identifier for this resource (unique in its scope).
5236
5442
  :param client_token: Used for idempotency and is recommended to be set to a random ID (such as a UUID) to avoid creating or starting multiple instances of the same resource.
@@ -5304,6 +5510,12 @@ class CfnDataQualityRuleset(
5304
5510
  def _cfn_properties(self) -> typing.Mapping[builtins.str, typing.Any]:
5305
5511
  return typing.cast(typing.Mapping[builtins.str, typing.Any], jsii.get(self, "cfnProperties"))
5306
5512
 
5513
+ @builtins.property
5514
+ @jsii.member(jsii_name="dataQualityRulesetRef")
5515
+ def data_quality_ruleset_ref(self) -> _DataQualityRulesetReference_4d6e4e83:
5516
+ '''A reference to a DataQualityRuleset resource.'''
5517
+ return typing.cast(_DataQualityRulesetReference_4d6e4e83, jsii.get(self, "dataQualityRulesetRef"))
5518
+
5307
5519
  @builtins.property
5308
5520
  @jsii.member(jsii_name="clientToken")
5309
5521
  def client_token(self) -> typing.Optional[builtins.str]:
@@ -5605,7 +5817,7 @@ class CfnDataQualityRulesetProps:
5605
5817
  )
5606
5818
 
5607
5819
 
5608
- @jsii.implements(_IInspectable_c2943556)
5820
+ @jsii.implements(_IInspectable_c2943556, _IDatabaseRef_df838168)
5609
5821
  class CfnDatabase(
5610
5822
  _CfnResource_9df397a6,
5611
5823
  metaclass=jsii.JSIIMeta,
@@ -5665,7 +5877,8 @@ class CfnDatabase(
5665
5877
  database_input: typing.Union[_IResolvable_da3f097b, typing.Union["CfnDatabase.DatabaseInputProperty", typing.Dict[builtins.str, typing.Any]]],
5666
5878
  database_name: typing.Optional[builtins.str] = None,
5667
5879
  ) -> None:
5668
- '''
5880
+ '''Create a new ``AWS::Glue::Database``.
5881
+
5669
5882
  :param scope: Scope in which this resource is defined.
5670
5883
  :param id: Construct identifier for this resource (unique in its scope).
5671
5884
  :param catalog_id: The AWS account ID for the account in which to create the catalog object. .. epigraph:: To specify the account ID, you can use the ``Ref`` intrinsic function with the ``AWS::AccountId`` pseudo parameter. For example: ``!Ref AWS::AccountId``
@@ -5684,6 +5897,27 @@ class CfnDatabase(
5684
5897
 
5685
5898
  jsii.create(self.__class__, self, [scope, id, props])
5686
5899
 
5900
+ @jsii.member(jsii_name="fromDatabaseName")
5901
+ @builtins.classmethod
5902
+ def from_database_name(
5903
+ cls,
5904
+ scope: _constructs_77d1e7e8.Construct,
5905
+ id: builtins.str,
5906
+ database_name: builtins.str,
5907
+ ) -> _IDatabaseRef_df838168:
5908
+ '''Creates a new IDatabaseRef from a databaseName.
5909
+
5910
+ :param scope: -
5911
+ :param id: -
5912
+ :param database_name: -
5913
+ '''
5914
+ if __debug__:
5915
+ type_hints = typing.get_type_hints(_typecheckingstub__46d072003af0a253294aa99188670d3a5326fb17900c9f4bc5ca0850d973ee94)
5916
+ check_type(argname="argument scope", value=scope, expected_type=type_hints["scope"])
5917
+ check_type(argname="argument id", value=id, expected_type=type_hints["id"])
5918
+ check_type(argname="argument database_name", value=database_name, expected_type=type_hints["database_name"])
5919
+ return typing.cast(_IDatabaseRef_df838168, jsii.sinvoke(cls, "fromDatabaseName", [scope, id, database_name]))
5920
+
5687
5921
  @jsii.member(jsii_name="inspect")
5688
5922
  def inspect(self, inspector: _TreeInspector_488e0dd5) -> None:
5689
5923
  '''Examines the CloudFormation resource and discloses attributes.
@@ -5719,6 +5953,12 @@ class CfnDatabase(
5719
5953
  def _cfn_properties(self) -> typing.Mapping[builtins.str, typing.Any]:
5720
5954
  return typing.cast(typing.Mapping[builtins.str, typing.Any], jsii.get(self, "cfnProperties"))
5721
5955
 
5956
+ @builtins.property
5957
+ @jsii.member(jsii_name="databaseRef")
5958
+ def database_ref(self) -> _DatabaseReference_37094586:
5959
+ '''A reference to a Database resource.'''
5960
+ return typing.cast(_DatabaseReference_37094586, jsii.get(self, "databaseRef"))
5961
+
5722
5962
  @builtins.property
5723
5963
  @jsii.member(jsii_name="catalogId")
5724
5964
  def catalog_id(self) -> builtins.str:
@@ -6350,7 +6590,7 @@ class CfnDatabaseProps:
6350
6590
  )
6351
6591
 
6352
6592
 
6353
- @jsii.implements(_IInspectable_c2943556, _ITaggable_36806126)
6593
+ @jsii.implements(_IInspectable_c2943556, _IDevEndpointRef_5bb61de4, _ITaggable_36806126)
6354
6594
  class CfnDevEndpoint(
6355
6595
  _CfnResource_9df397a6,
6356
6596
  metaclass=jsii.JSIIMeta,
@@ -6415,7 +6655,8 @@ class CfnDevEndpoint(
6415
6655
  tags: typing.Any = None,
6416
6656
  worker_type: typing.Optional[builtins.str] = None,
6417
6657
  ) -> None:
6418
- '''
6658
+ '''Create a new ``AWS::Glue::DevEndpoint``.
6659
+
6419
6660
  :param scope: Scope in which this resource is defined.
6420
6661
  :param id: Construct identifier for this resource (unique in its scope).
6421
6662
  :param role_arn: The Amazon Resource Name (ARN) of the IAM role used in this ``DevEndpoint`` .
@@ -6501,6 +6742,12 @@ class CfnDevEndpoint(
6501
6742
  def _cfn_properties(self) -> typing.Mapping[builtins.str, typing.Any]:
6502
6743
  return typing.cast(typing.Mapping[builtins.str, typing.Any], jsii.get(self, "cfnProperties"))
6503
6744
 
6745
+ @builtins.property
6746
+ @jsii.member(jsii_name="devEndpointRef")
6747
+ def dev_endpoint_ref(self) -> _DevEndpointReference_e8b61e51:
6748
+ '''A reference to a DevEndpoint resource.'''
6749
+ return typing.cast(_DevEndpointReference_e8b61e51, jsii.get(self, "devEndpointRef"))
6750
+
6504
6751
  @builtins.property
6505
6752
  @jsii.member(jsii_name="tags")
6506
6753
  def tags(self) -> _TagManager_0a598cb3:
@@ -7036,18 +7283,16 @@ class CfnDevEndpointProps:
7036
7283
  )
7037
7284
 
7038
7285
 
7039
- @jsii.implements(_IInspectable_c2943556, _ITaggable_36806126)
7040
- class CfnJob(
7286
+ @jsii.implements(_IInspectable_c2943556, _IIntegrationResourcePropertyRef_68a80746, _ITaggableV2_4e6798f8)
7287
+ class CfnIntegrationResourceProperty(
7041
7288
  _CfnResource_9df397a6,
7042
7289
  metaclass=jsii.JSIIMeta,
7043
- jsii_type="aws-cdk-lib.aws_glue.CfnJob",
7290
+ jsii_type="aws-cdk-lib.aws_glue.CfnIntegrationResourceProperty",
7044
7291
  ):
7045
- '''The ``AWS::Glue::Job`` resource specifies an AWS Glue job in the data catalog.
7292
+ '''Resource Type definition for AWS::Glue::IntegrationResourceProperty.
7046
7293
 
7047
- For more information, see `Adding Jobs in AWS Glue <https://docs.aws.amazon.com/glue/latest/dg/add-job.html>`_ and `Job Structure <https://docs.aws.amazon.com/glue/latest/dg/aws-glue-api-jobs-job.html#aws-glue-api-jobs-job-Job>`_ in the *AWS Glue Developer Guide.*
7048
-
7049
- :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-job.html
7050
- :cloudformationResource: AWS::Glue::Job
7294
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-integrationresourceproperty.html
7295
+ :cloudformationResource: AWS::Glue::IntegrationResourceProperty
7051
7296
  :exampleMetadata: fixture=_generated
7052
7297
 
7053
7298
  Example::
@@ -7056,47 +7301,25 @@ class CfnJob(
7056
7301
  # The values are placeholders you should change.
7057
7302
  from aws_cdk import aws_glue as glue
7058
7303
 
7059
- # default_arguments: Any
7060
- # non_overridable_arguments: Any
7061
- # tags: Any
7062
-
7063
- cfn_job = glue.CfnJob(self, "MyCfnJob",
7064
- command=glue.CfnJob.JobCommandProperty(
7065
- name="name",
7066
- python_version="pythonVersion",
7067
- runtime="runtime",
7068
- script_location="scriptLocation"
7069
- ),
7070
- role="role",
7304
+ cfn_integration_resource_property = glue.CfnIntegrationResourceProperty(self, "MyCfnIntegrationResourceProperty",
7305
+ resource_arn="resourceArn",
7071
7306
 
7072
7307
  # the properties below are optional
7073
- allocated_capacity=123,
7074
- connections=glue.CfnJob.ConnectionsListProperty(
7075
- connections=["connections"]
7076
- ),
7077
- default_arguments=default_arguments,
7078
- description="description",
7079
- execution_class="executionClass",
7080
- execution_property=glue.CfnJob.ExecutionPropertyProperty(
7081
- max_concurrent_runs=123
7082
- ),
7083
- glue_version="glueVersion",
7084
- job_mode="jobMode",
7085
- job_run_queuing_enabled=False,
7086
- log_uri="logUri",
7087
- maintenance_window="maintenanceWindow",
7088
- max_capacity=123,
7089
- max_retries=123,
7090
- name="name",
7091
- non_overridable_arguments=non_overridable_arguments,
7092
- notification_property=glue.CfnJob.NotificationPropertyProperty(
7093
- notify_delay_after=123
7308
+ source_processing_properties=glue.CfnIntegrationResourceProperty.SourceProcessingPropertiesProperty(
7309
+ role_arn="roleArn"
7094
7310
  ),
7095
- number_of_workers=123,
7096
- security_configuration="securityConfiguration",
7097
- tags=tags,
7098
- timeout=123,
7099
- worker_type="workerType"
7311
+ tags=[CfnTag(
7312
+ key="key",
7313
+ value="value"
7314
+ )],
7315
+ target_processing_properties=glue.CfnIntegrationResourceProperty.TargetProcessingPropertiesProperty(
7316
+ role_arn="roleArn",
7317
+
7318
+ # the properties below are optional
7319
+ connection_name="connectionName",
7320
+ event_bus_arn="eventBusArn",
7321
+ kms_arn="kmsArn"
7322
+ )
7100
7323
  )
7101
7324
  '''
7102
7325
 
@@ -7105,85 +7328,29 @@ class CfnJob(
7105
7328
  scope: _constructs_77d1e7e8.Construct,
7106
7329
  id: builtins.str,
7107
7330
  *,
7108
- command: typing.Union[_IResolvable_da3f097b, typing.Union["CfnJob.JobCommandProperty", typing.Dict[builtins.str, typing.Any]]],
7109
- role: builtins.str,
7110
- allocated_capacity: typing.Optional[jsii.Number] = None,
7111
- connections: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnJob.ConnectionsListProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
7112
- default_arguments: typing.Any = None,
7113
- description: typing.Optional[builtins.str] = None,
7114
- execution_class: typing.Optional[builtins.str] = None,
7115
- execution_property: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnJob.ExecutionPropertyProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
7116
- glue_version: typing.Optional[builtins.str] = None,
7117
- job_mode: typing.Optional[builtins.str] = None,
7118
- job_run_queuing_enabled: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]] = None,
7119
- log_uri: typing.Optional[builtins.str] = None,
7120
- maintenance_window: typing.Optional[builtins.str] = None,
7121
- max_capacity: typing.Optional[jsii.Number] = None,
7122
- max_retries: typing.Optional[jsii.Number] = None,
7123
- name: typing.Optional[builtins.str] = None,
7124
- non_overridable_arguments: typing.Any = None,
7125
- notification_property: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnJob.NotificationPropertyProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
7126
- number_of_workers: typing.Optional[jsii.Number] = None,
7127
- security_configuration: typing.Optional[builtins.str] = None,
7128
- tags: typing.Any = None,
7129
- timeout: typing.Optional[jsii.Number] = None,
7130
- worker_type: typing.Optional[builtins.str] = None,
7331
+ resource_arn: builtins.str,
7332
+ source_processing_properties: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnIntegrationResourceProperty.SourceProcessingPropertiesProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
7333
+ tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,
7334
+ target_processing_properties: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnIntegrationResourceProperty.TargetProcessingPropertiesProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
7131
7335
  ) -> None:
7132
- '''
7336
+ '''Create a new ``AWS::Glue::IntegrationResourceProperty``.
7337
+
7133
7338
  :param scope: Scope in which this resource is defined.
7134
7339
  :param id: Construct identifier for this resource (unique in its scope).
7135
- :param command: The code that executes a job.
7136
- :param role: The name or Amazon Resource Name (ARN) of the IAM role associated with this job.
7137
- :param allocated_capacity: This parameter is no longer supported. Use ``MaxCapacity`` instead. The number of capacity units that are allocated to this job.
7138
- :param connections: The connections used for this job.
7139
- :param default_arguments: The default arguments for this job, specified as name-value pairs. You can specify arguments here that your own job-execution script consumes, in addition to arguments that AWS Glue itself consumes. For information about how to specify and consume your own job arguments, see `Calling AWS Glue APIs in Python <https://docs.aws.amazon.com/glue/latest/dg/aws-glue-programming-python-calling.html>`_ in the *AWS Glue Developer Guide* . For information about the key-value pairs that AWS Glue consumes to set up your job, see `Special Parameters Used by AWS Glue <https://docs.aws.amazon.com/glue/latest/dg/aws-glue-programming-etl-glue-arguments.html>`_ in the *AWS Glue Developer Guide* .
7140
- :param description: A description of the job.
7141
- :param execution_class: Indicates whether the job is run with a standard or flexible execution class. The standard execution class is ideal for time-sensitive workloads that require fast job startup and dedicated resources. The flexible execution class is appropriate for time-insensitive jobs whose start and completion times may vary. Only jobs with AWS Glue version 3.0 and above and command type ``glueetl`` will be allowed to set ``ExecutionClass`` to ``FLEX`` . The flexible execution class is available for Spark jobs.
7142
- :param execution_property: The maximum number of concurrent runs that are allowed for this job.
7143
- :param glue_version: Glue version determines the versions of Apache Spark and Python that AWS Glue supports. The Python version indicates the version supported for jobs of type Spark. For more information about the available AWS Glue versions and corresponding Spark and Python versions, see `Glue version <https://docs.aws.amazon.com/glue/latest/dg/add-job.html>`_ in the developer guide. Jobs that are created without specifying a Glue version default to the latest Glue version available.
7144
- :param job_mode: A mode that describes how a job was created. Valid values are:. - ``SCRIPT`` - The job was created using the AWS Glue Studio script editor. - ``VISUAL`` - The job was created using the AWS Glue Studio visual editor. - ``NOTEBOOK`` - The job was created using an interactive sessions notebook. When the ``JobMode`` field is missing or null, ``SCRIPT`` is assigned as the default value.
7145
- :param job_run_queuing_enabled: Specifies whether job run queuing is enabled for the job runs for this job. A value of true means job run queuing is enabled for the job runs. If false or not populated, the job runs will not be considered for queueing. If this field does not match the value set in the job run, then the value from the job run field will be used.
7146
- :param log_uri: This field is reserved for future use.
7147
- :param maintenance_window: This field specifies a day of the week and hour for a maintenance window for streaming jobs. AWS Glue periodically performs maintenance activities. During these maintenance windows, AWS Glue will need to restart your streaming jobs. AWS Glue will restart the job within 3 hours of the specified maintenance window. For instance, if you set up the maintenance window for Monday at 10:00AM GMT, your jobs will be restarted between 10:00AM GMT to 1:00PM GMT.
7148
- :param max_capacity: The number of AWS Glue data processing units (DPUs) that can be allocated when this job runs. A DPU is a relative measure of processing power that consists of 4 vCPUs of compute capacity and 16 GB of memory. Do not set ``Max Capacity`` if using ``WorkerType`` and ``NumberOfWorkers`` . The value that can be allocated for ``MaxCapacity`` depends on whether you are running a Python shell job or an Apache Spark ETL job: - When you specify a Python shell job ( ``JobCommand.Name`` ="pythonshell"), you can allocate either 0.0625 or 1 DPU. The default is 0.0625 DPU. - When you specify an Apache Spark ETL job ( ``JobCommand.Name`` ="glueetl"), you can allocate from 2 to 100 DPUs. The default is 10 DPUs. This job type cannot have a fractional DPU allocation.
7149
- :param max_retries: The maximum number of times to retry this job after a JobRun fails.
7150
- :param name: The name you assign to this job definition.
7151
- :param non_overridable_arguments: Non-overridable arguments for this job, specified as name-value pairs.
7152
- :param notification_property: Specifies configuration properties of a notification.
7153
- :param number_of_workers: The number of workers of a defined ``workerType`` that are allocated when a job runs. The maximum number of workers you can define are 299 for ``G.1X`` , and 149 for ``G.2X`` .
7154
- :param security_configuration: The name of the ``SecurityConfiguration`` structure to be used with this job.
7155
- :param tags: The tags to use with this job.
7156
- :param timeout: The job timeout in minutes. This is the maximum time that a job run can consume resources before it is terminated and enters TIMEOUT status. The default is 2,880 minutes (48 hours).
7157
- :param worker_type: The type of predefined worker that is allocated when a job runs. Accepts a value of G.1X, G.2X, G.4X, G.8X or G.025X for Spark jobs. Accepts the value Z.2X for Ray jobs. - For the ``G.1X`` worker type, each worker maps to 1 DPU (4 vCPUs, 16 GB of memory) with 94GB disk, and provides 1 executor per worker. We recommend this worker type for workloads such as data transforms, joins, and queries, to offers a scalable and cost effective way to run most jobs. - For the ``G.2X`` worker type, each worker maps to 2 DPU (8 vCPUs, 32 GB of memory) with 138GB disk, and provides 1 executor per worker. We recommend this worker type for workloads such as data transforms, joins, and queries, to offers a scalable and cost effective way to run most jobs. - For the ``G.4X`` worker type, each worker maps to 4 DPU (16 vCPUs, 64 GB of memory) with 256GB disk, and provides 1 executor per worker. We recommend this worker type for jobs whose workloads contain your most demanding transforms, aggregations, joins, and queries. This worker type is available only for AWS Glue version 3.0 or later Spark ETL jobs in the following AWS Regions: US East (Ohio), US East (N. Virginia), US West (Oregon), Asia Pacific (Singapore), Asia Pacific (Sydney), Asia Pacific (Tokyo), Canada (Central), Europe (Frankfurt), Europe (Ireland), and Europe (Stockholm). - For the ``G.8X`` worker type, each worker maps to 8 DPU (32 vCPUs, 128 GB of memory) with 512GB disk, and provides 1 executor per worker. We recommend this worker type for jobs whose workloads contain your most demanding transforms, aggregations, joins, and queries. This worker type is available only for AWS Glue version 3.0 or later Spark ETL jobs, in the same AWS Regions as supported for the ``G.4X`` worker type. - For the ``G.025X`` worker type, each worker maps to 0.25 DPU (2 vCPUs, 4 GB of memory) with 84GB disk, and provides 1 executor per worker. We recommend this worker type for low volume streaming jobs. This worker type is only available for AWS Glue version 3.0 or later streaming jobs. - For the ``Z.2X`` worker type, each worker maps to 2 M-DPU (8vCPUs, 64 GB of memory) with 128 GB disk, and provides up to 8 Ray workers based on the autoscaler.
7340
+ :param resource_arn: The connection ARN of the source, or the database ARN of the target.
7341
+ :param source_processing_properties: The resource properties associated with the integration source.
7342
+ :param tags: An array of key-value pairs to apply to this resource.
7343
+ :param target_processing_properties: The resource properties associated with the integration target.
7158
7344
  '''
7159
7345
  if __debug__:
7160
- type_hints = typing.get_type_hints(_typecheckingstub__2bea698eff4ea1d2bc08b1ab842f318f77ba719c0241a0959453e26989b5b53e)
7346
+ type_hints = typing.get_type_hints(_typecheckingstub__ae17c734cde2f5daac3730b0666a9bbab9b5da447b629240e30963ab9c7f08f1)
7161
7347
  check_type(argname="argument scope", value=scope, expected_type=type_hints["scope"])
7162
7348
  check_type(argname="argument id", value=id, expected_type=type_hints["id"])
7163
- props = CfnJobProps(
7164
- command=command,
7165
- role=role,
7166
- allocated_capacity=allocated_capacity,
7167
- connections=connections,
7168
- default_arguments=default_arguments,
7169
- description=description,
7170
- execution_class=execution_class,
7171
- execution_property=execution_property,
7172
- glue_version=glue_version,
7173
- job_mode=job_mode,
7174
- job_run_queuing_enabled=job_run_queuing_enabled,
7175
- log_uri=log_uri,
7176
- maintenance_window=maintenance_window,
7177
- max_capacity=max_capacity,
7178
- max_retries=max_retries,
7179
- name=name,
7180
- non_overridable_arguments=non_overridable_arguments,
7181
- notification_property=notification_property,
7182
- number_of_workers=number_of_workers,
7183
- security_configuration=security_configuration,
7349
+ props = CfnIntegrationResourcePropertyProps(
7350
+ resource_arn=resource_arn,
7351
+ source_processing_properties=source_processing_properties,
7184
7352
  tags=tags,
7185
- timeout=timeout,
7186
- worker_type=worker_type,
7353
+ target_processing_properties=target_processing_properties,
7187
7354
  )
7188
7355
 
7189
7356
  jsii.create(self.__class__, self, [scope, id, props])
@@ -7195,7 +7362,7 @@ class CfnJob(
7195
7362
  :param inspector: tree inspector to collect and process attributes.
7196
7363
  '''
7197
7364
  if __debug__:
7198
- type_hints = typing.get_type_hints(_typecheckingstub__d425131e9ab8979b5db307155c42bb9935456dd21866bba5ed461a9c8c90df3c)
7365
+ type_hints = typing.get_type_hints(_typecheckingstub__46d69862dc7dde6ecceaf897c68f6494da749c002c2fc78d76e6799de13bd2d8)
7199
7366
  check_type(argname="argument inspector", value=inspector, expected_type=type_hints["inspector"])
7200
7367
  return typing.cast(None, jsii.invoke(self, "inspect", [inspector]))
7201
7368
 
@@ -7208,7 +7375,7 @@ class CfnJob(
7208
7375
  :param props: -
7209
7376
  '''
7210
7377
  if __debug__:
7211
- type_hints = typing.get_type_hints(_typecheckingstub__ff736c600c4721825d122a059a265a3c60efe89b58ef836fd0db2d0e1b7f6ae1)
7378
+ type_hints = typing.get_type_hints(_typecheckingstub__21df869892b19f6d632e31fd42a47b31e468b35e796adf031824e29f18a1dfd4)
7212
7379
  check_type(argname="argument props", value=props, expected_type=type_hints["props"])
7213
7380
  return typing.cast(typing.Mapping[builtins.str, typing.Any], jsii.invoke(self, "renderProperties", [props]))
7214
7381
 
@@ -7218,50 +7385,636 @@ class CfnJob(
7218
7385
  '''The CloudFormation resource type name for this resource class.'''
7219
7386
  return typing.cast(builtins.str, jsii.sget(cls, "CFN_RESOURCE_TYPE_NAME"))
7220
7387
 
7388
+ @builtins.property
7389
+ @jsii.member(jsii_name="attrResourcePropertyArn")
7390
+ def attr_resource_property_arn(self) -> builtins.str:
7391
+ '''The integration resource property ARN.
7392
+
7393
+ :cloudformationAttribute: ResourcePropertyArn
7394
+ '''
7395
+ return typing.cast(builtins.str, jsii.get(self, "attrResourcePropertyArn"))
7396
+
7397
+ @builtins.property
7398
+ @jsii.member(jsii_name="cdkTagManager")
7399
+ def cdk_tag_manager(self) -> _TagManager_0a598cb3:
7400
+ '''Tag Manager which manages the tags for this resource.'''
7401
+ return typing.cast(_TagManager_0a598cb3, jsii.get(self, "cdkTagManager"))
7402
+
7221
7403
  @builtins.property
7222
7404
  @jsii.member(jsii_name="cfnProperties")
7223
7405
  def _cfn_properties(self) -> typing.Mapping[builtins.str, typing.Any]:
7224
7406
  return typing.cast(typing.Mapping[builtins.str, typing.Any], jsii.get(self, "cfnProperties"))
7225
7407
 
7226
7408
  @builtins.property
7227
- @jsii.member(jsii_name="tags")
7228
- def tags(self) -> _TagManager_0a598cb3:
7229
- '''Tag Manager which manages the tags for this resource.'''
7230
- return typing.cast(_TagManager_0a598cb3, jsii.get(self, "tags"))
7409
+ @jsii.member(jsii_name="integrationResourcePropertyRef")
7410
+ def integration_resource_property_ref(
7411
+ self,
7412
+ ) -> _IntegrationResourcePropertyReference_0fbb76f4:
7413
+ '''A reference to a IntegrationResourceProperty resource.'''
7414
+ return typing.cast(_IntegrationResourcePropertyReference_0fbb76f4, jsii.get(self, "integrationResourcePropertyRef"))
7231
7415
 
7232
7416
  @builtins.property
7233
- @jsii.member(jsii_name="command")
7234
- def command(
7235
- self,
7236
- ) -> typing.Union[_IResolvable_da3f097b, "CfnJob.JobCommandProperty"]:
7237
- '''The code that executes a job.'''
7238
- return typing.cast(typing.Union[_IResolvable_da3f097b, "CfnJob.JobCommandProperty"], jsii.get(self, "command"))
7417
+ @jsii.member(jsii_name="resourceArn")
7418
+ def resource_arn(self) -> builtins.str:
7419
+ '''The connection ARN of the source, or the database ARN of the target.'''
7420
+ return typing.cast(builtins.str, jsii.get(self, "resourceArn"))
7239
7421
 
7240
- @command.setter
7241
- def command(
7242
- self,
7243
- value: typing.Union[_IResolvable_da3f097b, "CfnJob.JobCommandProperty"],
7244
- ) -> None:
7422
+ @resource_arn.setter
7423
+ def resource_arn(self, value: builtins.str) -> None:
7245
7424
  if __debug__:
7246
- type_hints = typing.get_type_hints(_typecheckingstub__92e6559d7b7e4750985b75f86ff0ead213e6dcf804f0f9d87d12c5dd11ef4b68)
7425
+ type_hints = typing.get_type_hints(_typecheckingstub__c464711887144dbc1e3c1e1eda79ff02c8f1cd0e0fb10f8356ded145b598ca4b)
7247
7426
  check_type(argname="argument value", value=value, expected_type=type_hints["value"])
7248
- jsii.set(self, "command", value) # pyright: ignore[reportArgumentType]
7427
+ jsii.set(self, "resourceArn", value) # pyright: ignore[reportArgumentType]
7249
7428
 
7250
7429
  @builtins.property
7251
- @jsii.member(jsii_name="role")
7252
- def role(self) -> builtins.str:
7253
- '''The name or Amazon Resource Name (ARN) of the IAM role associated with this job.'''
7254
- return typing.cast(builtins.str, jsii.get(self, "role"))
7430
+ @jsii.member(jsii_name="sourceProcessingProperties")
7431
+ def source_processing_properties(
7432
+ self,
7433
+ ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnIntegrationResourceProperty.SourceProcessingPropertiesProperty"]]:
7434
+ '''The resource properties associated with the integration source.'''
7435
+ return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnIntegrationResourceProperty.SourceProcessingPropertiesProperty"]], jsii.get(self, "sourceProcessingProperties"))
7255
7436
 
7256
- @role.setter
7257
- def role(self, value: builtins.str) -> None:
7437
+ @source_processing_properties.setter
7438
+ def source_processing_properties(
7439
+ self,
7440
+ value: typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnIntegrationResourceProperty.SourceProcessingPropertiesProperty"]],
7441
+ ) -> None:
7258
7442
  if __debug__:
7259
- type_hints = typing.get_type_hints(_typecheckingstub__d6215be83f5dcb82628d4c0f7daff3e6e5a40b7ba8133cbdd559c85f264c8248)
7443
+ type_hints = typing.get_type_hints(_typecheckingstub__ec3419db4cbc5e91effd1829b2f9850e866041a702776a1f1e3de5e078637e20)
7260
7444
  check_type(argname="argument value", value=value, expected_type=type_hints["value"])
7261
- jsii.set(self, "role", value) # pyright: ignore[reportArgumentType]
7445
+ jsii.set(self, "sourceProcessingProperties", value) # pyright: ignore[reportArgumentType]
7262
7446
 
7263
7447
  @builtins.property
7264
- @jsii.member(jsii_name="allocatedCapacity")
7448
+ @jsii.member(jsii_name="tags")
7449
+ def tags(self) -> typing.Optional[typing.List[_CfnTag_f6864754]]:
7450
+ '''An array of key-value pairs to apply to this resource.'''
7451
+ return typing.cast(typing.Optional[typing.List[_CfnTag_f6864754]], jsii.get(self, "tags"))
7452
+
7453
+ @tags.setter
7454
+ def tags(self, value: typing.Optional[typing.List[_CfnTag_f6864754]]) -> None:
7455
+ if __debug__:
7456
+ type_hints = typing.get_type_hints(_typecheckingstub__f016591c61e82e1cfee1b2f7fbb7e9b7e69c013f866e691bfd71179667693aac)
7457
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
7458
+ jsii.set(self, "tags", value) # pyright: ignore[reportArgumentType]
7459
+
7460
+ @builtins.property
7461
+ @jsii.member(jsii_name="targetProcessingProperties")
7462
+ def target_processing_properties(
7463
+ self,
7464
+ ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnIntegrationResourceProperty.TargetProcessingPropertiesProperty"]]:
7465
+ '''The resource properties associated with the integration target.'''
7466
+ return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnIntegrationResourceProperty.TargetProcessingPropertiesProperty"]], jsii.get(self, "targetProcessingProperties"))
7467
+
7468
+ @target_processing_properties.setter
7469
+ def target_processing_properties(
7470
+ self,
7471
+ value: typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnIntegrationResourceProperty.TargetProcessingPropertiesProperty"]],
7472
+ ) -> None:
7473
+ if __debug__:
7474
+ type_hints = typing.get_type_hints(_typecheckingstub__479e5167d31a49f354c0c3a47279def6ea08ddad3a85550b9cb30f108f7bdcc3)
7475
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
7476
+ jsii.set(self, "targetProcessingProperties", value) # pyright: ignore[reportArgumentType]
7477
+
7478
+ @jsii.data_type(
7479
+ jsii_type="aws-cdk-lib.aws_glue.CfnIntegrationResourceProperty.SourceProcessingPropertiesProperty",
7480
+ jsii_struct_bases=[],
7481
+ name_mapping={"role_arn": "roleArn"},
7482
+ )
7483
+ class SourceProcessingPropertiesProperty:
7484
+ def __init__(self, *, role_arn: builtins.str) -> None:
7485
+ '''The resource properties associated with the integration source.
7486
+
7487
+ :param role_arn: The IAM role to access the Glue connection.
7488
+
7489
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-integrationresourceproperty-sourceprocessingproperties.html
7490
+ :exampleMetadata: fixture=_generated
7491
+
7492
+ Example::
7493
+
7494
+ # The code below shows an example of how to instantiate this type.
7495
+ # The values are placeholders you should change.
7496
+ from aws_cdk import aws_glue as glue
7497
+
7498
+ source_processing_properties_property = glue.CfnIntegrationResourceProperty.SourceProcessingPropertiesProperty(
7499
+ role_arn="roleArn"
7500
+ )
7501
+ '''
7502
+ if __debug__:
7503
+ type_hints = typing.get_type_hints(_typecheckingstub__1746720d7169b5950c1d069a3db28d2ce2fab948ab493aba439f030e01921dcf)
7504
+ check_type(argname="argument role_arn", value=role_arn, expected_type=type_hints["role_arn"])
7505
+ self._values: typing.Dict[builtins.str, typing.Any] = {
7506
+ "role_arn": role_arn,
7507
+ }
7508
+
7509
+ @builtins.property
7510
+ def role_arn(self) -> builtins.str:
7511
+ '''The IAM role to access the Glue connection.
7512
+
7513
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-integrationresourceproperty-sourceprocessingproperties.html#cfn-glue-integrationresourceproperty-sourceprocessingproperties-rolearn
7514
+ '''
7515
+ result = self._values.get("role_arn")
7516
+ assert result is not None, "Required property 'role_arn' is missing"
7517
+ return typing.cast(builtins.str, result)
7518
+
7519
+ def __eq__(self, rhs: typing.Any) -> builtins.bool:
7520
+ return isinstance(rhs, self.__class__) and rhs._values == self._values
7521
+
7522
+ def __ne__(self, rhs: typing.Any) -> builtins.bool:
7523
+ return not (rhs == self)
7524
+
7525
+ def __repr__(self) -> str:
7526
+ return "SourceProcessingPropertiesProperty(%s)" % ", ".join(
7527
+ k + "=" + repr(v) for k, v in self._values.items()
7528
+ )
7529
+
7530
+ @jsii.data_type(
7531
+ jsii_type="aws-cdk-lib.aws_glue.CfnIntegrationResourceProperty.TargetProcessingPropertiesProperty",
7532
+ jsii_struct_bases=[],
7533
+ name_mapping={
7534
+ "role_arn": "roleArn",
7535
+ "connection_name": "connectionName",
7536
+ "event_bus_arn": "eventBusArn",
7537
+ "kms_arn": "kmsArn",
7538
+ },
7539
+ )
7540
+ class TargetProcessingPropertiesProperty:
7541
+ def __init__(
7542
+ self,
7543
+ *,
7544
+ role_arn: builtins.str,
7545
+ connection_name: typing.Optional[builtins.str] = None,
7546
+ event_bus_arn: typing.Optional[builtins.str] = None,
7547
+ kms_arn: typing.Optional[builtins.str] = None,
7548
+ ) -> None:
7549
+ '''The resource properties associated with the integration target.
7550
+
7551
+ :param role_arn: The IAM role to access the Glue database.
7552
+ :param connection_name: The Glue network connection to configure the Glue job running in the customer VPC.
7553
+ :param event_bus_arn: The ARN of an Eventbridge event bus to receive the integration status notification.
7554
+ :param kms_arn: The ARN of the KMS key used for encryption.
7555
+
7556
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-integrationresourceproperty-targetprocessingproperties.html
7557
+ :exampleMetadata: fixture=_generated
7558
+
7559
+ Example::
7560
+
7561
+ # The code below shows an example of how to instantiate this type.
7562
+ # The values are placeholders you should change.
7563
+ from aws_cdk import aws_glue as glue
7564
+
7565
+ target_processing_properties_property = glue.CfnIntegrationResourceProperty.TargetProcessingPropertiesProperty(
7566
+ role_arn="roleArn",
7567
+
7568
+ # the properties below are optional
7569
+ connection_name="connectionName",
7570
+ event_bus_arn="eventBusArn",
7571
+ kms_arn="kmsArn"
7572
+ )
7573
+ '''
7574
+ if __debug__:
7575
+ type_hints = typing.get_type_hints(_typecheckingstub__71bd14f343e17ac6f0cc146efa01c15b1b4ca262149364ac44132eba27211bc5)
7576
+ check_type(argname="argument role_arn", value=role_arn, expected_type=type_hints["role_arn"])
7577
+ check_type(argname="argument connection_name", value=connection_name, expected_type=type_hints["connection_name"])
7578
+ check_type(argname="argument event_bus_arn", value=event_bus_arn, expected_type=type_hints["event_bus_arn"])
7579
+ check_type(argname="argument kms_arn", value=kms_arn, expected_type=type_hints["kms_arn"])
7580
+ self._values: typing.Dict[builtins.str, typing.Any] = {
7581
+ "role_arn": role_arn,
7582
+ }
7583
+ if connection_name is not None:
7584
+ self._values["connection_name"] = connection_name
7585
+ if event_bus_arn is not None:
7586
+ self._values["event_bus_arn"] = event_bus_arn
7587
+ if kms_arn is not None:
7588
+ self._values["kms_arn"] = kms_arn
7589
+
7590
+ @builtins.property
7591
+ def role_arn(self) -> builtins.str:
7592
+ '''The IAM role to access the Glue database.
7593
+
7594
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-integrationresourceproperty-targetprocessingproperties.html#cfn-glue-integrationresourceproperty-targetprocessingproperties-rolearn
7595
+ '''
7596
+ result = self._values.get("role_arn")
7597
+ assert result is not None, "Required property 'role_arn' is missing"
7598
+ return typing.cast(builtins.str, result)
7599
+
7600
+ @builtins.property
7601
+ def connection_name(self) -> typing.Optional[builtins.str]:
7602
+ '''The Glue network connection to configure the Glue job running in the customer VPC.
7603
+
7604
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-integrationresourceproperty-targetprocessingproperties.html#cfn-glue-integrationresourceproperty-targetprocessingproperties-connectionname
7605
+ '''
7606
+ result = self._values.get("connection_name")
7607
+ return typing.cast(typing.Optional[builtins.str], result)
7608
+
7609
+ @builtins.property
7610
+ def event_bus_arn(self) -> typing.Optional[builtins.str]:
7611
+ '''The ARN of an Eventbridge event bus to receive the integration status notification.
7612
+
7613
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-integrationresourceproperty-targetprocessingproperties.html#cfn-glue-integrationresourceproperty-targetprocessingproperties-eventbusarn
7614
+ '''
7615
+ result = self._values.get("event_bus_arn")
7616
+ return typing.cast(typing.Optional[builtins.str], result)
7617
+
7618
+ @builtins.property
7619
+ def kms_arn(self) -> typing.Optional[builtins.str]:
7620
+ '''The ARN of the KMS key used for encryption.
7621
+
7622
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-integrationresourceproperty-targetprocessingproperties.html#cfn-glue-integrationresourceproperty-targetprocessingproperties-kmsarn
7623
+ '''
7624
+ result = self._values.get("kms_arn")
7625
+ return typing.cast(typing.Optional[builtins.str], result)
7626
+
7627
+ def __eq__(self, rhs: typing.Any) -> builtins.bool:
7628
+ return isinstance(rhs, self.__class__) and rhs._values == self._values
7629
+
7630
+ def __ne__(self, rhs: typing.Any) -> builtins.bool:
7631
+ return not (rhs == self)
7632
+
7633
+ def __repr__(self) -> str:
7634
+ return "TargetProcessingPropertiesProperty(%s)" % ", ".join(
7635
+ k + "=" + repr(v) for k, v in self._values.items()
7636
+ )
7637
+
7638
+
7639
+ @jsii.data_type(
7640
+ jsii_type="aws-cdk-lib.aws_glue.CfnIntegrationResourcePropertyProps",
7641
+ jsii_struct_bases=[],
7642
+ name_mapping={
7643
+ "resource_arn": "resourceArn",
7644
+ "source_processing_properties": "sourceProcessingProperties",
7645
+ "tags": "tags",
7646
+ "target_processing_properties": "targetProcessingProperties",
7647
+ },
7648
+ )
7649
+ class CfnIntegrationResourcePropertyProps:
7650
+ def __init__(
7651
+ self,
7652
+ *,
7653
+ resource_arn: builtins.str,
7654
+ source_processing_properties: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnIntegrationResourceProperty.SourceProcessingPropertiesProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
7655
+ tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,
7656
+ target_processing_properties: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnIntegrationResourceProperty.TargetProcessingPropertiesProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
7657
+ ) -> None:
7658
+ '''Properties for defining a ``CfnIntegrationResourceProperty``.
7659
+
7660
+ :param resource_arn: The connection ARN of the source, or the database ARN of the target.
7661
+ :param source_processing_properties: The resource properties associated with the integration source.
7662
+ :param tags: An array of key-value pairs to apply to this resource.
7663
+ :param target_processing_properties: The resource properties associated with the integration target.
7664
+
7665
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-integrationresourceproperty.html
7666
+ :exampleMetadata: fixture=_generated
7667
+
7668
+ Example::
7669
+
7670
+ # The code below shows an example of how to instantiate this type.
7671
+ # The values are placeholders you should change.
7672
+ from aws_cdk import aws_glue as glue
7673
+
7674
+ cfn_integration_resource_property_props = glue.CfnIntegrationResourcePropertyProps(
7675
+ resource_arn="resourceArn",
7676
+
7677
+ # the properties below are optional
7678
+ source_processing_properties=glue.CfnIntegrationResourceProperty.SourceProcessingPropertiesProperty(
7679
+ role_arn="roleArn"
7680
+ ),
7681
+ tags=[CfnTag(
7682
+ key="key",
7683
+ value="value"
7684
+ )],
7685
+ target_processing_properties=glue.CfnIntegrationResourceProperty.TargetProcessingPropertiesProperty(
7686
+ role_arn="roleArn",
7687
+
7688
+ # the properties below are optional
7689
+ connection_name="connectionName",
7690
+ event_bus_arn="eventBusArn",
7691
+ kms_arn="kmsArn"
7692
+ )
7693
+ )
7694
+ '''
7695
+ if __debug__:
7696
+ type_hints = typing.get_type_hints(_typecheckingstub__85ed4d06cc122e78ef67818e2a911a38f8807718eef54875b3bdcd9a6e70f92f)
7697
+ check_type(argname="argument resource_arn", value=resource_arn, expected_type=type_hints["resource_arn"])
7698
+ check_type(argname="argument source_processing_properties", value=source_processing_properties, expected_type=type_hints["source_processing_properties"])
7699
+ check_type(argname="argument tags", value=tags, expected_type=type_hints["tags"])
7700
+ check_type(argname="argument target_processing_properties", value=target_processing_properties, expected_type=type_hints["target_processing_properties"])
7701
+ self._values: typing.Dict[builtins.str, typing.Any] = {
7702
+ "resource_arn": resource_arn,
7703
+ }
7704
+ if source_processing_properties is not None:
7705
+ self._values["source_processing_properties"] = source_processing_properties
7706
+ if tags is not None:
7707
+ self._values["tags"] = tags
7708
+ if target_processing_properties is not None:
7709
+ self._values["target_processing_properties"] = target_processing_properties
7710
+
7711
+ @builtins.property
7712
+ def resource_arn(self) -> builtins.str:
7713
+ '''The connection ARN of the source, or the database ARN of the target.
7714
+
7715
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-integrationresourceproperty.html#cfn-glue-integrationresourceproperty-resourcearn
7716
+ '''
7717
+ result = self._values.get("resource_arn")
7718
+ assert result is not None, "Required property 'resource_arn' is missing"
7719
+ return typing.cast(builtins.str, result)
7720
+
7721
+ @builtins.property
7722
+ def source_processing_properties(
7723
+ self,
7724
+ ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, CfnIntegrationResourceProperty.SourceProcessingPropertiesProperty]]:
7725
+ '''The resource properties associated with the integration source.
7726
+
7727
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-integrationresourceproperty.html#cfn-glue-integrationresourceproperty-sourceprocessingproperties
7728
+ '''
7729
+ result = self._values.get("source_processing_properties")
7730
+ return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, CfnIntegrationResourceProperty.SourceProcessingPropertiesProperty]], result)
7731
+
7732
+ @builtins.property
7733
+ def tags(self) -> typing.Optional[typing.List[_CfnTag_f6864754]]:
7734
+ '''An array of key-value pairs to apply to this resource.
7735
+
7736
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-integrationresourceproperty.html#cfn-glue-integrationresourceproperty-tags
7737
+ '''
7738
+ result = self._values.get("tags")
7739
+ return typing.cast(typing.Optional[typing.List[_CfnTag_f6864754]], result)
7740
+
7741
+ @builtins.property
7742
+ def target_processing_properties(
7743
+ self,
7744
+ ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, CfnIntegrationResourceProperty.TargetProcessingPropertiesProperty]]:
7745
+ '''The resource properties associated with the integration target.
7746
+
7747
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-integrationresourceproperty.html#cfn-glue-integrationresourceproperty-targetprocessingproperties
7748
+ '''
7749
+ result = self._values.get("target_processing_properties")
7750
+ return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, CfnIntegrationResourceProperty.TargetProcessingPropertiesProperty]], result)
7751
+
7752
+ def __eq__(self, rhs: typing.Any) -> builtins.bool:
7753
+ return isinstance(rhs, self.__class__) and rhs._values == self._values
7754
+
7755
+ def __ne__(self, rhs: typing.Any) -> builtins.bool:
7756
+ return not (rhs == self)
7757
+
7758
+ def __repr__(self) -> str:
7759
+ return "CfnIntegrationResourcePropertyProps(%s)" % ", ".join(
7760
+ k + "=" + repr(v) for k, v in self._values.items()
7761
+ )
7762
+
7763
+
7764
+ @jsii.implements(_IInspectable_c2943556, _IJobRef_b119043c, _ITaggable_36806126)
7765
+ class CfnJob(
7766
+ _CfnResource_9df397a6,
7767
+ metaclass=jsii.JSIIMeta,
7768
+ jsii_type="aws-cdk-lib.aws_glue.CfnJob",
7769
+ ):
7770
+ '''The ``AWS::Glue::Job`` resource specifies an AWS Glue job in the data catalog.
7771
+
7772
+ For more information, see `Adding Jobs in AWS Glue <https://docs.aws.amazon.com/glue/latest/dg/add-job.html>`_ and `Job Structure <https://docs.aws.amazon.com/glue/latest/dg/aws-glue-api-jobs-job.html#aws-glue-api-jobs-job-Job>`_ in the *AWS Glue Developer Guide.*
7773
+
7774
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-job.html
7775
+ :cloudformationResource: AWS::Glue::Job
7776
+ :exampleMetadata: fixture=_generated
7777
+
7778
+ Example::
7779
+
7780
+ # The code below shows an example of how to instantiate this type.
7781
+ # The values are placeholders you should change.
7782
+ from aws_cdk import aws_glue as glue
7783
+
7784
+ # default_arguments: Any
7785
+ # non_overridable_arguments: Any
7786
+ # tags: Any
7787
+
7788
+ cfn_job = glue.CfnJob(self, "MyCfnJob",
7789
+ command=glue.CfnJob.JobCommandProperty(
7790
+ name="name",
7791
+ python_version="pythonVersion",
7792
+ runtime="runtime",
7793
+ script_location="scriptLocation"
7794
+ ),
7795
+ role="role",
7796
+
7797
+ # the properties below are optional
7798
+ allocated_capacity=123,
7799
+ connections=glue.CfnJob.ConnectionsListProperty(
7800
+ connections=["connections"]
7801
+ ),
7802
+ default_arguments=default_arguments,
7803
+ description="description",
7804
+ execution_class="executionClass",
7805
+ execution_property=glue.CfnJob.ExecutionPropertyProperty(
7806
+ max_concurrent_runs=123
7807
+ ),
7808
+ glue_version="glueVersion",
7809
+ job_mode="jobMode",
7810
+ job_run_queuing_enabled=False,
7811
+ log_uri="logUri",
7812
+ maintenance_window="maintenanceWindow",
7813
+ max_capacity=123,
7814
+ max_retries=123,
7815
+ name="name",
7816
+ non_overridable_arguments=non_overridable_arguments,
7817
+ notification_property=glue.CfnJob.NotificationPropertyProperty(
7818
+ notify_delay_after=123
7819
+ ),
7820
+ number_of_workers=123,
7821
+ security_configuration="securityConfiguration",
7822
+ tags=tags,
7823
+ timeout=123,
7824
+ worker_type="workerType"
7825
+ )
7826
+ '''
7827
+
7828
+ def __init__(
7829
+ self,
7830
+ scope: _constructs_77d1e7e8.Construct,
7831
+ id: builtins.str,
7832
+ *,
7833
+ command: typing.Union[_IResolvable_da3f097b, typing.Union["CfnJob.JobCommandProperty", typing.Dict[builtins.str, typing.Any]]],
7834
+ role: builtins.str,
7835
+ allocated_capacity: typing.Optional[jsii.Number] = None,
7836
+ connections: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnJob.ConnectionsListProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
7837
+ default_arguments: typing.Any = None,
7838
+ description: typing.Optional[builtins.str] = None,
7839
+ execution_class: typing.Optional[builtins.str] = None,
7840
+ execution_property: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnJob.ExecutionPropertyProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
7841
+ glue_version: typing.Optional[builtins.str] = None,
7842
+ job_mode: typing.Optional[builtins.str] = None,
7843
+ job_run_queuing_enabled: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]] = None,
7844
+ log_uri: typing.Optional[builtins.str] = None,
7845
+ maintenance_window: typing.Optional[builtins.str] = None,
7846
+ max_capacity: typing.Optional[jsii.Number] = None,
7847
+ max_retries: typing.Optional[jsii.Number] = None,
7848
+ name: typing.Optional[builtins.str] = None,
7849
+ non_overridable_arguments: typing.Any = None,
7850
+ notification_property: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnJob.NotificationPropertyProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
7851
+ number_of_workers: typing.Optional[jsii.Number] = None,
7852
+ security_configuration: typing.Optional[builtins.str] = None,
7853
+ tags: typing.Any = None,
7854
+ timeout: typing.Optional[jsii.Number] = None,
7855
+ worker_type: typing.Optional[builtins.str] = None,
7856
+ ) -> None:
7857
+ '''Create a new ``AWS::Glue::Job``.
7858
+
7859
+ :param scope: Scope in which this resource is defined.
7860
+ :param id: Construct identifier for this resource (unique in its scope).
7861
+ :param command: The code that executes a job.
7862
+ :param role: The name or Amazon Resource Name (ARN) of the IAM role associated with this job.
7863
+ :param allocated_capacity: This parameter is no longer supported. Use ``MaxCapacity`` instead. The number of capacity units that are allocated to this job.
7864
+ :param connections: The connections used for this job.
7865
+ :param default_arguments: The default arguments for this job, specified as name-value pairs. You can specify arguments here that your own job-execution script consumes, in addition to arguments that AWS Glue itself consumes. For information about how to specify and consume your own job arguments, see `Calling AWS Glue APIs in Python <https://docs.aws.amazon.com/glue/latest/dg/aws-glue-programming-python-calling.html>`_ in the *AWS Glue Developer Guide* . For information about the key-value pairs that AWS Glue consumes to set up your job, see `Special Parameters Used by AWS Glue <https://docs.aws.amazon.com/glue/latest/dg/aws-glue-programming-etl-glue-arguments.html>`_ in the *AWS Glue Developer Guide* .
7866
+ :param description: A description of the job.
7867
+ :param execution_class: Indicates whether the job is run with a standard or flexible execution class. The standard execution class is ideal for time-sensitive workloads that require fast job startup and dedicated resources. The flexible execution class is appropriate for time-insensitive jobs whose start and completion times may vary. Only jobs with AWS Glue version 3.0 and above and command type ``glueetl`` will be allowed to set ``ExecutionClass`` to ``FLEX`` . The flexible execution class is available for Spark jobs.
7868
+ :param execution_property: The maximum number of concurrent runs that are allowed for this job.
7869
+ :param glue_version: Glue version determines the versions of Apache Spark and Python that AWS Glue supports. The Python version indicates the version supported for jobs of type Spark. For more information about the available AWS Glue versions and corresponding Spark and Python versions, see `Glue version <https://docs.aws.amazon.com/glue/latest/dg/add-job.html>`_ in the developer guide. Jobs that are created without specifying a Glue version default to the latest Glue version available.
7870
+ :param job_mode: A mode that describes how a job was created. Valid values are:. - ``SCRIPT`` - The job was created using the AWS Glue Studio script editor. - ``VISUAL`` - The job was created using the AWS Glue Studio visual editor. - ``NOTEBOOK`` - The job was created using an interactive sessions notebook. When the ``JobMode`` field is missing or null, ``SCRIPT`` is assigned as the default value.
7871
+ :param job_run_queuing_enabled: Specifies whether job run queuing is enabled for the job runs for this job. A value of true means job run queuing is enabled for the job runs. If false or not populated, the job runs will not be considered for queueing. If this field does not match the value set in the job run, then the value from the job run field will be used.
7872
+ :param log_uri: This field is reserved for future use.
7873
+ :param maintenance_window: This field specifies a day of the week and hour for a maintenance window for streaming jobs. AWS Glue periodically performs maintenance activities. During these maintenance windows, AWS Glue will need to restart your streaming jobs. AWS Glue will restart the job within 3 hours of the specified maintenance window. For instance, if you set up the maintenance window for Monday at 10:00AM GMT, your jobs will be restarted between 10:00AM GMT to 1:00PM GMT.
7874
+ :param max_capacity: The number of AWS Glue data processing units (DPUs) that can be allocated when this job runs. A DPU is a relative measure of processing power that consists of 4 vCPUs of compute capacity and 16 GB of memory. Do not set ``Max Capacity`` if using ``WorkerType`` and ``NumberOfWorkers`` . The value that can be allocated for ``MaxCapacity`` depends on whether you are running a Python shell job or an Apache Spark ETL job: - When you specify a Python shell job ( ``JobCommand.Name`` ="pythonshell"), you can allocate either 0.0625 or 1 DPU. The default is 0.0625 DPU. - When you specify an Apache Spark ETL job ( ``JobCommand.Name`` ="glueetl"), you can allocate from 2 to 100 DPUs. The default is 10 DPUs. This job type cannot have a fractional DPU allocation.
7875
+ :param max_retries: The maximum number of times to retry this job after a JobRun fails.
7876
+ :param name: The name you assign to this job definition.
7877
+ :param non_overridable_arguments: Non-overridable arguments for this job, specified as name-value pairs.
7878
+ :param notification_property: Specifies configuration properties of a notification.
7879
+ :param number_of_workers: The number of workers of a defined ``workerType`` that are allocated when a job runs. The maximum number of workers you can define are 299 for ``G.1X`` , and 149 for ``G.2X`` .
7880
+ :param security_configuration: The name of the ``SecurityConfiguration`` structure to be used with this job.
7881
+ :param tags: The tags to use with this job.
7882
+ :param timeout: The job timeout in minutes. This is the maximum time that a job run can consume resources before it is terminated and enters TIMEOUT status. The default is 2,880 minutes (48 hours).
7883
+ :param worker_type: The type of predefined worker that is allocated when a job runs. AWS Glue provides multiple worker types to accommodate different workload requirements: G Worker Types (General-purpose compute workers): - G.1X: 1 DPU (4 vCPUs, 16 GB memory, 94GB disk) - G.2X: 2 DPU (8 vCPUs, 32 GB memory, 138GB disk) - G.4X: 4 DPU (16 vCPUs, 64 GB memory, 256GB disk) - G.8X: 8 DPU (32 vCPUs, 128 GB memory, 512GB disk) - G.12X: 12 DPU (48 vCPUs, 192 GB memory, 768GB disk) - G.16X: 16 DPU (64 vCPUs, 256 GB memory, 1024GB disk) R Worker Types (Memory-optimized workers): - R.1X: 1 M-DPU (4 vCPUs, 32 GB memory) - R.2X: 2 M-DPU (8 vCPUs, 64 GB memory) - R.4X: 4 M-DPU (16 vCPUs, 128 GB memory) - R.8X: 8 M-DPU (32 vCPUs, 256 GB memory)
7884
+ '''
7885
+ if __debug__:
7886
+ type_hints = typing.get_type_hints(_typecheckingstub__2bea698eff4ea1d2bc08b1ab842f318f77ba719c0241a0959453e26989b5b53e)
7887
+ check_type(argname="argument scope", value=scope, expected_type=type_hints["scope"])
7888
+ check_type(argname="argument id", value=id, expected_type=type_hints["id"])
7889
+ props = CfnJobProps(
7890
+ command=command,
7891
+ role=role,
7892
+ allocated_capacity=allocated_capacity,
7893
+ connections=connections,
7894
+ default_arguments=default_arguments,
7895
+ description=description,
7896
+ execution_class=execution_class,
7897
+ execution_property=execution_property,
7898
+ glue_version=glue_version,
7899
+ job_mode=job_mode,
7900
+ job_run_queuing_enabled=job_run_queuing_enabled,
7901
+ log_uri=log_uri,
7902
+ maintenance_window=maintenance_window,
7903
+ max_capacity=max_capacity,
7904
+ max_retries=max_retries,
7905
+ name=name,
7906
+ non_overridable_arguments=non_overridable_arguments,
7907
+ notification_property=notification_property,
7908
+ number_of_workers=number_of_workers,
7909
+ security_configuration=security_configuration,
7910
+ tags=tags,
7911
+ timeout=timeout,
7912
+ worker_type=worker_type,
7913
+ )
7914
+
7915
+ jsii.create(self.__class__, self, [scope, id, props])
7916
+
7917
+ @jsii.member(jsii_name="fromJobName")
7918
+ @builtins.classmethod
7919
+ def from_job_name(
7920
+ cls,
7921
+ scope: _constructs_77d1e7e8.Construct,
7922
+ id: builtins.str,
7923
+ job_name: builtins.str,
7924
+ ) -> _IJobRef_b119043c:
7925
+ '''Creates a new IJobRef from a jobName.
7926
+
7927
+ :param scope: -
7928
+ :param id: -
7929
+ :param job_name: -
7930
+ '''
7931
+ if __debug__:
7932
+ type_hints = typing.get_type_hints(_typecheckingstub__800b295a4e0e23b0b95e4eb1a477f6d73e527378c000c53073ea7b72fd6c7b58)
7933
+ check_type(argname="argument scope", value=scope, expected_type=type_hints["scope"])
7934
+ check_type(argname="argument id", value=id, expected_type=type_hints["id"])
7935
+ check_type(argname="argument job_name", value=job_name, expected_type=type_hints["job_name"])
7936
+ return typing.cast(_IJobRef_b119043c, jsii.sinvoke(cls, "fromJobName", [scope, id, job_name]))
7937
+
7938
+ @jsii.member(jsii_name="inspect")
7939
+ def inspect(self, inspector: _TreeInspector_488e0dd5) -> None:
7940
+ '''Examines the CloudFormation resource and discloses attributes.
7941
+
7942
+ :param inspector: tree inspector to collect and process attributes.
7943
+ '''
7944
+ if __debug__:
7945
+ type_hints = typing.get_type_hints(_typecheckingstub__d425131e9ab8979b5db307155c42bb9935456dd21866bba5ed461a9c8c90df3c)
7946
+ check_type(argname="argument inspector", value=inspector, expected_type=type_hints["inspector"])
7947
+ return typing.cast(None, jsii.invoke(self, "inspect", [inspector]))
7948
+
7949
+ @jsii.member(jsii_name="renderProperties")
7950
+ def _render_properties(
7951
+ self,
7952
+ props: typing.Mapping[builtins.str, typing.Any],
7953
+ ) -> typing.Mapping[builtins.str, typing.Any]:
7954
+ '''
7955
+ :param props: -
7956
+ '''
7957
+ if __debug__:
7958
+ type_hints = typing.get_type_hints(_typecheckingstub__ff736c600c4721825d122a059a265a3c60efe89b58ef836fd0db2d0e1b7f6ae1)
7959
+ check_type(argname="argument props", value=props, expected_type=type_hints["props"])
7960
+ return typing.cast(typing.Mapping[builtins.str, typing.Any], jsii.invoke(self, "renderProperties", [props]))
7961
+
7962
+ @jsii.python.classproperty
7963
+ @jsii.member(jsii_name="CFN_RESOURCE_TYPE_NAME")
7964
+ def CFN_RESOURCE_TYPE_NAME(cls) -> builtins.str:
7965
+ '''The CloudFormation resource type name for this resource class.'''
7966
+ return typing.cast(builtins.str, jsii.sget(cls, "CFN_RESOURCE_TYPE_NAME"))
7967
+
7968
+ @builtins.property
7969
+ @jsii.member(jsii_name="cfnProperties")
7970
+ def _cfn_properties(self) -> typing.Mapping[builtins.str, typing.Any]:
7971
+ return typing.cast(typing.Mapping[builtins.str, typing.Any], jsii.get(self, "cfnProperties"))
7972
+
7973
+ @builtins.property
7974
+ @jsii.member(jsii_name="jobRef")
7975
+ def job_ref(self) -> _JobReference_d005117a:
7976
+ '''A reference to a Job resource.'''
7977
+ return typing.cast(_JobReference_d005117a, jsii.get(self, "jobRef"))
7978
+
7979
+ @builtins.property
7980
+ @jsii.member(jsii_name="tags")
7981
+ def tags(self) -> _TagManager_0a598cb3:
7982
+ '''Tag Manager which manages the tags for this resource.'''
7983
+ return typing.cast(_TagManager_0a598cb3, jsii.get(self, "tags"))
7984
+
7985
+ @builtins.property
7986
+ @jsii.member(jsii_name="command")
7987
+ def command(
7988
+ self,
7989
+ ) -> typing.Union[_IResolvable_da3f097b, "CfnJob.JobCommandProperty"]:
7990
+ '''The code that executes a job.'''
7991
+ return typing.cast(typing.Union[_IResolvable_da3f097b, "CfnJob.JobCommandProperty"], jsii.get(self, "command"))
7992
+
7993
+ @command.setter
7994
+ def command(
7995
+ self,
7996
+ value: typing.Union[_IResolvable_da3f097b, "CfnJob.JobCommandProperty"],
7997
+ ) -> None:
7998
+ if __debug__:
7999
+ type_hints = typing.get_type_hints(_typecheckingstub__92e6559d7b7e4750985b75f86ff0ead213e6dcf804f0f9d87d12c5dd11ef4b68)
8000
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
8001
+ jsii.set(self, "command", value) # pyright: ignore[reportArgumentType]
8002
+
8003
+ @builtins.property
8004
+ @jsii.member(jsii_name="role")
8005
+ def role(self) -> builtins.str:
8006
+ '''The name or Amazon Resource Name (ARN) of the IAM role associated with this job.'''
8007
+ return typing.cast(builtins.str, jsii.get(self, "role"))
8008
+
8009
+ @role.setter
8010
+ def role(self, value: builtins.str) -> None:
8011
+ if __debug__:
8012
+ type_hints = typing.get_type_hints(_typecheckingstub__d6215be83f5dcb82628d4c0f7daff3e6e5a40b7ba8133cbdd559c85f264c8248)
8013
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
8014
+ jsii.set(self, "role", value) # pyright: ignore[reportArgumentType]
8015
+
8016
+ @builtins.property
8017
+ @jsii.member(jsii_name="allocatedCapacity")
7265
8018
  def allocated_capacity(self) -> typing.Optional[jsii.Number]:
7266
8019
  '''This parameter is no longer supported.
7267
8020
 
@@ -7919,7 +8672,7 @@ class CfnJobProps:
7919
8672
  :param security_configuration: The name of the ``SecurityConfiguration`` structure to be used with this job.
7920
8673
  :param tags: The tags to use with this job.
7921
8674
  :param timeout: The job timeout in minutes. This is the maximum time that a job run can consume resources before it is terminated and enters TIMEOUT status. The default is 2,880 minutes (48 hours).
7922
- :param worker_type: The type of predefined worker that is allocated when a job runs. Accepts a value of G.1X, G.2X, G.4X, G.8X or G.025X for Spark jobs. Accepts the value Z.2X for Ray jobs. - For the ``G.1X`` worker type, each worker maps to 1 DPU (4 vCPUs, 16 GB of memory) with 94GB disk, and provides 1 executor per worker. We recommend this worker type for workloads such as data transforms, joins, and queries, to offers a scalable and cost effective way to run most jobs. - For the ``G.2X`` worker type, each worker maps to 2 DPU (8 vCPUs, 32 GB of memory) with 138GB disk, and provides 1 executor per worker. We recommend this worker type for workloads such as data transforms, joins, and queries, to offers a scalable and cost effective way to run most jobs. - For the ``G.4X`` worker type, each worker maps to 4 DPU (16 vCPUs, 64 GB of memory) with 256GB disk, and provides 1 executor per worker. We recommend this worker type for jobs whose workloads contain your most demanding transforms, aggregations, joins, and queries. This worker type is available only for AWS Glue version 3.0 or later Spark ETL jobs in the following AWS Regions: US East (Ohio), US East (N. Virginia), US West (Oregon), Asia Pacific (Singapore), Asia Pacific (Sydney), Asia Pacific (Tokyo), Canada (Central), Europe (Frankfurt), Europe (Ireland), and Europe (Stockholm). - For the ``G.8X`` worker type, each worker maps to 8 DPU (32 vCPUs, 128 GB of memory) with 512GB disk, and provides 1 executor per worker. We recommend this worker type for jobs whose workloads contain your most demanding transforms, aggregations, joins, and queries. This worker type is available only for AWS Glue version 3.0 or later Spark ETL jobs, in the same AWS Regions as supported for the ``G.4X`` worker type. - For the ``G.025X`` worker type, each worker maps to 0.25 DPU (2 vCPUs, 4 GB of memory) with 84GB disk, and provides 1 executor per worker. We recommend this worker type for low volume streaming jobs. This worker type is only available for AWS Glue version 3.0 or later streaming jobs. - For the ``Z.2X`` worker type, each worker maps to 2 M-DPU (8vCPUs, 64 GB of memory) with 128 GB disk, and provides up to 8 Ray workers based on the autoscaler.
8675
+ :param worker_type: The type of predefined worker that is allocated when a job runs. AWS Glue provides multiple worker types to accommodate different workload requirements: G Worker Types (General-purpose compute workers): - G.1X: 1 DPU (4 vCPUs, 16 GB memory, 94GB disk) - G.2X: 2 DPU (8 vCPUs, 32 GB memory, 138GB disk) - G.4X: 4 DPU (16 vCPUs, 64 GB memory, 256GB disk) - G.8X: 8 DPU (32 vCPUs, 128 GB memory, 512GB disk) - G.12X: 12 DPU (48 vCPUs, 192 GB memory, 768GB disk) - G.16X: 16 DPU (64 vCPUs, 256 GB memory, 1024GB disk) R Worker Types (Memory-optimized workers): - R.1X: 1 M-DPU (4 vCPUs, 32 GB memory) - R.2X: 2 M-DPU (8 vCPUs, 64 GB memory) - R.4X: 4 M-DPU (16 vCPUs, 128 GB memory) - R.8X: 8 M-DPU (32 vCPUs, 256 GB memory)
7923
8676
 
7924
8677
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-job.html
7925
8678
  :exampleMetadata: fixture=_generated
@@ -8304,14 +9057,23 @@ class CfnJobProps:
8304
9057
  def worker_type(self) -> typing.Optional[builtins.str]:
8305
9058
  '''The type of predefined worker that is allocated when a job runs.
8306
9059
 
8307
- Accepts a value of G.1X, G.2X, G.4X, G.8X or G.025X for Spark jobs. Accepts the value Z.2X for Ray jobs.
9060
+ AWS Glue provides multiple worker types to accommodate different workload requirements:
9061
+
9062
+ G Worker Types (General-purpose compute workers):
9063
+
9064
+ - G.1X: 1 DPU (4 vCPUs, 16 GB memory, 94GB disk)
9065
+ - G.2X: 2 DPU (8 vCPUs, 32 GB memory, 138GB disk)
9066
+ - G.4X: 4 DPU (16 vCPUs, 64 GB memory, 256GB disk)
9067
+ - G.8X: 8 DPU (32 vCPUs, 128 GB memory, 512GB disk)
9068
+ - G.12X: 12 DPU (48 vCPUs, 192 GB memory, 768GB disk)
9069
+ - G.16X: 16 DPU (64 vCPUs, 256 GB memory, 1024GB disk)
9070
+
9071
+ R Worker Types (Memory-optimized workers):
8308
9072
 
8309
- - For the ``G.1X`` worker type, each worker maps to 1 DPU (4 vCPUs, 16 GB of memory) with 94GB disk, and provides 1 executor per worker. We recommend this worker type for workloads such as data transforms, joins, and queries, to offers a scalable and cost effective way to run most jobs.
8310
- - For the ``G.2X`` worker type, each worker maps to 2 DPU (8 vCPUs, 32 GB of memory) with 138GB disk, and provides 1 executor per worker. We recommend this worker type for workloads such as data transforms, joins, and queries, to offers a scalable and cost effective way to run most jobs.
8311
- - For the ``G.4X`` worker type, each worker maps to 4 DPU (16 vCPUs, 64 GB of memory) with 256GB disk, and provides 1 executor per worker. We recommend this worker type for jobs whose workloads contain your most demanding transforms, aggregations, joins, and queries. This worker type is available only for AWS Glue version 3.0 or later Spark ETL jobs in the following AWS Regions: US East (Ohio), US East (N. Virginia), US West (Oregon), Asia Pacific (Singapore), Asia Pacific (Sydney), Asia Pacific (Tokyo), Canada (Central), Europe (Frankfurt), Europe (Ireland), and Europe (Stockholm).
8312
- - For the ``G.8X`` worker type, each worker maps to 8 DPU (32 vCPUs, 128 GB of memory) with 512GB disk, and provides 1 executor per worker. We recommend this worker type for jobs whose workloads contain your most demanding transforms, aggregations, joins, and queries. This worker type is available only for AWS Glue version 3.0 or later Spark ETL jobs, in the same AWS Regions as supported for the ``G.4X`` worker type.
8313
- - For the ``G.025X`` worker type, each worker maps to 0.25 DPU (2 vCPUs, 4 GB of memory) with 84GB disk, and provides 1 executor per worker. We recommend this worker type for low volume streaming jobs. This worker type is only available for AWS Glue version 3.0 or later streaming jobs.
8314
- - For the ``Z.2X`` worker type, each worker maps to 2 M-DPU (8vCPUs, 64 GB of memory) with 128 GB disk, and provides up to 8 Ray workers based on the autoscaler.
9073
+ - R.1X: 1 M-DPU (4 vCPUs, 32 GB memory)
9074
+ - R.2X: 2 M-DPU (8 vCPUs, 64 GB memory)
9075
+ - R.4X: 4 M-DPU (16 vCPUs, 128 GB memory)
9076
+ - R.8X: 8 M-DPU (32 vCPUs, 256 GB memory)
8315
9077
 
8316
9078
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-job.html#cfn-glue-job-workertype
8317
9079
  '''
@@ -8330,7 +9092,7 @@ class CfnJobProps:
8330
9092
  )
8331
9093
 
8332
9094
 
8333
- @jsii.implements(_IInspectable_c2943556, _ITaggable_36806126)
9095
+ @jsii.implements(_IInspectable_c2943556, _IMLTransformRef_9f131017, _ITaggable_36806126)
8334
9096
  class CfnMLTransform(
8335
9097
  _CfnResource_9df397a6,
8336
9098
  metaclass=jsii.JSIIMeta,
@@ -8417,7 +9179,8 @@ class CfnMLTransform(
8417
9179
  transform_encryption: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnMLTransform.TransformEncryptionProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
8418
9180
  worker_type: typing.Optional[builtins.str] = None,
8419
9181
  ) -> None:
8420
- '''
9182
+ '''Create a new ``AWS::Glue::MLTransform``.
9183
+
8421
9184
  :param scope: Scope in which this resource is defined.
8422
9185
  :param id: Construct identifier for this resource (unique in its scope).
8423
9186
  :param input_record_tables: A list of AWS Glue table definitions used by the transform.
@@ -8499,6 +9262,12 @@ class CfnMLTransform(
8499
9262
  def _cfn_properties(self) -> typing.Mapping[builtins.str, typing.Any]:
8500
9263
  return typing.cast(typing.Mapping[builtins.str, typing.Any], jsii.get(self, "cfnProperties"))
8501
9264
 
9265
+ @builtins.property
9266
+ @jsii.member(jsii_name="mlTransformRef")
9267
+ def ml_transform_ref(self) -> _MLTransformReference_ea7fd169:
9268
+ '''A reference to a MLTransform resource.'''
9269
+ return typing.cast(_MLTransformReference_ea7fd169, jsii.get(self, "mlTransformRef"))
9270
+
8502
9271
  @builtins.property
8503
9272
  @jsii.member(jsii_name="tags")
8504
9273
  def tags(self) -> _TagManager_0a598cb3:
@@ -9580,7 +10349,7 @@ class CfnMLTransformProps:
9580
10349
  )
9581
10350
 
9582
10351
 
9583
- @jsii.implements(_IInspectable_c2943556)
10352
+ @jsii.implements(_IInspectable_c2943556, _IPartitionRef_64160494)
9584
10353
  class CfnPartition(
9585
10354
  _CfnResource_9df397a6,
9586
10355
  metaclass=jsii.JSIIMeta,
@@ -9668,7 +10437,8 @@ class CfnPartition(
9668
10437
  partition_input: typing.Union[_IResolvable_da3f097b, typing.Union["CfnPartition.PartitionInputProperty", typing.Dict[builtins.str, typing.Any]]],
9669
10438
  table_name: builtins.str,
9670
10439
  ) -> None:
9671
- '''
10440
+ '''Create a new ``AWS::Glue::Partition``.
10441
+
9672
10442
  :param scope: Scope in which this resource is defined.
9673
10443
  :param id: Construct identifier for this resource (unique in its scope).
9674
10444
  :param catalog_id: The AWS account ID of the catalog in which the partion is to be created. .. epigraph:: To specify the account ID, you can use the ``Ref`` intrinsic function with the ``AWS::AccountId`` pseudo parameter. For example: ``!Ref AWS::AccountId``
@@ -9732,6 +10502,12 @@ class CfnPartition(
9732
10502
  def _cfn_properties(self) -> typing.Mapping[builtins.str, typing.Any]:
9733
10503
  return typing.cast(typing.Mapping[builtins.str, typing.Any], jsii.get(self, "cfnProperties"))
9734
10504
 
10505
+ @builtins.property
10506
+ @jsii.member(jsii_name="partitionRef")
10507
+ def partition_ref(self) -> _PartitionReference_e368d968:
10508
+ '''A reference to a Partition resource.'''
10509
+ return typing.cast(_PartitionReference_e368d968, jsii.get(self, "partitionRef"))
10510
+
9735
10511
  @builtins.property
9736
10512
  @jsii.member(jsii_name="catalogId")
9737
10513
  def catalog_id(self) -> builtins.str:
@@ -10936,7 +11712,7 @@ class CfnPartitionProps:
10936
11712
  )
10937
11713
 
10938
11714
 
10939
- @jsii.implements(_IInspectable_c2943556, _ITaggable_36806126)
11715
+ @jsii.implements(_IInspectable_c2943556, _IRegistryRef_fee99a35, _ITaggable_36806126)
10940
11716
  class CfnRegistry(
10941
11717
  _CfnResource_9df397a6,
10942
11718
  metaclass=jsii.JSIIMeta,
@@ -10946,24 +11722,41 @@ class CfnRegistry(
10946
11722
 
10947
11723
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-registry.html
10948
11724
  :cloudformationResource: AWS::Glue::Registry
10949
- :exampleMetadata: fixture=_generated
11725
+ :exampleMetadata: infused
10950
11726
 
10951
11727
  Example::
10952
11728
 
10953
- # The code below shows an example of how to instantiate this type.
10954
- # The values are placeholders you should change.
10955
- from aws_cdk import aws_glue as glue
11729
+ from aws_cdk.aws_glue import CfnRegistry
11730
+ from aws_cdk.aws_lambda_event_sources import ManagedKafkaEventSource, GlueSchemaRegistry
10956
11731
 
10957
- cfn_registry = glue.CfnRegistry(self, "MyCfnRegistry",
10958
- name="name",
11732
+ # Your MSK cluster arn
11733
+ # cluster_arn: str
10959
11734
 
10960
- # the properties below are optional
10961
- description="description",
10962
- tags=[CfnTag(
10963
- key="key",
10964
- value="value"
10965
- )]
11735
+ # my_function: lambda.Function
11736
+
11737
+
11738
+ # The Kafka topic you want to subscribe to
11739
+ topic = "some-cool-topic"
11740
+
11741
+ # Your Glue Schema Registry
11742
+ glue_registry = CfnRegistry(self, "Registry",
11743
+ name="schema-registry",
11744
+ description="Schema registry for event source"
10966
11745
  )
11746
+ my_function.add_event_source(ManagedKafkaEventSource(
11747
+ cluster_arn=cluster_arn,
11748
+ topic=topic,
11749
+ starting_position=lambda_.StartingPosition.TRIM_HORIZON,
11750
+ provisioned_poller_config=ProvisionedPollerConfig(
11751
+ minimum_pollers=1,
11752
+ maximum_pollers=3
11753
+ ),
11754
+ schema_registry_config=GlueSchemaRegistry(
11755
+ schema_registry=glue_registry,
11756
+ event_record_format=lambda_.EventRecordFormat.JSON,
11757
+ schema_validation_configs=[lambda.KafkaSchemaValidationConfig(attribute=lambda_.KafkaSchemaValidationAttribute.KEY)]
11758
+ )
11759
+ ))
10967
11760
  '''
10968
11761
 
10969
11762
  def __init__(
@@ -10975,7 +11768,8 @@ class CfnRegistry(
10975
11768
  description: typing.Optional[builtins.str] = None,
10976
11769
  tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,
10977
11770
  ) -> None:
10978
- '''
11771
+ '''Create a new ``AWS::Glue::Registry``.
11772
+
10979
11773
  :param scope: Scope in which this resource is defined.
10980
11774
  :param id: Construct identifier for this resource (unique in its scope).
10981
11775
  :param name: The name of the registry.
@@ -11034,6 +11828,12 @@ class CfnRegistry(
11034
11828
  def _cfn_properties(self) -> typing.Mapping[builtins.str, typing.Any]:
11035
11829
  return typing.cast(typing.Mapping[builtins.str, typing.Any], jsii.get(self, "cfnProperties"))
11036
11830
 
11831
+ @builtins.property
11832
+ @jsii.member(jsii_name="registryRef")
11833
+ def registry_ref(self) -> _RegistryReference_58b511c1:
11834
+ '''A reference to a Registry resource.'''
11835
+ return typing.cast(_RegistryReference_58b511c1, jsii.get(self, "registryRef"))
11836
+
11037
11837
  @builtins.property
11038
11838
  @jsii.member(jsii_name="tags")
11039
11839
  def tags(self) -> _TagManager_0a598cb3:
@@ -11100,24 +11900,41 @@ class CfnRegistryProps:
11100
11900
  :param tags: AWS tags that contain a key value pair and may be searched by console, command line, or API.
11101
11901
 
11102
11902
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-registry.html
11103
- :exampleMetadata: fixture=_generated
11903
+ :exampleMetadata: infused
11104
11904
 
11105
11905
  Example::
11106
11906
 
11107
- # The code below shows an example of how to instantiate this type.
11108
- # The values are placeholders you should change.
11109
- from aws_cdk import aws_glue as glue
11907
+ from aws_cdk.aws_glue import CfnRegistry
11908
+ from aws_cdk.aws_lambda_event_sources import ManagedKafkaEventSource, GlueSchemaRegistry
11110
11909
 
11111
- cfn_registry_props = glue.CfnRegistryProps(
11112
- name="name",
11910
+ # Your MSK cluster arn
11911
+ # cluster_arn: str
11113
11912
 
11114
- # the properties below are optional
11115
- description="description",
11116
- tags=[CfnTag(
11117
- key="key",
11118
- value="value"
11119
- )]
11913
+ # my_function: lambda.Function
11914
+
11915
+
11916
+ # The Kafka topic you want to subscribe to
11917
+ topic = "some-cool-topic"
11918
+
11919
+ # Your Glue Schema Registry
11920
+ glue_registry = CfnRegistry(self, "Registry",
11921
+ name="schema-registry",
11922
+ description="Schema registry for event source"
11120
11923
  )
11924
+ my_function.add_event_source(ManagedKafkaEventSource(
11925
+ cluster_arn=cluster_arn,
11926
+ topic=topic,
11927
+ starting_position=lambda_.StartingPosition.TRIM_HORIZON,
11928
+ provisioned_poller_config=ProvisionedPollerConfig(
11929
+ minimum_pollers=1,
11930
+ maximum_pollers=3
11931
+ ),
11932
+ schema_registry_config=GlueSchemaRegistry(
11933
+ schema_registry=glue_registry,
11934
+ event_record_format=lambda_.EventRecordFormat.JSON,
11935
+ schema_validation_configs=[lambda.KafkaSchemaValidationConfig(attribute=lambda_.KafkaSchemaValidationAttribute.KEY)]
11936
+ )
11937
+ ))
11121
11938
  '''
11122
11939
  if __debug__:
11123
11940
  type_hints = typing.get_type_hints(_typecheckingstub__a9d85e07a2dcc4ae5cd073c48fc5eb424c7446e4be042407f1f89c111ef9bba1)
@@ -11172,7 +11989,7 @@ class CfnRegistryProps:
11172
11989
  )
11173
11990
 
11174
11991
 
11175
- @jsii.implements(_IInspectable_c2943556, _ITaggable_36806126)
11992
+ @jsii.implements(_IInspectable_c2943556, _ISchemaRef_48c52337, _ITaggable_36806126)
11176
11993
  class CfnSchema(
11177
11994
  _CfnResource_9df397a6,
11178
11995
  metaclass=jsii.JSIIMeta,
@@ -11227,7 +12044,8 @@ class CfnSchema(
11227
12044
  schema_definition: typing.Optional[builtins.str] = None,
11228
12045
  tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,
11229
12046
  ) -> None:
11230
- '''
12047
+ '''Create a new ``AWS::Glue::Schema``.
12048
+
11231
12049
  :param scope: Scope in which this resource is defined.
11232
12050
  :param id: Construct identifier for this resource (unique in its scope).
11233
12051
  :param compatibility: The compatibility mode of the schema.
@@ -11309,6 +12127,12 @@ class CfnSchema(
11309
12127
  def _cfn_properties(self) -> typing.Mapping[builtins.str, typing.Any]:
11310
12128
  return typing.cast(typing.Mapping[builtins.str, typing.Any], jsii.get(self, "cfnProperties"))
11311
12129
 
12130
+ @builtins.property
12131
+ @jsii.member(jsii_name="schemaRef")
12132
+ def schema_ref(self) -> _SchemaReference_401c1d73:
12133
+ '''A reference to a Schema resource.'''
12134
+ return typing.cast(_SchemaReference_401c1d73, jsii.get(self, "schemaRef"))
12135
+
11312
12136
  @builtins.property
11313
12137
  @jsii.member(jsii_name="tags")
11314
12138
  def tags(self) -> _TagManager_0a598cb3:
@@ -11764,7 +12588,7 @@ class CfnSchemaProps:
11764
12588
  )
11765
12589
 
11766
12590
 
11767
- @jsii.implements(_IInspectable_c2943556)
12591
+ @jsii.implements(_IInspectable_c2943556, _ISchemaVersionRef_fe82c194)
11768
12592
  class CfnSchemaVersion(
11769
12593
  _CfnResource_9df397a6,
11770
12594
  metaclass=jsii.JSIIMeta,
@@ -11800,7 +12624,8 @@ class CfnSchemaVersion(
11800
12624
  schema: typing.Union[_IResolvable_da3f097b, typing.Union["CfnSchemaVersion.SchemaProperty", typing.Dict[builtins.str, typing.Any]]],
11801
12625
  schema_definition: builtins.str,
11802
12626
  ) -> None:
11803
- '''
12627
+ '''Create a new ``AWS::Glue::SchemaVersion``.
12628
+
11804
12629
  :param scope: Scope in which this resource is defined.
11805
12630
  :param id: Construct identifier for this resource (unique in its scope).
11806
12631
  :param schema: The schema that includes the schema version.
@@ -11860,6 +12685,12 @@ class CfnSchemaVersion(
11860
12685
  def _cfn_properties(self) -> typing.Mapping[builtins.str, typing.Any]:
11861
12686
  return typing.cast(typing.Mapping[builtins.str, typing.Any], jsii.get(self, "cfnProperties"))
11862
12687
 
12688
+ @builtins.property
12689
+ @jsii.member(jsii_name="schemaVersionRef")
12690
+ def schema_version_ref(self) -> _SchemaVersionReference_6f6236bc:
12691
+ '''A reference to a SchemaVersion resource.'''
12692
+ return typing.cast(_SchemaVersionReference_6f6236bc, jsii.get(self, "schemaVersionRef"))
12693
+
11863
12694
  @builtins.property
11864
12695
  @jsii.member(jsii_name="schema")
11865
12696
  def schema(
@@ -11989,7 +12820,7 @@ class CfnSchemaVersion(
11989
12820
  )
11990
12821
 
11991
12822
 
11992
- @jsii.implements(_IInspectable_c2943556)
12823
+ @jsii.implements(_IInspectable_c2943556, _ISchemaVersionMetadataRef_f0f20d95)
11993
12824
  class CfnSchemaVersionMetadata(
11994
12825
  _CfnResource_9df397a6,
11995
12826
  metaclass=jsii.JSIIMeta,
@@ -12023,7 +12854,8 @@ class CfnSchemaVersionMetadata(
12023
12854
  schema_version_id: builtins.str,
12024
12855
  value: builtins.str,
12025
12856
  ) -> None:
12026
- '''
12857
+ '''Create a new ``AWS::Glue::SchemaVersionMetadata``.
12858
+
12027
12859
  :param scope: Scope in which this resource is defined.
12028
12860
  :param id: Construct identifier for this resource (unique in its scope).
12029
12861
  :param key: A metadata key in a key-value pair for metadata.
@@ -12075,6 +12907,12 @@ class CfnSchemaVersionMetadata(
12075
12907
  def _cfn_properties(self) -> typing.Mapping[builtins.str, typing.Any]:
12076
12908
  return typing.cast(typing.Mapping[builtins.str, typing.Any], jsii.get(self, "cfnProperties"))
12077
12909
 
12910
+ @builtins.property
12911
+ @jsii.member(jsii_name="schemaVersionMetadataRef")
12912
+ def schema_version_metadata_ref(self) -> _SchemaVersionMetadataReference_7dafd56f:
12913
+ '''A reference to a SchemaVersionMetadata resource.'''
12914
+ return typing.cast(_SchemaVersionMetadataReference_7dafd56f, jsii.get(self, "schemaVersionMetadataRef"))
12915
+
12078
12916
  @builtins.property
12079
12917
  @jsii.member(jsii_name="key")
12080
12918
  def key(self) -> builtins.str:
@@ -12284,7 +13122,7 @@ class CfnSchemaVersionProps:
12284
13122
  )
12285
13123
 
12286
13124
 
12287
- @jsii.implements(_IInspectable_c2943556)
13125
+ @jsii.implements(_IInspectable_c2943556, _ISecurityConfigurationRef_042477d9)
12288
13126
  class CfnSecurityConfiguration(
12289
13127
  _CfnResource_9df397a6,
12290
13128
  metaclass=jsii.JSIIMeta,
@@ -12331,7 +13169,8 @@ class CfnSecurityConfiguration(
12331
13169
  encryption_configuration: typing.Union[_IResolvable_da3f097b, typing.Union["CfnSecurityConfiguration.EncryptionConfigurationProperty", typing.Dict[builtins.str, typing.Any]]],
12332
13170
  name: builtins.str,
12333
13171
  ) -> None:
12334
- '''
13172
+ '''Create a new ``AWS::Glue::SecurityConfiguration``.
13173
+
12335
13174
  :param scope: Scope in which this resource is defined.
12336
13175
  :param id: Construct identifier for this resource (unique in its scope).
12337
13176
  :param encryption_configuration: The encryption configuration associated with this security configuration.
@@ -12390,6 +13229,12 @@ class CfnSecurityConfiguration(
12390
13229
  def _cfn_properties(self) -> typing.Mapping[builtins.str, typing.Any]:
12391
13230
  return typing.cast(typing.Mapping[builtins.str, typing.Any], jsii.get(self, "cfnProperties"))
12392
13231
 
13232
+ @builtins.property
13233
+ @jsii.member(jsii_name="securityConfigurationRef")
13234
+ def security_configuration_ref(self) -> _SecurityConfigurationReference_1d945f0e:
13235
+ '''A reference to a SecurityConfiguration resource.'''
13236
+ return typing.cast(_SecurityConfigurationReference_1d945f0e, jsii.get(self, "securityConfigurationRef"))
13237
+
12393
13238
  @builtins.property
12394
13239
  @jsii.member(jsii_name="encryptionConfiguration")
12395
13240
  def encryption_configuration(
@@ -12835,7 +13680,7 @@ class CfnSecurityConfigurationProps:
12835
13680
  )
12836
13681
 
12837
13682
 
12838
- @jsii.implements(_IInspectable_c2943556)
13683
+ @jsii.implements(_IInspectable_c2943556, _ITableRef_1b430560)
12839
13684
  class CfnTable(
12840
13685
  _CfnResource_9df397a6,
12841
13686
  metaclass=jsii.JSIIMeta,
@@ -12847,90 +13692,18 @@ class CfnTable(
12847
13692
 
12848
13693
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-table.html
12849
13694
  :cloudformationResource: AWS::Glue::Table
12850
- :exampleMetadata: fixture=_generated
13695
+ :exampleMetadata: infused
12851
13696
 
12852
13697
  Example::
12853
13698
 
12854
- # The code below shows an example of how to instantiate this type.
12855
- # The values are placeholders you should change.
12856
- from aws_cdk import aws_glue as glue
12857
-
12858
- # parameters: Any
12859
- # skewed_column_value_location_maps: Any
12860
-
12861
- cfn_table = glue.CfnTable(self, "MyCfnTable",
12862
- catalog_id="catalogId",
12863
- database_name="databaseName",
12864
- table_input=glue.CfnTable.TableInputProperty(
12865
- description="description",
12866
- name="name",
12867
- owner="owner",
12868
- parameters=parameters,
12869
- partition_keys=[glue.CfnTable.ColumnProperty(
12870
- name="name",
12871
-
12872
- # the properties below are optional
12873
- comment="comment",
12874
- type="type"
12875
- )],
12876
- retention=123,
12877
- storage_descriptor=glue.CfnTable.StorageDescriptorProperty(
12878
- bucket_columns=["bucketColumns"],
12879
- columns=[glue.CfnTable.ColumnProperty(
12880
- name="name",
12881
-
12882
- # the properties below are optional
12883
- comment="comment",
12884
- type="type"
12885
- )],
12886
- compressed=False,
12887
- input_format="inputFormat",
12888
- location="location",
12889
- number_of_buckets=123,
12890
- output_format="outputFormat",
12891
- parameters=parameters,
12892
- schema_reference=glue.CfnTable.SchemaReferenceProperty(
12893
- schema_id=glue.CfnTable.SchemaIdProperty(
12894
- registry_name="registryName",
12895
- schema_arn="schemaArn",
12896
- schema_name="schemaName"
12897
- ),
12898
- schema_version_id="schemaVersionId",
12899
- schema_version_number=123
12900
- ),
12901
- serde_info=glue.CfnTable.SerdeInfoProperty(
12902
- name="name",
12903
- parameters=parameters,
12904
- serialization_library="serializationLibrary"
12905
- ),
12906
- skewed_info=glue.CfnTable.SkewedInfoProperty(
12907
- skewed_column_names=["skewedColumnNames"],
12908
- skewed_column_value_location_maps=skewed_column_value_location_maps,
12909
- skewed_column_values=["skewedColumnValues"]
12910
- ),
12911
- sort_columns=[glue.CfnTable.OrderProperty(
12912
- column="column",
12913
- sort_order=123
12914
- )],
12915
- stored_as_sub_directories=False
12916
- ),
12917
- table_type="tableType",
12918
- target_table=glue.CfnTable.TableIdentifierProperty(
12919
- catalog_id="catalogId",
12920
- database_name="databaseName",
12921
- name="name",
12922
- region="region"
12923
- ),
12924
- view_expanded_text="viewExpandedText",
12925
- view_original_text="viewOriginalText"
12926
- ),
13699
+ # bucket: s3.Bucket
13700
+ # schema_glue_table: glue.CfnTable
12927
13701
 
12928
- # the properties below are optional
12929
- open_table_format_input=glue.CfnTable.OpenTableFormatInputProperty(
12930
- iceberg_input=glue.CfnTable.IcebergInputProperty(
12931
- metadata_operation="metadataOperation",
12932
- version="version"
12933
- )
13702
+ s3_destination = firehose.S3Bucket(bucket,
13703
+ data_format_conversion=firehose.DataFormatConversionProps(
13704
+ schema_configuration=firehose.SchemaConfiguration.from_cfn_table(schema_glue_table),
13705
+ input_format=firehose.InputFormat.OPENX_JSON,
13706
+ output_format=firehose.OutputFormat.PARQUET
12934
13707
  )
12935
13708
  )
12936
13709
  '''
@@ -12945,7 +13718,8 @@ class CfnTable(
12945
13718
  table_input: typing.Union[_IResolvable_da3f097b, typing.Union["CfnTable.TableInputProperty", typing.Dict[builtins.str, typing.Any]]],
12946
13719
  open_table_format_input: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnTable.OpenTableFormatInputProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
12947
13720
  ) -> None:
12948
- '''
13721
+ '''Create a new ``AWS::Glue::Table``.
13722
+
12949
13723
  :param scope: Scope in which this resource is defined.
12950
13724
  :param id: Construct identifier for this resource (unique in its scope).
12951
13725
  :param catalog_id: The ID of the Data Catalog in which to create the ``Table`` .
@@ -13009,6 +13783,12 @@ class CfnTable(
13009
13783
  def _cfn_properties(self) -> typing.Mapping[builtins.str, typing.Any]:
13010
13784
  return typing.cast(typing.Mapping[builtins.str, typing.Any], jsii.get(self, "cfnProperties"))
13011
13785
 
13786
+ @builtins.property
13787
+ @jsii.member(jsii_name="tableRef")
13788
+ def table_ref(self) -> _TableReference_efc43a16:
13789
+ '''A reference to a Table resource.'''
13790
+ return typing.cast(_TableReference_efc43a16, jsii.get(self, "tableRef"))
13791
+
13012
13792
  @builtins.property
13013
13793
  @jsii.member(jsii_name="catalogId")
13014
13794
  def catalog_id(self) -> builtins.str:
@@ -14436,7 +15216,7 @@ class CfnTable(
14436
15216
  )
14437
15217
 
14438
15218
 
14439
- @jsii.implements(_IInspectable_c2943556)
15219
+ @jsii.implements(_IInspectable_c2943556, _ITableOptimizerRef_72703445)
14440
15220
  class CfnTableOptimizer(
14441
15221
  _CfnResource_9df397a6,
14442
15222
  metaclass=jsii.JSIIMeta,
@@ -14470,9 +15250,10 @@ class CfnTableOptimizer(
14470
15250
  )
14471
15251
  ),
14472
15252
  retention_configuration=glue.CfnTableOptimizer.RetentionConfigurationProperty(
14473
- iceberg_configuration=glue.CfnTableOptimizer.IcebergConfigurationProperty(
14474
- location="location",
14475
- orphan_file_retention_period_in_days=123
15253
+ iceberg_configuration=glue.CfnTableOptimizer.IcebergRetentionConfigurationProperty(
15254
+ clean_expired_files=False,
15255
+ number_of_snapshots_to_retain=123,
15256
+ snapshot_retention_period_in_days=123
14476
15257
  )
14477
15258
  ),
14478
15259
  vpc_configuration=glue.CfnTableOptimizer.VpcConfigurationProperty(
@@ -14494,7 +15275,8 @@ class CfnTableOptimizer(
14494
15275
  table_optimizer_configuration: typing.Union[_IResolvable_da3f097b, typing.Union["CfnTableOptimizer.TableOptimizerConfigurationProperty", typing.Dict[builtins.str, typing.Any]]],
14495
15276
  type: builtins.str,
14496
15277
  ) -> None:
14497
- '''
15278
+ '''Create a new ``AWS::Glue::TableOptimizer``.
15279
+
14498
15280
  :param scope: Scope in which this resource is defined.
14499
15281
  :param id: Construct identifier for this resource (unique in its scope).
14500
15282
  :param catalog_id: The catalog ID of the table.
@@ -14560,6 +15342,12 @@ class CfnTableOptimizer(
14560
15342
  def _cfn_properties(self) -> typing.Mapping[builtins.str, typing.Any]:
14561
15343
  return typing.cast(typing.Mapping[builtins.str, typing.Any], jsii.get(self, "cfnProperties"))
14562
15344
 
15345
+ @builtins.property
15346
+ @jsii.member(jsii_name="tableOptimizerRef")
15347
+ def table_optimizer_ref(self) -> _TableOptimizerReference_392646f1:
15348
+ '''A reference to a TableOptimizer resource.'''
15349
+ return typing.cast(_TableOptimizerReference_392646f1, jsii.get(self, "tableOptimizerRef"))
15350
+
14563
15351
  @builtins.property
14564
15352
  @jsii.member(jsii_name="catalogId")
14565
15353
  def catalog_id(self) -> builtins.str:
@@ -14710,6 +15498,93 @@ class CfnTableOptimizer(
14710
15498
  k + "=" + repr(v) for k, v in self._values.items()
14711
15499
  )
14712
15500
 
15501
+ @jsii.data_type(
15502
+ jsii_type="aws-cdk-lib.aws_glue.CfnTableOptimizer.IcebergRetentionConfigurationProperty",
15503
+ jsii_struct_bases=[],
15504
+ name_mapping={
15505
+ "clean_expired_files": "cleanExpiredFiles",
15506
+ "number_of_snapshots_to_retain": "numberOfSnapshotsToRetain",
15507
+ "snapshot_retention_period_in_days": "snapshotRetentionPeriodInDays",
15508
+ },
15509
+ )
15510
+ class IcebergRetentionConfigurationProperty:
15511
+ def __init__(
15512
+ self,
15513
+ *,
15514
+ clean_expired_files: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]] = None,
15515
+ number_of_snapshots_to_retain: typing.Optional[jsii.Number] = None,
15516
+ snapshot_retention_period_in_days: typing.Optional[jsii.Number] = None,
15517
+ ) -> None:
15518
+ '''
15519
+ :param clean_expired_files:
15520
+ :param number_of_snapshots_to_retain:
15521
+ :param snapshot_retention_period_in_days:
15522
+
15523
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-tableoptimizer-icebergretentionconfiguration.html
15524
+ :exampleMetadata: fixture=_generated
15525
+
15526
+ Example::
15527
+
15528
+ # The code below shows an example of how to instantiate this type.
15529
+ # The values are placeholders you should change.
15530
+ from aws_cdk import aws_glue as glue
15531
+
15532
+ iceberg_retention_configuration_property = glue.CfnTableOptimizer.IcebergRetentionConfigurationProperty(
15533
+ clean_expired_files=False,
15534
+ number_of_snapshots_to_retain=123,
15535
+ snapshot_retention_period_in_days=123
15536
+ )
15537
+ '''
15538
+ if __debug__:
15539
+ type_hints = typing.get_type_hints(_typecheckingstub__b4f8e1a2489f73394a6c790dbe1b5ccb03d98f5bcab84019c0dd305f8d0e643e)
15540
+ check_type(argname="argument clean_expired_files", value=clean_expired_files, expected_type=type_hints["clean_expired_files"])
15541
+ check_type(argname="argument number_of_snapshots_to_retain", value=number_of_snapshots_to_retain, expected_type=type_hints["number_of_snapshots_to_retain"])
15542
+ check_type(argname="argument snapshot_retention_period_in_days", value=snapshot_retention_period_in_days, expected_type=type_hints["snapshot_retention_period_in_days"])
15543
+ self._values: typing.Dict[builtins.str, typing.Any] = {}
15544
+ if clean_expired_files is not None:
15545
+ self._values["clean_expired_files"] = clean_expired_files
15546
+ if number_of_snapshots_to_retain is not None:
15547
+ self._values["number_of_snapshots_to_retain"] = number_of_snapshots_to_retain
15548
+ if snapshot_retention_period_in_days is not None:
15549
+ self._values["snapshot_retention_period_in_days"] = snapshot_retention_period_in_days
15550
+
15551
+ @builtins.property
15552
+ def clean_expired_files(
15553
+ self,
15554
+ ) -> typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]]:
15555
+ '''
15556
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-tableoptimizer-icebergretentionconfiguration.html#cfn-glue-tableoptimizer-icebergretentionconfiguration-cleanexpiredfiles
15557
+ '''
15558
+ result = self._values.get("clean_expired_files")
15559
+ return typing.cast(typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]], result)
15560
+
15561
+ @builtins.property
15562
+ def number_of_snapshots_to_retain(self) -> typing.Optional[jsii.Number]:
15563
+ '''
15564
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-tableoptimizer-icebergretentionconfiguration.html#cfn-glue-tableoptimizer-icebergretentionconfiguration-numberofsnapshotstoretain
15565
+ '''
15566
+ result = self._values.get("number_of_snapshots_to_retain")
15567
+ return typing.cast(typing.Optional[jsii.Number], result)
15568
+
15569
+ @builtins.property
15570
+ def snapshot_retention_period_in_days(self) -> typing.Optional[jsii.Number]:
15571
+ '''
15572
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-tableoptimizer-icebergretentionconfiguration.html#cfn-glue-tableoptimizer-icebergretentionconfiguration-snapshotretentionperiodindays
15573
+ '''
15574
+ result = self._values.get("snapshot_retention_period_in_days")
15575
+ return typing.cast(typing.Optional[jsii.Number], result)
15576
+
15577
+ def __eq__(self, rhs: typing.Any) -> builtins.bool:
15578
+ return isinstance(rhs, self.__class__) and rhs._values == self._values
15579
+
15580
+ def __ne__(self, rhs: typing.Any) -> builtins.bool:
15581
+ return not (rhs == self)
15582
+
15583
+ def __repr__(self) -> str:
15584
+ return "IcebergRetentionConfigurationProperty(%s)" % ", ".join(
15585
+ k + "=" + repr(v) for k, v in self._values.items()
15586
+ )
15587
+
14713
15588
  @jsii.data_type(
14714
15589
  jsii_type="aws-cdk-lib.aws_glue.CfnTableOptimizer.OrphanFileDeletionConfigurationProperty",
14715
15590
  jsii_struct_bases=[],
@@ -14781,7 +15656,7 @@ class CfnTableOptimizer(
14781
15656
  def __init__(
14782
15657
  self,
14783
15658
  *,
14784
- iceberg_configuration: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnTableOptimizer.IcebergConfigurationProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
15659
+ iceberg_configuration: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnTableOptimizer.IcebergRetentionConfigurationProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
14785
15660
  ) -> None:
14786
15661
  '''The configuration for a snapshot retention optimizer for Apache Iceberg tables.
14787
15662
 
@@ -14797,9 +15672,10 @@ class CfnTableOptimizer(
14797
15672
  from aws_cdk import aws_glue as glue
14798
15673
 
14799
15674
  retention_configuration_property = glue.CfnTableOptimizer.RetentionConfigurationProperty(
14800
- iceberg_configuration=glue.CfnTableOptimizer.IcebergConfigurationProperty(
14801
- location="location",
14802
- orphan_file_retention_period_in_days=123
15675
+ iceberg_configuration=glue.CfnTableOptimizer.IcebergRetentionConfigurationProperty(
15676
+ clean_expired_files=False,
15677
+ number_of_snapshots_to_retain=123,
15678
+ snapshot_retention_period_in_days=123
14803
15679
  )
14804
15680
  )
14805
15681
  '''
@@ -14813,13 +15689,13 @@ class CfnTableOptimizer(
14813
15689
  @builtins.property
14814
15690
  def iceberg_configuration(
14815
15691
  self,
14816
- ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnTableOptimizer.IcebergConfigurationProperty"]]:
15692
+ ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnTableOptimizer.IcebergRetentionConfigurationProperty"]]:
14817
15693
  '''The configuration for an Iceberg snapshot retention optimizer.
14818
15694
 
14819
15695
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-tableoptimizer-retentionconfiguration.html#cfn-glue-tableoptimizer-retentionconfiguration-icebergconfiguration
14820
15696
  '''
14821
15697
  result = self._values.get("iceberg_configuration")
14822
- return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnTableOptimizer.IcebergConfigurationProperty"]], result)
15698
+ return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnTableOptimizer.IcebergRetentionConfigurationProperty"]], result)
14823
15699
 
14824
15700
  def __eq__(self, rhs: typing.Any) -> builtins.bool:
14825
15701
  return isinstance(rhs, self.__class__) and rhs._values == self._values
@@ -14882,9 +15758,10 @@ class CfnTableOptimizer(
14882
15758
  )
14883
15759
  ),
14884
15760
  retention_configuration=glue.CfnTableOptimizer.RetentionConfigurationProperty(
14885
- iceberg_configuration=glue.CfnTableOptimizer.IcebergConfigurationProperty(
14886
- location="location",
14887
- orphan_file_retention_period_in_days=123
15761
+ iceberg_configuration=glue.CfnTableOptimizer.IcebergRetentionConfigurationProperty(
15762
+ clean_expired_files=False,
15763
+ number_of_snapshots_to_retain=123,
15764
+ snapshot_retention_period_in_days=123
14888
15765
  )
14889
15766
  ),
14890
15767
  vpc_configuration=glue.CfnTableOptimizer.VpcConfigurationProperty(
@@ -15090,9 +15967,10 @@ class CfnTableOptimizerProps:
15090
15967
  )
15091
15968
  ),
15092
15969
  retention_configuration=glue.CfnTableOptimizer.RetentionConfigurationProperty(
15093
- iceberg_configuration=glue.CfnTableOptimizer.IcebergConfigurationProperty(
15094
- location="location",
15095
- orphan_file_retention_period_in_days=123
15970
+ iceberg_configuration=glue.CfnTableOptimizer.IcebergRetentionConfigurationProperty(
15971
+ clean_expired_files=False,
15972
+ number_of_snapshots_to_retain=123,
15973
+ snapshot_retention_period_in_days=123
15096
15974
  )
15097
15975
  ),
15098
15976
  vpc_configuration=glue.CfnTableOptimizer.VpcConfigurationProperty(
@@ -15374,7 +16252,7 @@ class CfnTableProps:
15374
16252
  )
15375
16253
 
15376
16254
 
15377
- @jsii.implements(_IInspectable_c2943556, _ITaggable_36806126)
16255
+ @jsii.implements(_IInspectable_c2943556, _ITriggerRef_d85f5014, _ITaggable_36806126)
15378
16256
  class CfnTrigger(
15379
16257
  _CfnResource_9df397a6,
15380
16258
  metaclass=jsii.JSIIMeta,
@@ -15452,7 +16330,8 @@ class CfnTrigger(
15452
16330
  tags: typing.Any = None,
15453
16331
  workflow_name: typing.Optional[builtins.str] = None,
15454
16332
  ) -> None:
15455
- '''
16333
+ '''Create a new ``AWS::Glue::Trigger``.
16334
+
15456
16335
  :param scope: Scope in which this resource is defined.
15457
16336
  :param id: Construct identifier for this resource (unique in its scope).
15458
16337
  :param actions: The actions initiated by this trigger.
@@ -15485,6 +16364,27 @@ class CfnTrigger(
15485
16364
 
15486
16365
  jsii.create(self.__class__, self, [scope, id, props])
15487
16366
 
16367
+ @jsii.member(jsii_name="fromTriggerName")
16368
+ @builtins.classmethod
16369
+ def from_trigger_name(
16370
+ cls,
16371
+ scope: _constructs_77d1e7e8.Construct,
16372
+ id: builtins.str,
16373
+ trigger_name: builtins.str,
16374
+ ) -> _ITriggerRef_d85f5014:
16375
+ '''Creates a new ITriggerRef from a triggerName.
16376
+
16377
+ :param scope: -
16378
+ :param id: -
16379
+ :param trigger_name: -
16380
+ '''
16381
+ if __debug__:
16382
+ type_hints = typing.get_type_hints(_typecheckingstub__986602eae0e3d2f16446e9c0e6491a51063164c5666c61327ac4cd04cdc32271)
16383
+ check_type(argname="argument scope", value=scope, expected_type=type_hints["scope"])
16384
+ check_type(argname="argument id", value=id, expected_type=type_hints["id"])
16385
+ check_type(argname="argument trigger_name", value=trigger_name, expected_type=type_hints["trigger_name"])
16386
+ return typing.cast(_ITriggerRef_d85f5014, jsii.sinvoke(cls, "fromTriggerName", [scope, id, trigger_name]))
16387
+
15488
16388
  @jsii.member(jsii_name="inspect")
15489
16389
  def inspect(self, inspector: _TreeInspector_488e0dd5) -> None:
15490
16390
  '''Examines the CloudFormation resource and discloses attributes.
@@ -15526,6 +16426,12 @@ class CfnTrigger(
15526
16426
  '''Tag Manager which manages the tags for this resource.'''
15527
16427
  return typing.cast(_TagManager_0a598cb3, jsii.get(self, "tags"))
15528
16428
 
16429
+ @builtins.property
16430
+ @jsii.member(jsii_name="triggerRef")
16431
+ def trigger_ref(self) -> _TriggerReference_161c4574:
16432
+ '''A reference to a Trigger resource.'''
16433
+ return typing.cast(_TriggerReference_161c4574, jsii.get(self, "triggerRef"))
16434
+
15529
16435
  @builtins.property
15530
16436
  @jsii.member(jsii_name="actions")
15531
16437
  def actions(
@@ -16406,7 +17312,7 @@ class CfnTriggerProps:
16406
17312
  )
16407
17313
 
16408
17314
 
16409
- @jsii.implements(_IInspectable_c2943556, _ITaggableV2_4e6798f8)
17315
+ @jsii.implements(_IInspectable_c2943556, _IUsageProfileRef_7fb2f866, _ITaggableV2_4e6798f8)
16410
17316
  class CfnUsageProfile(
16411
17317
  _CfnResource_9df397a6,
16412
17318
  metaclass=jsii.JSIIMeta,
@@ -16464,7 +17370,8 @@ class CfnUsageProfile(
16464
17370
  description: typing.Optional[builtins.str] = None,
16465
17371
  tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,
16466
17372
  ) -> None:
16467
- '''
17373
+ '''Create a new ``AWS::Glue::UsageProfile``.
17374
+
16468
17375
  :param scope: Scope in which this resource is defined.
16469
17376
  :param id: Construct identifier for this resource (unique in its scope).
16470
17377
  :param name: The name of the usage profile.
@@ -16532,6 +17439,12 @@ class CfnUsageProfile(
16532
17439
  def _cfn_properties(self) -> typing.Mapping[builtins.str, typing.Any]:
16533
17440
  return typing.cast(typing.Mapping[builtins.str, typing.Any], jsii.get(self, "cfnProperties"))
16534
17441
 
17442
+ @builtins.property
17443
+ @jsii.member(jsii_name="usageProfileRef")
17444
+ def usage_profile_ref(self) -> _UsageProfileReference_1becbb69:
17445
+ '''A reference to a UsageProfile resource.'''
17446
+ return typing.cast(_UsageProfileReference_1becbb69, jsii.get(self, "usageProfileRef"))
17447
+
16535
17448
  @builtins.property
16536
17449
  @jsii.member(jsii_name="name")
16537
17450
  def name(self) -> builtins.str:
@@ -16915,7 +17828,7 @@ class CfnUsageProfileProps:
16915
17828
  )
16916
17829
 
16917
17830
 
16918
- @jsii.implements(_IInspectable_c2943556, _ITaggable_36806126)
17831
+ @jsii.implements(_IInspectable_c2943556, _IWorkflowRef_130478b3, _ITaggable_36806126)
16919
17832
  class CfnWorkflow(
16920
17833
  _CfnResource_9df397a6,
16921
17834
  metaclass=jsii.JSIIMeta,
@@ -16958,7 +17871,8 @@ class CfnWorkflow(
16958
17871
  name: typing.Optional[builtins.str] = None,
16959
17872
  tags: typing.Any = None,
16960
17873
  ) -> None:
16961
- '''
17874
+ '''Create a new ``AWS::Glue::Workflow``.
17875
+
16962
17876
  :param scope: Scope in which this resource is defined.
16963
17877
  :param id: Construct identifier for this resource (unique in its scope).
16964
17878
  :param default_run_properties: A collection of properties to be used as part of each execution of the workflow.
@@ -17030,6 +17944,12 @@ class CfnWorkflow(
17030
17944
  '''Tag Manager which manages the tags for this resource.'''
17031
17945
  return typing.cast(_TagManager_0a598cb3, jsii.get(self, "tags"))
17032
17946
 
17947
+ @builtins.property
17948
+ @jsii.member(jsii_name="workflowRef")
17949
+ def workflow_ref(self) -> _WorkflowReference_c2d065d8:
17950
+ '''A reference to a Workflow resource.'''
17951
+ return typing.cast(_WorkflowReference_c2d065d8, jsii.get(self, "workflowRef"))
17952
+
17033
17953
  @builtins.property
17034
17954
  @jsii.member(jsii_name="defaultRunProperties")
17035
17955
  def default_run_properties(self) -> typing.Any:
@@ -17240,6 +18160,8 @@ __all__ = [
17240
18160
  "CfnDatabaseProps",
17241
18161
  "CfnDevEndpoint",
17242
18162
  "CfnDevEndpointProps",
18163
+ "CfnIntegrationResourceProperty",
18164
+ "CfnIntegrationResourcePropertyProps",
17243
18165
  "CfnJob",
17244
18166
  "CfnJobProps",
17245
18167
  "CfnMLTransform",
@@ -17519,6 +18441,14 @@ def _typecheckingstub__ff9e598239ccebeecff8b5e3f5f0458f9de0c5c407db27837fb3122ad
17519
18441
  """Type checking stubs"""
17520
18442
  pass
17521
18443
 
18444
+ def _typecheckingstub__9ad087260b86f149a125685668b821ca3edecc96c6b66bdc38f719435de5a0b5(
18445
+ scope: _constructs_77d1e7e8.Construct,
18446
+ id: builtins.str,
18447
+ crawler_name: builtins.str,
18448
+ ) -> None:
18449
+ """Type checking stubs"""
18450
+ pass
18451
+
17522
18452
  def _typecheckingstub__8c4320c740e3b9cb750745ec213ccc0ddab6c6f8d0fb2cc3678b58a5eb96963b(
17523
18453
  inspector: _TreeInspector_488e0dd5,
17524
18454
  ) -> None:
@@ -17639,6 +18569,8 @@ def _typecheckingstub__a7510699883f74759e475bf2ece2842156b441164d538264f93242ebd
17639
18569
  def _typecheckingstub__4c03ffc3d1fa17ed9770b2c448e87c012b6d363001f06ce8b95bdb9c62711274(
17640
18570
  *,
17641
18571
  path: typing.Optional[builtins.str] = None,
18572
+ scan_all: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]] = None,
18573
+ scan_rate: typing.Optional[jsii.Number] = None,
17642
18574
  ) -> None:
17643
18575
  """Type checking stubs"""
17644
18576
  pass
@@ -17769,6 +18701,14 @@ def _typecheckingstub__513b5382e12edfa036d553799dc23a98aa5ab82a6014b0bf9734336e4
17769
18701
  """Type checking stubs"""
17770
18702
  pass
17771
18703
 
18704
+ def _typecheckingstub__d9fcfdaedb8245c0773846f383316c653711b4bf502cef627cc38c7a82d234b1(
18705
+ scope: _constructs_77d1e7e8.Construct,
18706
+ id: builtins.str,
18707
+ custom_entity_type_id: builtins.str,
18708
+ ) -> None:
18709
+ """Type checking stubs"""
18710
+ pass
18711
+
17772
18712
  def _typecheckingstub__f1161ed4cb74764a76ad0a2a8d9218348384b8c59f0f79872699c83d6a9671c3(
17773
18713
  inspector: _TreeInspector_488e0dd5,
17774
18714
  ) -> None:
@@ -17975,6 +18915,14 @@ def _typecheckingstub__7145103c869df1a981612b4445af4fee59059eebaa09d55e36fa9961b
17975
18915
  """Type checking stubs"""
17976
18916
  pass
17977
18917
 
18918
+ def _typecheckingstub__46d072003af0a253294aa99188670d3a5326fb17900c9f4bc5ca0850d973ee94(
18919
+ scope: _constructs_77d1e7e8.Construct,
18920
+ id: builtins.str,
18921
+ database_name: builtins.str,
18922
+ ) -> None:
18923
+ """Type checking stubs"""
18924
+ pass
18925
+
17978
18926
  def _typecheckingstub__c0e83df07074fd6e3bd554052571366deb1febf7f69f6452ca58261d50898a69(
17979
18927
  inspector: _TreeInspector_488e0dd5,
17980
18928
  ) -> None:
@@ -18205,6 +19153,81 @@ def _typecheckingstub__789306655393b50bec94a0cbbc4385fd0d7103127d033ea3eaabe59af
18205
19153
  """Type checking stubs"""
18206
19154
  pass
18207
19155
 
19156
+ def _typecheckingstub__ae17c734cde2f5daac3730b0666a9bbab9b5da447b629240e30963ab9c7f08f1(
19157
+ scope: _constructs_77d1e7e8.Construct,
19158
+ id: builtins.str,
19159
+ *,
19160
+ resource_arn: builtins.str,
19161
+ source_processing_properties: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnIntegrationResourceProperty.SourceProcessingPropertiesProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
19162
+ tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,
19163
+ target_processing_properties: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnIntegrationResourceProperty.TargetProcessingPropertiesProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
19164
+ ) -> None:
19165
+ """Type checking stubs"""
19166
+ pass
19167
+
19168
+ def _typecheckingstub__46d69862dc7dde6ecceaf897c68f6494da749c002c2fc78d76e6799de13bd2d8(
19169
+ inspector: _TreeInspector_488e0dd5,
19170
+ ) -> None:
19171
+ """Type checking stubs"""
19172
+ pass
19173
+
19174
+ def _typecheckingstub__21df869892b19f6d632e31fd42a47b31e468b35e796adf031824e29f18a1dfd4(
19175
+ props: typing.Mapping[builtins.str, typing.Any],
19176
+ ) -> None:
19177
+ """Type checking stubs"""
19178
+ pass
19179
+
19180
+ def _typecheckingstub__c464711887144dbc1e3c1e1eda79ff02c8f1cd0e0fb10f8356ded145b598ca4b(
19181
+ value: builtins.str,
19182
+ ) -> None:
19183
+ """Type checking stubs"""
19184
+ pass
19185
+
19186
+ def _typecheckingstub__ec3419db4cbc5e91effd1829b2f9850e866041a702776a1f1e3de5e078637e20(
19187
+ value: typing.Optional[typing.Union[_IResolvable_da3f097b, CfnIntegrationResourceProperty.SourceProcessingPropertiesProperty]],
19188
+ ) -> None:
19189
+ """Type checking stubs"""
19190
+ pass
19191
+
19192
+ def _typecheckingstub__f016591c61e82e1cfee1b2f7fbb7e9b7e69c013f866e691bfd71179667693aac(
19193
+ value: typing.Optional[typing.List[_CfnTag_f6864754]],
19194
+ ) -> None:
19195
+ """Type checking stubs"""
19196
+ pass
19197
+
19198
+ def _typecheckingstub__479e5167d31a49f354c0c3a47279def6ea08ddad3a85550b9cb30f108f7bdcc3(
19199
+ value: typing.Optional[typing.Union[_IResolvable_da3f097b, CfnIntegrationResourceProperty.TargetProcessingPropertiesProperty]],
19200
+ ) -> None:
19201
+ """Type checking stubs"""
19202
+ pass
19203
+
19204
+ def _typecheckingstub__1746720d7169b5950c1d069a3db28d2ce2fab948ab493aba439f030e01921dcf(
19205
+ *,
19206
+ role_arn: builtins.str,
19207
+ ) -> None:
19208
+ """Type checking stubs"""
19209
+ pass
19210
+
19211
+ def _typecheckingstub__71bd14f343e17ac6f0cc146efa01c15b1b4ca262149364ac44132eba27211bc5(
19212
+ *,
19213
+ role_arn: builtins.str,
19214
+ connection_name: typing.Optional[builtins.str] = None,
19215
+ event_bus_arn: typing.Optional[builtins.str] = None,
19216
+ kms_arn: typing.Optional[builtins.str] = None,
19217
+ ) -> None:
19218
+ """Type checking stubs"""
19219
+ pass
19220
+
19221
+ def _typecheckingstub__85ed4d06cc122e78ef67818e2a911a38f8807718eef54875b3bdcd9a6e70f92f(
19222
+ *,
19223
+ resource_arn: builtins.str,
19224
+ source_processing_properties: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnIntegrationResourceProperty.SourceProcessingPropertiesProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
19225
+ tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,
19226
+ target_processing_properties: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnIntegrationResourceProperty.TargetProcessingPropertiesProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
19227
+ ) -> None:
19228
+ """Type checking stubs"""
19229
+ pass
19230
+
18208
19231
  def _typecheckingstub__2bea698eff4ea1d2bc08b1ab842f318f77ba719c0241a0959453e26989b5b53e(
18209
19232
  scope: _constructs_77d1e7e8.Construct,
18210
19233
  id: builtins.str,
@@ -18236,6 +19259,14 @@ def _typecheckingstub__2bea698eff4ea1d2bc08b1ab842f318f77ba719c0241a0959453e2698
18236
19259
  """Type checking stubs"""
18237
19260
  pass
18238
19261
 
19262
+ def _typecheckingstub__800b295a4e0e23b0b95e4eb1a477f6d73e527378c000c53073ea7b72fd6c7b58(
19263
+ scope: _constructs_77d1e7e8.Construct,
19264
+ id: builtins.str,
19265
+ job_name: builtins.str,
19266
+ ) -> None:
19267
+ """Type checking stubs"""
19268
+ pass
19269
+
18239
19270
  def _typecheckingstub__d425131e9ab8979b5db307155c42bb9935456dd21866bba5ed461a9c8c90df3c(
18240
19271
  inspector: _TreeInspector_488e0dd5,
18241
19272
  ) -> None:
@@ -19323,6 +20354,15 @@ def _typecheckingstub__5e7a911f626ca723b7f0b1c35deb71291cb06af5a64d75f3dcb432988
19323
20354
  """Type checking stubs"""
19324
20355
  pass
19325
20356
 
20357
+ def _typecheckingstub__b4f8e1a2489f73394a6c790dbe1b5ccb03d98f5bcab84019c0dd305f8d0e643e(
20358
+ *,
20359
+ clean_expired_files: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]] = None,
20360
+ number_of_snapshots_to_retain: typing.Optional[jsii.Number] = None,
20361
+ snapshot_retention_period_in_days: typing.Optional[jsii.Number] = None,
20362
+ ) -> None:
20363
+ """Type checking stubs"""
20364
+ pass
20365
+
19326
20366
  def _typecheckingstub__fd6b7e3a46937a5c19f35e6c499494a7bff00c3eb67dd21cf60217c60a49b95b(
19327
20367
  *,
19328
20368
  iceberg_configuration: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnTableOptimizer.IcebergConfigurationProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
@@ -19332,7 +20372,7 @@ def _typecheckingstub__fd6b7e3a46937a5c19f35e6c499494a7bff00c3eb67dd21cf60217c60
19332
20372
 
19333
20373
  def _typecheckingstub__c5ba28f1de672bfecf327282ce4e55b72b9a4850e73f7c390aa55e0c015e2ce8(
19334
20374
  *,
19335
- iceberg_configuration: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnTableOptimizer.IcebergConfigurationProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
20375
+ iceberg_configuration: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnTableOptimizer.IcebergRetentionConfigurationProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
19336
20376
  ) -> None:
19337
20377
  """Type checking stubs"""
19338
20378
  pass
@@ -19394,6 +20434,14 @@ def _typecheckingstub__8db15edfea6b1fa74e017c6bb7603bed442e4f78f4c3c138f4dcc562c
19394
20434
  """Type checking stubs"""
19395
20435
  pass
19396
20436
 
20437
+ def _typecheckingstub__986602eae0e3d2f16446e9c0e6491a51063164c5666c61327ac4cd04cdc32271(
20438
+ scope: _constructs_77d1e7e8.Construct,
20439
+ id: builtins.str,
20440
+ trigger_name: builtins.str,
20441
+ ) -> None:
20442
+ """Type checking stubs"""
20443
+ pass
20444
+
19397
20445
  def _typecheckingstub__0eaa05c4b1b14e1818059890f7eb0ac7a86490e54a9132ffd1b4d9178ea5d849(
19398
20446
  inspector: _TreeInspector_488e0dd5,
19399
20447
  ) -> None: