aws-cdk-lib 2.195.0__py3-none-any.whl → 2.224.0__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Potentially problematic release.
This version of aws-cdk-lib might be problematic. Click here for more details.
- aws_cdk/__init__.py +1806 -417
- aws_cdk/_jsii/__init__.py +1 -1
- aws_cdk/_jsii/{aws-cdk-lib@2.195.0.jsii.tgz → aws-cdk-lib@2.224.0.jsii.tgz} +0 -0
- aws_cdk/alexa_ask/__init__.py +12 -2
- aws_cdk/aws_accessanalyzer/__init__.py +323 -6
- aws_cdk/aws_acmpca/__init__.py +53 -10
- aws_cdk/aws_aiops/__init__.py +1019 -0
- aws_cdk/aws_amazonmq/__init__.py +357 -313
- aws_cdk/aws_amplify/__init__.py +173 -17
- aws_cdk/aws_amplifyuibuilder/__init__.py +35 -6
- aws_cdk/aws_apigateway/__init__.py +1245 -215
- aws_cdk/aws_apigatewayv2/__init__.py +3890 -476
- aws_cdk/aws_apigatewayv2_integrations/__init__.py +94 -16
- aws_cdk/aws_appconfig/__init__.py +618 -91
- aws_cdk/aws_appflow/__init__.py +151 -6
- aws_cdk/aws_appintegrations/__init__.py +546 -6
- aws_cdk/aws_applicationautoscaling/__init__.py +75 -10
- aws_cdk/aws_applicationinsights/__init__.py +13 -2
- aws_cdk/aws_applicationsignals/__init__.py +374 -6
- aws_cdk/aws_appmesh/__init__.py +136 -26
- aws_cdk/aws_apprunner/__init__.py +66 -18
- aws_cdk/aws_appstream/__init__.py +309 -55
- aws_cdk/aws_appsync/__init__.py +350 -94
- aws_cdk/aws_apptest/__init__.py +71 -2
- aws_cdk/aws_aps/__init__.py +2188 -94
- aws_cdk/aws_arcregionswitch/__init__.py +5095 -0
- aws_cdk/aws_arczonalshift/__init__.py +39 -12
- aws_cdk/aws_athena/__init__.py +365 -29
- aws_cdk/aws_auditmanager/__init__.py +71 -2
- aws_cdk/aws_autoscaling/__init__.py +165 -60
- aws_cdk/aws_autoscaling_common/__init__.py +3 -0
- aws_cdk/aws_autoscalingplans/__init__.py +13 -2
- aws_cdk/aws_b2bi/__init__.py +1819 -99
- aws_cdk/aws_backup/__init__.py +370 -42
- aws_cdk/aws_backupgateway/__init__.py +13 -2
- aws_cdk/aws_batch/__init__.py +1462 -163
- aws_cdk/aws_bcmdataexports/__init__.py +21 -2
- aws_cdk/aws_bedrock/__init__.py +7867 -727
- aws_cdk/aws_bedrockagentcore/__init__.py +10425 -0
- aws_cdk/aws_billingconductor/__init__.py +197 -11
- aws_cdk/aws_budgets/__init__.py +611 -4
- aws_cdk/aws_cassandra/__init__.py +247 -6
- aws_cdk/aws_ce/__init__.py +35 -6
- aws_cdk/aws_certificatemanager/__init__.py +258 -32
- aws_cdk/aws_chatbot/__init__.py +76 -6
- aws_cdk/aws_cleanrooms/__init__.py +709 -206
- aws_cdk/aws_cleanroomsml/__init__.py +13 -2
- aws_cdk/aws_cloud9/__init__.py +13 -2
- aws_cdk/aws_cloudformation/__init__.py +362 -189
- aws_cdk/aws_cloudfront/__init__.py +2188 -674
- aws_cdk/aws_cloudfront/experimental/__init__.py +114 -16
- aws_cdk/aws_cloudfront_origins/__init__.py +615 -74
- aws_cdk/aws_cloudtrail/__init__.py +311 -21
- aws_cdk/aws_cloudwatch/__init__.py +3093 -1038
- aws_cdk/aws_cloudwatch_actions/__init__.py +75 -1
- aws_cdk/aws_codeartifact/__init__.py +35 -6
- aws_cdk/aws_codebuild/__init__.py +1303 -135
- aws_cdk/aws_codecommit/__init__.py +29 -9
- aws_cdk/aws_codeconnections/__init__.py +13 -2
- aws_cdk/aws_codedeploy/__init__.py +130 -6
- aws_cdk/aws_codeguruprofiler/__init__.py +80 -2
- aws_cdk/aws_codegurureviewer/__init__.py +13 -2
- aws_cdk/aws_codepipeline/__init__.py +177 -71
- aws_cdk/aws_codepipeline_actions/__init__.py +753 -4
- aws_cdk/aws_codestar/__init__.py +13 -2
- aws_cdk/aws_codestarconnections/__init__.py +35 -6
- aws_cdk/aws_codestarnotifications/__init__.py +22 -2
- aws_cdk/aws_cognito/__init__.py +905 -92
- aws_cdk/aws_cognito_identitypool/__init__.py +23 -12
- aws_cdk/aws_comprehend/__init__.py +24 -4
- aws_cdk/aws_config/__init__.py +227 -30
- aws_cdk/aws_connect/__init__.py +2736 -191
- aws_cdk/aws_connectcampaigns/__init__.py +13 -2
- aws_cdk/aws_connectcampaignsv2/__init__.py +268 -6
- aws_cdk/aws_controltower/__init__.py +35 -6
- aws_cdk/aws_cur/__init__.py +100 -4
- aws_cdk/aws_customerprofiles/__init__.py +617 -27
- aws_cdk/aws_databrew/__init__.py +68 -12
- aws_cdk/aws_datapipeline/__init__.py +42 -2
- aws_cdk/aws_datasync/__init__.py +1514 -977
- aws_cdk/aws_datazone/__init__.py +7426 -1763
- aws_cdk/aws_dax/__init__.py +83 -6
- aws_cdk/aws_deadline/__init__.py +511 -36
- aws_cdk/aws_detective/__init__.py +35 -6
- aws_cdk/aws_devicefarm/__init__.py +68 -12
- aws_cdk/aws_devopsguru/__init__.py +37 -6
- aws_cdk/aws_directoryservice/__init__.py +53 -4
- aws_cdk/aws_dlm/__init__.py +13 -2
- aws_cdk/aws_dms/__init__.py +184 -27
- aws_cdk/aws_docdb/__init__.py +350 -49
- aws_cdk/aws_docdbelastic/__init__.py +13 -2
- aws_cdk/aws_dsql/__init__.py +386 -16
- aws_cdk/aws_dynamodb/__init__.py +1479 -170
- aws_cdk/aws_ec2/__init__.py +10465 -1335
- aws_cdk/aws_ecr/__init__.py +637 -43
- aws_cdk/aws_ecr_assets/__init__.py +10 -0
- aws_cdk/aws_ecs/__init__.py +6629 -490
- aws_cdk/aws_ecs_patterns/__init__.py +124 -12
- aws_cdk/aws_efs/__init__.py +276 -24
- aws_cdk/aws_eks/__init__.py +1132 -227
- aws_cdk/aws_elasticache/__init__.py +378 -25
- aws_cdk/aws_elasticbeanstalk/__init__.py +75 -8
- aws_cdk/aws_elasticloadbalancing/__init__.py +22 -2
- aws_cdk/aws_elasticloadbalancingv2/__init__.py +1796 -123
- aws_cdk/aws_elasticsearch/__init__.py +291 -9
- aws_cdk/aws_emr/__init__.py +219 -18
- aws_cdk/aws_emrcontainers/__init__.py +71 -2
- aws_cdk/aws_emrserverless/__init__.py +188 -3
- aws_cdk/aws_entityresolution/__init__.py +585 -58
- aws_cdk/aws_events/__init__.py +1007 -126
- aws_cdk/aws_events_targets/__init__.py +398 -65
- aws_cdk/aws_eventschemas/__init__.py +46 -8
- aws_cdk/aws_evidently/__init__.py +57 -10
- aws_cdk/aws_evs/__init__.py +2244 -0
- aws_cdk/aws_finspace/__init__.py +71 -2
- aws_cdk/aws_fis/__init__.py +26 -4
- aws_cdk/aws_fms/__init__.py +35 -6
- aws_cdk/aws_forecast/__init__.py +24 -4
- aws_cdk/aws_frauddetector/__init__.py +79 -14
- aws_cdk/aws_fsx/__init__.py +1349 -127
- aws_cdk/aws_gamelift/__init__.py +755 -94
- aws_cdk/aws_gameliftstreams/__init__.py +44 -22
- aws_cdk/aws_globalaccelerator/__init__.py +73 -14
- aws_cdk/aws_glue/__init__.py +1455 -378
- aws_cdk/aws_grafana/__init__.py +13 -2
- aws_cdk/aws_greengrass/__init__.py +654 -32
- aws_cdk/aws_greengrassv2/__init__.py +53 -4
- aws_cdk/aws_groundstation/__init__.py +122 -6
- aws_cdk/aws_guardduty/__init__.py +1613 -123
- aws_cdk/aws_healthimaging/__init__.py +71 -2
- aws_cdk/aws_healthlake/__init__.py +42 -2
- aws_cdk/aws_iam/__init__.py +921 -141
- aws_cdk/aws_identitystore/__init__.py +24 -4
- aws_cdk/aws_imagebuilder/__init__.py +1454 -199
- aws_cdk/aws_inspector/__init__.py +44 -6
- aws_cdk/aws_inspectorv2/__init__.py +2285 -243
- aws_cdk/aws_internetmonitor/__init__.py +71 -2
- aws_cdk/aws_invoicing/__init__.py +13 -2
- aws_cdk/aws_iot/__init__.py +1760 -64
- aws_cdk/aws_iotanalytics/__init__.py +162 -8
- aws_cdk/aws_iotcoredeviceadvisor/__init__.py +106 -40
- aws_cdk/aws_iotevents/__init__.py +122 -6
- aws_cdk/aws_iotfleethub/__init__.py +71 -2
- aws_cdk/aws_iotfleetwise/__init__.py +195 -14
- aws_cdk/aws_iotsitewise/__init__.py +1837 -89
- aws_cdk/aws_iotthingsgraph/__init__.py +13 -2
- aws_cdk/aws_iottwinmaker/__init__.py +115 -10
- aws_cdk/aws_iotwireless/__init__.py +649 -22
- aws_cdk/aws_ivs/__init__.py +561 -57
- aws_cdk/aws_ivschat/__init__.py +24 -4
- aws_cdk/aws_kafkaconnect/__init__.py +35 -6
- aws_cdk/aws_kendra/__init__.py +120 -28
- aws_cdk/aws_kendraranking/__init__.py +13 -2
- aws_cdk/aws_kinesis/__init__.py +641 -23
- aws_cdk/aws_kinesisanalytics/__init__.py +467 -96
- aws_cdk/aws_kinesisanalyticsv2/__init__.py +207 -19
- aws_cdk/aws_kinesisfirehose/__init__.py +3087 -295
- aws_cdk/aws_kinesisvideo/__init__.py +24 -4
- aws_cdk/aws_kms/__init__.py +204 -45
- aws_cdk/aws_lakeformation/__init__.py +80 -15
- aws_cdk/aws_lambda/__init__.py +2236 -297
- aws_cdk/aws_lambda_event_sources/__init__.py +638 -1
- aws_cdk/aws_lambda_nodejs/__init__.py +63 -24
- aws_cdk/aws_launchwizard/__init__.py +13 -2
- aws_cdk/aws_lex/__init__.py +2162 -212
- aws_cdk/aws_licensemanager/__init__.py +24 -4
- aws_cdk/aws_lightsail/__init__.py +2958 -1322
- aws_cdk/aws_location/__init__.py +618 -14
- aws_cdk/aws_logs/__init__.py +6014 -923
- aws_cdk/aws_lookoutequipment/__init__.py +13 -2
- aws_cdk/aws_lookoutmetrics/__init__.py +38 -6
- aws_cdk/aws_lookoutvision/__init__.py +71 -2
- aws_cdk/aws_m2/__init__.py +94 -19
- aws_cdk/aws_macie/__init__.py +49 -11
- aws_cdk/aws_managedblockchain/__init__.py +180 -6
- aws_cdk/aws_mediaconnect/__init__.py +101 -18
- aws_cdk/aws_mediaconvert/__init__.py +35 -6
- aws_cdk/aws_medialive/__init__.py +1938 -532
- aws_cdk/aws_mediapackage/__init__.py +59 -12
- aws_cdk/aws_mediapackagev2/__init__.py +1616 -233
- aws_cdk/aws_mediastore/__init__.py +13 -2
- aws_cdk/aws_mediatailor/__init__.py +583 -12
- aws_cdk/aws_memorydb/__init__.py +271 -12
- aws_cdk/aws_mpa/__init__.py +1495 -0
- aws_cdk/aws_msk/__init__.py +108 -22
- aws_cdk/aws_mwaa/__init__.py +121 -9
- aws_cdk/aws_neptune/__init__.py +290 -78
- aws_cdk/aws_neptunegraph/__init__.py +24 -4
- aws_cdk/aws_networkfirewall/__init__.py +1184 -164
- aws_cdk/aws_networkmanager/__init__.py +349 -33
- aws_cdk/aws_nimblestudio/__init__.py +283 -408
- aws_cdk/aws_notifications/__init__.py +317 -12
- aws_cdk/aws_notificationscontacts/__init__.py +13 -2
- aws_cdk/aws_oam/__init__.py +24 -4
- aws_cdk/aws_observabilityadmin/__init__.py +2561 -0
- aws_cdk/aws_odb/__init__.py +5872 -0
- aws_cdk/aws_omics/__init__.py +2967 -162
- aws_cdk/aws_opensearchserverless/__init__.py +312 -37
- aws_cdk/aws_opensearchservice/__init__.py +501 -19
- aws_cdk/aws_opsworks/__init__.py +235 -139
- aws_cdk/aws_opsworkscm/__init__.py +16 -52
- aws_cdk/aws_organizations/__init__.py +70 -10
- aws_cdk/aws_osis/__init__.py +167 -2
- aws_cdk/aws_panorama/__init__.py +181 -9
- aws_cdk/aws_paymentcryptography/__init__.py +24 -4
- aws_cdk/aws_pcaconnectorad/__init__.py +59 -10
- aws_cdk/aws_pcaconnectorscep/__init__.py +24 -4
- aws_cdk/aws_pcs/__init__.py +516 -64
- aws_cdk/aws_personalize/__init__.py +46 -8
- aws_cdk/aws_pinpoint/__init__.py +329 -38
- aws_cdk/aws_pinpointemail/__init__.py +48 -8
- aws_cdk/aws_pipes/__init__.py +12 -2
- aws_cdk/aws_proton/__init__.py +37 -6
- aws_cdk/aws_qbusiness/__init__.py +635 -34
- aws_cdk/aws_qldb/__init__.py +24 -4
- aws_cdk/aws_quicksight/__init__.py +7900 -1160
- aws_cdk/aws_ram/__init__.py +24 -4
- aws_cdk/aws_rbin/__init__.py +12 -2
- aws_cdk/aws_rds/__init__.py +3721 -573
- aws_cdk/aws_redshift/__init__.py +143 -20
- aws_cdk/aws_redshiftserverless/__init__.py +699 -11
- aws_cdk/aws_refactorspaces/__init__.py +64 -14
- aws_cdk/aws_rekognition/__init__.py +93 -6
- aws_cdk/aws_resiliencehub/__init__.py +24 -4
- aws_cdk/aws_resourceexplorer2/__init__.py +35 -6
- aws_cdk/aws_resourcegroups/__init__.py +82 -4
- aws_cdk/aws_robomaker/__init__.py +72 -12
- aws_cdk/aws_rolesanywhere/__init__.py +194 -19
- aws_cdk/aws_route53/__init__.py +3965 -1436
- aws_cdk/aws_route53_targets/__init__.py +3 -0
- aws_cdk/aws_route53profiles/__init__.py +37 -6
- aws_cdk/aws_route53recoverycontrol/__init__.py +46 -8
- aws_cdk/aws_route53recoveryreadiness/__init__.py +104 -8
- aws_cdk/aws_route53resolver/__init__.py +189 -40
- aws_cdk/aws_rtbfabric/__init__.py +3498 -0
- aws_cdk/aws_rum/__init__.py +13 -2
- aws_cdk/aws_s3/__init__.py +1742 -221
- aws_cdk/aws_s3_assets/__init__.py +11 -11
- aws_cdk/aws_s3_deployment/__init__.py +153 -11
- aws_cdk/aws_s3_notifications/__init__.py +7 -7
- aws_cdk/aws_s3express/__init__.py +1053 -6
- aws_cdk/aws_s3objectlambda/__init__.py +68 -16
- aws_cdk/aws_s3outposts/__init__.py +46 -8
- aws_cdk/aws_s3tables/__init__.py +2000 -323
- aws_cdk/aws_s3vectors/__init__.py +1378 -0
- aws_cdk/aws_sagemaker/__init__.py +6848 -373
- aws_cdk/aws_sam/__init__.py +79 -14
- aws_cdk/aws_scheduler/__init__.py +249 -4
- aws_cdk/aws_sdb/__init__.py +12 -2
- aws_cdk/aws_secretsmanager/__init__.py +194 -14
- aws_cdk/aws_securityhub/__init__.py +3121 -176
- aws_cdk/aws_securitylake/__init__.py +46 -8
- aws_cdk/aws_servicecatalog/__init__.py +429 -246
- aws_cdk/aws_servicecatalogappregistry/__init__.py +164 -8
- aws_cdk/aws_servicediscovery/__init__.py +188 -47
- aws_cdk/aws_ses/__init__.py +2265 -369
- aws_cdk/aws_shield/__init__.py +46 -8
- aws_cdk/aws_signer/__init__.py +33 -4
- aws_cdk/aws_simspaceweaver/__init__.py +42 -2
- aws_cdk/aws_smsvoice/__init__.py +4716 -0
- aws_cdk/aws_sns/__init__.py +263 -29
- aws_cdk/aws_sns_subscriptions/__init__.py +265 -2
- aws_cdk/aws_sqs/__init__.py +223 -14
- aws_cdk/aws_ssm/__init__.py +413 -58
- aws_cdk/aws_ssmcontacts/__init__.py +98 -9
- aws_cdk/aws_ssmguiconnect/__init__.py +20 -9
- aws_cdk/aws_ssmincidents/__init__.py +24 -4
- aws_cdk/aws_ssmquicksetup/__init__.py +393 -8
- aws_cdk/aws_sso/__init__.py +70 -12
- aws_cdk/aws_stepfunctions/__init__.py +823 -94
- aws_cdk/aws_stepfunctions_tasks/__init__.py +2323 -150
- aws_cdk/aws_supportapp/__init__.py +39 -6
- aws_cdk/aws_synthetics/__init__.py +1088 -126
- aws_cdk/aws_systemsmanagersap/__init__.py +13 -2
- aws_cdk/aws_timestream/__init__.py +104 -8
- aws_cdk/aws_transfer/__init__.py +784 -87
- aws_cdk/aws_verifiedpermissions/__init__.py +306 -13
- aws_cdk/aws_voiceid/__init__.py +54 -5
- aws_cdk/aws_vpclattice/__init__.py +589 -231
- aws_cdk/aws_waf/__init__.py +79 -14
- aws_cdk/aws_wafregional/__init__.py +123 -22
- aws_cdk/aws_wafv2/__init__.py +1183 -64
- aws_cdk/aws_wisdom/__init__.py +1403 -90
- aws_cdk/aws_workspaces/__init__.py +134 -6
- aws_cdk/aws_workspacesinstances/__init__.py +3940 -0
- aws_cdk/aws_workspacesthinclient/__init__.py +79 -10
- aws_cdk/aws_workspacesweb/__init__.py +1057 -141
- aws_cdk/aws_xray/__init__.py +48 -8
- aws_cdk/cloud_assembly_schema/__init__.py +368 -48
- aws_cdk/custom_resources/__init__.py +58 -12
- aws_cdk/cx_api/__init__.py +125 -21
- aws_cdk/interfaces/__init__.py +739 -0
- aws_cdk/interfaces/alexa_ask/__init__.py +146 -0
- aws_cdk/interfaces/aws_accessanalyzer/__init__.py +146 -0
- aws_cdk/interfaces/aws_acmpca/__init__.py +501 -0
- aws_cdk/interfaces/aws_aiops/__init__.py +146 -0
- aws_cdk/interfaces/aws_amazonmq/__init__.py +386 -0
- aws_cdk/interfaces/aws_amplify/__init__.py +352 -0
- aws_cdk/interfaces/aws_amplifyuibuilder/__init__.py +454 -0
- aws_cdk/interfaces/aws_apigateway/__init__.py +2486 -0
- aws_cdk/interfaces/aws_apigatewayv2/__init__.py +1651 -0
- aws_cdk/interfaces/aws_appconfig/__init__.py +1020 -0
- aws_cdk/interfaces/aws_appflow/__init__.py +404 -0
- aws_cdk/interfaces/aws_appintegrations/__init__.py +396 -0
- aws_cdk/interfaces/aws_applicationautoscaling/__init__.py +307 -0
- aws_cdk/interfaces/aws_applicationinsights/__init__.py +148 -0
- aws_cdk/interfaces/aws_applicationsignals/__init__.py +358 -0
- aws_cdk/interfaces/aws_appmesh/__init__.py +888 -0
- aws_cdk/interfaces/aws_apprunner/__init__.py +564 -0
- aws_cdk/interfaces/aws_appstream/__init__.py +1482 -0
- aws_cdk/interfaces/aws_appsync/__init__.py +1326 -0
- aws_cdk/interfaces/aws_apptest/__init__.py +163 -0
- aws_cdk/interfaces/aws_aps/__init__.py +558 -0
- aws_cdk/interfaces/aws_arcregionswitch/__init__.py +146 -0
- aws_cdk/interfaces/aws_arczonalshift/__init__.py +273 -0
- aws_cdk/interfaces/aws_athena/__init__.py +575 -0
- aws_cdk/interfaces/aws_auditmanager/__init__.py +163 -0
- aws_cdk/interfaces/aws_autoscaling/__init__.py +705 -0
- aws_cdk/interfaces/aws_autoscalingplans/__init__.py +148 -0
- aws_cdk/interfaces/aws_b2bi/__init__.py +524 -0
- aws_cdk/interfaces/aws_backup/__init__.py +955 -0
- aws_cdk/interfaces/aws_backupgateway/__init__.py +146 -0
- aws_cdk/interfaces/aws_batch/__init__.py +681 -0
- aws_cdk/interfaces/aws_bcmdataexports/__init__.py +146 -0
- aws_cdk/interfaces/aws_bedrock/__init__.py +1942 -0
- aws_cdk/interfaces/aws_bedrockagentcore/__init__.py +934 -0
- aws_cdk/interfaces/aws_billing/__init__.py +146 -0
- aws_cdk/interfaces/aws_billingconductor/__init__.py +463 -0
- aws_cdk/interfaces/aws_budgets/__init__.py +261 -0
- aws_cdk/interfaces/aws_cassandra/__init__.py +381 -0
- aws_cdk/interfaces/aws_ce/__init__.py +352 -0
- aws_cdk/interfaces/aws_certificatemanager/__init__.py +251 -0
- aws_cdk/interfaces/aws_chatbot/__init__.py +366 -0
- aws_cdk/interfaces/aws_cleanrooms/__init__.py +1103 -0
- aws_cdk/interfaces/aws_cleanroomsml/__init__.py +148 -0
- aws_cdk/interfaces/aws_cloud9/__init__.py +166 -0
- aws_cdk/interfaces/aws_cloudformation/__init__.py +1919 -0
- aws_cdk/interfaces/aws_cloudfront/__init__.py +1998 -0
- aws_cdk/interfaces/aws_cloudtrail/__init__.py +570 -0
- aws_cdk/interfaces/aws_cloudwatch/__init__.py +733 -0
- aws_cdk/interfaces/aws_codeartifact/__init__.py +352 -0
- aws_cdk/interfaces/aws_codebuild/__init__.py +487 -0
- aws_cdk/interfaces/aws_codecommit/__init__.py +163 -0
- aws_cdk/interfaces/aws_codeconnections/__init__.py +146 -0
- aws_cdk/interfaces/aws_codedeploy/__init__.py +352 -0
- aws_cdk/interfaces/aws_codeguruprofiler/__init__.py +168 -0
- aws_cdk/interfaces/aws_codegurureviewer/__init__.py +148 -0
- aws_cdk/interfaces/aws_codepipeline/__init__.py +388 -0
- aws_cdk/interfaces/aws_codestar/__init__.py +146 -0
- aws_cdk/interfaces/aws_codestarconnections/__init__.py +370 -0
- aws_cdk/interfaces/aws_codestarnotifications/__init__.py +148 -0
- aws_cdk/interfaces/aws_cognito/__init__.py +1929 -0
- aws_cdk/interfaces/aws_comprehend/__init__.py +251 -0
- aws_cdk/interfaces/aws_config/__init__.py +1165 -0
- aws_cdk/interfaces/aws_connect/__init__.py +2949 -0
- aws_cdk/interfaces/aws_connectcampaigns/__init__.py +146 -0
- aws_cdk/interfaces/aws_connectcampaignsv2/__init__.py +146 -0
- aws_cdk/interfaces/aws_controltower/__init__.py +394 -0
- aws_cdk/interfaces/aws_cur/__init__.py +146 -0
- aws_cdk/interfaces/aws_customerprofiles/__init__.py +915 -0
- aws_cdk/interfaces/aws_databrew/__init__.py +661 -0
- aws_cdk/interfaces/aws_datapipeline/__init__.py +146 -0
- aws_cdk/interfaces/aws_datasync/__init__.py +1384 -0
- aws_cdk/interfaces/aws_datazone/__init__.py +2238 -0
- aws_cdk/interfaces/aws_dax/__init__.py +364 -0
- aws_cdk/interfaces/aws_deadline/__init__.py +1303 -0
- aws_cdk/interfaces/aws_detective/__init__.py +364 -0
- aws_cdk/interfaces/aws_devicefarm/__init__.py +663 -0
- aws_cdk/interfaces/aws_devopsguru/__init__.py +362 -0
- aws_cdk/interfaces/aws_directoryservice/__init__.py +251 -0
- aws_cdk/interfaces/aws_dlm/__init__.py +166 -0
- aws_cdk/interfaces/aws_dms/__init__.py +1176 -0
- aws_cdk/interfaces/aws_docdb/__init__.py +560 -0
- aws_cdk/interfaces/aws_docdbelastic/__init__.py +146 -0
- aws_cdk/interfaces/aws_dsql/__init__.py +146 -0
- aws_cdk/interfaces/aws_dynamodb/__init__.py +278 -0
- aws_cdk/interfaces/aws_ec2/__init__.py +11963 -0
- aws_cdk/interfaces/aws_ecr/__init__.py +814 -0
- aws_cdk/interfaces/aws_ecs/__init__.py +845 -0
- aws_cdk/interfaces/aws_efs/__init__.py +392 -0
- aws_cdk/interfaces/aws_eks/__init__.py +948 -0
- aws_cdk/interfaces/aws_elasticache/__init__.py +1108 -0
- aws_cdk/interfaces/aws_elasticbeanstalk/__init__.py +503 -0
- aws_cdk/interfaces/aws_elasticloadbalancing/__init__.py +148 -0
- aws_cdk/interfaces/aws_elasticloadbalancingv2/__init__.py +795 -0
- aws_cdk/interfaces/aws_elasticsearch/__init__.py +158 -0
- aws_cdk/interfaces/aws_emr/__init__.py +913 -0
- aws_cdk/interfaces/aws_emrcontainers/__init__.py +168 -0
- aws_cdk/interfaces/aws_emrserverless/__init__.py +166 -0
- aws_cdk/interfaces/aws_entityresolution/__init__.py +608 -0
- aws_cdk/interfaces/aws_events/__init__.py +872 -0
- aws_cdk/interfaces/aws_eventschemas/__init__.py +455 -0
- aws_cdk/interfaces/aws_evidently/__init__.py +558 -0
- aws_cdk/interfaces/aws_evs/__init__.py +166 -0
- aws_cdk/interfaces/aws_finspace/__init__.py +166 -0
- aws_cdk/interfaces/aws_fis/__init__.py +271 -0
- aws_cdk/interfaces/aws_fms/__init__.py +364 -0
- aws_cdk/interfaces/aws_forecast/__init__.py +249 -0
- aws_cdk/interfaces/aws_frauddetector/__init__.py +764 -0
- aws_cdk/interfaces/aws_fsx/__init__.py +663 -0
- aws_cdk/interfaces/aws_gamelift/__init__.py +1325 -0
- aws_cdk/interfaces/aws_gameliftstreams/__init__.py +249 -0
- aws_cdk/interfaces/aws_globalaccelerator/__init__.py +461 -0
- aws_cdk/interfaces/aws_glue/__init__.py +2377 -0
- aws_cdk/interfaces/aws_grafana/__init__.py +146 -0
- aws_cdk/interfaces/aws_greengrass/__init__.py +1871 -0
- aws_cdk/interfaces/aws_greengrassv2/__init__.py +251 -0
- aws_cdk/interfaces/aws_groundstation/__init__.py +396 -0
- aws_cdk/interfaces/aws_guardduty/__init__.py +1225 -0
- aws_cdk/interfaces/aws_healthimaging/__init__.py +163 -0
- aws_cdk/interfaces/aws_healthlake/__init__.py +146 -0
- aws_cdk/interfaces/aws_iam/__init__.py +1803 -0
- aws_cdk/interfaces/aws_identitystore/__init__.py +288 -0
- aws_cdk/interfaces/aws_imagebuilder/__init__.py +984 -0
- aws_cdk/interfaces/aws_inspector/__init__.py +354 -0
- aws_cdk/interfaces/aws_inspectorv2/__init__.py +467 -0
- aws_cdk/interfaces/aws_internetmonitor/__init__.py +163 -0
- aws_cdk/interfaces/aws_invoicing/__init__.py +146 -0
- aws_cdk/interfaces/aws_iot/__init__.py +3483 -0
- aws_cdk/interfaces/aws_iotanalytics/__init__.py +455 -0
- aws_cdk/interfaces/aws_iotcoredeviceadvisor/__init__.py +168 -0
- aws_cdk/interfaces/aws_iotevents/__init__.py +352 -0
- aws_cdk/interfaces/aws_iotfleethub/__init__.py +166 -0
- aws_cdk/interfaces/aws_iotfleetwise/__init__.py +892 -0
- aws_cdk/interfaces/aws_iotsitewise/__init__.py +1097 -0
- aws_cdk/interfaces/aws_iotthingsgraph/__init__.py +146 -0
- aws_cdk/interfaces/aws_iottwinmaker/__init__.py +711 -0
- aws_cdk/interfaces/aws_iotwireless/__init__.py +1401 -0
- aws_cdk/interfaces/aws_ivs/__init__.py +1075 -0
- aws_cdk/interfaces/aws_ivschat/__init__.py +251 -0
- aws_cdk/interfaces/aws_kafkaconnect/__init__.py +354 -0
- aws_cdk/interfaces/aws_kendra/__init__.py +428 -0
- aws_cdk/interfaces/aws_kendraranking/__init__.py +166 -0
- aws_cdk/interfaces/aws_kinesis/__init__.py +364 -0
- aws_cdk/interfaces/aws_kinesisanalytics/__init__.py +364 -0
- aws_cdk/interfaces/aws_kinesisanalyticsv2/__init__.py +479 -0
- aws_cdk/interfaces/aws_kinesisfirehose/__init__.py +168 -0
- aws_cdk/interfaces/aws_kinesisvideo/__init__.py +283 -0
- aws_cdk/interfaces/aws_kms/__init__.py +376 -0
- aws_cdk/interfaces/aws_lakeformation/__init__.py +860 -0
- aws_cdk/interfaces/aws_lambda/__init__.py +1141 -0
- aws_cdk/interfaces/aws_launchwizard/__init__.py +146 -0
- aws_cdk/interfaces/aws_lex/__init__.py +513 -0
- aws_cdk/interfaces/aws_licensemanager/__init__.py +249 -0
- aws_cdk/interfaces/aws_lightsail/__init__.py +1744 -0
- aws_cdk/interfaces/aws_location/__init__.py +879 -0
- aws_cdk/interfaces/aws_logs/__init__.py +1667 -0
- aws_cdk/interfaces/aws_lookoutequipment/__init__.py +168 -0
- aws_cdk/interfaces/aws_lookoutmetrics/__init__.py +251 -0
- aws_cdk/interfaces/aws_lookoutvision/__init__.py +163 -0
- aws_cdk/interfaces/aws_m2/__init__.py +352 -0
- aws_cdk/interfaces/aws_macie/__init__.py +512 -0
- aws_cdk/interfaces/aws_managedblockchain/__init__.py +381 -0
- aws_cdk/interfaces/aws_mediaconnect/__init__.py +1028 -0
- aws_cdk/interfaces/aws_mediaconvert/__init__.py +396 -0
- aws_cdk/interfaces/aws_medialive/__init__.py +1755 -0
- aws_cdk/interfaces/aws_mediapackage/__init__.py +644 -0
- aws_cdk/interfaces/aws_mediapackagev2/__init__.py +618 -0
- aws_cdk/interfaces/aws_mediastore/__init__.py +146 -0
- aws_cdk/interfaces/aws_mediatailor/__init__.py +788 -0
- aws_cdk/interfaces/aws_memorydb/__init__.py +685 -0
- aws_cdk/interfaces/aws_mpa/__init__.py +249 -0
- aws_cdk/interfaces/aws_msk/__init__.py +764 -0
- aws_cdk/interfaces/aws_mwaa/__init__.py +166 -0
- aws_cdk/interfaces/aws_neptune/__init__.py +663 -0
- aws_cdk/interfaces/aws_neptunegraph/__init__.py +265 -0
- aws_cdk/interfaces/aws_networkfirewall/__init__.py +669 -0
- aws_cdk/interfaces/aws_networkmanager/__init__.py +1832 -0
- aws_cdk/interfaces/aws_nimblestudio/__init__.py +388 -0
- aws_cdk/interfaces/aws_notifications/__init__.py +868 -0
- aws_cdk/interfaces/aws_notificationscontacts/__init__.py +148 -0
- aws_cdk/interfaces/aws_oam/__init__.py +249 -0
- aws_cdk/interfaces/aws_observabilityadmin/__init__.py +362 -0
- aws_cdk/interfaces/aws_odb/__init__.py +562 -0
- aws_cdk/interfaces/aws_omics/__init__.py +838 -0
- aws_cdk/interfaces/aws_opensearchserverless/__init__.py +859 -0
- aws_cdk/interfaces/aws_opensearchservice/__init__.py +283 -0
- aws_cdk/interfaces/aws_opsworks/__init__.py +772 -0
- aws_cdk/interfaces/aws_opsworkscm/__init__.py +146 -0
- aws_cdk/interfaces/aws_organizations/__init__.py +646 -0
- aws_cdk/interfaces/aws_osis/__init__.py +146 -0
- aws_cdk/interfaces/aws_panorama/__init__.py +420 -0
- aws_cdk/interfaces/aws_paymentcryptography/__init__.py +249 -0
- aws_cdk/interfaces/aws_pcaconnectorad/__init__.py +608 -0
- aws_cdk/interfaces/aws_pcaconnectorscep/__init__.py +249 -0
- aws_cdk/interfaces/aws_pcs/__init__.py +352 -0
- aws_cdk/interfaces/aws_personalize/__init__.py +455 -0
- aws_cdk/interfaces/aws_pinpoint/__init__.py +2125 -0
- aws_cdk/interfaces/aws_pinpointemail/__init__.py +467 -0
- aws_cdk/interfaces/aws_pipes/__init__.py +158 -0
- aws_cdk/interfaces/aws_proton/__init__.py +360 -0
- aws_cdk/interfaces/aws_qbusiness/__init__.py +1122 -0
- aws_cdk/interfaces/aws_qldb/__init__.py +283 -0
- aws_cdk/interfaces/aws_quicksight/__init__.py +1566 -0
- aws_cdk/interfaces/aws_ram/__init__.py +249 -0
- aws_cdk/interfaces/aws_rbin/__init__.py +146 -0
- aws_cdk/interfaces/aws_rds/__init__.py +1780 -0
- aws_cdk/interfaces/aws_redshift/__init__.py +1104 -0
- aws_cdk/interfaces/aws_redshiftserverless/__init__.py +356 -0
- aws_cdk/interfaces/aws_refactorspaces/__init__.py +605 -0
- aws_cdk/interfaces/aws_rekognition/__init__.py +406 -0
- aws_cdk/interfaces/aws_resiliencehub/__init__.py +251 -0
- aws_cdk/interfaces/aws_resourceexplorer2/__init__.py +354 -0
- aws_cdk/interfaces/aws_resourcegroups/__init__.py +261 -0
- aws_cdk/interfaces/aws_robomaker/__init__.py +673 -0
- aws_cdk/interfaces/aws_rolesanywhere/__init__.py +384 -0
- aws_cdk/interfaces/aws_route53/__init__.py +804 -0
- aws_cdk/interfaces/aws_route53profiles/__init__.py +368 -0
- aws_cdk/interfaces/aws_route53recoverycontrol/__init__.py +463 -0
- aws_cdk/interfaces/aws_route53recoveryreadiness/__init__.py +535 -0
- aws_cdk/interfaces/aws_route53resolver/__init__.py +1356 -0
- aws_cdk/interfaces/aws_rtbfabric/__init__.py +352 -0
- aws_cdk/interfaces/aws_rum/__init__.py +146 -0
- aws_cdk/interfaces/aws_s3/__init__.py +1171 -0
- aws_cdk/interfaces/aws_s3express/__init__.py +392 -0
- aws_cdk/interfaces/aws_s3objectlambda/__init__.py +271 -0
- aws_cdk/interfaces/aws_s3outposts/__init__.py +455 -0
- aws_cdk/interfaces/aws_s3tables/__init__.py +575 -0
- aws_cdk/interfaces/aws_s3vectors/__init__.py +354 -0
- aws_cdk/interfaces/aws_sagemaker/__init__.py +3797 -0
- aws_cdk/interfaces/aws_sam/__init__.py +603 -0
- aws_cdk/interfaces/aws_scheduler/__init__.py +286 -0
- aws_cdk/interfaces/aws_sdb/__init__.py +146 -0
- aws_cdk/interfaces/aws_secretsmanager/__init__.py +461 -0
- aws_cdk/interfaces/aws_securityhub/__init__.py +1499 -0
- aws_cdk/interfaces/aws_securitylake/__init__.py +474 -0
- aws_cdk/interfaces/aws_servicecatalog/__init__.py +1829 -0
- aws_cdk/interfaces/aws_servicecatalogappregistry/__init__.py +557 -0
- aws_cdk/interfaces/aws_servicediscovery/__init__.py +636 -0
- aws_cdk/interfaces/aws_ses/__init__.py +2018 -0
- aws_cdk/interfaces/aws_shield/__init__.py +455 -0
- aws_cdk/interfaces/aws_signer/__init__.py +266 -0
- aws_cdk/interfaces/aws_simspaceweaver/__init__.py +146 -0
- aws_cdk/interfaces/aws_smsvoice/__init__.py +892 -0
- aws_cdk/interfaces/aws_sns/__init__.py +455 -0
- aws_cdk/interfaces/aws_sqs/__init__.py +364 -0
- aws_cdk/interfaces/aws_ssm/__init__.py +982 -0
- aws_cdk/interfaces/aws_ssmcontacts/__init__.py +455 -0
- aws_cdk/interfaces/aws_ssmguiconnect/__init__.py +146 -0
- aws_cdk/interfaces/aws_ssmincidents/__init__.py +249 -0
- aws_cdk/interfaces/aws_ssmquicksetup/__init__.py +253 -0
- aws_cdk/interfaces/aws_sso/__init__.py +797 -0
- aws_cdk/interfaces/aws_stepfunctions/__init__.py +459 -0
- aws_cdk/interfaces/aws_supportapp/__init__.py +372 -0
- aws_cdk/interfaces/aws_synthetics/__init__.py +249 -0
- aws_cdk/interfaces/aws_systemsmanagersap/__init__.py +148 -0
- aws_cdk/interfaces/aws_timestream/__init__.py +526 -0
- aws_cdk/interfaces/aws_transfer/__init__.py +967 -0
- aws_cdk/interfaces/aws_verifiedpermissions/__init__.py +538 -0
- aws_cdk/interfaces/aws_voiceid/__init__.py +146 -0
- aws_cdk/interfaces/aws_vpclattice/__init__.py +1418 -0
- aws_cdk/interfaces/aws_waf/__init__.py +764 -0
- aws_cdk/interfaces/aws_wafregional/__init__.py +1182 -0
- aws_cdk/interfaces/aws_wafv2/__init__.py +870 -0
- aws_cdk/interfaces/aws_wisdom/__init__.py +1556 -0
- aws_cdk/interfaces/aws_workspaces/__init__.py +352 -0
- aws_cdk/interfaces/aws_workspacesinstances/__init__.py +390 -0
- aws_cdk/interfaces/aws_workspacesthinclient/__init__.py +168 -0
- aws_cdk/interfaces/aws_workspacesweb/__init__.py +1085 -0
- aws_cdk/interfaces/aws_xray/__init__.py +457 -0
- aws_cdk/lambda_layer_awscli/__init__.py +6 -0
- aws_cdk/lambda_layer_node_proxy_agent/__init__.py +6 -0
- aws_cdk/pipelines/__init__.py +202 -52
- aws_cdk/region_info/__init__.py +3 -0
- aws_cdk/triggers/__init__.py +66 -18
- {aws_cdk_lib-2.195.0.dist-info → aws_cdk_lib-2.224.0.dist-info}/METADATA +418 -18
- aws_cdk_lib-2.224.0.dist-info/RECORD +584 -0
- aws_cdk_lib-2.195.0.dist-info/RECORD +0 -304
- {aws_cdk_lib-2.195.0.dist-info → aws_cdk_lib-2.224.0.dist-info}/LICENSE +0 -0
- {aws_cdk_lib-2.195.0.dist-info → aws_cdk_lib-2.224.0.dist-info}/NOTICE +0 -0
- {aws_cdk_lib-2.195.0.dist-info → aws_cdk_lib-2.224.0.dist-info}/WHEEL +0 -0
- {aws_cdk_lib-2.195.0.dist-info → aws_cdk_lib-2.224.0.dist-info}/top_level.txt +0 -0
aws_cdk/__init__.py
CHANGED
|
@@ -155,6 +155,76 @@ MyStack(app, "MyStack",
|
|
|
155
155
|
For more information on bootstrapping accounts and customizing synthesis,
|
|
156
156
|
see [Bootstrapping in the CDK Developer Guide](https://docs.aws.amazon.com/cdk/latest/guide/bootstrapping.html).
|
|
157
157
|
|
|
158
|
+
### STS Role Options
|
|
159
|
+
|
|
160
|
+
You can configure STS options that instruct the CDK CLI on which configuration should it use when assuming
|
|
161
|
+
the various roles that are involved in a deployment operation.
|
|
162
|
+
|
|
163
|
+
Refer to [the bootstrapping guide](https://docs.aws.amazon.com/cdk/v2/guide/bootstrapping-env.html#bootstrapping-env-roles) for further context.
|
|
164
|
+
|
|
165
|
+
These options are available via the `DefaultStackSynthesizer` properties:
|
|
166
|
+
|
|
167
|
+
```python
|
|
168
|
+
class MyStack(Stack):
|
|
169
|
+
def __init__(self, scope, id, *, description=None, env=None, stackName=None, tags=None, notificationArns=None, synthesizer=None, terminationProtection=None, analyticsReporting=None, crossRegionReferences=None, permissionsBoundary=None, suppressTemplateIndentation=None, propertyInjectors=None):
|
|
170
|
+
super().__init__(scope, id,
|
|
171
|
+
(SpreadAssignment ...props
|
|
172
|
+
description=description, env=env, stackName=stackName, tags=tags, notificationArns=notificationArns, synthesizer=synthesizer, terminationProtection=terminationProtection, analyticsReporting=analyticsReporting, crossRegionReferences=crossRegionReferences, permissionsBoundary=permissionsBoundary, suppressTemplateIndentation=suppressTemplateIndentation, propertyInjectors=propertyInjectors),
|
|
173
|
+
synthesizer=DefaultStackSynthesizer(
|
|
174
|
+
deploy_role_external_id="",
|
|
175
|
+
deploy_role_additional_options={},
|
|
176
|
+
file_asset_publishing_external_id="",
|
|
177
|
+
file_asset_publishing_role_additional_options={},
|
|
178
|
+
image_asset_publishing_external_id="",
|
|
179
|
+
image_asset_publishing_role_additional_options={},
|
|
180
|
+
lookup_role_external_id="",
|
|
181
|
+
lookup_role_additional_options={}
|
|
182
|
+
)
|
|
183
|
+
)
|
|
184
|
+
```
|
|
185
|
+
|
|
186
|
+
> Note that the `*additionalOptions` property does not allow passing `ExternalId` or `RoleArn`, as these options
|
|
187
|
+
> have dedicated properties that configure them.
|
|
188
|
+
|
|
189
|
+
#### Session Tags
|
|
190
|
+
|
|
191
|
+
STS session tags are used to implement [Attribute-Based Access Control](https://docs.aws.amazon.com/IAM/latest/UserGuide/introduction_attribute-based-access-control.html) (ABAC).
|
|
192
|
+
|
|
193
|
+
See [IAM tutorial: Define permissions to access AWS resources based on tags](https://docs.aws.amazon.com/IAM/latest/UserGuide/tutorial_attribute-based-access-control.html).
|
|
194
|
+
|
|
195
|
+
You can pass session tags for each [role created during bootstrap](https://docs.aws.amazon.com/cdk/v2/guide/bootstrapping-env.html#bootstrapping-env-roles) via the `*additionalOptions` property:
|
|
196
|
+
|
|
197
|
+
```python
|
|
198
|
+
class MyStack(Stack):
|
|
199
|
+
def __init__(self, parent, id, *, description=None, env=None, stackName=None, tags=None, notificationArns=None, synthesizer=None, terminationProtection=None, analyticsReporting=None, crossRegionReferences=None, permissionsBoundary=None, suppressTemplateIndentation=None, propertyInjectors=None):
|
|
200
|
+
super().__init__(parent, id,
|
|
201
|
+
(SpreadAssignment ...props
|
|
202
|
+
description=description, env=env, stackName=stackName, tags=tags, notificationArns=notificationArns, synthesizer=synthesizer, terminationProtection=terminationProtection, analyticsReporting=analyticsReporting, crossRegionReferences=crossRegionReferences, permissionsBoundary=permissionsBoundary, suppressTemplateIndentation=suppressTemplateIndentation, propertyInjectors=propertyInjectors),
|
|
203
|
+
synthesizer=DefaultStackSynthesizer(
|
|
204
|
+
deploy_role_additional_options={
|
|
205
|
+
"Tags": [{"Key": "Department", "Value": "Engineering"}]
|
|
206
|
+
},
|
|
207
|
+
file_asset_publishing_role_additional_options={
|
|
208
|
+
"Tags": [{"Key": "Department", "Value": "Engineering"}]
|
|
209
|
+
},
|
|
210
|
+
image_asset_publishing_role_additional_options={
|
|
211
|
+
"Tags": [{"Key": "Department", "Value": "Engineering"}]
|
|
212
|
+
},
|
|
213
|
+
lookup_role_additional_options={
|
|
214
|
+
"Tags": [{"Key": "Department", "Value": "Engineering"}]
|
|
215
|
+
}
|
|
216
|
+
)
|
|
217
|
+
)
|
|
218
|
+
```
|
|
219
|
+
|
|
220
|
+
This will cause the CDK CLI to include session tags when assuming each of these roles during deployment.
|
|
221
|
+
Note that the trust policy of the role must contain permissions for the `sts:TagSession` action.
|
|
222
|
+
|
|
223
|
+
Refer to the [IAM user guide on session tags](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_session-tags.html#id_session-tags_permissions-required).
|
|
224
|
+
|
|
225
|
+
* If you are using a custom bootstrap template, make sure the template includes these permissions.
|
|
226
|
+
* If you are using the default bootstrap template from a CDK version lower than XXXX, you will need to rebootstrap your enviroment (once).
|
|
227
|
+
|
|
158
228
|
## Nested Stacks
|
|
159
229
|
|
|
160
230
|
[Nested stacks](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-nested-stacks.html) are stacks created as part of other stacks. You create a nested stack within another stack by using the `NestedStack` construct.
|
|
@@ -173,8 +243,8 @@ class MyNestedStack(cfn.NestedStack):
|
|
|
173
243
|
s3.Bucket(self, "NestedBucket")
|
|
174
244
|
|
|
175
245
|
class MyParentStack(Stack):
|
|
176
|
-
def __init__(self, scope, id, *, description=None, env=None, stackName=None, tags=None, notificationArns=None, synthesizer=None, terminationProtection=None, analyticsReporting=None, crossRegionReferences=None, permissionsBoundary=None, suppressTemplateIndentation=None):
|
|
177
|
-
super().__init__(scope, id, description=description, env=env, stackName=stackName, tags=tags, notificationArns=notificationArns, synthesizer=synthesizer, terminationProtection=terminationProtection, analyticsReporting=analyticsReporting, crossRegionReferences=crossRegionReferences, permissionsBoundary=permissionsBoundary, suppressTemplateIndentation=suppressTemplateIndentation)
|
|
246
|
+
def __init__(self, scope, id, *, description=None, env=None, stackName=None, tags=None, notificationArns=None, synthesizer=None, terminationProtection=None, analyticsReporting=None, crossRegionReferences=None, permissionsBoundary=None, suppressTemplateIndentation=None, propertyInjectors=None):
|
|
247
|
+
super().__init__(scope, id, description=description, env=env, stackName=stackName, tags=tags, notificationArns=notificationArns, synthesizer=synthesizer, terminationProtection=terminationProtection, analyticsReporting=analyticsReporting, crossRegionReferences=crossRegionReferences, permissionsBoundary=permissionsBoundary, suppressTemplateIndentation=suppressTemplateIndentation, propertyInjectors=propertyInjectors)
|
|
178
248
|
|
|
179
249
|
MyNestedStack(self, "Nested1")
|
|
180
250
|
MyNestedStack(self, "Nested2")
|
|
@@ -397,6 +467,8 @@ CloudFormation to re-read the secret.
|
|
|
397
467
|
`SecretValue.ssmSecure()` is only supported for a limited set of resources.
|
|
398
468
|
[Click here for a list of supported resources and properties](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/dynamic-references.html#template-parameters-dynamic-patterns-resources).
|
|
399
469
|
|
|
470
|
+
`SecretValue.cfnDynamicReferenceKey` takes the same parameters as `SecretValue.secretsManager` and returns a key which can be used within a [dynamic reference](#dynamic-references) to dynamically load a secret from AWS Secrets Manager.
|
|
471
|
+
|
|
400
472
|
## ARN manipulation
|
|
401
473
|
|
|
402
474
|
Sometimes you will need to put together or pick apart Amazon Resource Names
|
|
@@ -521,6 +593,8 @@ CustomResource(self, "MyMagicalResource",
|
|
|
521
593
|
resource_type="Custom::MyCustomResource", # must start with 'Custom::'
|
|
522
594
|
|
|
523
595
|
# the resource properties
|
|
596
|
+
# properties like serviceToken or serviceTimeout are ported into properties automatically
|
|
597
|
+
# try not to use key names similar to these or there will be a risk of overwriting those values
|
|
524
598
|
properties={
|
|
525
599
|
"Property1": "foo",
|
|
526
600
|
"Property2": "bar"
|
|
@@ -529,7 +603,10 @@ CustomResource(self, "MyMagicalResource",
|
|
|
529
603
|
# the ARN of the provider (SNS/Lambda) which handles
|
|
530
604
|
# CREATE, UPDATE or DELETE events for this resource type
|
|
531
605
|
# see next section for details
|
|
532
|
-
service_token="ARN"
|
|
606
|
+
service_token="ARN",
|
|
607
|
+
|
|
608
|
+
# the maximum time, in seconds, that can elapse before a custom resource operation times out.
|
|
609
|
+
service_timeout=Duration.seconds(60)
|
|
533
610
|
)
|
|
534
611
|
```
|
|
535
612
|
|
|
@@ -559,7 +636,7 @@ Legend:
|
|
|
559
636
|
* **Language**: which programming languages can be used to implement handlers.
|
|
560
637
|
* **Footprint**: how many resources are used by the provider framework itself.
|
|
561
638
|
|
|
562
|
-
|
|
639
|
+
#### A note about singletons
|
|
563
640
|
|
|
564
641
|
When defining resources for a custom resource provider, you will likely want to
|
|
565
642
|
define them as a *stack singleton* so that only a single instance of the
|
|
@@ -824,6 +901,18 @@ CfnOutput(self, "OutputName",
|
|
|
824
901
|
)
|
|
825
902
|
```
|
|
826
903
|
|
|
904
|
+
You can also use the `exportValue` method to export values as stack outputs:
|
|
905
|
+
|
|
906
|
+
```python
|
|
907
|
+
# stack: Stack
|
|
908
|
+
|
|
909
|
+
|
|
910
|
+
stack.export_value(my_bucket.bucket_name,
|
|
911
|
+
name="TheAwesomeBucket",
|
|
912
|
+
description="The name of an S3 bucket"
|
|
913
|
+
)
|
|
914
|
+
```
|
|
915
|
+
|
|
827
916
|
### Parameters
|
|
828
917
|
|
|
829
918
|
CloudFormation templates support the use of [Parameters](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/parameters-section-structure.html) to
|
|
@@ -935,7 +1024,7 @@ The properties passed to the level 2 constructs `AutoScalingGroup` and `Instance
|
|
|
935
1024
|
`aws-ec2` module abstract what is passed into the `CfnOption` properties `resourceSignal` and
|
|
936
1025
|
`autoScalingCreationPolicy`, but when using level 1 constructs you can specify these yourself.
|
|
937
1026
|
|
|
938
|
-
The CfnWaitCondition resource from the `aws-cloudformation` module
|
|
1027
|
+
The CfnWaitCondition resource from the `aws-cloudformation` module supports the `resourceSignal`.
|
|
939
1028
|
The format of the timeout is `PT#H#M#S`. In the example below AWS Cloudformation will wait for
|
|
940
1029
|
3 success signals to occur within 15 minutes before the status of the resource will be set to
|
|
941
1030
|
`CREATE_COMPLETE`.
|
|
@@ -1105,6 +1194,74 @@ references is done using the `CfnDynamicReference` class:
|
|
|
1105
1194
|
CfnDynamicReference(CfnDynamicReferenceService.SECRETS_MANAGER, "secret-id:secret-string:json-key:version-stage:version-id")
|
|
1106
1195
|
```
|
|
1107
1196
|
|
|
1197
|
+
## RemovalPolicies
|
|
1198
|
+
|
|
1199
|
+
The `RemovalPolicies` class provides a convenient way to manage removal policies for AWS CDK resources within a construct scope. It allows you to apply removal policies to multiple resources at once, with options to include or exclude specific resource types.
|
|
1200
|
+
|
|
1201
|
+
```python
|
|
1202
|
+
# scope: Construct
|
|
1203
|
+
# parent: Construct
|
|
1204
|
+
# bucket: s3.CfnBucket
|
|
1205
|
+
|
|
1206
|
+
|
|
1207
|
+
# Apply DESTROY policy to all resources in a scope
|
|
1208
|
+
RemovalPolicies.of(scope).destroy()
|
|
1209
|
+
|
|
1210
|
+
# Apply RETAIN policy to all resources in a scope
|
|
1211
|
+
RemovalPolicies.of(scope).retain()
|
|
1212
|
+
|
|
1213
|
+
# Apply SNAPSHOT policy to all resources in a scope
|
|
1214
|
+
RemovalPolicies.of(scope).snapshot()
|
|
1215
|
+
|
|
1216
|
+
# Apply RETAIN_ON_UPDATE_OR_DELETE policy to all resources in a scope
|
|
1217
|
+
RemovalPolicies.of(scope).retain_on_update_or_delete()
|
|
1218
|
+
|
|
1219
|
+
# Apply RETAIN policy only to specific resource types
|
|
1220
|
+
RemovalPolicies.of(parent).retain(
|
|
1221
|
+
apply_to_resource_types=["AWS::DynamoDB::Table", bucket.cfn_resource_type, rds.CfnDBInstance.CFN_RESOURCE_TYPE_NAME
|
|
1222
|
+
]
|
|
1223
|
+
)
|
|
1224
|
+
|
|
1225
|
+
# Apply SNAPSHOT policy excluding specific resource types
|
|
1226
|
+
RemovalPolicies.of(scope).snapshot(
|
|
1227
|
+
exclude_resource_types=["AWS::Test::Resource"]
|
|
1228
|
+
)
|
|
1229
|
+
```
|
|
1230
|
+
|
|
1231
|
+
### RemovalPolicies vs MissingRemovalPolicies
|
|
1232
|
+
|
|
1233
|
+
CDK provides two different classes for managing removal policies:
|
|
1234
|
+
|
|
1235
|
+
* RemovalPolicies: Always applies the specified removal policy, overriding any existing policies.
|
|
1236
|
+
* MissingRemovalPolicies: Applies the removal policy only to resources that don't already have a policy set.
|
|
1237
|
+
|
|
1238
|
+
```python
|
|
1239
|
+
# Override any existing policies
|
|
1240
|
+
RemovalPolicies.of(scope).retain()
|
|
1241
|
+
|
|
1242
|
+
# Only apply to resources without existing policies
|
|
1243
|
+
MissingRemovalPolicies.of(scope).retain()
|
|
1244
|
+
```
|
|
1245
|
+
|
|
1246
|
+
### Aspect Priority
|
|
1247
|
+
|
|
1248
|
+
Both RemovalPolicies and MissingRemovalPolicies are implemented as [Aspects](#aspects). You can control the order in which they're applied using the priority parameter:
|
|
1249
|
+
|
|
1250
|
+
```python
|
|
1251
|
+
# stack: Stack
|
|
1252
|
+
|
|
1253
|
+
|
|
1254
|
+
# Apply in a specific order based on priority
|
|
1255
|
+
RemovalPolicies.of(stack).retain(priority=100)
|
|
1256
|
+
RemovalPolicies.of(stack).destroy(priority=200)
|
|
1257
|
+
```
|
|
1258
|
+
|
|
1259
|
+
For RemovalPolicies, the policies are applied in order of aspect execution, with the last applied policy overriding previous ones. The priority only affects the order in which aspects are applied during synthesis.
|
|
1260
|
+
|
|
1261
|
+
#### Note
|
|
1262
|
+
|
|
1263
|
+
When using MissingRemovalPolicies with priority, a warning will be issued as this can lead to unexpected behavior. This is because MissingRemovalPolicies only applies to resources without existing policies, making priority less relevant.
|
|
1264
|
+
|
|
1108
1265
|
### Template Options & Transform
|
|
1109
1266
|
|
|
1110
1267
|
CloudFormation templates support a number of options, including which Macros or
|
|
@@ -1194,6 +1351,27 @@ stack = Stack(app, "StackName",
|
|
|
1194
1351
|
)
|
|
1195
1352
|
```
|
|
1196
1353
|
|
|
1354
|
+
### Receiving CloudFormation Stack Events
|
|
1355
|
+
|
|
1356
|
+
You can add one or more SNS Topic ARNs to any Stack:
|
|
1357
|
+
|
|
1358
|
+
```python
|
|
1359
|
+
stack = Stack(app, "StackName",
|
|
1360
|
+
notification_arns=["arn:aws:sns:us-east-1:123456789012:Topic"]
|
|
1361
|
+
)
|
|
1362
|
+
```
|
|
1363
|
+
|
|
1364
|
+
Stack events will be sent to any SNS Topics in this list. These ARNs are added to those specified using
|
|
1365
|
+
the `--notification-arns` command line option.
|
|
1366
|
+
|
|
1367
|
+
Note that in order to do delete notification ARNs entirely, you must pass an empty array ([]) instead of omitting it.
|
|
1368
|
+
If you omit the property, no action on existing ARNs will take place.
|
|
1369
|
+
|
|
1370
|
+
> [!NOTE]
|
|
1371
|
+
> Adding the `notificationArns` property (or using the `--notification-arns` CLI options) will **override**
|
|
1372
|
+
> any existing ARNs configured on the stack. If you have an external system managing notification ARNs,
|
|
1373
|
+
> either migrate to use this mechanism, or avoid specfying notification ARNs with the CDK.
|
|
1374
|
+
|
|
1197
1375
|
### CfnJson
|
|
1198
1376
|
|
|
1199
1377
|
`CfnJson` allows you to postpone the resolution of a JSON blob from
|
|
@@ -1296,7 +1474,7 @@ App(
|
|
|
1296
1474
|
cdk synth --context @aws-cdk/core:newStyleStackSynthesis=true
|
|
1297
1475
|
```
|
|
1298
1476
|
|
|
1299
|
-
|
|
1477
|
+
#### `cdk.json`
|
|
1300
1478
|
|
|
1301
1479
|
```json
|
|
1302
1480
|
{
|
|
@@ -1306,7 +1484,7 @@ cdk synth --context @aws-cdk/core:newStyleStackSynthesis=true
|
|
|
1306
1484
|
}
|
|
1307
1485
|
```
|
|
1308
1486
|
|
|
1309
|
-
|
|
1487
|
+
#### `cdk.context.json`
|
|
1310
1488
|
|
|
1311
1489
|
```json
|
|
1312
1490
|
{
|
|
@@ -1314,7 +1492,7 @@ cdk synth --context @aws-cdk/core:newStyleStackSynthesis=true
|
|
|
1314
1492
|
}
|
|
1315
1493
|
```
|
|
1316
1494
|
|
|
1317
|
-
|
|
1495
|
+
#### `~/.cdk.json`
|
|
1318
1496
|
|
|
1319
1497
|
```json
|
|
1320
1498
|
{
|
|
@@ -1353,7 +1531,7 @@ generated CloudFormation templates against your policies immediately after
|
|
|
1353
1531
|
synthesis. If there are any violations, the synthesis will fail and a report
|
|
1354
1532
|
will be printed to the console or to a file (see below).
|
|
1355
1533
|
|
|
1356
|
-
>
|
|
1534
|
+
> [!NOTE]
|
|
1357
1535
|
> This feature is considered experimental, and both the plugin API and the
|
|
1358
1536
|
> format of the validation report are subject to change in the future.
|
|
1359
1537
|
|
|
@@ -1391,7 +1569,7 @@ validation.
|
|
|
1391
1569
|
> etc. It's your responsibility as the consumer of a plugin to verify that it is
|
|
1392
1570
|
> secure to use.
|
|
1393
1571
|
|
|
1394
|
-
By default, the report will be printed in a human
|
|
1572
|
+
By default, the report will be printed in a human-readable format. If you want a
|
|
1395
1573
|
report in JSON format, enable it using the `@aws-cdk/core:validationReportJson`
|
|
1396
1574
|
context passing it directly to the application:
|
|
1397
1575
|
|
|
@@ -1405,6 +1583,18 @@ Alternatively, you can set this context key-value pair using the `cdk.json` or
|
|
|
1405
1583
|
`cdk.context.json` files in your project directory (see
|
|
1406
1584
|
[Runtime context](https://docs.aws.amazon.com/cdk/v2/guide/context.html)).
|
|
1407
1585
|
|
|
1586
|
+
It is also possible to enable both JSON and human-readable formats by setting
|
|
1587
|
+
`@aws-cdk/core:validationReportPrettyPrint` context key explicitly:
|
|
1588
|
+
|
|
1589
|
+
```python
|
|
1590
|
+
app = App(
|
|
1591
|
+
context={
|
|
1592
|
+
"@aws-cdk/core:validationReportJson": True,
|
|
1593
|
+
"@aws-cdk/core:validationReportPrettyPrint": True
|
|
1594
|
+
}
|
|
1595
|
+
)
|
|
1596
|
+
```
|
|
1597
|
+
|
|
1408
1598
|
If you choose the JSON format, the CDK will print the policy validation report
|
|
1409
1599
|
to a file called `policy-validation-report.json` in the cloud assembly
|
|
1410
1600
|
directory. For the default, human-readable format, the report will be printed to
|
|
@@ -1499,6 +1689,216 @@ warning by the `id`.
|
|
|
1499
1689
|
Annotations.of(self).acknowledge_warning("IAM:Group:MaxPoliciesExceeded", "Account has quota increased to 20")
|
|
1500
1690
|
```
|
|
1501
1691
|
|
|
1692
|
+
### Acknowledging Infos
|
|
1693
|
+
|
|
1694
|
+
Informational messages can also be emitted and acknowledged. Use `addInfoV2()`
|
|
1695
|
+
to add an info message that can later be suppressed with `acknowledgeInfo()`.
|
|
1696
|
+
Unlike warnings, info messages are not affected by the `--strict` mode and will never cause synthesis to fail.
|
|
1697
|
+
|
|
1698
|
+
```python
|
|
1699
|
+
Annotations.of(self).add_info_v2("my-lib:Construct.someInfo", "Some message explaining the info")
|
|
1700
|
+
Annotations.of(self).acknowledge_info("my-lib:Construct.someInfo", "This info can be ignored")
|
|
1701
|
+
```
|
|
1702
|
+
|
|
1703
|
+
## Aspects
|
|
1704
|
+
|
|
1705
|
+
[Aspects](https://docs.aws.amazon.com/cdk/v2/guide/aspects.html) is a feature in CDK that allows you to apply operations or transformations across all
|
|
1706
|
+
constructs in a construct tree. Common use cases include tagging resources, enforcing encryption on S3 Buckets, or applying specific security or
|
|
1707
|
+
compliance rules to all resources in a stack.
|
|
1708
|
+
|
|
1709
|
+
Conceptually, there are two types of Aspects:
|
|
1710
|
+
|
|
1711
|
+
* **Read-only aspects** scan the construct tree but do not make changes to the tree. Common use cases of read-only aspects include performing validations
|
|
1712
|
+
(for example, enforcing that all S3 Buckets have versioning enabled) and logging (for example, collecting information about all deployed resources for
|
|
1713
|
+
audits or compliance).
|
|
1714
|
+
* **Mutating aspects** either (1.) add new nodes or (2.) mutate existing nodes of the tree in-place. One commonly used mutating Aspect is adding Tags to
|
|
1715
|
+
resources. An example of an Aspect that adds a node is one that automatically adds a security group to every EC2 instance in the construct tree if
|
|
1716
|
+
no default is specified.
|
|
1717
|
+
|
|
1718
|
+
Here is a simple example of creating and applying an Aspect on a Stack to enable versioning on all S3 Buckets:
|
|
1719
|
+
|
|
1720
|
+
```python
|
|
1721
|
+
@jsii.implements(IAspect)
|
|
1722
|
+
class EnableBucketVersioning:
|
|
1723
|
+
def visit(self, node):
|
|
1724
|
+
if node instanceof s3.CfnBucket:
|
|
1725
|
+
node.versioning_configuration = s3.CfnBucket.VersioningConfigurationProperty(
|
|
1726
|
+
status="Enabled"
|
|
1727
|
+
)
|
|
1728
|
+
|
|
1729
|
+
app = App()
|
|
1730
|
+
stack = MyStack(app, "MyStack")
|
|
1731
|
+
|
|
1732
|
+
# Apply the aspect to enable versioning on all S3 Buckets
|
|
1733
|
+
Aspects.of(stack).add(EnableBucketVersioning())
|
|
1734
|
+
```
|
|
1735
|
+
|
|
1736
|
+
### Aspect Stabilization
|
|
1737
|
+
|
|
1738
|
+
The modern behavior is that Aspects automatically run on newly added nodes to the construct tree. This is controlled by the
|
|
1739
|
+
flag `@aws-cdk/core:aspectStabilization`, which is default for new projects (since version 2.172.0).
|
|
1740
|
+
|
|
1741
|
+
The old behavior of Aspects (without stabilization) was that Aspect invocation runs once on the entire construct
|
|
1742
|
+
tree. This meant that nested Aspects (Aspects that create new Aspects) are not invoked and nodes created by Aspects at a higher level of the construct tree are not visited.
|
|
1743
|
+
|
|
1744
|
+
To enable the stabilization behavior for older versions, use this feature by putting the following into your `cdk.context.json`:
|
|
1745
|
+
|
|
1746
|
+
```json
|
|
1747
|
+
{
|
|
1748
|
+
"@aws-cdk/core:aspectStabilization": true
|
|
1749
|
+
}
|
|
1750
|
+
```
|
|
1751
|
+
|
|
1752
|
+
### Aspect Priorities
|
|
1753
|
+
|
|
1754
|
+
Users can specify the order in which Aspects are applied on a construct by using the optional priority parameter when applying an Aspect. Priority
|
|
1755
|
+
values must be non-negative integers, where a higher number means the Aspect will be applied later, and a lower number means it will be applied sooner.
|
|
1756
|
+
|
|
1757
|
+
By default, newly created nodes always inherit aspects. Priorities are mainly for ordering between mutating aspects on the construct tree.
|
|
1758
|
+
|
|
1759
|
+
CDK provides standard priority values for mutating and readonly aspects to help ensure consistency across different construct libraries.
|
|
1760
|
+
Note that Aspects that have same priority value are not guaranteed to be executed
|
|
1761
|
+
in a consistent order.
|
|
1762
|
+
|
|
1763
|
+
```python
|
|
1764
|
+
#
|
|
1765
|
+
# Default Priority values for Aspects.
|
|
1766
|
+
#
|
|
1767
|
+
class AspectPriority:
|
|
1768
|
+
```
|
|
1769
|
+
|
|
1770
|
+
If no priority is provided, the default value will be 500. This ensures that aspects without a specified priority run after mutating aspects but before
|
|
1771
|
+
any readonly aspects.
|
|
1772
|
+
|
|
1773
|
+
Correctly applying Aspects with priority values ensures that mutating aspects (such as adding tags or resources) run before validation aspects. This allows users to avoid misconfigurations and ensure that the final
|
|
1774
|
+
construct tree is fully validated before being synthesized.
|
|
1775
|
+
|
|
1776
|
+
### Applying Aspects with Priority
|
|
1777
|
+
|
|
1778
|
+
```python
|
|
1779
|
+
@jsii.implements(IAspect)
|
|
1780
|
+
class MutatingAspect:
|
|
1781
|
+
def visit(self, node):
|
|
1782
|
+
pass
|
|
1783
|
+
|
|
1784
|
+
@jsii.implements(IAspect)
|
|
1785
|
+
class ValidationAspect:
|
|
1786
|
+
def visit(self, node):
|
|
1787
|
+
pass
|
|
1788
|
+
|
|
1789
|
+
stack = Stack()
|
|
1790
|
+
|
|
1791
|
+
Aspects.of(stack).add(MutatingAspect(), priority=AspectPriority.MUTATING) # Run first (mutating aspects)
|
|
1792
|
+
Aspects.of(stack).add(ValidationAspect(), priority=AspectPriority.READONLY)
|
|
1793
|
+
```
|
|
1794
|
+
|
|
1795
|
+
### Inspecting applied aspects and changing priorities
|
|
1796
|
+
|
|
1797
|
+
We also give customers the ability to view all of their applied aspects and override the priority on these aspects.
|
|
1798
|
+
The `AspectApplication` class represents an Aspect that is applied to a node of the construct tree with a priority.
|
|
1799
|
+
|
|
1800
|
+
Users can access AspectApplications on a node by calling `applied` from the Aspects class as follows:
|
|
1801
|
+
|
|
1802
|
+
```python
|
|
1803
|
+
# root: Construct
|
|
1804
|
+
|
|
1805
|
+
app = App()
|
|
1806
|
+
stack = MyStack(app, "MyStack")
|
|
1807
|
+
|
|
1808
|
+
Aspects.of(stack).add(MyAspect())
|
|
1809
|
+
|
|
1810
|
+
aspect_applications = Aspects.of(root).applied
|
|
1811
|
+
|
|
1812
|
+
for aspect_application in aspect_applications:
|
|
1813
|
+
# The aspect we are applying
|
|
1814
|
+
print(aspect_application.aspect)
|
|
1815
|
+
# The construct we are applying the aspect to
|
|
1816
|
+
print(aspect_application.construct)
|
|
1817
|
+
# The priority it was applied with
|
|
1818
|
+
print(aspect_application.priority)
|
|
1819
|
+
|
|
1820
|
+
# Change the priority
|
|
1821
|
+
aspect_application.priority = 700
|
|
1822
|
+
```
|
|
1823
|
+
|
|
1824
|
+
## Blueprint Property Injection
|
|
1825
|
+
|
|
1826
|
+
The goal of Blueprint Property Injection is to provide builders an automatic way to set default property values.
|
|
1827
|
+
|
|
1828
|
+
Construct authors can declare that a Construct can have it properties injected by adding `@propertyInjectable`
|
|
1829
|
+
class decorator and specifying `PROPERTY_INJECTION_ID` readonly property.
|
|
1830
|
+
All L2 Constructs will support Property Injection so organizations can write injectors to set their Construct Props.
|
|
1831
|
+
|
|
1832
|
+
Organizations can set default property values to a Construct by writing Injectors for builders to consume.
|
|
1833
|
+
|
|
1834
|
+
Here is a simple example of an Injector for APiKey that sets enabled to false.
|
|
1835
|
+
|
|
1836
|
+
```python
|
|
1837
|
+
@jsii.implements(IPropertyInjector)
|
|
1838
|
+
class ApiKeyPropsInjector:
|
|
1839
|
+
|
|
1840
|
+
def __init__(self):
|
|
1841
|
+
self.construct_unique_id = api.ApiKey.PROPERTY_INJECTION_ID
|
|
1842
|
+
|
|
1843
|
+
def inject(self, original_props, *, scope, id):
|
|
1844
|
+
return api.ApiKeyProps(
|
|
1845
|
+
enabled=False,
|
|
1846
|
+
api_key_name=original_props.api_key_name,
|
|
1847
|
+
customer_id=original_props.customer_id,
|
|
1848
|
+
default_cors_preflight_options=original_props.default_cors_preflight_options,
|
|
1849
|
+
default_integration=original_props.default_integration,
|
|
1850
|
+
default_method_options=original_props.default_method_options,
|
|
1851
|
+
description=original_props.description,
|
|
1852
|
+
generate_distinct_id=original_props.generate_distinct_id,
|
|
1853
|
+
resources=original_props.resources,
|
|
1854
|
+
stages=original_props.stages,
|
|
1855
|
+
value=original_props.value
|
|
1856
|
+
)
|
|
1857
|
+
```
|
|
1858
|
+
|
|
1859
|
+
Some notes:
|
|
1860
|
+
|
|
1861
|
+
* ApiKey must have a `PROPERTY_INJECTION_ID` property, in addition to having `@propertyInjectable` class decorator.
|
|
1862
|
+
* We set ApiKeyProps.enabled to false, if it is not provided; otherwise it would use the value that was passed in.
|
|
1863
|
+
* It is also possible to force ApiKeyProps.enabled to false, and not provide a way for the builders to overwrite it.
|
|
1864
|
+
|
|
1865
|
+
Here is an example of how builders can use the injector the org created.
|
|
1866
|
+
|
|
1867
|
+
```python
|
|
1868
|
+
stack = Stack(app, "my-stack",
|
|
1869
|
+
property_injectors=[ApiKeyPropsInjector()]
|
|
1870
|
+
)
|
|
1871
|
+
api.ApiKey(stack, "my-api-key")
|
|
1872
|
+
```
|
|
1873
|
+
|
|
1874
|
+
This is equivalent to:
|
|
1875
|
+
|
|
1876
|
+
```python
|
|
1877
|
+
stack = Stack(app, "my-stack")
|
|
1878
|
+
api.ApiKey(stack, "my-api-key",
|
|
1879
|
+
enabled=False
|
|
1880
|
+
)
|
|
1881
|
+
```
|
|
1882
|
+
|
|
1883
|
+
Some notes:
|
|
1884
|
+
|
|
1885
|
+
* We attach the injectors to Stack in this example, but we can also attach them to App or Stage.
|
|
1886
|
+
* All the ApiKey created in the scope of stack will get `enabled: false`.
|
|
1887
|
+
* Builders can overwrite the default value with `new ApiKey(stack, 'my-api-key', {enabled: true});`
|
|
1888
|
+
|
|
1889
|
+
If you specify two or more injectors for the same Constructs, the last one is in effect. In the example below, `ApiKeyPropsInjector` will never be applied.
|
|
1890
|
+
|
|
1891
|
+
```python
|
|
1892
|
+
stack = Stack(app, "my-stack",
|
|
1893
|
+
property_injectors=[
|
|
1894
|
+
ApiKeyPropsInjector(),
|
|
1895
|
+
AnotherApiKeyPropsInjector()
|
|
1896
|
+
]
|
|
1897
|
+
)
|
|
1898
|
+
```
|
|
1899
|
+
|
|
1900
|
+
For more information, please see the [RFC](https://github.com/aws/aws-cdk-rfcs/blob/main/text/0693-property-injection.md).
|
|
1901
|
+
|
|
1502
1902
|
<!--END CORE DOCUMENTATION-->
|
|
1503
1903
|
'''
|
|
1504
1904
|
from pkgutil import extend_path
|
|
@@ -1560,6 +1960,48 @@ from .cx_api import (
|
|
|
1560
1960
|
CloudAssembly as _CloudAssembly_c693643e,
|
|
1561
1961
|
CloudAssemblyBuilder as _CloudAssemblyBuilder_c90cccf3,
|
|
1562
1962
|
)
|
|
1963
|
+
from .interfaces import (
|
|
1964
|
+
IEnvironmentAware as _IEnvironmentAware_f39049ee,
|
|
1965
|
+
ResourceEnvironment as _ResourceEnvironment_603baf00,
|
|
1966
|
+
)
|
|
1967
|
+
from .interfaces.aws_cloudformation import (
|
|
1968
|
+
CustomResourceReference as _CustomResourceReference_d8e366c9,
|
|
1969
|
+
GuardHookReference as _GuardHookReference_9ad20ca0,
|
|
1970
|
+
HookDefaultVersionReference as _HookDefaultVersionReference_11df53e8,
|
|
1971
|
+
HookTypeConfigReference as _HookTypeConfigReference_ed91f4cb,
|
|
1972
|
+
HookVersionReference as _HookVersionReference_3688b53a,
|
|
1973
|
+
ICustomResourceRef as _ICustomResourceRef_337851e1,
|
|
1974
|
+
IGuardHookRef as _IGuardHookRef_e0640792,
|
|
1975
|
+
IHookDefaultVersionRef as _IHookDefaultVersionRef_a4784949,
|
|
1976
|
+
IHookTypeConfigRef as _IHookTypeConfigRef_7bc118dc,
|
|
1977
|
+
IHookVersionRef as _IHookVersionRef_0d71a867,
|
|
1978
|
+
ILambdaHookRef as _ILambdaHookRef_5ceec28e,
|
|
1979
|
+
IMacroRef as _IMacroRef_e9ae4afa,
|
|
1980
|
+
IModuleDefaultVersionRef as _IModuleDefaultVersionRef_8f5f90c3,
|
|
1981
|
+
IModuleVersionRef as _IModuleVersionRef_76485182,
|
|
1982
|
+
IPublicTypeVersionRef as _IPublicTypeVersionRef_554ddaba,
|
|
1983
|
+
IPublisherRef as _IPublisherRef_43e14b13,
|
|
1984
|
+
IResourceDefaultVersionRef as _IResourceDefaultVersionRef_6bcf9f85,
|
|
1985
|
+
IResourceVersionRef as _IResourceVersionRef_8fc1bbae,
|
|
1986
|
+
IStackRef as _IStackRef_f0f1d363,
|
|
1987
|
+
IStackSetRef as _IStackSetRef_3a202137,
|
|
1988
|
+
ITypeActivationRef as _ITypeActivationRef_95db49a7,
|
|
1989
|
+
IWaitConditionHandleRef as _IWaitConditionHandleRef_6fbe7b4b,
|
|
1990
|
+
IWaitConditionRef as _IWaitConditionRef_5bc95657,
|
|
1991
|
+
LambdaHookReference as _LambdaHookReference_1c262218,
|
|
1992
|
+
MacroReference as _MacroReference_2603df14,
|
|
1993
|
+
ModuleDefaultVersionReference as _ModuleDefaultVersionReference_6e4498de,
|
|
1994
|
+
ModuleVersionReference as _ModuleVersionReference_16e9080f,
|
|
1995
|
+
PublicTypeVersionReference as _PublicTypeVersionReference_da345091,
|
|
1996
|
+
PublisherReference as _PublisherReference_2058d21f,
|
|
1997
|
+
ResourceDefaultVersionReference as _ResourceDefaultVersionReference_878c9c7f,
|
|
1998
|
+
ResourceVersionReference as _ResourceVersionReference_a8ae93f7,
|
|
1999
|
+
StackReference as _StackReference_15f8b984,
|
|
2000
|
+
StackSetReference as _StackSetReference_c5c1f82d,
|
|
2001
|
+
TypeActivationReference as _TypeActivationReference_03c77595,
|
|
2002
|
+
WaitConditionHandleReference as _WaitConditionHandleReference_ba26e35b,
|
|
2003
|
+
WaitConditionReference as _WaitConditionReference_e2d94a43,
|
|
2004
|
+
)
|
|
1563
2005
|
|
|
1564
2006
|
|
|
1565
2007
|
@jsii.data_type(
|
|
@@ -1709,6 +2151,31 @@ class Annotations(metaclass=jsii.JSIIMeta, jsii_type="aws-cdk-lib.Annotations"):
|
|
|
1709
2151
|
check_type(argname="argument scope", value=scope, expected_type=type_hints["scope"])
|
|
1710
2152
|
return typing.cast("Annotations", jsii.sinvoke(cls, "of", [scope]))
|
|
1711
2153
|
|
|
2154
|
+
@jsii.member(jsii_name="acknowledgeInfo")
|
|
2155
|
+
def acknowledge_info(
|
|
2156
|
+
self,
|
|
2157
|
+
id: builtins.str,
|
|
2158
|
+
message: typing.Optional[builtins.str] = None,
|
|
2159
|
+
) -> None:
|
|
2160
|
+
'''Acknowledge a info. When a info is acknowledged for a scope all infos that match the id will be ignored.
|
|
2161
|
+
|
|
2162
|
+
The acknowledgement will apply to all child scopes
|
|
2163
|
+
|
|
2164
|
+
:param id: - the id of the info message to acknowledge.
|
|
2165
|
+
:param message: optional message to explain the reason for acknowledgement.
|
|
2166
|
+
|
|
2167
|
+
Example::
|
|
2168
|
+
|
|
2169
|
+
# my_construct: Construct
|
|
2170
|
+
|
|
2171
|
+
Annotations.of(my_construct).acknowledge_info("SomeInfoId", "This info can be ignored because...")
|
|
2172
|
+
'''
|
|
2173
|
+
if __debug__:
|
|
2174
|
+
type_hints = typing.get_type_hints(_typecheckingstub__71c75ad95e6c491e615a0c0a9cc9bc5b538f2d93e7057612251cfc9592380513)
|
|
2175
|
+
check_type(argname="argument id", value=id, expected_type=type_hints["id"])
|
|
2176
|
+
check_type(argname="argument message", value=message, expected_type=type_hints["message"])
|
|
2177
|
+
return typing.cast(None, jsii.invoke(self, "acknowledgeInfo", [id, message]))
|
|
2178
|
+
|
|
1712
2179
|
@jsii.member(jsii_name="acknowledgeWarning")
|
|
1713
2180
|
def acknowledge_warning(
|
|
1714
2181
|
self,
|
|
@@ -1779,6 +2246,29 @@ class Annotations(metaclass=jsii.JSIIMeta, jsii_type="aws-cdk-lib.Annotations"):
|
|
|
1779
2246
|
check_type(argname="argument message", value=message, expected_type=type_hints["message"])
|
|
1780
2247
|
return typing.cast(None, jsii.invoke(self, "addInfo", [message]))
|
|
1781
2248
|
|
|
2249
|
+
@jsii.member(jsii_name="addInfoV2")
|
|
2250
|
+
def add_info_v2(self, id: builtins.str, message: builtins.str) -> None:
|
|
2251
|
+
'''Adds an acknowledgeable info metadata entry to this construct.
|
|
2252
|
+
|
|
2253
|
+
The CLI will display the info when an app is synthesized.
|
|
2254
|
+
|
|
2255
|
+
If the info is acknowledged using ``acknowledgeInfo()``, it will not be shown by the CLI.
|
|
2256
|
+
|
|
2257
|
+
:param id: the unique identifier for the info. This can be used to acknowledge the info
|
|
2258
|
+
:param message: The info message.
|
|
2259
|
+
|
|
2260
|
+
Example::
|
|
2261
|
+
|
|
2262
|
+
# my_construct: Construct
|
|
2263
|
+
|
|
2264
|
+
Annotations.of(my_construct).add_info_v2("my-library:Construct.someInfo", "Some message explaining the info")
|
|
2265
|
+
'''
|
|
2266
|
+
if __debug__:
|
|
2267
|
+
type_hints = typing.get_type_hints(_typecheckingstub__843fb7798b96b5a06278ca94ba80d2ae0fb300672c44f21b2ee4d759a04bdba9)
|
|
2268
|
+
check_type(argname="argument id", value=id, expected_type=type_hints["id"])
|
|
2269
|
+
check_type(argname="argument message", value=message, expected_type=type_hints["message"])
|
|
2270
|
+
return typing.cast(None, jsii.invoke(self, "addInfoV2", [id, message]))
|
|
2271
|
+
|
|
1782
2272
|
@jsii.member(jsii_name="addWarning")
|
|
1783
2273
|
def add_warning(self, message: builtins.str) -> None:
|
|
1784
2274
|
'''Adds a warning metadata entry to this construct. Prefer using ``addWarningV2``.
|
|
@@ -1834,6 +2324,7 @@ class Annotations(metaclass=jsii.JSIIMeta, jsii_type="aws-cdk-lib.Annotations"):
|
|
|
1834
2324
|
"outdir": "outdir",
|
|
1835
2325
|
"policy_validation_beta1": "policyValidationBeta1",
|
|
1836
2326
|
"post_cli_context": "postCliContext",
|
|
2327
|
+
"property_injectors": "propertyInjectors",
|
|
1837
2328
|
"stack_traces": "stackTraces",
|
|
1838
2329
|
"tree_metadata": "treeMetadata",
|
|
1839
2330
|
},
|
|
@@ -1849,6 +2340,7 @@ class AppProps:
|
|
|
1849
2340
|
outdir: typing.Optional[builtins.str] = None,
|
|
1850
2341
|
policy_validation_beta1: typing.Optional[typing.Sequence["IPolicyValidationPluginBeta1"]] = None,
|
|
1851
2342
|
post_cli_context: typing.Optional[typing.Mapping[builtins.str, typing.Any]] = None,
|
|
2343
|
+
property_injectors: typing.Optional[typing.Sequence["IPropertyInjector"]] = None,
|
|
1852
2344
|
stack_traces: typing.Optional[builtins.bool] = None,
|
|
1853
2345
|
tree_metadata: typing.Optional[builtins.bool] = None,
|
|
1854
2346
|
) -> None:
|
|
@@ -1861,6 +2353,7 @@ class AppProps:
|
|
|
1861
2353
|
:param outdir: The output directory into which to emit synthesized artifacts. You should never need to set this value. By default, the value you pass to the CLI's ``--output`` flag will be used, and if you change it to a different directory the CLI will fail to pick up the generated Cloud Assembly. This property is intended for internal and testing use. Default: - If this value is *not* set, considers the environment variable ``CDK_OUTDIR``. If ``CDK_OUTDIR`` is not defined, uses a temp directory.
|
|
1862
2354
|
:param policy_validation_beta1: Validation plugins to run after synthesis. Default: - no validation plugins
|
|
1863
2355
|
:param post_cli_context: Additional context values for the application. Context provided here has precedence over context set by: - The CLI via --context - The ``context`` key in ``cdk.json`` - The ``AppProps.context`` property This property is recommended over the ``AppProps.context`` property since you can make final decision over which context value to take in your app. Context can be read from any construct using ``node.getContext(key)``. Default: - no additional context
|
|
2356
|
+
:param property_injectors: A list of IPropertyInjector attached to this App. Default: - no PropertyInjectors
|
|
1864
2357
|
:param stack_traces: Include construct creation stack trace in the ``aws:cdk:trace`` metadata key of all constructs. Default: true stack traces are included unless ``aws:cdk:disable-stack-trace`` is set in the context.
|
|
1865
2358
|
:param tree_metadata: Include construct tree metadata as part of the Cloud Assembly. Default: true
|
|
1866
2359
|
|
|
@@ -1875,7 +2368,11 @@ class AppProps:
|
|
|
1875
2368
|
default_stack_synthesizer=AppStagingSynthesizer.default_resources(
|
|
1876
2369
|
app_id="my-app-id",
|
|
1877
2370
|
staging_bucket_encryption=BucketEncryption.S3_MANAGED,
|
|
1878
|
-
deployment_identities=DeploymentIdentities.
|
|
2371
|
+
deployment_identities=DeploymentIdentities.specify_roles(
|
|
2372
|
+
cloud_formation_execution_role=BootstrapRole.from_role_arn("arn:aws:iam::123456789012:role/Execute"),
|
|
2373
|
+
deployment_role=BootstrapRole.from_role_arn("arn:aws:iam::123456789012:role/Deploy"),
|
|
2374
|
+
lookup_role=BootstrapRole.from_role_arn("arn:aws:iam::123456789012:role/Lookup")
|
|
2375
|
+
)
|
|
1879
2376
|
)
|
|
1880
2377
|
)
|
|
1881
2378
|
'''
|
|
@@ -1888,6 +2385,7 @@ class AppProps:
|
|
|
1888
2385
|
check_type(argname="argument outdir", value=outdir, expected_type=type_hints["outdir"])
|
|
1889
2386
|
check_type(argname="argument policy_validation_beta1", value=policy_validation_beta1, expected_type=type_hints["policy_validation_beta1"])
|
|
1890
2387
|
check_type(argname="argument post_cli_context", value=post_cli_context, expected_type=type_hints["post_cli_context"])
|
|
2388
|
+
check_type(argname="argument property_injectors", value=property_injectors, expected_type=type_hints["property_injectors"])
|
|
1891
2389
|
check_type(argname="argument stack_traces", value=stack_traces, expected_type=type_hints["stack_traces"])
|
|
1892
2390
|
check_type(argname="argument tree_metadata", value=tree_metadata, expected_type=type_hints["tree_metadata"])
|
|
1893
2391
|
self._values: typing.Dict[builtins.str, typing.Any] = {}
|
|
@@ -1905,6 +2403,8 @@ class AppProps:
|
|
|
1905
2403
|
self._values["policy_validation_beta1"] = policy_validation_beta1
|
|
1906
2404
|
if post_cli_context is not None:
|
|
1907
2405
|
self._values["post_cli_context"] = post_cli_context
|
|
2406
|
+
if property_injectors is not None:
|
|
2407
|
+
self._values["property_injectors"] = property_injectors
|
|
1908
2408
|
if stack_traces is not None:
|
|
1909
2409
|
self._values["stack_traces"] = stack_traces
|
|
1910
2410
|
if tree_metadata is not None:
|
|
@@ -2026,6 +2526,15 @@ class AppProps:
|
|
|
2026
2526
|
result = self._values.get("post_cli_context")
|
|
2027
2527
|
return typing.cast(typing.Optional[typing.Mapping[builtins.str, typing.Any]], result)
|
|
2028
2528
|
|
|
2529
|
+
@builtins.property
|
|
2530
|
+
def property_injectors(self) -> typing.Optional[typing.List["IPropertyInjector"]]:
|
|
2531
|
+
'''A list of IPropertyInjector attached to this App.
|
|
2532
|
+
|
|
2533
|
+
:default: - no PropertyInjectors
|
|
2534
|
+
'''
|
|
2535
|
+
result = self._values.get("property_injectors")
|
|
2536
|
+
return typing.cast(typing.Optional[typing.List["IPropertyInjector"]], result)
|
|
2537
|
+
|
|
2029
2538
|
@builtins.property
|
|
2030
2539
|
def stack_traces(self) -> typing.Optional[builtins.bool]:
|
|
2031
2540
|
'''Include construct creation stack trace in the ``aws:cdk:trace`` metadata key of all constructs.
|
|
@@ -2362,7 +2871,7 @@ class ArnFormat(enum.Enum):
|
|
|
2362
2871
|
like in 'arn:aws:cognito-sync:region:account:identitypool/us-east-1:1a1a1a1a-ffff-1111-9999-12345678:bla'.
|
|
2363
2872
|
'''
|
|
2364
2873
|
SLASH_RESOURCE_SLASH_RESOURCE_NAME = "SLASH_RESOURCE_SLASH_RESOURCE_NAME"
|
|
2365
|
-
'''This represents a format where the 'resource' and 'resourceName' parts are
|
|
2874
|
+
'''This represents a format where the 'resource' and 'resourceName' parts are separated with a slash, but there is also an additional slash after the colon separating 'account' from 'resource'.
|
|
2366
2875
|
|
|
2367
2876
|
Like in: 'arn:aws:service:region:account:/resource/resourceName'.
|
|
2368
2877
|
Note that the leading slash is *not* included in the parsed 'resource' part.
|
|
@@ -2452,17 +2961,24 @@ class AspectOptions:
|
|
|
2452
2961
|
|
|
2453
2962
|
:param priority: The priority value to apply on an Aspect. Priority must be a non-negative integer. Aspects that have same priority value are not guaranteed to be executed in a consistent order. Default: AspectPriority.DEFAULT
|
|
2454
2963
|
|
|
2455
|
-
:exampleMetadata:
|
|
2964
|
+
:exampleMetadata: infused
|
|
2456
2965
|
|
|
2457
2966
|
Example::
|
|
2458
2967
|
|
|
2459
|
-
|
|
2460
|
-
|
|
2461
|
-
|
|
2968
|
+
@jsii.implements(IAspect)
|
|
2969
|
+
class MutatingAspect:
|
|
2970
|
+
def visit(self, node):
|
|
2971
|
+
pass
|
|
2462
2972
|
|
|
2463
|
-
|
|
2464
|
-
|
|
2465
|
-
|
|
2973
|
+
@jsii.implements(IAspect)
|
|
2974
|
+
class ValidationAspect:
|
|
2975
|
+
def visit(self, node):
|
|
2976
|
+
pass
|
|
2977
|
+
|
|
2978
|
+
stack = Stack()
|
|
2979
|
+
|
|
2980
|
+
Aspects.of(stack).add(MutatingAspect(), priority=AspectPriority.MUTATING) # Run first (mutating aspects)
|
|
2981
|
+
Aspects.of(stack).add(ValidationAspect(), priority=AspectPriority.READONLY)
|
|
2466
2982
|
'''
|
|
2467
2983
|
if __debug__:
|
|
2468
2984
|
type_hints = typing.get_type_hints(_typecheckingstub__1761263abda35b4b2f599d4ff5122c0e7ad15a95af4498d9c6e04e78bc4a4b76)
|
|
@@ -3407,6 +3923,7 @@ class Aws(metaclass=jsii.JSIIMeta, jsii_type="aws-cdk-lib.Aws"):
|
|
|
3407
3923
|
name_mapping={
|
|
3408
3924
|
"cloud_formation_execution_role_arn": "cloudFormationExecutionRoleArn",
|
|
3409
3925
|
"deploy_role_arn": "deployRoleArn",
|
|
3926
|
+
"qualifier": "qualifier",
|
|
3410
3927
|
},
|
|
3411
3928
|
)
|
|
3412
3929
|
class BootstraplessSynthesizerProps:
|
|
@@ -3415,11 +3932,13 @@ class BootstraplessSynthesizerProps:
|
|
|
3415
3932
|
*,
|
|
3416
3933
|
cloud_formation_execution_role_arn: typing.Optional[builtins.str] = None,
|
|
3417
3934
|
deploy_role_arn: typing.Optional[builtins.str] = None,
|
|
3935
|
+
qualifier: typing.Optional[builtins.str] = None,
|
|
3418
3936
|
) -> None:
|
|
3419
3937
|
'''Construction properties of ``BootstraplessSynthesizer``.
|
|
3420
3938
|
|
|
3421
3939
|
:param cloud_formation_execution_role_arn: The CFN execution Role ARN to use. Default: - No CloudFormation role (use CLI credentials)
|
|
3422
3940
|
:param deploy_role_arn: The deploy Role ARN to use. Default: - No deploy role (use CLI credentials)
|
|
3941
|
+
:param qualifier: The qualifier used to specialize strings. Can be used to specify custom bootstrapped role names Default: 'hnb659fds'
|
|
3423
3942
|
|
|
3424
3943
|
:exampleMetadata: fixture=_generated
|
|
3425
3944
|
|
|
@@ -3431,18 +3950,22 @@ class BootstraplessSynthesizerProps:
|
|
|
3431
3950
|
|
|
3432
3951
|
bootstrapless_synthesizer_props = cdk.BootstraplessSynthesizerProps(
|
|
3433
3952
|
cloud_formation_execution_role_arn="cloudFormationExecutionRoleArn",
|
|
3434
|
-
deploy_role_arn="deployRoleArn"
|
|
3953
|
+
deploy_role_arn="deployRoleArn",
|
|
3954
|
+
qualifier="qualifier"
|
|
3435
3955
|
)
|
|
3436
3956
|
'''
|
|
3437
3957
|
if __debug__:
|
|
3438
3958
|
type_hints = typing.get_type_hints(_typecheckingstub__3f56ec309bd76e41562731f3b986025649d4592e71caa79fed875d7020f66bfc)
|
|
3439
3959
|
check_type(argname="argument cloud_formation_execution_role_arn", value=cloud_formation_execution_role_arn, expected_type=type_hints["cloud_formation_execution_role_arn"])
|
|
3440
3960
|
check_type(argname="argument deploy_role_arn", value=deploy_role_arn, expected_type=type_hints["deploy_role_arn"])
|
|
3961
|
+
check_type(argname="argument qualifier", value=qualifier, expected_type=type_hints["qualifier"])
|
|
3441
3962
|
self._values: typing.Dict[builtins.str, typing.Any] = {}
|
|
3442
3963
|
if cloud_formation_execution_role_arn is not None:
|
|
3443
3964
|
self._values["cloud_formation_execution_role_arn"] = cloud_formation_execution_role_arn
|
|
3444
3965
|
if deploy_role_arn is not None:
|
|
3445
3966
|
self._values["deploy_role_arn"] = deploy_role_arn
|
|
3967
|
+
if qualifier is not None:
|
|
3968
|
+
self._values["qualifier"] = qualifier
|
|
3446
3969
|
|
|
3447
3970
|
@builtins.property
|
|
3448
3971
|
def cloud_formation_execution_role_arn(self) -> typing.Optional[builtins.str]:
|
|
@@ -3462,6 +3985,17 @@ class BootstraplessSynthesizerProps:
|
|
|
3462
3985
|
result = self._values.get("deploy_role_arn")
|
|
3463
3986
|
return typing.cast(typing.Optional[builtins.str], result)
|
|
3464
3987
|
|
|
3988
|
+
@builtins.property
|
|
3989
|
+
def qualifier(self) -> typing.Optional[builtins.str]:
|
|
3990
|
+
'''The qualifier used to specialize strings.
|
|
3991
|
+
|
|
3992
|
+
Can be used to specify custom bootstrapped role names
|
|
3993
|
+
|
|
3994
|
+
:default: 'hnb659fds'
|
|
3995
|
+
'''
|
|
3996
|
+
result = self._values.get("qualifier")
|
|
3997
|
+
return typing.cast(typing.Optional[builtins.str], result)
|
|
3998
|
+
|
|
3465
3999
|
def __eq__(self, rhs: typing.Any) -> builtins.bool:
|
|
3466
4000
|
return isinstance(rhs, self.__class__) and rhs._values == self._values
|
|
3467
4001
|
|
|
@@ -5353,7 +5887,7 @@ class CfnGuardHookProps:
|
|
|
5353
5887
|
:param log_bucket: Specifies the name of an S3 bucket to store the Guard output report. This report contains the results of your Guard rule validations.
|
|
5354
5888
|
:param options: Specifies the S3 location of your input parameters.
|
|
5355
5889
|
:param stack_filters: Specifies the stack level filters for the Hook. Example stack level filter in JSON: ``"StackFilters": {"FilteringCriteria": "ALL", "StackNames": {"Exclude": [ "stack-1", "stack-2"]}}`` Example stack level filter in YAML: ``StackFilters: FilteringCriteria: ALL StackNames: Exclude: - stack-1 - stack-2``
|
|
5356
|
-
:param target_filters: Specifies the target filters for the Hook. Example target filter in JSON: ``"TargetFilters": {"Actions": [ "
|
|
5890
|
+
:param target_filters: Specifies the target filters for the Hook. Example target filter in JSON: ``"TargetFilters": {"Actions": [ "CREATE", "UPDATE", "DELETE" ]}`` Example target filter in YAML: ``TargetFilters: Actions: - CREATE - UPDATE - DELETE``
|
|
5357
5891
|
|
|
5358
5892
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-guardhook.html
|
|
5359
5893
|
:exampleMetadata: fixture=_generated
|
|
@@ -5567,7 +6101,7 @@ class CfnGuardHookProps:
|
|
|
5567
6101
|
|
|
5568
6102
|
Example target filter in JSON:
|
|
5569
6103
|
|
|
5570
|
-
``"TargetFilters": {"Actions": [ "
|
|
6104
|
+
``"TargetFilters": {"Actions": [ "CREATE", "UPDATE", "DELETE" ]}``
|
|
5571
6105
|
|
|
5572
6106
|
Example target filter in YAML:
|
|
5573
6107
|
|
|
@@ -5962,8 +6496,8 @@ class CfnHookVersionProps:
|
|
|
5962
6496
|
) -> None:
|
|
5963
6497
|
'''Properties for defining a ``CfnHookVersion``.
|
|
5964
6498
|
|
|
5965
|
-
:param schema_handler_package: A URL to the Amazon S3 bucket
|
|
5966
|
-
:param type_name: The unique name for your
|
|
6499
|
+
:param schema_handler_package: A URL to the Amazon S3 bucket for the Hook project package that contains the necessary files for the Hook you want to register. For information on generating a schema handler package, see `Modeling custom CloudFormation Hooks <https://docs.aws.amazon.com/cloudformation-cli/latest/hooks-userguide/hooks-model.html>`_ in the *AWS CloudFormation Hooks User Guide* . .. epigraph:: To register the Hook, you must have ``s3:GetObject`` permissions to access the S3 objects.
|
|
6500
|
+
:param type_name: The unique name for your Hook. Specifies a three-part namespace for your Hook, with a recommended pattern of ``Organization::Service::Hook`` . .. epigraph:: The following organization namespaces are reserved and can't be used in your Hook type names: - ``Alexa`` - ``AMZN`` - ``Amazon`` - ``ASK`` - ``AWS`` - ``Custom`` - ``Dev``
|
|
5967
6501
|
:param execution_role_arn: The Amazon Resource Name (ARN) of the task execution role that grants the Hook permission.
|
|
5968
6502
|
:param logging_config: Contains logging configuration information for an extension.
|
|
5969
6503
|
|
|
@@ -6005,7 +6539,7 @@ class CfnHookVersionProps:
|
|
|
6005
6539
|
|
|
6006
6540
|
@builtins.property
|
|
6007
6541
|
def schema_handler_package(self) -> builtins.str:
|
|
6008
|
-
'''A URL to the Amazon S3 bucket
|
|
6542
|
+
'''A URL to the Amazon S3 bucket for the Hook project package that contains the necessary files for the Hook you want to register.
|
|
6009
6543
|
|
|
6010
6544
|
For information on generating a schema handler package, see `Modeling custom CloudFormation Hooks <https://docs.aws.amazon.com/cloudformation-cli/latest/hooks-userguide/hooks-model.html>`_ in the *AWS CloudFormation Hooks User Guide* .
|
|
6011
6545
|
.. epigraph::
|
|
@@ -6020,12 +6554,12 @@ class CfnHookVersionProps:
|
|
|
6020
6554
|
|
|
6021
6555
|
@builtins.property
|
|
6022
6556
|
def type_name(self) -> builtins.str:
|
|
6023
|
-
'''The unique name for your
|
|
6557
|
+
'''The unique name for your Hook.
|
|
6024
6558
|
|
|
6025
|
-
Specifies a three-part namespace for your
|
|
6559
|
+
Specifies a three-part namespace for your Hook, with a recommended pattern of ``Organization::Service::Hook`` .
|
|
6026
6560
|
.. epigraph::
|
|
6027
6561
|
|
|
6028
|
-
The following organization namespaces are reserved and can't be used in your
|
|
6562
|
+
The following organization namespaces are reserved and can't be used in your Hook type names:
|
|
6029
6563
|
|
|
6030
6564
|
- ``Alexa``
|
|
6031
6565
|
- ``AMZN``
|
|
@@ -6167,7 +6701,7 @@ class CfnLambdaHookProps:
|
|
|
6167
6701
|
:param lambda_function: Specifies the Lambda function for the Hook. You can use:. - The full Amazon Resource Name (ARN) without a suffix. - A qualified ARN with a version or alias suffix.
|
|
6168
6702
|
:param target_operations: Specifies the list of operations the Hook is run against. For more information, see `Hook targets <https://docs.aws.amazon.com/cloudformation-cli/latest/hooks-userguide/hooks-concepts.html#hook-terms-hook-target>`_ in the *AWS CloudFormation Hooks User Guide* . Valid values: ``STACK`` | ``RESOURCE`` | ``CHANGE_SET`` | ``CLOUD_CONTROL``
|
|
6169
6703
|
:param stack_filters: Specifies the stack level filters for the Hook. Example stack level filter in JSON: ``"StackFilters": {"FilteringCriteria": "ALL", "StackNames": {"Exclude": [ "stack-1", "stack-2"]}}`` Example stack level filter in YAML: ``StackFilters: FilteringCriteria: ALL StackNames: Exclude: - stack-1 - stack-2``
|
|
6170
|
-
:param target_filters: Specifies the target filters for the Hook. Example target filter in JSON: ``"TargetFilters": {"Actions": [ "
|
|
6704
|
+
:param target_filters: Specifies the target filters for the Hook. Example target filter in JSON: ``"TargetFilters": {"Actions": [ "CREATE", "UPDATE", "DELETE" ]}`` Example target filter in YAML: ``TargetFilters: Actions: - CREATE - UPDATE - DELETE``
|
|
6171
6705
|
|
|
6172
6706
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-lambdahook.html
|
|
6173
6707
|
:exampleMetadata: fixture=_generated
|
|
@@ -6338,7 +6872,7 @@ class CfnLambdaHookProps:
|
|
|
6338
6872
|
|
|
6339
6873
|
Example target filter in JSON:
|
|
6340
6874
|
|
|
6341
|
-
``"TargetFilters": {"Actions": [ "
|
|
6875
|
+
``"TargetFilters": {"Actions": [ "CREATE", "UPDATE", "DELETE" ]}``
|
|
6342
6876
|
|
|
6343
6877
|
Example target filter in YAML:
|
|
6344
6878
|
|
|
@@ -6679,7 +7213,7 @@ class CfnModuleVersionProps:
|
|
|
6679
7213
|
'''Properties for defining a ``CfnModuleVersion``.
|
|
6680
7214
|
|
|
6681
7215
|
:param module_name: The name of the module being registered.
|
|
6682
|
-
:param module_package: A URL to the S3 bucket
|
|
7216
|
+
:param module_package: A URL to the S3 bucket for the package that contains the template fragment and schema files for the module version to register. For more information, see `Module structure and requirements <https://docs.aws.amazon.com/cloudformation-cli/latest/userguide/modules-structure.html>`_ in the *AWS CloudFormation Command Line Interface (CLI) User Guide* . .. epigraph:: To register the module version, you must have ``s3:GetObject`` permissions to access the S3 objects.
|
|
6683
7217
|
|
|
6684
7218
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-moduleversion.html
|
|
6685
7219
|
:exampleMetadata: fixture=_generated
|
|
@@ -6716,7 +7250,7 @@ class CfnModuleVersionProps:
|
|
|
6716
7250
|
|
|
6717
7251
|
@builtins.property
|
|
6718
7252
|
def module_package(self) -> builtins.str:
|
|
6719
|
-
'''A URL to the S3 bucket
|
|
7253
|
+
'''A URL to the S3 bucket for the package that contains the template fragment and schema files for the module version to register.
|
|
6720
7254
|
|
|
6721
7255
|
For more information, see `Module structure and requirements <https://docs.aws.amazon.com/cloudformation-cli/latest/userguide/modules-structure.html>`_ in the *AWS CloudFormation Command Line Interface (CLI) User Guide* .
|
|
6722
7256
|
.. epigraph::
|
|
@@ -6788,7 +7322,7 @@ class CfnOutput(CfnElement, metaclass=jsii.JSIIMeta, jsii_type="aws-cdk-lib.CfnO
|
|
|
6788
7322
|
export_name: typing.Optional[builtins.str] = None,
|
|
6789
7323
|
key: typing.Optional[builtins.str] = None,
|
|
6790
7324
|
) -> None:
|
|
6791
|
-
'''Creates
|
|
7325
|
+
'''Creates a CfnOutput value for this stack.
|
|
6792
7326
|
|
|
6793
7327
|
:param scope: The parent construct.
|
|
6794
7328
|
:param id: -
|
|
@@ -8221,6 +8755,11 @@ class CfnResource(
|
|
|
8221
8755
|
'''AWS resource type.'''
|
|
8222
8756
|
return typing.cast(builtins.str, jsii.get(self, "cfnResourceType"))
|
|
8223
8757
|
|
|
8758
|
+
@builtins.property
|
|
8759
|
+
@jsii.member(jsii_name="env")
|
|
8760
|
+
def env(self) -> _ResourceEnvironment_603baf00:
|
|
8761
|
+
return typing.cast(_ResourceEnvironment_603baf00, jsii.get(self, "env"))
|
|
8762
|
+
|
|
8224
8763
|
@builtins.property
|
|
8225
8764
|
@jsii.member(jsii_name="updatedProperites")
|
|
8226
8765
|
def _updated_properites(self) -> typing.Mapping[builtins.str, typing.Any]:
|
|
@@ -8572,7 +9111,7 @@ class CfnResourceVersionProps:
|
|
|
8572
9111
|
) -> None:
|
|
8573
9112
|
'''Properties for defining a ``CfnResourceVersion``.
|
|
8574
9113
|
|
|
8575
|
-
:param schema_handler_package: A URL to the S3 bucket
|
|
9114
|
+
:param schema_handler_package: A URL to the S3 bucket for the resource project package that contains the necessary files for the resource you want to register. For information on generating a schema handler package, see `Modeling resource types to use with AWS CloudFormation <https://docs.aws.amazon.com/cloudformation-cli/latest/userguide/resource-type-model.html>`_ in the *AWS CloudFormation Command Line Interface (CLI) User Guide* . .. epigraph:: To register the resource version, you must have ``s3:GetObject`` permissions to access the S3 objects.
|
|
8576
9115
|
:param type_name: The name of the resource being registered. We recommend that resource names adhere to the following pattern: *company_or_organization* :: *service* :: *type* . .. epigraph:: The following organization namespaces are reserved and can't be used in your resource names: - ``Alexa`` - ``AMZN`` - ``Amazon`` - ``AWS`` - ``Custom`` - ``Dev``
|
|
8577
9116
|
:param execution_role_arn: The Amazon Resource Name (ARN) of the IAM role for CloudFormation to assume when invoking the resource. If your resource calls AWS APIs in any of its handlers, you must create an IAM execution role that includes the necessary permissions to call those AWS APIs, and provision that execution role in your account. When CloudFormation needs to invoke the resource type handler, CloudFormation assumes this execution role to create a temporary session token, which it then passes to the resource type handler, thereby supplying your resource type with the appropriate credentials.
|
|
8578
9117
|
:param logging_config: Logging configuration information for a resource.
|
|
@@ -8615,7 +9154,7 @@ class CfnResourceVersionProps:
|
|
|
8615
9154
|
|
|
8616
9155
|
@builtins.property
|
|
8617
9156
|
def schema_handler_package(self) -> builtins.str:
|
|
8618
|
-
'''A URL to the S3 bucket
|
|
9157
|
+
'''A URL to the S3 bucket for the resource project package that contains the necessary files for the resource you want to register.
|
|
8619
9158
|
|
|
8620
9159
|
For information on generating a schema handler package, see `Modeling resource types to use with AWS CloudFormation <https://docs.aws.amazon.com/cloudformation-cli/latest/userguide/resource-type-model.html>`_ in the *AWS CloudFormation Command Line Interface (CLI) User Guide* .
|
|
8621
9160
|
.. epigraph::
|
|
@@ -8941,7 +9480,7 @@ class CfnStackProps:
|
|
|
8941
9480
|
:param notification_arns: The Amazon SNS topic ARNs to publish stack related events. You can find your Amazon SNS topic ARNs using the Amazon SNS console or your Command Line Interface (CLI).
|
|
8942
9481
|
:param parameters: The set value pairs that represent the parameters passed to CloudFormation when this nested stack is created. Each parameter has a name corresponding to a parameter defined in the embedded template and a value representing the value that you want to set for the parameter. .. epigraph:: If you use the ``Ref`` function to pass a parameter value to a nested stack, comma-delimited list parameters must be of type ``String`` . In other words, you can't pass values that are of type ``CommaDelimitedList`` to nested stacks. Required if the nested stack requires input parameters. Whether an update causes interruptions depends on the resources that are being updated. An update never causes a nested stack to be replaced.
|
|
8943
9482
|
:param tags: Key-value pairs to associate with this stack. CloudFormation also propagates these tags to the resources created in the stack. A maximum number of 50 tags can be specified.
|
|
8944
|
-
:param template_url: The URL of a file
|
|
9483
|
+
:param template_url: The URL of a file that contains the template body. The URL must point to a template (max size: 1 MB) that's located in an Amazon S3 bucket. The location for an Amazon S3 bucket must start with ``https://`` . Whether an update causes interruptions depends on the resources that are being updated. An update never causes a nested stack to be replaced.
|
|
8945
9484
|
:param timeout_in_minutes: The length of time, in minutes, that CloudFormation waits for the nested stack to reach the ``CREATE_COMPLETE`` state. The default is no timeout. When CloudFormation detects that the nested stack has reached the ``CREATE_COMPLETE`` state, it marks the nested stack resource as ``CREATE_COMPLETE`` in the parent stack and resumes creating the parent stack. If the timeout period expires before the nested stack reaches ``CREATE_COMPLETE`` , CloudFormation marks the nested stack as failed and rolls back both the nested stack and parent stack. Updates aren't supported.
|
|
8946
9485
|
|
|
8947
9486
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-stack.html
|
|
@@ -9029,7 +9568,7 @@ class CfnStackProps:
|
|
|
9029
9568
|
|
|
9030
9569
|
@builtins.property
|
|
9031
9570
|
def template_url(self) -> typing.Optional[builtins.str]:
|
|
9032
|
-
'''The URL of a file
|
|
9571
|
+
'''The URL of a file that contains the template body.
|
|
9033
9572
|
|
|
9034
9573
|
The URL must point to a template (max size: 1 MB) that's located in an Amazon S3 bucket. The location for an Amazon S3 bucket must start with ``https://`` .
|
|
9035
9574
|
|
|
@@ -9108,21 +9647,21 @@ class CfnStackSetProps:
|
|
|
9108
9647
|
) -> None:
|
|
9109
9648
|
'''Properties for defining a ``CfnStackSet``.
|
|
9110
9649
|
|
|
9111
|
-
:param permission_model: Describes how the IAM roles required for
|
|
9112
|
-
:param stack_set_name: The name to associate with the
|
|
9113
|
-
:param administration_role_arn: The Amazon Resource Number (ARN) of the IAM role to use to create this
|
|
9114
|
-
:param auto_deployment: Describes whether StackSets automatically deploys to AWS Organizations accounts that are added to a target organization or organizational unit (OU). For more information, see `
|
|
9115
|
-
:param call_as: Specifies whether you are acting as an account administrator in the organization's management account or as a delegated administrator in a member account. By default, ``SELF`` is specified. Use ``SELF`` for
|
|
9116
|
-
:param capabilities: The capabilities that are allowed in the
|
|
9117
|
-
:param description: A description of the
|
|
9118
|
-
:param execution_role_name: The name of the IAM execution role to use to create the
|
|
9119
|
-
:param managed_execution: Describes whether StackSets performs non-conflicting operations concurrently and queues conflicting operations. When active, StackSets performs non-conflicting operations concurrently and queues conflicting operations. After conflicting operations finish, StackSets starts queued operations in request order. .. epigraph:: If there are already running or queued operations, StackSets queues all incoming operations even if they are non-conflicting. You can't modify your
|
|
9120
|
-
:param operation_preferences: The user-specified preferences for how CloudFormation performs a
|
|
9121
|
-
:param parameters: The input parameters for the
|
|
9650
|
+
:param permission_model: Describes how the IAM roles required for StackSet operations are created. - With ``SELF_MANAGED`` permissions, you must create the administrator and execution roles required to deploy to target accounts. For more information, see `Grant self-managed permissions <https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/stacksets-prereqs-self-managed.html>`_ in the *AWS CloudFormation User Guide* . - With ``SERVICE_MANAGED`` permissions, StackSets automatically creates the IAM roles required to deploy to accounts managed by AWS Organizations . For more information, see `Activate trusted access for StackSets with AWS Organizations <https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/stacksets-orgs-activate-trusted-access.html>`_ in the *AWS CloudFormation User Guide* .
|
|
9651
|
+
:param stack_set_name: The name to associate with the StackSet. The name must be unique in the Region where you create your StackSet.
|
|
9652
|
+
:param administration_role_arn: The Amazon Resource Number (ARN) of the IAM role to use to create this StackSet. Specify an IAM role only if you are using customized administrator roles to control which users or groups can manage specific StackSets within the same administrator account. Use customized administrator roles to control which users or groups can manage specific StackSets within the same administrator account. For more information, see `Grant self-managed permissions <https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/stacksets-prereqs-self-managed.html>`_ in the *AWS CloudFormation User Guide* . Valid only if the permissions model is ``SELF_MANAGED`` .
|
|
9653
|
+
:param auto_deployment: Describes whether StackSets automatically deploys to AWS Organizations accounts that are added to a target organization or organizational unit (OU). For more information, see `Enable or disable automatic deployments for StackSets in AWS Organizations <https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/stacksets-orgs-manage-auto-deployment.html>`_ in the *AWS CloudFormation User Guide* . Required if the permissions model is ``SERVICE_MANAGED`` . (Not used with self-managed permissions.)
|
|
9654
|
+
:param call_as: Specifies whether you are acting as an account administrator in the organization's management account or as a delegated administrator in a member account. By default, ``SELF`` is specified. Use ``SELF`` for StackSets with self-managed permissions. - To create a StackSet with service-managed permissions while signed in to the management account, specify ``SELF`` . - To create a StackSet with service-managed permissions while signed in to a delegated administrator account, specify ``DELEGATED_ADMIN`` . Your AWS account must be registered as a delegated admin in the management account. For more information, see `Register a delegated administrator <https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/stacksets-orgs-delegated-admin.html>`_ in the *AWS CloudFormation User Guide* . StackSets with service-managed permissions are created in the management account, including StackSets that are created by delegated administrators. Valid only if the permissions model is ``SERVICE_MANAGED`` .
|
|
9655
|
+
:param capabilities: The capabilities that are allowed in the StackSet. Some StackSet templates might include resources that can affect permissions in your AWS account —for example, by creating new IAM users. For more information, see `Acknowledging IAM resources in CloudFormation templates <https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/control-access-with-iam.html#using-iam-capabilities>`_ in the *AWS CloudFormation User Guide* .
|
|
9656
|
+
:param description: A description of the StackSet.
|
|
9657
|
+
:param execution_role_name: The name of the IAM execution role to use to create the StackSet. If you don't specify an execution role, CloudFormation uses the ``AWSCloudFormationStackSetExecutionRole`` role for the StackSet operation. Valid only if the permissions model is ``SELF_MANAGED`` . *Pattern* : ``[a-zA-Z_0-9+=,.@-]+``
|
|
9658
|
+
:param managed_execution: Describes whether StackSets performs non-conflicting operations concurrently and queues conflicting operations. When active, StackSets performs non-conflicting operations concurrently and queues conflicting operations. After conflicting operations finish, StackSets starts queued operations in request order. .. epigraph:: If there are already running or queued operations, StackSets queues all incoming operations even if they are non-conflicting. You can't modify your StackSet's execution configuration while there are running or queued operations for that StackSet. When inactive (default), StackSets performs one operation at a time in request order.
|
|
9659
|
+
:param operation_preferences: The user-specified preferences for how CloudFormation performs a StackSet operation.
|
|
9660
|
+
:param parameters: The input parameters for the StackSet template.
|
|
9122
9661
|
:param stack_instances_group: A group of stack instances with parameters in some specific accounts and Regions.
|
|
9123
9662
|
:param tags: Key-value pairs to associate with this stack. CloudFormation also propagates these tags to supported resources in the stack. You can specify a maximum number of 50 tags. If you don't specify this parameter, CloudFormation doesn't modify the stack's tags. If you specify an empty value, CloudFormation removes all associated tags.
|
|
9124
|
-
:param template_body: The structure that contains the template body, with a minimum length of 1 byte and a maximum length of 51,200 bytes. You must include either ``TemplateURL`` or ``TemplateBody`` in a StackSet, but you can't use both. Dynamic references in the ``TemplateBody`` may not work correctly in all cases. It's recommended to pass templates
|
|
9125
|
-
:param template_url: The URL of a file
|
|
9663
|
+
:param template_body: The structure that contains the template body, with a minimum length of 1 byte and a maximum length of 51,200 bytes. You must include either ``TemplateURL`` or ``TemplateBody`` in a StackSet, but you can't use both. Dynamic references in the ``TemplateBody`` may not work correctly in all cases. It's recommended to pass templates that contain dynamic references through ``TemplateUrl`` instead.
|
|
9664
|
+
:param template_url: The URL of a file that contains the template body. The URL must point to a template (max size: 1 MB) that's located in an Amazon S3 bucket or a Systems Manager document. The location for an Amazon S3 bucket must start with ``https://`` . Conditional: You must specify only one of the following parameters: ``TemplateBody`` , ``TemplateURL`` .
|
|
9126
9665
|
|
|
9127
9666
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-stackset.html
|
|
9128
9667
|
:exampleMetadata: fixture=_generated
|
|
@@ -9236,10 +9775,10 @@ class CfnStackSetProps:
|
|
|
9236
9775
|
|
|
9237
9776
|
@builtins.property
|
|
9238
9777
|
def permission_model(self) -> builtins.str:
|
|
9239
|
-
'''Describes how the IAM roles required for
|
|
9778
|
+
'''Describes how the IAM roles required for StackSet operations are created.
|
|
9240
9779
|
|
|
9241
9780
|
- With ``SELF_MANAGED`` permissions, you must create the administrator and execution roles required to deploy to target accounts. For more information, see `Grant self-managed permissions <https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/stacksets-prereqs-self-managed.html>`_ in the *AWS CloudFormation User Guide* .
|
|
9242
|
-
- With ``SERVICE_MANAGED`` permissions, StackSets automatically creates the IAM roles required to deploy to accounts managed by AWS Organizations . For more information, see `Activate trusted access for
|
|
9781
|
+
- With ``SERVICE_MANAGED`` permissions, StackSets automatically creates the IAM roles required to deploy to accounts managed by AWS Organizations . For more information, see `Activate trusted access for StackSets with AWS Organizations <https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/stacksets-orgs-activate-trusted-access.html>`_ in the *AWS CloudFormation User Guide* .
|
|
9243
9782
|
|
|
9244
9783
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-stackset.html#cfn-cloudformation-stackset-permissionmodel
|
|
9245
9784
|
'''
|
|
@@ -9249,9 +9788,9 @@ class CfnStackSetProps:
|
|
|
9249
9788
|
|
|
9250
9789
|
@builtins.property
|
|
9251
9790
|
def stack_set_name(self) -> builtins.str:
|
|
9252
|
-
'''The name to associate with the
|
|
9791
|
+
'''The name to associate with the StackSet.
|
|
9253
9792
|
|
|
9254
|
-
The name must be unique in the Region where you create your
|
|
9793
|
+
The name must be unique in the Region where you create your StackSet.
|
|
9255
9794
|
|
|
9256
9795
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-stackset.html#cfn-cloudformation-stackset-stacksetname
|
|
9257
9796
|
'''
|
|
@@ -9261,11 +9800,11 @@ class CfnStackSetProps:
|
|
|
9261
9800
|
|
|
9262
9801
|
@builtins.property
|
|
9263
9802
|
def administration_role_arn(self) -> typing.Optional[builtins.str]:
|
|
9264
|
-
'''The Amazon Resource Number (ARN) of the IAM role to use to create this
|
|
9803
|
+
'''The Amazon Resource Number (ARN) of the IAM role to use to create this StackSet.
|
|
9265
9804
|
|
|
9266
|
-
Specify an IAM role only if you are using customized administrator roles to control which users or groups can manage specific
|
|
9805
|
+
Specify an IAM role only if you are using customized administrator roles to control which users or groups can manage specific StackSets within the same administrator account.
|
|
9267
9806
|
|
|
9268
|
-
Use customized administrator roles to control which users or groups can manage specific
|
|
9807
|
+
Use customized administrator roles to control which users or groups can manage specific StackSets within the same administrator account. For more information, see `Grant self-managed permissions <https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/stacksets-prereqs-self-managed.html>`_ in the *AWS CloudFormation User Guide* .
|
|
9269
9808
|
|
|
9270
9809
|
Valid only if the permissions model is ``SELF_MANAGED`` .
|
|
9271
9810
|
|
|
@@ -9280,7 +9819,7 @@ class CfnStackSetProps:
|
|
|
9280
9819
|
) -> typing.Optional[typing.Union["IResolvable", "CfnStackSet.AutoDeploymentProperty"]]:
|
|
9281
9820
|
'''Describes whether StackSets automatically deploys to AWS Organizations accounts that are added to a target organization or organizational unit (OU).
|
|
9282
9821
|
|
|
9283
|
-
For more information, see `
|
|
9822
|
+
For more information, see `Enable or disable automatic deployments for StackSets in AWS Organizations <https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/stacksets-orgs-manage-auto-deployment.html>`_ in the *AWS CloudFormation User Guide* .
|
|
9284
9823
|
|
|
9285
9824
|
Required if the permissions model is ``SERVICE_MANAGED`` . (Not used with self-managed permissions.)
|
|
9286
9825
|
|
|
@@ -9293,14 +9832,14 @@ class CfnStackSetProps:
|
|
|
9293
9832
|
def call_as(self) -> typing.Optional[builtins.str]:
|
|
9294
9833
|
'''Specifies whether you are acting as an account administrator in the organization's management account or as a delegated administrator in a member account.
|
|
9295
9834
|
|
|
9296
|
-
By default, ``SELF`` is specified. Use ``SELF`` for
|
|
9835
|
+
By default, ``SELF`` is specified. Use ``SELF`` for StackSets with self-managed permissions.
|
|
9297
9836
|
|
|
9298
|
-
- To create a
|
|
9299
|
-
- To create a
|
|
9837
|
+
- To create a StackSet with service-managed permissions while signed in to the management account, specify ``SELF`` .
|
|
9838
|
+
- To create a StackSet with service-managed permissions while signed in to a delegated administrator account, specify ``DELEGATED_ADMIN`` .
|
|
9300
9839
|
|
|
9301
9840
|
Your AWS account must be registered as a delegated admin in the management account. For more information, see `Register a delegated administrator <https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/stacksets-orgs-delegated-admin.html>`_ in the *AWS CloudFormation User Guide* .
|
|
9302
9841
|
|
|
9303
|
-
|
|
9842
|
+
StackSets with service-managed permissions are created in the management account, including StackSets that are created by delegated administrators.
|
|
9304
9843
|
|
|
9305
9844
|
Valid only if the permissions model is ``SERVICE_MANAGED`` .
|
|
9306
9845
|
|
|
@@ -9311,9 +9850,9 @@ class CfnStackSetProps:
|
|
|
9311
9850
|
|
|
9312
9851
|
@builtins.property
|
|
9313
9852
|
def capabilities(self) -> typing.Optional[typing.List[builtins.str]]:
|
|
9314
|
-
'''The capabilities that are allowed in the
|
|
9853
|
+
'''The capabilities that are allowed in the StackSet.
|
|
9315
9854
|
|
|
9316
|
-
Some
|
|
9855
|
+
Some StackSet templates might include resources that can affect permissions in your AWS account —for example, by creating new IAM users. For more information, see `Acknowledging IAM resources in CloudFormation templates <https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/control-access-with-iam.html#using-iam-capabilities>`_ in the *AWS CloudFormation User Guide* .
|
|
9317
9856
|
|
|
9318
9857
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-stackset.html#cfn-cloudformation-stackset-capabilities
|
|
9319
9858
|
'''
|
|
@@ -9322,7 +9861,7 @@ class CfnStackSetProps:
|
|
|
9322
9861
|
|
|
9323
9862
|
@builtins.property
|
|
9324
9863
|
def description(self) -> typing.Optional[builtins.str]:
|
|
9325
|
-
'''A description of the
|
|
9864
|
+
'''A description of the StackSet.
|
|
9326
9865
|
|
|
9327
9866
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-stackset.html#cfn-cloudformation-stackset-description
|
|
9328
9867
|
'''
|
|
@@ -9331,9 +9870,9 @@ class CfnStackSetProps:
|
|
|
9331
9870
|
|
|
9332
9871
|
@builtins.property
|
|
9333
9872
|
def execution_role_name(self) -> typing.Optional[builtins.str]:
|
|
9334
|
-
'''The name of the IAM execution role to use to create the
|
|
9873
|
+
'''The name of the IAM execution role to use to create the StackSet.
|
|
9335
9874
|
|
|
9336
|
-
If you don't specify an execution role, CloudFormation uses the ``AWSCloudFormationStackSetExecutionRole`` role for the
|
|
9875
|
+
If you don't specify an execution role, CloudFormation uses the ``AWSCloudFormationStackSetExecutionRole`` role for the StackSet operation.
|
|
9337
9876
|
|
|
9338
9877
|
Valid only if the permissions model is ``SELF_MANAGED`` .
|
|
9339
9878
|
|
|
@@ -9353,7 +9892,7 @@ class CfnStackSetProps:
|
|
|
9353
9892
|
|
|
9354
9893
|
If there are already running or queued operations, StackSets queues all incoming operations even if they are non-conflicting.
|
|
9355
9894
|
|
|
9356
|
-
You can't modify your
|
|
9895
|
+
You can't modify your StackSet's execution configuration while there are running or queued operations for that StackSet.
|
|
9357
9896
|
|
|
9358
9897
|
When inactive (default), StackSets performs one operation at a time in request order.
|
|
9359
9898
|
|
|
@@ -9366,7 +9905,7 @@ class CfnStackSetProps:
|
|
|
9366
9905
|
def operation_preferences(
|
|
9367
9906
|
self,
|
|
9368
9907
|
) -> typing.Optional[typing.Union["IResolvable", "CfnStackSet.OperationPreferencesProperty"]]:
|
|
9369
|
-
'''The user-specified preferences for how CloudFormation performs a
|
|
9908
|
+
'''The user-specified preferences for how CloudFormation performs a StackSet operation.
|
|
9370
9909
|
|
|
9371
9910
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-stackset.html#cfn-cloudformation-stackset-operationpreferences
|
|
9372
9911
|
'''
|
|
@@ -9377,7 +9916,7 @@ class CfnStackSetProps:
|
|
|
9377
9916
|
def parameters(
|
|
9378
9917
|
self,
|
|
9379
9918
|
) -> typing.Optional[typing.Union["IResolvable", typing.List[typing.Union["IResolvable", "CfnStackSet.ParameterProperty"]]]]:
|
|
9380
|
-
'''The input parameters for the
|
|
9919
|
+
'''The input parameters for the StackSet template.
|
|
9381
9920
|
|
|
9382
9921
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-stackset.html#cfn-cloudformation-stackset-parameters
|
|
9383
9922
|
'''
|
|
@@ -9412,7 +9951,7 @@ class CfnStackSetProps:
|
|
|
9412
9951
|
def template_body(self) -> typing.Optional[builtins.str]:
|
|
9413
9952
|
'''The structure that contains the template body, with a minimum length of 1 byte and a maximum length of 51,200 bytes.
|
|
9414
9953
|
|
|
9415
|
-
You must include either ``TemplateURL`` or ``TemplateBody`` in a StackSet, but you can't use both. Dynamic references in the ``TemplateBody`` may not work correctly in all cases. It's recommended to pass templates
|
|
9954
|
+
You must include either ``TemplateURL`` or ``TemplateBody`` in a StackSet, but you can't use both. Dynamic references in the ``TemplateBody`` may not work correctly in all cases. It's recommended to pass templates that contain dynamic references through ``TemplateUrl`` instead.
|
|
9416
9955
|
|
|
9417
9956
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-stackset.html#cfn-cloudformation-stackset-templatebody
|
|
9418
9957
|
'''
|
|
@@ -9421,7 +9960,7 @@ class CfnStackSetProps:
|
|
|
9421
9960
|
|
|
9422
9961
|
@builtins.property
|
|
9423
9962
|
def template_url(self) -> typing.Optional[builtins.str]:
|
|
9424
|
-
'''The URL of a file
|
|
9963
|
+
'''The URL of a file that contains the template body.
|
|
9425
9964
|
|
|
9426
9965
|
The URL must point to a template (max size: 1 MB) that's located in an Amazon S3 bucket or a Systems Manager document. The location for an Amazon S3 bucket must start with ``https://`` .
|
|
9427
9966
|
|
|
@@ -9969,7 +10508,7 @@ class CfnTypeActivationProps:
|
|
|
9969
10508
|
:param publisher_id: The ID of the extension publisher. Conditional: You must specify ``PublicTypeArn`` , or ``TypeName`` , ``Type`` , and ``PublisherId`` .
|
|
9970
10509
|
:param type: The extension type. Conditional: You must specify ``PublicTypeArn`` , or ``TypeName`` , ``Type`` , and ``PublisherId`` .
|
|
9971
10510
|
:param type_name: The name of the extension. Conditional: You must specify ``PublicTypeArn`` , or ``TypeName`` , ``Type`` , and ``PublisherId`` .
|
|
9972
|
-
:param type_name_alias: An alias to assign to the public extension
|
|
10511
|
+
:param type_name_alias: An alias to assign to the public extension in this account and Region. If you specify an alias for the extension, CloudFormation treats the alias as the extension type name within this account and Region. You must use the alias to refer to the extension in your templates, API calls, and CloudFormation console. An extension alias must be unique within a given account and Region. You can activate the same public resource multiple times in the same account and Region, using different type name aliases.
|
|
9973
10512
|
:param version_bump: Manually updates a previously-activated type to a new major or minor version, if available. You can also use this parameter to update the value of ``AutoUpdate`` . - ``MAJOR`` : CloudFormation updates the extension to the newest major version, if one is available. - ``MINOR`` : CloudFormation updates the extension to the newest minor version, if one is available.
|
|
9974
10513
|
|
|
9975
10514
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-typeactivation.html
|
|
@@ -10125,7 +10664,7 @@ class CfnTypeActivationProps:
|
|
|
10125
10664
|
|
|
10126
10665
|
@builtins.property
|
|
10127
10666
|
def type_name_alias(self) -> typing.Optional[builtins.str]:
|
|
10128
|
-
'''An alias to assign to the public extension
|
|
10667
|
+
'''An alias to assign to the public extension in this account and Region.
|
|
10129
10668
|
|
|
10130
10669
|
If you specify an alias for the extension, CloudFormation treats the alias as the extension type name within this account and Region. You must use the alias to refer to the extension in your templates, API calls, and CloudFormation console.
|
|
10131
10670
|
|
|
@@ -10378,7 +10917,7 @@ class CfnWaitConditionProps:
|
|
|
10378
10917
|
'''Properties for defining a ``CfnWaitCondition``.
|
|
10379
10918
|
|
|
10380
10919
|
:param count: The number of success signals that CloudFormation must receive before it continues the stack creation process. When the wait condition receives the requisite number of success signals, CloudFormation resumes the creation of the stack. If the wait condition doesn't receive the specified number of success signals before the Timeout period expires, CloudFormation assumes that the wait condition has failed and rolls the stack back. Updates aren't supported.
|
|
10381
|
-
:param handle: A reference to the wait condition handle used to signal this wait condition. Use the ``Ref`` intrinsic function to specify an `AWS::CloudFormation::WaitConditionHandle <https://docs.aws.amazon.com/AWSCloudFormation/latest/
|
|
10920
|
+
:param handle: A reference to the wait condition handle used to signal this wait condition. Use the ``Ref`` intrinsic function to specify an `AWS::CloudFormation::WaitConditionHandle <https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/aws-resource-cloudformation-waitconditionhandle.html>`_ resource. Anytime you add a ``WaitCondition`` resource during a stack update, you must associate the wait condition with a new WaitConditionHandle resource. Don't reuse an old wait condition handle that has already been defined in the template. If you reuse a wait condition handle, the wait condition might evaluate old signals from a previous create or update stack command. Updates aren't supported.
|
|
10382
10921
|
:param timeout: The length of time (in seconds) to wait for the number of signals that the ``Count`` property specifies. ``Timeout`` is a minimum-bound property, meaning the timeout occurs no sooner than the time you specify, but can occur shortly thereafter. The maximum time that can be specified for this property is 12 hours (43200 seconds). Updates aren't supported.
|
|
10383
10922
|
|
|
10384
10923
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloudformation-waitcondition.html
|
|
@@ -10426,7 +10965,7 @@ class CfnWaitConditionProps:
|
|
|
10426
10965
|
def handle(self) -> typing.Optional[builtins.str]:
|
|
10427
10966
|
'''A reference to the wait condition handle used to signal this wait condition.
|
|
10428
10967
|
|
|
10429
|
-
Use the ``Ref`` intrinsic function to specify an `AWS::CloudFormation::WaitConditionHandle <https://docs.aws.amazon.com/AWSCloudFormation/latest/
|
|
10968
|
+
Use the ``Ref`` intrinsic function to specify an `AWS::CloudFormation::WaitConditionHandle <https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/aws-resource-cloudformation-waitconditionhandle.html>`_ resource.
|
|
10430
10969
|
|
|
10431
10970
|
Anytime you add a ``WaitCondition`` resource during a stack update, you must associate the wait condition with a new WaitConditionHandle resource. Don't reuse an old wait condition handle that has already been defined in the template. If you reuse a wait condition handle, the wait condition might evaluate old signals from a previous create or update stack command.
|
|
10432
10971
|
|
|
@@ -10618,12 +11157,14 @@ class ContextProvider(metaclass=jsii.JSIIMeta, jsii_type="aws-cdk-lib.ContextPro
|
|
|
10618
11157
|
scope: _constructs_77d1e7e8.Construct,
|
|
10619
11158
|
*,
|
|
10620
11159
|
provider: builtins.str,
|
|
11160
|
+
additional_cache_key: typing.Optional[builtins.str] = None,
|
|
10621
11161
|
include_environment: typing.Optional[builtins.bool] = None,
|
|
10622
11162
|
props: typing.Optional[typing.Mapping[builtins.str, typing.Any]] = None,
|
|
10623
11163
|
) -> "GetContextKeyResult":
|
|
10624
11164
|
'''
|
|
10625
11165
|
:param scope: -
|
|
10626
11166
|
:param provider: The context provider to query.
|
|
11167
|
+
:param additional_cache_key: Adds an additional discriminator to the ``cdk.context.json`` cache key. Default: - no additional cache key
|
|
10627
11168
|
:param include_environment: Whether to include the stack's account and region automatically. Default: true
|
|
10628
11169
|
:param props: Provider-specific properties.
|
|
10629
11170
|
|
|
@@ -10633,7 +11174,10 @@ class ContextProvider(metaclass=jsii.JSIIMeta, jsii_type="aws-cdk-lib.ContextPro
|
|
|
10633
11174
|
type_hints = typing.get_type_hints(_typecheckingstub__43574b9eb91c9a4b6203c6c4dae8ace9123c2746c25560e39a6b8a8db6ca67ff)
|
|
10634
11175
|
check_type(argname="argument scope", value=scope, expected_type=type_hints["scope"])
|
|
10635
11176
|
options = GetContextKeyOptions(
|
|
10636
|
-
provider=provider,
|
|
11177
|
+
provider=provider,
|
|
11178
|
+
additional_cache_key=additional_cache_key,
|
|
11179
|
+
include_environment=include_environment,
|
|
11180
|
+
props=props,
|
|
10637
11181
|
)
|
|
10638
11182
|
|
|
10639
11183
|
return typing.cast("GetContextKeyResult", jsii.sinvoke(cls, "getKey", [scope, options]))
|
|
@@ -10648,6 +11192,7 @@ class ContextProvider(metaclass=jsii.JSIIMeta, jsii_type="aws-cdk-lib.ContextPro
|
|
|
10648
11192
|
ignore_error_on_missing_context: typing.Optional[builtins.bool] = None,
|
|
10649
11193
|
must_exist: typing.Optional[builtins.bool] = None,
|
|
10650
11194
|
provider: builtins.str,
|
|
11195
|
+
additional_cache_key: typing.Optional[builtins.str] = None,
|
|
10651
11196
|
include_environment: typing.Optional[builtins.bool] = None,
|
|
10652
11197
|
props: typing.Optional[typing.Mapping[builtins.str, typing.Any]] = None,
|
|
10653
11198
|
) -> "GetContextValueResult":
|
|
@@ -10657,6 +11202,7 @@ class ContextProvider(metaclass=jsii.JSIIMeta, jsii_type="aws-cdk-lib.ContextPro
|
|
|
10657
11202
|
:param ignore_error_on_missing_context: (deprecated) Ignore a lookup failure and return the ``dummyValue`` instead. ``mustExist`` is the recommended alias for this deprecated property (note that its value is reversed). Default: false
|
|
10658
11203
|
:param must_exist: Whether the resource must exist. If this is set (the default), the query fails if the value or resource we tried to look up doesn't exist. If this is ``false`` and the value we tried to look up could not be found, the failure is suppressed and ``dummyValue`` is officially returned instead. When this happens, ``dummyValue`` is encoded into cached context and it will never be refreshed anymore until the user runs ``cdk context --reset <key>``. Note that it is not possible for the CDK app code to make a distinction between "the lookup has not been performed yet" and "the lookup didn't find anything and we returned a default value instead". Context providers This feature must explicitly be supported by context providers. It is currently supported by: - KMS key provider - SSM parameter provider Note to implementors The dummy value should not be returned for all SDK lookup failures. For example, "no network" or "no credentials" or "malformed query" should not lead to the dummy value being returned. Only the case of "no such resource" should. Default: true
|
|
10659
11204
|
:param provider: The context provider to query.
|
|
11205
|
+
:param additional_cache_key: Adds an additional discriminator to the ``cdk.context.json`` cache key. Default: - no additional cache key
|
|
10660
11206
|
:param include_environment: Whether to include the stack's account and region automatically. Default: true
|
|
10661
11207
|
:param props: Provider-specific properties.
|
|
10662
11208
|
'''
|
|
@@ -10668,6 +11214,7 @@ class ContextProvider(metaclass=jsii.JSIIMeta, jsii_type="aws-cdk-lib.ContextPro
|
|
|
10668
11214
|
ignore_error_on_missing_context=ignore_error_on_missing_context,
|
|
10669
11215
|
must_exist=must_exist,
|
|
10670
11216
|
provider=provider,
|
|
11217
|
+
additional_cache_key=additional_cache_key,
|
|
10671
11218
|
include_environment=include_environment,
|
|
10672
11219
|
props=props,
|
|
10673
11220
|
)
|
|
@@ -11461,11 +12008,18 @@ class CustomResourceProviderRuntime(enum.Enum):
|
|
|
11461
12008
|
:stability: deprecated
|
|
11462
12009
|
'''
|
|
11463
12010
|
NODEJS_16_X = "NODEJS_16_X"
|
|
11464
|
-
'''Node.js 16.x.
|
|
12011
|
+
'''(deprecated) Node.js 16.x.
|
|
12012
|
+
|
|
12013
|
+
:deprecated: Use latest version
|
|
12014
|
+
|
|
12015
|
+
:stability: deprecated
|
|
12016
|
+
'''
|
|
11465
12017
|
NODEJS_18_X = "NODEJS_18_X"
|
|
11466
12018
|
'''Node.js 18.x.'''
|
|
11467
12019
|
NODEJS_20_X = "NODEJS_20_X"
|
|
11468
12020
|
'''Node.js 20.x.'''
|
|
12021
|
+
NODEJS_22_X = "NODEJS_22_X"
|
|
12022
|
+
'''Node.js 22.x.'''
|
|
11469
12023
|
|
|
11470
12024
|
|
|
11471
12025
|
@jsii.data_type(
|
|
@@ -11549,9 +12103,16 @@ class DefaultStackSynthesizerProps:
|
|
|
11549
12103
|
|
|
11550
12104
|
Example::
|
|
11551
12105
|
|
|
11552
|
-
|
|
12106
|
+
# app: App
|
|
12107
|
+
|
|
12108
|
+
|
|
12109
|
+
prod_stage = Stage(app, "ProdStage",
|
|
12110
|
+
permissions_boundary=PermissionsBoundary.from_name("cdk-${Qualifier}-PermissionsBoundary-${AWS::AccountId}-${AWS::Region}")
|
|
12111
|
+
)
|
|
12112
|
+
|
|
12113
|
+
Stack(prod_stage, "ProdStack",
|
|
11553
12114
|
synthesizer=DefaultStackSynthesizer(
|
|
11554
|
-
|
|
12115
|
+
qualifier="custom"
|
|
11555
12116
|
)
|
|
11556
12117
|
)
|
|
11557
12118
|
'''
|
|
@@ -11916,6 +12477,7 @@ class DefaultStackSynthesizerProps:
|
|
|
11916
12477
|
"cache_from": "cacheFrom",
|
|
11917
12478
|
"cache_to": "cacheTo",
|
|
11918
12479
|
"file": "file",
|
|
12480
|
+
"network": "network",
|
|
11919
12481
|
"platform": "platform",
|
|
11920
12482
|
"target_stage": "targetStage",
|
|
11921
12483
|
},
|
|
@@ -11929,6 +12491,7 @@ class DockerBuildOptions:
|
|
|
11929
12491
|
cache_from: typing.Optional[typing.Sequence[typing.Union["DockerCacheOption", typing.Dict[builtins.str, typing.Any]]]] = None,
|
|
11930
12492
|
cache_to: typing.Optional[typing.Union["DockerCacheOption", typing.Dict[builtins.str, typing.Any]]] = None,
|
|
11931
12493
|
file: typing.Optional[builtins.str] = None,
|
|
12494
|
+
network: typing.Optional[builtins.str] = None,
|
|
11932
12495
|
platform: typing.Optional[builtins.str] = None,
|
|
11933
12496
|
target_stage: typing.Optional[builtins.str] = None,
|
|
11934
12497
|
) -> None:
|
|
@@ -11939,6 +12502,7 @@ class DockerBuildOptions:
|
|
|
11939
12502
|
:param cache_from: Cache from options to pass to the ``docker build`` command. Default: - no cache from args are passed
|
|
11940
12503
|
:param cache_to: Cache to options to pass to the ``docker build`` command. Default: - no cache to args are passed
|
|
11941
12504
|
:param file: Name of the Dockerfile, must relative to the docker build path. Default: ``Dockerfile``
|
|
12505
|
+
:param network: Docker `Networking options <https://docs.docker.com/reference/cli/docker/buildx/build/#network>`_. Default: - no networking options
|
|
11942
12506
|
:param platform: Set platform if server is multi-platform capable. *Requires Docker Engine API v1.38+*. Example value: ``linux/amd64`` Default: - no platform specified
|
|
11943
12507
|
:param target_stage: Set build target for multi-stage container builds. Any stage defined afterwards will be ignored. Example value: ``build-env`` Default: - Build all stages defined in the Dockerfile
|
|
11944
12508
|
|
|
@@ -11970,6 +12534,7 @@ class DockerBuildOptions:
|
|
|
11970
12534
|
check_type(argname="argument cache_from", value=cache_from, expected_type=type_hints["cache_from"])
|
|
11971
12535
|
check_type(argname="argument cache_to", value=cache_to, expected_type=type_hints["cache_to"])
|
|
11972
12536
|
check_type(argname="argument file", value=file, expected_type=type_hints["file"])
|
|
12537
|
+
check_type(argname="argument network", value=network, expected_type=type_hints["network"])
|
|
11973
12538
|
check_type(argname="argument platform", value=platform, expected_type=type_hints["platform"])
|
|
11974
12539
|
check_type(argname="argument target_stage", value=target_stage, expected_type=type_hints["target_stage"])
|
|
11975
12540
|
self._values: typing.Dict[builtins.str, typing.Any] = {}
|
|
@@ -11983,6 +12548,8 @@ class DockerBuildOptions:
|
|
|
11983
12548
|
self._values["cache_to"] = cache_to
|
|
11984
12549
|
if file is not None:
|
|
11985
12550
|
self._values["file"] = file
|
|
12551
|
+
if network is not None:
|
|
12552
|
+
self._values["network"] = network
|
|
11986
12553
|
if platform is not None:
|
|
11987
12554
|
self._values["platform"] = platform
|
|
11988
12555
|
if target_stage is not None:
|
|
@@ -12033,6 +12600,15 @@ class DockerBuildOptions:
|
|
|
12033
12600
|
result = self._values.get("file")
|
|
12034
12601
|
return typing.cast(typing.Optional[builtins.str], result)
|
|
12035
12602
|
|
|
12603
|
+
@builtins.property
|
|
12604
|
+
def network(self) -> typing.Optional[builtins.str]:
|
|
12605
|
+
'''Docker `Networking options <https://docs.docker.com/reference/cli/docker/buildx/build/#network>`_.
|
|
12606
|
+
|
|
12607
|
+
:default: - no networking options
|
|
12608
|
+
'''
|
|
12609
|
+
result = self._values.get("network")
|
|
12610
|
+
return typing.cast(typing.Optional[builtins.str], result)
|
|
12611
|
+
|
|
12036
12612
|
@builtins.property
|
|
12037
12613
|
def platform(self) -> typing.Optional[builtins.str]:
|
|
12038
12614
|
'''Set platform if server is multi-platform capable. *Requires Docker Engine API v1.38+*.
|
|
@@ -12243,6 +12819,7 @@ class DockerImage(metaclass=jsii.JSIIMeta, jsii_type="aws-cdk-lib.DockerImage"):
|
|
|
12243
12819
|
cache_from: typing.Optional[typing.Sequence[typing.Union[DockerCacheOption, typing.Dict[builtins.str, typing.Any]]]] = None,
|
|
12244
12820
|
cache_to: typing.Optional[typing.Union[DockerCacheOption, typing.Dict[builtins.str, typing.Any]]] = None,
|
|
12245
12821
|
file: typing.Optional[builtins.str] = None,
|
|
12822
|
+
network: typing.Optional[builtins.str] = None,
|
|
12246
12823
|
platform: typing.Optional[builtins.str] = None,
|
|
12247
12824
|
target_stage: typing.Optional[builtins.str] = None,
|
|
12248
12825
|
) -> "DockerImage":
|
|
@@ -12254,6 +12831,7 @@ class DockerImage(metaclass=jsii.JSIIMeta, jsii_type="aws-cdk-lib.DockerImage"):
|
|
|
12254
12831
|
:param cache_from: Cache from options to pass to the ``docker build`` command. Default: - no cache from args are passed
|
|
12255
12832
|
:param cache_to: Cache to options to pass to the ``docker build`` command. Default: - no cache to args are passed
|
|
12256
12833
|
:param file: Name of the Dockerfile, must relative to the docker build path. Default: ``Dockerfile``
|
|
12834
|
+
:param network: Docker `Networking options <https://docs.docker.com/reference/cli/docker/buildx/build/#network>`_. Default: - no networking options
|
|
12257
12835
|
:param platform: Set platform if server is multi-platform capable. *Requires Docker Engine API v1.38+*. Example value: ``linux/amd64`` Default: - no platform specified
|
|
12258
12836
|
:param target_stage: Set build target for multi-stage container builds. Any stage defined afterwards will be ignored. Example value: ``build-env`` Default: - Build all stages defined in the Dockerfile
|
|
12259
12837
|
'''
|
|
@@ -12266,6 +12844,7 @@ class DockerImage(metaclass=jsii.JSIIMeta, jsii_type="aws-cdk-lib.DockerImage"):
|
|
|
12266
12844
|
cache_from=cache_from,
|
|
12267
12845
|
cache_to=cache_to,
|
|
12268
12846
|
file=file,
|
|
12847
|
+
network=network,
|
|
12269
12848
|
platform=platform,
|
|
12270
12849
|
target_stage=target_stage,
|
|
12271
12850
|
)
|
|
@@ -13139,19 +13718,19 @@ class Duration(metaclass=jsii.JSIIMeta, jsii_type="aws-cdk-lib.Duration"):
|
|
|
13139
13718
|
|
|
13140
13719
|
Example::
|
|
13141
13720
|
|
|
13142
|
-
|
|
13721
|
+
import aws_cdk.aws_lambda as lambda_
|
|
13143
13722
|
|
|
13144
|
-
|
|
13145
|
-
|
|
13146
|
-
|
|
13147
|
-
|
|
13148
|
-
|
|
13149
|
-
|
|
13150
|
-
|
|
13151
|
-
|
|
13152
|
-
|
|
13153
|
-
|
|
13154
|
-
|
|
13723
|
+
# fn: lambda.Function
|
|
13724
|
+
|
|
13725
|
+
fn_url = fn.add_function_url(auth_type=lambda_.FunctionUrlAuthType.NONE)
|
|
13726
|
+
|
|
13727
|
+
cloudfront.Distribution(self, "Distribution",
|
|
13728
|
+
default_behavior=cloudfront.BehaviorOptions(
|
|
13729
|
+
origin=origins.FunctionUrlOrigin(fn_url,
|
|
13730
|
+
read_timeout=Duration.seconds(30),
|
|
13731
|
+
response_completion_timeout=Duration.seconds(90),
|
|
13732
|
+
keepalive_timeout=Duration.seconds(45)
|
|
13733
|
+
)
|
|
13155
13734
|
)
|
|
13156
13735
|
)
|
|
13157
13736
|
'''
|
|
@@ -13462,7 +14041,6 @@ class Environment:
|
|
|
13462
14041
|
Example::
|
|
13463
14042
|
|
|
13464
14043
|
import aws_cdk as cdk
|
|
13465
|
-
import aws_cdk.aws_cloudwatch as cloudwatch
|
|
13466
14044
|
|
|
13467
14045
|
|
|
13468
14046
|
app = cdk.App()
|
|
@@ -13470,18 +14048,10 @@ class Environment:
|
|
|
13470
14048
|
|
|
13471
14049
|
global_table = dynamodb.TableV2(stack, "GlobalTable",
|
|
13472
14050
|
partition_key=dynamodb.Attribute(name="pk", type=dynamodb.AttributeType.STRING),
|
|
13473
|
-
replicas=[dynamodb.ReplicaTableProps(region="us-east-1")
|
|
13474
|
-
]
|
|
14051
|
+
replicas=[dynamodb.ReplicaTableProps(region="us-east-1")]
|
|
13475
14052
|
)
|
|
13476
14053
|
|
|
13477
|
-
|
|
13478
|
-
metric = global_table.metric_consumed_read_capacity_units()
|
|
13479
|
-
|
|
13480
|
-
cloudwatch.Alarm(self, "Alarm",
|
|
13481
|
-
metric=metric,
|
|
13482
|
-
evaluation_periods=1,
|
|
13483
|
-
threshold=1
|
|
13484
|
-
)
|
|
14054
|
+
global_table.add_replica(region="us-east-2", deletion_protection=True)
|
|
13485
14055
|
'''
|
|
13486
14056
|
if __debug__:
|
|
13487
14057
|
type_hints = typing.get_type_hints(_typecheckingstub__779551ef0a4b144070fd2c3e88ff076e32ad12d30facdc65a940b7a8791f27c6)
|
|
@@ -13568,6 +14138,21 @@ class Errors(metaclass=jsii.JSIIMeta, jsii_type="aws-cdk-lib.Errors"):
|
|
|
13568
14138
|
check_type(argname="argument x", value=x, expected_type=type_hints["x"])
|
|
13569
14139
|
return typing.cast(builtins.bool, jsii.sinvoke(cls, "isAssertionError", [x]))
|
|
13570
14140
|
|
|
14141
|
+
@jsii.member(jsii_name="isAssumptionError")
|
|
14142
|
+
@builtins.classmethod
|
|
14143
|
+
def is_assumption_error(cls, x: typing.Any) -> builtins.bool:
|
|
14144
|
+
'''Test whether the given error is an AssumptionError.
|
|
14145
|
+
|
|
14146
|
+
An AssumptionError is thrown when a construct made an assumption somewhere that doesn't hold true.
|
|
14147
|
+
This error always indicates a bug in the construct.
|
|
14148
|
+
|
|
14149
|
+
:param x: -
|
|
14150
|
+
'''
|
|
14151
|
+
if __debug__:
|
|
14152
|
+
type_hints = typing.get_type_hints(_typecheckingstub__1c1f003fc36fb573df38915f709b99bb9c1a74aac84c52ba7fe12c54cf2cae8d)
|
|
14153
|
+
check_type(argname="argument x", value=x, expected_type=type_hints["x"])
|
|
14154
|
+
return typing.cast(builtins.bool, jsii.sinvoke(cls, "isAssumptionError", [x]))
|
|
14155
|
+
|
|
13571
14156
|
@jsii.member(jsii_name="isCloudAssemblyError")
|
|
13572
14157
|
@builtins.classmethod
|
|
13573
14158
|
def is_cloud_assembly_error(cls, x: typing.Any) -> builtins.bool:
|
|
@@ -13597,6 +14182,20 @@ class Errors(metaclass=jsii.JSIIMeta, jsii_type="aws-cdk-lib.Errors"):
|
|
|
13597
14182
|
check_type(argname="argument x", value=x, expected_type=type_hints["x"])
|
|
13598
14183
|
return typing.cast(builtins.bool, jsii.sinvoke(cls, "isConstructError", [x]))
|
|
13599
14184
|
|
|
14185
|
+
@jsii.member(jsii_name="isExecutionError")
|
|
14186
|
+
@builtins.classmethod
|
|
14187
|
+
def is_execution_error(cls, x: typing.Any) -> builtins.bool:
|
|
14188
|
+
'''Test whether the given error is an ExecutionError.
|
|
14189
|
+
|
|
14190
|
+
An ExecutionError is thrown if an externally executed script or code failed.
|
|
14191
|
+
|
|
14192
|
+
:param x: -
|
|
14193
|
+
'''
|
|
14194
|
+
if __debug__:
|
|
14195
|
+
type_hints = typing.get_type_hints(_typecheckingstub__f2bf053437a17fa72244a5b0342af56acbb0f4ad4bc7fc877ac3974df0b811d3)
|
|
14196
|
+
check_type(argname="argument x", value=x, expected_type=type_hints["x"])
|
|
14197
|
+
return typing.cast(builtins.bool, jsii.sinvoke(cls, "isExecutionError", [x]))
|
|
14198
|
+
|
|
13600
14199
|
@jsii.member(jsii_name="isValidationError")
|
|
13601
14200
|
@builtins.classmethod
|
|
13602
14201
|
def is_validation_error(cls, x: typing.Any) -> builtins.bool:
|
|
@@ -13728,17 +14327,16 @@ class ExportValueOptions:
|
|
|
13728
14327
|
:param description: The description of the outputs. Default: - No description
|
|
13729
14328
|
:param name: The name of the export to create. Default: - A name is automatically chosen
|
|
13730
14329
|
|
|
13731
|
-
:exampleMetadata:
|
|
14330
|
+
:exampleMetadata: infused
|
|
13732
14331
|
|
|
13733
14332
|
Example::
|
|
13734
14333
|
|
|
13735
|
-
#
|
|
13736
|
-
# The values are placeholders you should change.
|
|
13737
|
-
import aws_cdk as cdk
|
|
14334
|
+
# stack: Stack
|
|
13738
14335
|
|
|
13739
|
-
|
|
13740
|
-
|
|
13741
|
-
name="
|
|
14336
|
+
|
|
14337
|
+
stack.export_value(my_bucket.bucket_name,
|
|
14338
|
+
name="TheAwesomeBucket",
|
|
14339
|
+
description="The name of an S3 bucket"
|
|
13742
14340
|
)
|
|
13743
14341
|
'''
|
|
13744
14342
|
if __debug__:
|
|
@@ -15180,6 +15778,7 @@ class Fn(metaclass=jsii.JSIIMeta, jsii_type="aws-cdk-lib.Fn"):
|
|
|
15180
15778
|
jsii_struct_bases=[],
|
|
15181
15779
|
name_mapping={
|
|
15182
15780
|
"provider": "provider",
|
|
15781
|
+
"additional_cache_key": "additionalCacheKey",
|
|
15183
15782
|
"include_environment": "includeEnvironment",
|
|
15184
15783
|
"props": "props",
|
|
15185
15784
|
},
|
|
@@ -15189,11 +15788,13 @@ class GetContextKeyOptions:
|
|
|
15189
15788
|
self,
|
|
15190
15789
|
*,
|
|
15191
15790
|
provider: builtins.str,
|
|
15791
|
+
additional_cache_key: typing.Optional[builtins.str] = None,
|
|
15192
15792
|
include_environment: typing.Optional[builtins.bool] = None,
|
|
15193
15793
|
props: typing.Optional[typing.Mapping[builtins.str, typing.Any]] = None,
|
|
15194
15794
|
) -> None:
|
|
15195
15795
|
'''
|
|
15196
15796
|
:param provider: The context provider to query.
|
|
15797
|
+
:param additional_cache_key: Adds an additional discriminator to the ``cdk.context.json`` cache key. Default: - no additional cache key
|
|
15197
15798
|
:param include_environment: Whether to include the stack's account and region automatically. Default: true
|
|
15198
15799
|
:param props: Provider-specific properties.
|
|
15199
15800
|
|
|
@@ -15211,6 +15812,7 @@ class GetContextKeyOptions:
|
|
|
15211
15812
|
provider="provider",
|
|
15212
15813
|
|
|
15213
15814
|
# the properties below are optional
|
|
15815
|
+
additional_cache_key="additionalCacheKey",
|
|
15214
15816
|
include_environment=False,
|
|
15215
15817
|
props={
|
|
15216
15818
|
"props_key": props
|
|
@@ -15220,11 +15822,14 @@ class GetContextKeyOptions:
|
|
|
15220
15822
|
if __debug__:
|
|
15221
15823
|
type_hints = typing.get_type_hints(_typecheckingstub__4a3bc64bd38ef14ad5ebdf5807563d2355b26f4f0c446c315782c9818b76192a)
|
|
15222
15824
|
check_type(argname="argument provider", value=provider, expected_type=type_hints["provider"])
|
|
15825
|
+
check_type(argname="argument additional_cache_key", value=additional_cache_key, expected_type=type_hints["additional_cache_key"])
|
|
15223
15826
|
check_type(argname="argument include_environment", value=include_environment, expected_type=type_hints["include_environment"])
|
|
15224
15827
|
check_type(argname="argument props", value=props, expected_type=type_hints["props"])
|
|
15225
15828
|
self._values: typing.Dict[builtins.str, typing.Any] = {
|
|
15226
15829
|
"provider": provider,
|
|
15227
15830
|
}
|
|
15831
|
+
if additional_cache_key is not None:
|
|
15832
|
+
self._values["additional_cache_key"] = additional_cache_key
|
|
15228
15833
|
if include_environment is not None:
|
|
15229
15834
|
self._values["include_environment"] = include_environment
|
|
15230
15835
|
if props is not None:
|
|
@@ -15237,6 +15842,15 @@ class GetContextKeyOptions:
|
|
|
15237
15842
|
assert result is not None, "Required property 'provider' is missing"
|
|
15238
15843
|
return typing.cast(builtins.str, result)
|
|
15239
15844
|
|
|
15845
|
+
@builtins.property
|
|
15846
|
+
def additional_cache_key(self) -> typing.Optional[builtins.str]:
|
|
15847
|
+
'''Adds an additional discriminator to the ``cdk.context.json`` cache key.
|
|
15848
|
+
|
|
15849
|
+
:default: - no additional cache key
|
|
15850
|
+
'''
|
|
15851
|
+
result = self._values.get("additional_cache_key")
|
|
15852
|
+
return typing.cast(typing.Optional[builtins.str], result)
|
|
15853
|
+
|
|
15240
15854
|
@builtins.property
|
|
15241
15855
|
def include_environment(self) -> typing.Optional[builtins.bool]:
|
|
15242
15856
|
'''Whether to include the stack's account and region automatically.
|
|
@@ -15335,6 +15949,7 @@ class GetContextKeyResult:
|
|
|
15335
15949
|
jsii_struct_bases=[GetContextKeyOptions],
|
|
15336
15950
|
name_mapping={
|
|
15337
15951
|
"provider": "provider",
|
|
15952
|
+
"additional_cache_key": "additionalCacheKey",
|
|
15338
15953
|
"include_environment": "includeEnvironment",
|
|
15339
15954
|
"props": "props",
|
|
15340
15955
|
"dummy_value": "dummyValue",
|
|
@@ -15347,6 +15962,7 @@ class GetContextValueOptions(GetContextKeyOptions):
|
|
|
15347
15962
|
self,
|
|
15348
15963
|
*,
|
|
15349
15964
|
provider: builtins.str,
|
|
15965
|
+
additional_cache_key: typing.Optional[builtins.str] = None,
|
|
15350
15966
|
include_environment: typing.Optional[builtins.bool] = None,
|
|
15351
15967
|
props: typing.Optional[typing.Mapping[builtins.str, typing.Any]] = None,
|
|
15352
15968
|
dummy_value: typing.Any,
|
|
@@ -15355,6 +15971,7 @@ class GetContextValueOptions(GetContextKeyOptions):
|
|
|
15355
15971
|
) -> None:
|
|
15356
15972
|
'''
|
|
15357
15973
|
:param provider: The context provider to query.
|
|
15974
|
+
:param additional_cache_key: Adds an additional discriminator to the ``cdk.context.json`` cache key. Default: - no additional cache key
|
|
15358
15975
|
:param include_environment: Whether to include the stack's account and region automatically. Default: true
|
|
15359
15976
|
:param props: Provider-specific properties.
|
|
15360
15977
|
:param dummy_value: The value to return if the lookup has not yet been performed. Upon first synthesis, the lookups has not yet been performed. The ``getValue()`` operation returns this value instead, so that synthesis can proceed. After synthesis completes the first time, the actual lookup will be performed and synthesis will run again with the *real* value. Dummy values should preferably have valid shapes so that downstream consumers of lookup values don't throw validation exceptions if they encounter a dummy value (or all possible downstream consumers need to effectively check for the well-known shape of the dummy value); throwing an exception would error out the synthesis operation and prevent the lookup and the second, real, synthesis from happening. Connection to mustExist ``dummyValue`` is also used as the official value to return if the lookup has failed and ``mustExist == false``.
|
|
@@ -15377,6 +15994,7 @@ class GetContextValueOptions(GetContextKeyOptions):
|
|
|
15377
15994
|
provider="provider",
|
|
15378
15995
|
|
|
15379
15996
|
# the properties below are optional
|
|
15997
|
+
additional_cache_key="additionalCacheKey",
|
|
15380
15998
|
ignore_error_on_missing_context=False,
|
|
15381
15999
|
include_environment=False,
|
|
15382
16000
|
must_exist=False,
|
|
@@ -15388,6 +16006,7 @@ class GetContextValueOptions(GetContextKeyOptions):
|
|
|
15388
16006
|
if __debug__:
|
|
15389
16007
|
type_hints = typing.get_type_hints(_typecheckingstub__16ea3024419c210903405ca05f7de1bb3fad517c101a7a84926fb5e09ac784ec)
|
|
15390
16008
|
check_type(argname="argument provider", value=provider, expected_type=type_hints["provider"])
|
|
16009
|
+
check_type(argname="argument additional_cache_key", value=additional_cache_key, expected_type=type_hints["additional_cache_key"])
|
|
15391
16010
|
check_type(argname="argument include_environment", value=include_environment, expected_type=type_hints["include_environment"])
|
|
15392
16011
|
check_type(argname="argument props", value=props, expected_type=type_hints["props"])
|
|
15393
16012
|
check_type(argname="argument dummy_value", value=dummy_value, expected_type=type_hints["dummy_value"])
|
|
@@ -15397,6 +16016,8 @@ class GetContextValueOptions(GetContextKeyOptions):
|
|
|
15397
16016
|
"provider": provider,
|
|
15398
16017
|
"dummy_value": dummy_value,
|
|
15399
16018
|
}
|
|
16019
|
+
if additional_cache_key is not None:
|
|
16020
|
+
self._values["additional_cache_key"] = additional_cache_key
|
|
15400
16021
|
if include_environment is not None:
|
|
15401
16022
|
self._values["include_environment"] = include_environment
|
|
15402
16023
|
if props is not None:
|
|
@@ -15413,6 +16034,15 @@ class GetContextValueOptions(GetContextKeyOptions):
|
|
|
15413
16034
|
assert result is not None, "Required property 'provider' is missing"
|
|
15414
16035
|
return typing.cast(builtins.str, result)
|
|
15415
16036
|
|
|
16037
|
+
@builtins.property
|
|
16038
|
+
def additional_cache_key(self) -> typing.Optional[builtins.str]:
|
|
16039
|
+
'''Adds an additional discriminator to the ``cdk.context.json`` cache key.
|
|
16040
|
+
|
|
16041
|
+
:default: - no additional cache key
|
|
16042
|
+
'''
|
|
16043
|
+
result = self._values.get("additional_cache_key")
|
|
16044
|
+
return typing.cast(typing.Optional[builtins.str], result)
|
|
16045
|
+
|
|
15416
16046
|
@builtins.property
|
|
15417
16047
|
def include_environment(self) -> typing.Optional[builtins.bool]:
|
|
15418
16048
|
'''Whether to include the stack's account and region automatically.
|
|
@@ -15938,6 +16568,50 @@ class _ICfnResourceOptionsProxy:
|
|
|
15938
16568
|
typing.cast(typing.Any, ICfnResourceOptions).__jsii_proxy_class__ = lambda : _ICfnResourceOptionsProxy
|
|
15939
16569
|
|
|
15940
16570
|
|
|
16571
|
+
@jsii.interface(jsii_type="aws-cdk-lib.IEnvironmentAware")
|
|
16572
|
+
class IEnvironmentAware(typing_extensions.Protocol):
|
|
16573
|
+
'''Used to indicate that a particular construct has an resource environment.'''
|
|
16574
|
+
|
|
16575
|
+
@builtins.property
|
|
16576
|
+
@jsii.member(jsii_name="env")
|
|
16577
|
+
def env(self) -> _ResourceEnvironment_603baf00:
|
|
16578
|
+
'''The environment this resource belongs to.
|
|
16579
|
+
|
|
16580
|
+
For resources that are created and managed in a Stack (those created by
|
|
16581
|
+
creating new class instances like ``new Role()``, ``new Bucket()``, etc.), this
|
|
16582
|
+
is always the same as the environment of the stack they belong to.
|
|
16583
|
+
|
|
16584
|
+
For referenced resources (those obtained from referencing methods like
|
|
16585
|
+
``Role.fromRoleArn()``, ``Bucket.fromBucketName()``, etc.), they might be
|
|
16586
|
+
different than the stack they were imported into.
|
|
16587
|
+
'''
|
|
16588
|
+
...
|
|
16589
|
+
|
|
16590
|
+
|
|
16591
|
+
class _IEnvironmentAwareProxy:
|
|
16592
|
+
'''Used to indicate that a particular construct has an resource environment.'''
|
|
16593
|
+
|
|
16594
|
+
__jsii_type__: typing.ClassVar[str] = "aws-cdk-lib.IEnvironmentAware"
|
|
16595
|
+
|
|
16596
|
+
@builtins.property
|
|
16597
|
+
@jsii.member(jsii_name="env")
|
|
16598
|
+
def env(self) -> _ResourceEnvironment_603baf00:
|
|
16599
|
+
'''The environment this resource belongs to.
|
|
16600
|
+
|
|
16601
|
+
For resources that are created and managed in a Stack (those created by
|
|
16602
|
+
creating new class instances like ``new Role()``, ``new Bucket()``, etc.), this
|
|
16603
|
+
is always the same as the environment of the stack they belong to.
|
|
16604
|
+
|
|
16605
|
+
For referenced resources (those obtained from referencing methods like
|
|
16606
|
+
``Role.fromRoleArn()``, ``Bucket.fromBucketName()``, etc.), they might be
|
|
16607
|
+
different than the stack they were imported into.
|
|
16608
|
+
'''
|
|
16609
|
+
return typing.cast(_ResourceEnvironment_603baf00, jsii.get(self, "env"))
|
|
16610
|
+
|
|
16611
|
+
# Adding a "__jsii_proxy_class__(): typing.Type" function to the interface
|
|
16612
|
+
typing.cast(typing.Any, IEnvironmentAware).__jsii_proxy_class__ = lambda : _IEnvironmentAwareProxy
|
|
16613
|
+
|
|
16614
|
+
|
|
15941
16615
|
@jsii.interface(jsii_type="aws-cdk-lib.IFragmentConcatenator")
|
|
15942
16616
|
class IFragmentConcatenator(typing_extensions.Protocol):
|
|
15943
16617
|
'''Function used to concatenate symbols in the target document language.
|
|
@@ -16410,6 +17084,75 @@ class _IPostProcessorProxy:
|
|
|
16410
17084
|
typing.cast(typing.Any, IPostProcessor).__jsii_proxy_class__ = lambda : _IPostProcessorProxy
|
|
16411
17085
|
|
|
16412
17086
|
|
|
17087
|
+
@jsii.interface(jsii_type="aws-cdk-lib.IPropertyInjector")
|
|
17088
|
+
class IPropertyInjector(typing_extensions.Protocol):
|
|
17089
|
+
'''This interface define an inject function that operates on a Construct's Property.
|
|
17090
|
+
|
|
17091
|
+
The Construct must have a constructUniqueId to uniquely identify itself.
|
|
17092
|
+
'''
|
|
17093
|
+
|
|
17094
|
+
@builtins.property
|
|
17095
|
+
@jsii.member(jsii_name="constructUniqueId")
|
|
17096
|
+
def construct_unique_id(self) -> builtins.str:
|
|
17097
|
+
'''The unique Id of the Construct class.'''
|
|
17098
|
+
...
|
|
17099
|
+
|
|
17100
|
+
@jsii.member(jsii_name="inject")
|
|
17101
|
+
def inject(
|
|
17102
|
+
self,
|
|
17103
|
+
original_props: typing.Any,
|
|
17104
|
+
*,
|
|
17105
|
+
id: builtins.str,
|
|
17106
|
+
scope: _constructs_77d1e7e8.Construct,
|
|
17107
|
+
) -> typing.Any:
|
|
17108
|
+
'''The injector to be applied to the constructor properties of the Construct.
|
|
17109
|
+
|
|
17110
|
+
:param original_props: -
|
|
17111
|
+
:param id: id from the Construct constructor.
|
|
17112
|
+
:param scope: scope from the constructor.
|
|
17113
|
+
'''
|
|
17114
|
+
...
|
|
17115
|
+
|
|
17116
|
+
|
|
17117
|
+
class _IPropertyInjectorProxy:
|
|
17118
|
+
'''This interface define an inject function that operates on a Construct's Property.
|
|
17119
|
+
|
|
17120
|
+
The Construct must have a constructUniqueId to uniquely identify itself.
|
|
17121
|
+
'''
|
|
17122
|
+
|
|
17123
|
+
__jsii_type__: typing.ClassVar[str] = "aws-cdk-lib.IPropertyInjector"
|
|
17124
|
+
|
|
17125
|
+
@builtins.property
|
|
17126
|
+
@jsii.member(jsii_name="constructUniqueId")
|
|
17127
|
+
def construct_unique_id(self) -> builtins.str:
|
|
17128
|
+
'''The unique Id of the Construct class.'''
|
|
17129
|
+
return typing.cast(builtins.str, jsii.get(self, "constructUniqueId"))
|
|
17130
|
+
|
|
17131
|
+
@jsii.member(jsii_name="inject")
|
|
17132
|
+
def inject(
|
|
17133
|
+
self,
|
|
17134
|
+
original_props: typing.Any,
|
|
17135
|
+
*,
|
|
17136
|
+
id: builtins.str,
|
|
17137
|
+
scope: _constructs_77d1e7e8.Construct,
|
|
17138
|
+
) -> typing.Any:
|
|
17139
|
+
'''The injector to be applied to the constructor properties of the Construct.
|
|
17140
|
+
|
|
17141
|
+
:param original_props: -
|
|
17142
|
+
:param id: id from the Construct constructor.
|
|
17143
|
+
:param scope: scope from the constructor.
|
|
17144
|
+
'''
|
|
17145
|
+
if __debug__:
|
|
17146
|
+
type_hints = typing.get_type_hints(_typecheckingstub__a84c13d89fffb1ee8026280d3071636f041aaa121bab44f9659e3255feca881d)
|
|
17147
|
+
check_type(argname="argument original_props", value=original_props, expected_type=type_hints["original_props"])
|
|
17148
|
+
context = InjectionContext(id=id, scope=scope)
|
|
17149
|
+
|
|
17150
|
+
return typing.cast(typing.Any, jsii.invoke(self, "inject", [original_props, context]))
|
|
17151
|
+
|
|
17152
|
+
# Adding a "__jsii_proxy_class__(): typing.Type" function to the interface
|
|
17153
|
+
typing.cast(typing.Any, IPropertyInjector).__jsii_proxy_class__ = lambda : _IPropertyInjectorProxy
|
|
17154
|
+
|
|
17155
|
+
|
|
16413
17156
|
@jsii.interface(jsii_type="aws-cdk-lib.IResolvable")
|
|
16414
17157
|
class IResolvable(typing_extensions.Protocol):
|
|
16415
17158
|
'''Interface for values that can be resolvable later.
|
|
@@ -16606,22 +17349,12 @@ typing.cast(typing.Any, IResolveContext).__jsii_proxy_class__ = lambda : _IResol
|
|
|
16606
17349
|
|
|
16607
17350
|
|
|
16608
17351
|
@jsii.interface(jsii_type="aws-cdk-lib.IResource")
|
|
16609
|
-
class IResource(
|
|
16610
|
-
|
|
16611
|
-
|
|
16612
|
-
|
|
16613
|
-
|
|
16614
|
-
|
|
16615
|
-
'''The environment this resource belongs to.
|
|
16616
|
-
|
|
16617
|
-
For resources that are created and managed by the CDK
|
|
16618
|
-
(generally, those created by creating new class instances like Role, Bucket, etc.),
|
|
16619
|
-
this is always the same as the environment of the stack they belong to;
|
|
16620
|
-
however, for imported resources
|
|
16621
|
-
(those obtained from static methods like fromRoleArn, fromBucketName, etc.),
|
|
16622
|
-
that might be different than the stack they were imported into.
|
|
16623
|
-
'''
|
|
16624
|
-
...
|
|
17352
|
+
class IResource(
|
|
17353
|
+
_constructs_77d1e7e8.IConstruct,
|
|
17354
|
+
_IEnvironmentAware_f39049ee,
|
|
17355
|
+
typing_extensions.Protocol,
|
|
17356
|
+
):
|
|
17357
|
+
'''Interface for L2 Resource constructs.'''
|
|
16625
17358
|
|
|
16626
17359
|
@builtins.property
|
|
16627
17360
|
@jsii.member(jsii_name="stack")
|
|
@@ -16648,25 +17381,12 @@ class IResource(_constructs_77d1e7e8.IConstruct, typing_extensions.Protocol):
|
|
|
16648
17381
|
|
|
16649
17382
|
class _IResourceProxy(
|
|
16650
17383
|
jsii.proxy_for(_constructs_77d1e7e8.IConstruct), # type: ignore[misc]
|
|
17384
|
+
jsii.proxy_for(_IEnvironmentAware_f39049ee), # type: ignore[misc]
|
|
16651
17385
|
):
|
|
16652
|
-
'''Interface for
|
|
17386
|
+
'''Interface for L2 Resource constructs.'''
|
|
16653
17387
|
|
|
16654
17388
|
__jsii_type__: typing.ClassVar[str] = "aws-cdk-lib.IResource"
|
|
16655
17389
|
|
|
16656
|
-
@builtins.property
|
|
16657
|
-
@jsii.member(jsii_name="env")
|
|
16658
|
-
def env(self) -> "ResourceEnvironment":
|
|
16659
|
-
'''The environment this resource belongs to.
|
|
16660
|
-
|
|
16661
|
-
For resources that are created and managed by the CDK
|
|
16662
|
-
(generally, those created by creating new class instances like Role, Bucket, etc.),
|
|
16663
|
-
this is always the same as the environment of the stack they belong to;
|
|
16664
|
-
however, for imported resources
|
|
16665
|
-
(those obtained from static methods like fromRoleArn, fromBucketName, etc.),
|
|
16666
|
-
that might be different than the stack they were imported into.
|
|
16667
|
-
'''
|
|
16668
|
-
return typing.cast("ResourceEnvironment", jsii.get(self, "env"))
|
|
16669
|
-
|
|
16670
17390
|
@builtins.property
|
|
16671
17391
|
@jsii.member(jsii_name="stack")
|
|
16672
17392
|
def stack(self) -> "Stack":
|
|
@@ -17665,6 +18385,22 @@ class IgnoreStrategy(
|
|
|
17665
18385
|
'''
|
|
17666
18386
|
...
|
|
17667
18387
|
|
|
18388
|
+
@jsii.member(jsii_name="completelyIgnores")
|
|
18389
|
+
def completely_ignores(
|
|
18390
|
+
self,
|
|
18391
|
+
absolute_directory_path: builtins.str,
|
|
18392
|
+
) -> builtins.bool:
|
|
18393
|
+
'''Determines whether a given directory path should be ignored and have all of its children ignored.
|
|
18394
|
+
|
|
18395
|
+
:param absolute_directory_path: absolute directory path to be assessed against the pattern.
|
|
18396
|
+
|
|
18397
|
+
:return: ``true`` if the directory and all of its children should be ignored
|
|
18398
|
+
'''
|
|
18399
|
+
if __debug__:
|
|
18400
|
+
type_hints = typing.get_type_hints(_typecheckingstub__3a80a66d2944a2c289e3c51a3686487dddf7c755eb54d7726f3fd91652eddcde)
|
|
18401
|
+
check_type(argname="argument absolute_directory_path", value=absolute_directory_path, expected_type=type_hints["absolute_directory_path"])
|
|
18402
|
+
return typing.cast(builtins.bool, jsii.invoke(self, "completelyIgnores", [absolute_directory_path]))
|
|
18403
|
+
|
|
17668
18404
|
@jsii.member(jsii_name="ignores")
|
|
17669
18405
|
@abc.abstractmethod
|
|
17670
18406
|
def ignores(self, absolute_file_path: builtins.str) -> builtins.bool:
|
|
@@ -17708,6 +18444,74 @@ class _IgnoreStrategyProxy(IgnoreStrategy):
|
|
|
17708
18444
|
typing.cast(typing.Any, IgnoreStrategy).__jsii_proxy_class__ = lambda : _IgnoreStrategyProxy
|
|
17709
18445
|
|
|
17710
18446
|
|
|
18447
|
+
@jsii.data_type(
|
|
18448
|
+
jsii_type="aws-cdk-lib.InjectionContext",
|
|
18449
|
+
jsii_struct_bases=[],
|
|
18450
|
+
name_mapping={"id": "id", "scope": "scope"},
|
|
18451
|
+
)
|
|
18452
|
+
class InjectionContext:
|
|
18453
|
+
def __init__(
|
|
18454
|
+
self,
|
|
18455
|
+
*,
|
|
18456
|
+
id: builtins.str,
|
|
18457
|
+
scope: _constructs_77d1e7e8.Construct,
|
|
18458
|
+
) -> None:
|
|
18459
|
+
'''This defines the values needed for Injection.
|
|
18460
|
+
|
|
18461
|
+
:param id: id from the Construct constructor.
|
|
18462
|
+
:param scope: scope from the constructor.
|
|
18463
|
+
|
|
18464
|
+
:exampleMetadata: fixture=_generated
|
|
18465
|
+
|
|
18466
|
+
Example::
|
|
18467
|
+
|
|
18468
|
+
# The code below shows an example of how to instantiate this type.
|
|
18469
|
+
# The values are placeholders you should change.
|
|
18470
|
+
import aws_cdk as cdk
|
|
18471
|
+
import constructs as constructs
|
|
18472
|
+
|
|
18473
|
+
# construct: constructs.Construct
|
|
18474
|
+
|
|
18475
|
+
injection_context = cdk.InjectionContext(
|
|
18476
|
+
id="id",
|
|
18477
|
+
scope=construct
|
|
18478
|
+
)
|
|
18479
|
+
'''
|
|
18480
|
+
if __debug__:
|
|
18481
|
+
type_hints = typing.get_type_hints(_typecheckingstub__474d9096cc3297bd5f64e3e487372aedd71d529e93d80a946aa117f0e0f8bc5b)
|
|
18482
|
+
check_type(argname="argument id", value=id, expected_type=type_hints["id"])
|
|
18483
|
+
check_type(argname="argument scope", value=scope, expected_type=type_hints["scope"])
|
|
18484
|
+
self._values: typing.Dict[builtins.str, typing.Any] = {
|
|
18485
|
+
"id": id,
|
|
18486
|
+
"scope": scope,
|
|
18487
|
+
}
|
|
18488
|
+
|
|
18489
|
+
@builtins.property
|
|
18490
|
+
def id(self) -> builtins.str:
|
|
18491
|
+
'''id from the Construct constructor.'''
|
|
18492
|
+
result = self._values.get("id")
|
|
18493
|
+
assert result is not None, "Required property 'id' is missing"
|
|
18494
|
+
return typing.cast(builtins.str, result)
|
|
18495
|
+
|
|
18496
|
+
@builtins.property
|
|
18497
|
+
def scope(self) -> _constructs_77d1e7e8.Construct:
|
|
18498
|
+
'''scope from the constructor.'''
|
|
18499
|
+
result = self._values.get("scope")
|
|
18500
|
+
assert result is not None, "Required property 'scope' is missing"
|
|
18501
|
+
return typing.cast(_constructs_77d1e7e8.Construct, result)
|
|
18502
|
+
|
|
18503
|
+
def __eq__(self, rhs: typing.Any) -> builtins.bool:
|
|
18504
|
+
return isinstance(rhs, self.__class__) and rhs._values == self._values
|
|
18505
|
+
|
|
18506
|
+
def __ne__(self, rhs: typing.Any) -> builtins.bool:
|
|
18507
|
+
return not (rhs == self)
|
|
18508
|
+
|
|
18509
|
+
def __repr__(self) -> str:
|
|
18510
|
+
return "InjectionContext(%s)" % ", ".join(
|
|
18511
|
+
k + "=" + repr(v) for k, v in self._values.items()
|
|
18512
|
+
)
|
|
18513
|
+
|
|
18514
|
+
|
|
17711
18515
|
@jsii.implements(IResolvable)
|
|
17712
18516
|
class Intrinsic(metaclass=jsii.JSIIMeta, jsii_type="aws-cdk-lib.Intrinsic"):
|
|
17713
18517
|
'''Token subclass that represents values intrinsic to the target document language.
|
|
@@ -19344,6 +20148,92 @@ class PolicyViolationBeta1:
|
|
|
19344
20148
|
)
|
|
19345
20149
|
|
|
19346
20150
|
|
|
20151
|
+
class PropertyInjectors(
|
|
20152
|
+
metaclass=jsii.JSIIMeta,
|
|
20153
|
+
jsii_type="aws-cdk-lib.PropertyInjectors",
|
|
20154
|
+
):
|
|
20155
|
+
'''This is a collection of ProjectInjectors assigned to this scope.
|
|
20156
|
+
|
|
20157
|
+
It is keyed by constructUniqueId. There can be only one ProjectInjector for a constructUniqueId.
|
|
20158
|
+
|
|
20159
|
+
:exampleMetadata: fixture=_generated
|
|
20160
|
+
|
|
20161
|
+
Example::
|
|
20162
|
+
|
|
20163
|
+
# The code below shows an example of how to instantiate this type.
|
|
20164
|
+
# The values are placeholders you should change.
|
|
20165
|
+
import aws_cdk as cdk
|
|
20166
|
+
|
|
20167
|
+
property_injectors = cdk.PropertyInjectors.of(self)
|
|
20168
|
+
'''
|
|
20169
|
+
|
|
20170
|
+
@jsii.member(jsii_name="hasPropertyInjectors")
|
|
20171
|
+
@builtins.classmethod
|
|
20172
|
+
def has_property_injectors(cls, x: typing.Any) -> builtins.bool:
|
|
20173
|
+
'''Return whether the given object has a PropertyInjectors property.
|
|
20174
|
+
|
|
20175
|
+
We do attribute detection since we can't reliably use 'instanceof'.
|
|
20176
|
+
|
|
20177
|
+
:param x: -
|
|
20178
|
+
'''
|
|
20179
|
+
if __debug__:
|
|
20180
|
+
type_hints = typing.get_type_hints(_typecheckingstub__4200e15e2cc09377aa6dd49e79c545a26e8c65589955f7210d145afb4881fcc5)
|
|
20181
|
+
check_type(argname="argument x", value=x, expected_type=type_hints["x"])
|
|
20182
|
+
return typing.cast(builtins.bool, jsii.sinvoke(cls, "hasPropertyInjectors", [x]))
|
|
20183
|
+
|
|
20184
|
+
@jsii.member(jsii_name="of")
|
|
20185
|
+
@builtins.classmethod
|
|
20186
|
+
def of(cls, scope: _constructs_77d1e7e8.IConstruct) -> "PropertyInjectors":
|
|
20187
|
+
'''Returns the ``PropertyInjectors`` object associated with a construct scope.
|
|
20188
|
+
|
|
20189
|
+
If ``PropertyInjectors`` object doesn't exist on this scope, then it creates one and attaches it to scope.
|
|
20190
|
+
|
|
20191
|
+
:param scope: The scope for which these PropertyInjectors will apply.
|
|
20192
|
+
'''
|
|
20193
|
+
if __debug__:
|
|
20194
|
+
type_hints = typing.get_type_hints(_typecheckingstub__d558bd5d62319107ba8d7aec423cb982f18f533d7f90939b4576ae5cabe237e6)
|
|
20195
|
+
check_type(argname="argument scope", value=scope, expected_type=type_hints["scope"])
|
|
20196
|
+
return typing.cast("PropertyInjectors", jsii.sinvoke(cls, "of", [scope]))
|
|
20197
|
+
|
|
20198
|
+
@jsii.member(jsii_name="add")
|
|
20199
|
+
def add(self, *props_injectors: IPropertyInjector) -> None:
|
|
20200
|
+
'''Add a list of IPropertyInjectors to this collection of PropertyInjectors.
|
|
20201
|
+
|
|
20202
|
+
:param props_injectors: - a list of IPropertyInjector.
|
|
20203
|
+
'''
|
|
20204
|
+
if __debug__:
|
|
20205
|
+
type_hints = typing.get_type_hints(_typecheckingstub__b15ed456b528cac4ffc455783d09279b63e060419397678acf12dc8a07323ae9)
|
|
20206
|
+
check_type(argname="argument props_injectors", value=props_injectors, expected_type=typing.Tuple[type_hints["props_injectors"], ...]) # pyright: ignore [reportGeneralTypeIssues]
|
|
20207
|
+
return typing.cast(None, jsii.invoke(self, "add", [*props_injectors]))
|
|
20208
|
+
|
|
20209
|
+
@jsii.member(jsii_name="for")
|
|
20210
|
+
def for_(self, unique_id: builtins.str) -> typing.Optional[IPropertyInjector]:
|
|
20211
|
+
'''Get the PropertyInjector that is registered to the Construct's uniqueId.
|
|
20212
|
+
|
|
20213
|
+
:param unique_id: - the construct uniqueId.
|
|
20214
|
+
|
|
20215
|
+
:return: - the IPropertyInjector for that construct uniqueId
|
|
20216
|
+
'''
|
|
20217
|
+
if __debug__:
|
|
20218
|
+
type_hints = typing.get_type_hints(_typecheckingstub__ba79b618f23d72687ff58834f8d791bcc5f41fb49c8301987bb45eee4378958b)
|
|
20219
|
+
check_type(argname="argument unique_id", value=unique_id, expected_type=type_hints["unique_id"])
|
|
20220
|
+
return typing.cast(typing.Optional[IPropertyInjector], jsii.invoke(self, "for", [unique_id]))
|
|
20221
|
+
|
|
20222
|
+
@jsii.member(jsii_name="supportedClasses")
|
|
20223
|
+
def supported_classes(self) -> typing.List[builtins.str]:
|
|
20224
|
+
'''This returns a list of the Constructs that are supporting by this PropertyInjectors.
|
|
20225
|
+
|
|
20226
|
+
:return: a list of string showing the supported Constructs.
|
|
20227
|
+
'''
|
|
20228
|
+
return typing.cast(typing.List[builtins.str], jsii.invoke(self, "supportedClasses", []))
|
|
20229
|
+
|
|
20230
|
+
@builtins.property
|
|
20231
|
+
@jsii.member(jsii_name="scope")
|
|
20232
|
+
def scope(self) -> _constructs_77d1e7e8.IConstruct:
|
|
20233
|
+
'''The scope attached to Injectors.'''
|
|
20234
|
+
return typing.cast(_constructs_77d1e7e8.IConstruct, jsii.get(self, "scope"))
|
|
20235
|
+
|
|
20236
|
+
|
|
19347
20237
|
class Reference(
|
|
19348
20238
|
Intrinsic,
|
|
19349
20239
|
metaclass=jsii.JSIIAbstractClass,
|
|
@@ -19574,35 +20464,53 @@ class RemovalPolicy(enum.Enum):
|
|
|
19574
20464
|
cfn_bucket = bucket.node.find_child("Resource")
|
|
19575
20465
|
cfn_bucket.apply_removal_policy(RemovalPolicy.DESTROY)
|
|
19576
20466
|
|
|
19577
|
-
:exampleMetadata: infused
|
|
20467
|
+
:exampleMetadata: fixture=default infused
|
|
19578
20468
|
|
|
19579
20469
|
Example::
|
|
19580
20470
|
|
|
19581
|
-
|
|
20471
|
+
bucket = s3.Bucket(self, "memoryBucket",
|
|
20472
|
+
bucket_name="test-memory",
|
|
20473
|
+
removal_policy=cdk.RemovalPolicy.DESTROY,
|
|
20474
|
+
auto_delete_objects=True
|
|
20475
|
+
)
|
|
20476
|
+
|
|
20477
|
+
topic = sns.Topic(self, "topic")
|
|
19582
20478
|
|
|
19583
|
-
|
|
19584
|
-
|
|
19585
|
-
|
|
19586
|
-
|
|
19587
|
-
|
|
19588
|
-
|
|
20479
|
+
# Create a custom semantic memory strategy
|
|
20480
|
+
self_managed_strategy = agentcore.MemoryStrategy.using_self_managed(
|
|
20481
|
+
name="selfManagedStrategy",
|
|
20482
|
+
description="self managed memory strategy",
|
|
20483
|
+
historical_context_window_size=5,
|
|
20484
|
+
invocation_configuration=agentcore.InvocationConfiguration(
|
|
20485
|
+
topic=topic,
|
|
20486
|
+
s3_location=s3.Location(
|
|
20487
|
+
bucket_name=bucket.bucket_name,
|
|
20488
|
+
object_key="memory/"
|
|
20489
|
+
)
|
|
19589
20490
|
),
|
|
19590
|
-
|
|
19591
|
-
|
|
19592
|
-
|
|
19593
|
-
|
|
20491
|
+
trigger_conditions=agentcore.TriggerConditions(
|
|
20492
|
+
message_based_trigger=1,
|
|
20493
|
+
time_based_trigger=cdk.Duration.seconds(10),
|
|
20494
|
+
token_based_trigger=100
|
|
19594
20495
|
)
|
|
19595
20496
|
)
|
|
20497
|
+
|
|
20498
|
+
# Create memory with custom strategy
|
|
20499
|
+
memory = agentcore.Memory(self, "MyMemory",
|
|
20500
|
+
memory_name="my-custom-memory",
|
|
20501
|
+
description="Memory with custom strategy",
|
|
20502
|
+
expiration_duration=cdk.Duration.days(90),
|
|
20503
|
+
memory_strategies=[self_managed_strategy]
|
|
20504
|
+
)
|
|
19596
20505
|
'''
|
|
19597
20506
|
|
|
19598
20507
|
DESTROY = "DESTROY"
|
|
19599
|
-
'''
|
|
20508
|
+
'''When this removal policy is applied, the resource will be physically destroyed when it is removed from the stack or when the stack is deleted.'''
|
|
20509
|
+
RETAIN = "RETAIN"
|
|
20510
|
+
'''This uses the 'Retain' DeletionPolicy, which will cause the resource to be retained in the account, but orphaned from the stack.
|
|
19600
20511
|
|
|
19601
|
-
|
|
19602
|
-
removed from the app, it will be physically destroyed.
|
|
20512
|
+
Most resources default to this removal policy.
|
|
19603
20513
|
'''
|
|
19604
|
-
RETAIN = "RETAIN"
|
|
19605
|
-
'''This uses the 'Retain' DeletionPolicy, which will cause the resource to be retained in the account, but orphaned from the stack.'''
|
|
19606
20514
|
SNAPSHOT = "SNAPSHOT"
|
|
19607
20515
|
'''This retention policy deletes the resource, but saves a snapshot of its data before deleting, so that it can be re-created later.
|
|
19608
20516
|
|
|
@@ -19724,18 +20632,36 @@ class RemovalPolicyProps:
|
|
|
19724
20632
|
:param exclude_resource_types: Exclude specific resource types from the removal policy. Can be a CloudFormation resource type string (e.g., 'AWS::S3::Bucket'). Default: - no exclusions
|
|
19725
20633
|
:param priority: The priority to use when applying this policy. The priority affects only the order in which aspects are applied during synthesis. For RemovalPolicies, the last applied policy will override previous ones. NOTE: Priority does NOT determine which policy "wins" when there are conflicts. The order of application determines the final policy, with later policies overriding earlier ones. Default: - AspectPriority.MUTATING
|
|
19726
20634
|
|
|
19727
|
-
:exampleMetadata:
|
|
20635
|
+
:exampleMetadata: infused
|
|
19728
20636
|
|
|
19729
20637
|
Example::
|
|
19730
20638
|
|
|
19731
|
-
#
|
|
19732
|
-
#
|
|
19733
|
-
|
|
20639
|
+
# scope: Construct
|
|
20640
|
+
# parent: Construct
|
|
20641
|
+
# bucket: s3.CfnBucket
|
|
19734
20642
|
|
|
19735
|
-
|
|
19736
|
-
|
|
19737
|
-
|
|
19738
|
-
|
|
20643
|
+
|
|
20644
|
+
# Apply DESTROY policy to all resources in a scope
|
|
20645
|
+
RemovalPolicies.of(scope).destroy()
|
|
20646
|
+
|
|
20647
|
+
# Apply RETAIN policy to all resources in a scope
|
|
20648
|
+
RemovalPolicies.of(scope).retain()
|
|
20649
|
+
|
|
20650
|
+
# Apply SNAPSHOT policy to all resources in a scope
|
|
20651
|
+
RemovalPolicies.of(scope).snapshot()
|
|
20652
|
+
|
|
20653
|
+
# Apply RETAIN_ON_UPDATE_OR_DELETE policy to all resources in a scope
|
|
20654
|
+
RemovalPolicies.of(scope).retain_on_update_or_delete()
|
|
20655
|
+
|
|
20656
|
+
# Apply RETAIN policy only to specific resource types
|
|
20657
|
+
RemovalPolicies.of(parent).retain(
|
|
20658
|
+
apply_to_resource_types=["AWS::DynamoDB::Table", bucket.cfn_resource_type, rds.CfnDBInstance.CFN_RESOURCE_TYPE_NAME
|
|
20659
|
+
]
|
|
20660
|
+
)
|
|
20661
|
+
|
|
20662
|
+
# Apply SNAPSHOT policy excluding specific resource types
|
|
20663
|
+
RemovalPolicies.of(scope).snapshot(
|
|
20664
|
+
exclude_resource_types=["AWS::Test::Resource"]
|
|
19739
20665
|
)
|
|
19740
20666
|
'''
|
|
19741
20667
|
if __debug__:
|
|
@@ -20094,7 +21020,7 @@ class Resource(
|
|
|
20094
21020
|
metaclass=jsii.JSIIAbstractClass,
|
|
20095
21021
|
jsii_type="aws-cdk-lib.Resource",
|
|
20096
21022
|
):
|
|
20097
|
-
'''
|
|
21023
|
+
'''An L2 construct which represents an AWS resource.
|
|
20098
21024
|
|
|
20099
21025
|
:exampleMetadata: infused
|
|
20100
21026
|
|
|
@@ -20257,17 +21183,18 @@ class Resource(
|
|
|
20257
21183
|
|
|
20258
21184
|
@builtins.property
|
|
20259
21185
|
@jsii.member(jsii_name="env")
|
|
20260
|
-
def env(self) ->
|
|
21186
|
+
def env(self) -> _ResourceEnvironment_603baf00:
|
|
20261
21187
|
'''The environment this resource belongs to.
|
|
20262
21188
|
|
|
20263
|
-
For resources that are created and managed
|
|
20264
|
-
|
|
20265
|
-
|
|
20266
|
-
|
|
20267
|
-
(those obtained from
|
|
20268
|
-
|
|
21189
|
+
For resources that are created and managed in a Stack (those created by
|
|
21190
|
+
creating new class instances like ``new Role()``, ``new Bucket()``, etc.), this
|
|
21191
|
+
is always the same as the environment of the stack they belong to.
|
|
21192
|
+
|
|
21193
|
+
For referenced resources (those obtained from referencing methods like
|
|
21194
|
+
``Role.fromRoleArn()``, ``Bucket.fromBucketName()``, etc.), they might be
|
|
21195
|
+
different than the stack they were imported into.
|
|
20269
21196
|
'''
|
|
20270
|
-
return typing.cast(
|
|
21197
|
+
return typing.cast(_ResourceEnvironment_603baf00, jsii.get(self, "env"))
|
|
20271
21198
|
|
|
20272
21199
|
@builtins.property
|
|
20273
21200
|
@jsii.member(jsii_name="physicalName")
|
|
@@ -20306,10 +21233,10 @@ class ResourceEnvironment:
|
|
|
20306
21233
|
def __init__(self, *, account: builtins.str, region: builtins.str) -> None:
|
|
20307
21234
|
'''Represents the environment a given resource lives in.
|
|
20308
21235
|
|
|
20309
|
-
Used as the return value for the ``
|
|
21236
|
+
Used as the return value for the ``IEnvironmentAware.env`` property.
|
|
20310
21237
|
|
|
20311
|
-
:param account: The AWS
|
|
20312
|
-
:param region: The AWS
|
|
21238
|
+
:param account: The AWS Account ID that this resource belongs to. Since this can be a Token (for example, when the account is CloudFormation's ``AWS::AccountId`` intrinsic), make sure to use ``Token.compareStrings()`` instead of comparing the values with direct string equality.
|
|
21239
|
+
:param region: The AWS Region that this resource belongs to. Since this can be a Token (for example, when the region is CloudFormation's ``AWS::Region`` intrinsic), make sure to use ``Token.compareStrings()`` instead of comparing the values with direct string equality.
|
|
20313
21240
|
|
|
20314
21241
|
:exampleMetadata: fixture=_generated
|
|
20315
21242
|
|
|
@@ -20319,7 +21246,7 @@ class ResourceEnvironment:
|
|
|
20319
21246
|
# The values are placeholders you should change.
|
|
20320
21247
|
import aws_cdk as cdk
|
|
20321
21248
|
|
|
20322
|
-
resource_environment = cdk.ResourceEnvironment(
|
|
21249
|
+
resource_environment = cdk.interfaces.ResourceEnvironment(
|
|
20323
21250
|
account="account",
|
|
20324
21251
|
region="region"
|
|
20325
21252
|
)
|
|
@@ -20335,12 +21262,12 @@ class ResourceEnvironment:
|
|
|
20335
21262
|
|
|
20336
21263
|
@builtins.property
|
|
20337
21264
|
def account(self) -> builtins.str:
|
|
20338
|
-
'''The AWS
|
|
21265
|
+
'''The AWS Account ID that this resource belongs to.
|
|
20339
21266
|
|
|
20340
|
-
Since this can be a Token
|
|
20341
|
-
|
|
20342
|
-
|
|
20343
|
-
|
|
21267
|
+
Since this can be a Token (for example, when the account is
|
|
21268
|
+
CloudFormation's ``AWS::AccountId`` intrinsic), make sure to use
|
|
21269
|
+
``Token.compareStrings()`` instead of comparing the values with direct
|
|
21270
|
+
string equality.
|
|
20344
21271
|
'''
|
|
20345
21272
|
result = self._values.get("account")
|
|
20346
21273
|
assert result is not None, "Required property 'account' is missing"
|
|
@@ -20348,12 +21275,11 @@ class ResourceEnvironment:
|
|
|
20348
21275
|
|
|
20349
21276
|
@builtins.property
|
|
20350
21277
|
def region(self) -> builtins.str:
|
|
20351
|
-
'''The AWS
|
|
21278
|
+
'''The AWS Region that this resource belongs to.
|
|
20352
21279
|
|
|
20353
|
-
Since this can be a Token
|
|
20354
|
-
|
|
20355
|
-
|
|
20356
|
-
instead of just comparing the values for equality.
|
|
21280
|
+
Since this can be a Token (for example, when the region is CloudFormation's
|
|
21281
|
+
``AWS::Region`` intrinsic), make sure to use ``Token.compareStrings()`` instead
|
|
21282
|
+
of comparing the values with direct string equality.
|
|
20357
21283
|
'''
|
|
20358
21284
|
result = self._values.get("region")
|
|
20359
21285
|
assert result is not None, "Required property 'region' is missing"
|
|
@@ -20741,16 +21667,20 @@ class SecretValue(
|
|
|
20741
21667
|
|
|
20742
21668
|
Example::
|
|
20743
21669
|
|
|
20744
|
-
#
|
|
20745
|
-
|
|
20746
|
-
|
|
20747
|
-
|
|
20748
|
-
|
|
20749
|
-
|
|
20750
|
-
|
|
20751
|
-
|
|
20752
|
-
|
|
20753
|
-
|
|
21670
|
+
# Read the secret from Secrets Manager
|
|
21671
|
+
pipeline = codepipeline.Pipeline(self, "MyPipeline")
|
|
21672
|
+
source_output = codepipeline.Artifact()
|
|
21673
|
+
source_action = codepipeline_actions.GitHubSourceAction(
|
|
21674
|
+
action_name="GitHub_Source",
|
|
21675
|
+
owner="awslabs",
|
|
21676
|
+
repo="aws-cdk",
|
|
21677
|
+
oauth_token=SecretValue.secrets_manager("my-github-token"),
|
|
21678
|
+
output=source_output,
|
|
21679
|
+
branch="develop"
|
|
21680
|
+
)
|
|
21681
|
+
pipeline.add_stage(
|
|
21682
|
+
stage_name="Source",
|
|
21683
|
+
actions=[source_action]
|
|
20754
21684
|
)
|
|
20755
21685
|
'''
|
|
20756
21686
|
|
|
@@ -20791,6 +21721,34 @@ class SecretValue(
|
|
|
20791
21721
|
check_type(argname="argument ref", value=ref, expected_type=type_hints["ref"])
|
|
20792
21722
|
return typing.cast("SecretValue", jsii.sinvoke(cls, "cfnDynamicReference", [ref]))
|
|
20793
21723
|
|
|
21724
|
+
@jsii.member(jsii_name="cfnDynamicReferenceKey")
|
|
21725
|
+
@builtins.classmethod
|
|
21726
|
+
def cfn_dynamic_reference_key(
|
|
21727
|
+
cls,
|
|
21728
|
+
secret_id: builtins.str,
|
|
21729
|
+
*,
|
|
21730
|
+
json_field: typing.Optional[builtins.str] = None,
|
|
21731
|
+
version_id: typing.Optional[builtins.str] = None,
|
|
21732
|
+
version_stage: typing.Optional[builtins.str] = None,
|
|
21733
|
+
) -> builtins.str:
|
|
21734
|
+
'''Returns a key which can be used within an AWS CloudFormation dynamic reference to dynamically load a secret from AWS Secrets Manager.
|
|
21735
|
+
|
|
21736
|
+
:param secret_id: The ID or ARN of the secret.
|
|
21737
|
+
:param json_field: The key of a JSON field to retrieve. This can only be used if the secret stores a JSON object. Default: - returns all the content stored in the Secrets Manager secret.
|
|
21738
|
+
:param version_id: Specifies the unique identifier of the version of the secret you want to use. Can specify at most one of ``versionId`` and ``versionStage``. Default: AWSCURRENT
|
|
21739
|
+
:param version_stage: Specifies the secret version that you want to retrieve by the staging label attached to the version. Can specify at most one of ``versionId`` and ``versionStage``. Default: AWSCURRENT
|
|
21740
|
+
|
|
21741
|
+
:see: https://docs.aws.amazon.com/secretsmanager/latest/userguide/cfn-example_reference-secret.html
|
|
21742
|
+
'''
|
|
21743
|
+
if __debug__:
|
|
21744
|
+
type_hints = typing.get_type_hints(_typecheckingstub__ba81ab5d0a7811c904f34d1d9805888e14bbd4da3987d73185cb1acbfc46df06)
|
|
21745
|
+
check_type(argname="argument secret_id", value=secret_id, expected_type=type_hints["secret_id"])
|
|
21746
|
+
options = SecretsManagerSecretOptions(
|
|
21747
|
+
json_field=json_field, version_id=version_id, version_stage=version_stage
|
|
21748
|
+
)
|
|
21749
|
+
|
|
21750
|
+
return typing.cast(builtins.str, jsii.sinvoke(cls, "cfnDynamicReferenceKey", [secret_id, options]))
|
|
21751
|
+
|
|
20794
21752
|
@jsii.member(jsii_name="cfnParameter")
|
|
20795
21753
|
@builtins.classmethod
|
|
20796
21754
|
def cfn_parameter(cls, param: CfnParameter) -> "SecretValue":
|
|
@@ -21071,24 +22029,24 @@ class Size(metaclass=jsii.JSIIMeta, jsii_type="aws-cdk-lib.Size"):
|
|
|
21071
22029
|
|
|
21072
22030
|
Example::
|
|
21073
22031
|
|
|
21074
|
-
#
|
|
21075
|
-
#
|
|
21076
|
-
|
|
21077
|
-
|
|
21078
|
-
|
|
21079
|
-
|
|
21080
|
-
|
|
21081
|
-
|
|
21082
|
-
|
|
21083
|
-
|
|
21084
|
-
|
|
21085
|
-
|
|
21086
|
-
|
|
21087
|
-
|
|
21088
|
-
|
|
21089
|
-
|
|
21090
|
-
|
|
21091
|
-
|
|
22032
|
+
# my_file_system: efs.IFileSystem
|
|
22033
|
+
# my_job_role: iam.Role
|
|
22034
|
+
|
|
22035
|
+
my_file_system.grant_read(my_job_role)
|
|
22036
|
+
|
|
22037
|
+
job_defn = batch.EcsJobDefinition(self, "JobDefn",
|
|
22038
|
+
container=batch.EcsEc2ContainerDefinition(self, "containerDefn",
|
|
22039
|
+
image=ecs.ContainerImage.from_registry("public.ecr.aws/amazonlinux/amazonlinux:latest"),
|
|
22040
|
+
memory=cdk.Size.mebibytes(2048),
|
|
22041
|
+
cpu=256,
|
|
22042
|
+
volumes=[batch.EcsVolume.efs(
|
|
22043
|
+
name="myVolume",
|
|
22044
|
+
file_system=my_file_system,
|
|
22045
|
+
container_path="/Volumes/myVolume",
|
|
22046
|
+
use_job_role=True
|
|
22047
|
+
)],
|
|
22048
|
+
job_role=my_job_role
|
|
22049
|
+
)
|
|
21092
22050
|
)
|
|
21093
22051
|
'''
|
|
21094
22052
|
|
|
@@ -21410,6 +22368,7 @@ class Stack(
|
|
|
21410
22368
|
env: typing.Optional[typing.Union[Environment, typing.Dict[builtins.str, typing.Any]]] = None,
|
|
21411
22369
|
notification_arns: typing.Optional[typing.Sequence[builtins.str]] = None,
|
|
21412
22370
|
permissions_boundary: typing.Optional[PermissionsBoundary] = None,
|
|
22371
|
+
property_injectors: typing.Optional[typing.Sequence[IPropertyInjector]] = None,
|
|
21413
22372
|
stack_name: typing.Optional[builtins.str] = None,
|
|
21414
22373
|
suppress_template_indentation: typing.Optional[builtins.bool] = None,
|
|
21415
22374
|
synthesizer: typing.Optional[IStackSynthesizer] = None,
|
|
@@ -21424,12 +22383,13 @@ class Stack(
|
|
|
21424
22383
|
:param cross_region_references: Enable this flag to allow native cross region stack references. Enabling this will create a CloudFormation custom resource in both the producing stack and consuming stack in order to perform the export/import This feature is currently experimental Default: false
|
|
21425
22384
|
:param description: A description of the stack. Default: - No description.
|
|
21426
22385
|
:param env: The AWS environment (account/region) where this stack will be deployed. Set the ``region``/``account`` fields of ``env`` to either a concrete value to select the indicated environment (recommended for production stacks), or to the values of environment variables ``CDK_DEFAULT_REGION``/``CDK_DEFAULT_ACCOUNT`` to let the target environment depend on the AWS credentials/configuration that the CDK CLI is executed under (recommended for development stacks). If the ``Stack`` is instantiated inside a ``Stage``, any undefined ``region``/``account`` fields from ``env`` will default to the same field on the encompassing ``Stage``, if configured there. If either ``region`` or ``account`` are not set nor inherited from ``Stage``, the Stack will be considered "*environment-agnostic*"". Environment-agnostic stacks can be deployed to any environment but may not be able to take advantage of all features of the CDK. For example, they will not be able to use environmental context lookups such as ``ec2.Vpc.fromLookup`` and will not automatically translate Service Principals to the right format based on the environment's AWS partition, and other such enhancements. Default: - The environment of the containing ``Stage`` if available, otherwise create the stack will be environment-agnostic.
|
|
21427
|
-
:param notification_arns: SNS Topic ARNs that will receive stack events. Default: - no
|
|
22386
|
+
:param notification_arns: SNS Topic ARNs that will receive stack events. Default: - no notification arns.
|
|
21428
22387
|
:param permissions_boundary: Options for applying a permissions boundary to all IAM Roles and Users created within this Stage. Default: - no permissions boundary is applied
|
|
22388
|
+
:param property_injectors: A list of IPropertyInjector attached to this Stack. Default: - no PropertyInjectors
|
|
21429
22389
|
:param stack_name: Name to deploy the stack with. Default: - Derived from construct path.
|
|
21430
22390
|
:param suppress_template_indentation: Enable this flag to suppress indentation in generated CloudFormation templates. If not specified, the value of the ``@aws-cdk/core:suppressTemplateIndentation`` context key will be used. If that is not specified, then the default value ``false`` will be used. Default: - the value of ``@aws-cdk/core:suppressTemplateIndentation``, or ``false`` if that is not set.
|
|
21431
22391
|
:param synthesizer: Synthesis method to use while deploying this stack. The Stack Synthesizer controls aspects of synthesis and deployment, like how assets are referenced and what IAM roles to use. For more information, see the README of the main CDK package. If not specified, the ``defaultStackSynthesizer`` from ``App`` will be used. If that is not specified, ``DefaultStackSynthesizer`` is used if ``@aws-cdk/core:newStyleStackSynthesis`` is set to ``true`` or the CDK major version is v2. In CDK v1 ``LegacyStackSynthesizer`` is the default if no other synthesizer is specified. Default: - The synthesizer specified on ``App``, or ``DefaultStackSynthesizer`` otherwise.
|
|
21432
|
-
:param tags:
|
|
22392
|
+
:param tags: Tags that will be applied to the Stack. These tags are applied to the CloudFormation Stack itself. They will not appear in the CloudFormation template. However, at deployment time, CloudFormation will apply these tags to all resources in the stack that support tagging. You will not be able to exempt resources from tagging (using the ``excludeResourceTypes`` property of ``Tags.of(...).add()``) for tags applied in this way. Default: {}
|
|
21433
22393
|
:param termination_protection: Whether to enable termination protection for this stack. Default: false
|
|
21434
22394
|
'''
|
|
21435
22395
|
if __debug__:
|
|
@@ -21443,6 +22403,7 @@ class Stack(
|
|
|
21443
22403
|
env=env,
|
|
21444
22404
|
notification_arns=notification_arns,
|
|
21445
22405
|
permissions_boundary=permissions_boundary,
|
|
22406
|
+
property_injectors=property_injectors,
|
|
21446
22407
|
stack_name=stack_name,
|
|
21447
22408
|
suppress_template_indentation=suppress_template_indentation,
|
|
21448
22409
|
synthesizer=synthesizer,
|
|
@@ -21517,6 +22478,21 @@ class Stack(
|
|
|
21517
22478
|
check_type(argname="argument value", value=value, expected_type=type_hints["value"])
|
|
21518
22479
|
return typing.cast(None, jsii.invoke(self, "addMetadata", [key, value]))
|
|
21519
22480
|
|
|
22481
|
+
@jsii.member(jsii_name="addStackTag")
|
|
22482
|
+
def add_stack_tag(self, tag_name: builtins.str, tag_value: builtins.str) -> None:
|
|
22483
|
+
'''Configure a stack tag.
|
|
22484
|
+
|
|
22485
|
+
At deploy time, CloudFormation will automatically apply all stack tags to all resources in the stack.
|
|
22486
|
+
|
|
22487
|
+
:param tag_name: -
|
|
22488
|
+
:param tag_value: -
|
|
22489
|
+
'''
|
|
22490
|
+
if __debug__:
|
|
22491
|
+
type_hints = typing.get_type_hints(_typecheckingstub__c79ea9b0cd54830acfa2c93ac0786782e515591ac5cda10c42b42f8ff76457a0)
|
|
22492
|
+
check_type(argname="argument tag_name", value=tag_name, expected_type=type_hints["tag_name"])
|
|
22493
|
+
check_type(argname="argument tag_value", value=tag_value, expected_type=type_hints["tag_value"])
|
|
22494
|
+
return typing.cast(None, jsii.invoke(self, "addStackTag", [tag_name, tag_value]))
|
|
22495
|
+
|
|
21520
22496
|
@jsii.member(jsii_name="addTransform")
|
|
21521
22497
|
def add_transform(self, transform: builtins.str) -> None:
|
|
21522
22498
|
'''Add a Transform to this stack. A Transform is a macro that AWS CloudFormation uses to process your template.
|
|
@@ -21788,6 +22764,19 @@ class Stack(
|
|
|
21788
22764
|
check_type(argname="argument default_value", value=default_value, expected_type=type_hints["default_value"])
|
|
21789
22765
|
return typing.cast(builtins.str, jsii.invoke(self, "regionalFact", [fact_name, default_value]))
|
|
21790
22766
|
|
|
22767
|
+
@jsii.member(jsii_name="removeStackTag")
|
|
22768
|
+
def remove_stack_tag(self, tag_name: builtins.str) -> None:
|
|
22769
|
+
'''Remove a stack tag.
|
|
22770
|
+
|
|
22771
|
+
At deploy time, CloudFormation will automatically apply all stack tags to all resources in the stack.
|
|
22772
|
+
|
|
22773
|
+
:param tag_name: -
|
|
22774
|
+
'''
|
|
22775
|
+
if __debug__:
|
|
22776
|
+
type_hints = typing.get_type_hints(_typecheckingstub__25f39c18a619c464f8e693cb5c5847cdf10f847438cac04672be8ba78d2b49d0)
|
|
22777
|
+
check_type(argname="argument tag_name", value=tag_name, expected_type=type_hints["tag_name"])
|
|
22778
|
+
return typing.cast(None, jsii.invoke(self, "removeStackTag", [tag_name]))
|
|
22779
|
+
|
|
21791
22780
|
@jsii.member(jsii_name="renameLogicalId")
|
|
21792
22781
|
def rename_logical_id(self, old_id: builtins.str, new_id: builtins.str) -> None:
|
|
21793
22782
|
'''Rename a generated logical identities.
|
|
@@ -22103,6 +23092,7 @@ class Stack(
|
|
|
22103
23092
|
"env": "env",
|
|
22104
23093
|
"notification_arns": "notificationArns",
|
|
22105
23094
|
"permissions_boundary": "permissionsBoundary",
|
|
23095
|
+
"property_injectors": "propertyInjectors",
|
|
22106
23096
|
"stack_name": "stackName",
|
|
22107
23097
|
"suppress_template_indentation": "suppressTemplateIndentation",
|
|
22108
23098
|
"synthesizer": "synthesizer",
|
|
@@ -22120,6 +23110,7 @@ class StackProps:
|
|
|
22120
23110
|
env: typing.Optional[typing.Union[Environment, typing.Dict[builtins.str, typing.Any]]] = None,
|
|
22121
23111
|
notification_arns: typing.Optional[typing.Sequence[builtins.str]] = None,
|
|
22122
23112
|
permissions_boundary: typing.Optional[PermissionsBoundary] = None,
|
|
23113
|
+
property_injectors: typing.Optional[typing.Sequence[IPropertyInjector]] = None,
|
|
22123
23114
|
stack_name: typing.Optional[builtins.str] = None,
|
|
22124
23115
|
suppress_template_indentation: typing.Optional[builtins.bool] = None,
|
|
22125
23116
|
synthesizer: typing.Optional[IStackSynthesizer] = None,
|
|
@@ -22131,38 +23122,42 @@ class StackProps:
|
|
|
22131
23122
|
:param cross_region_references: Enable this flag to allow native cross region stack references. Enabling this will create a CloudFormation custom resource in both the producing stack and consuming stack in order to perform the export/import This feature is currently experimental Default: false
|
|
22132
23123
|
:param description: A description of the stack. Default: - No description.
|
|
22133
23124
|
:param env: The AWS environment (account/region) where this stack will be deployed. Set the ``region``/``account`` fields of ``env`` to either a concrete value to select the indicated environment (recommended for production stacks), or to the values of environment variables ``CDK_DEFAULT_REGION``/``CDK_DEFAULT_ACCOUNT`` to let the target environment depend on the AWS credentials/configuration that the CDK CLI is executed under (recommended for development stacks). If the ``Stack`` is instantiated inside a ``Stage``, any undefined ``region``/``account`` fields from ``env`` will default to the same field on the encompassing ``Stage``, if configured there. If either ``region`` or ``account`` are not set nor inherited from ``Stage``, the Stack will be considered "*environment-agnostic*"". Environment-agnostic stacks can be deployed to any environment but may not be able to take advantage of all features of the CDK. For example, they will not be able to use environmental context lookups such as ``ec2.Vpc.fromLookup`` and will not automatically translate Service Principals to the right format based on the environment's AWS partition, and other such enhancements. Default: - The environment of the containing ``Stage`` if available, otherwise create the stack will be environment-agnostic.
|
|
22134
|
-
:param notification_arns: SNS Topic ARNs that will receive stack events. Default: - no
|
|
23125
|
+
:param notification_arns: SNS Topic ARNs that will receive stack events. Default: - no notification arns.
|
|
22135
23126
|
:param permissions_boundary: Options for applying a permissions boundary to all IAM Roles and Users created within this Stage. Default: - no permissions boundary is applied
|
|
23127
|
+
:param property_injectors: A list of IPropertyInjector attached to this Stack. Default: - no PropertyInjectors
|
|
22136
23128
|
:param stack_name: Name to deploy the stack with. Default: - Derived from construct path.
|
|
22137
23129
|
:param suppress_template_indentation: Enable this flag to suppress indentation in generated CloudFormation templates. If not specified, the value of the ``@aws-cdk/core:suppressTemplateIndentation`` context key will be used. If that is not specified, then the default value ``false`` will be used. Default: - the value of ``@aws-cdk/core:suppressTemplateIndentation``, or ``false`` if that is not set.
|
|
22138
23130
|
:param synthesizer: Synthesis method to use while deploying this stack. The Stack Synthesizer controls aspects of synthesis and deployment, like how assets are referenced and what IAM roles to use. For more information, see the README of the main CDK package. If not specified, the ``defaultStackSynthesizer`` from ``App`` will be used. If that is not specified, ``DefaultStackSynthesizer`` is used if ``@aws-cdk/core:newStyleStackSynthesis`` is set to ``true`` or the CDK major version is v2. In CDK v1 ``LegacyStackSynthesizer`` is the default if no other synthesizer is specified. Default: - The synthesizer specified on ``App``, or ``DefaultStackSynthesizer`` otherwise.
|
|
22139
|
-
:param tags:
|
|
23131
|
+
:param tags: Tags that will be applied to the Stack. These tags are applied to the CloudFormation Stack itself. They will not appear in the CloudFormation template. However, at deployment time, CloudFormation will apply these tags to all resources in the stack that support tagging. You will not be able to exempt resources from tagging (using the ``excludeResourceTypes`` property of ``Tags.of(...).add()``) for tags applied in this way. Default: {}
|
|
22140
23132
|
:param termination_protection: Whether to enable termination protection for this stack. Default: false
|
|
22141
23133
|
|
|
22142
23134
|
:exampleMetadata: infused
|
|
22143
23135
|
|
|
22144
23136
|
Example::
|
|
22145
23137
|
|
|
22146
|
-
|
|
22147
|
-
|
|
22148
|
-
|
|
22149
|
-
|
|
22150
|
-
|
|
22151
|
-
|
|
22152
|
-
|
|
22153
|
-
|
|
22154
|
-
|
|
22155
|
-
replicas=[dynamodb.ReplicaTableProps(region="us-east-1"), dynamodb.ReplicaTableProps(region="us-east-2")
|
|
22156
|
-
]
|
|
23138
|
+
stack1 = Stack(app, "Stack1",
|
|
23139
|
+
env=Environment(
|
|
23140
|
+
region="us-east-1"
|
|
23141
|
+
),
|
|
23142
|
+
cross_region_references=True
|
|
23143
|
+
)
|
|
23144
|
+
cert = acm.Certificate(stack1, "Cert",
|
|
23145
|
+
domain_name="*.example.com",
|
|
23146
|
+
validation=acm.CertificateValidation.from_dns(route53.PublicHostedZone.from_hosted_zone_id(stack1, "Zone", "Z0329774B51CGXTDQV3X"))
|
|
22157
23147
|
)
|
|
22158
23148
|
|
|
22159
|
-
|
|
22160
|
-
|
|
22161
|
-
|
|
22162
|
-
|
|
22163
|
-
|
|
22164
|
-
|
|
22165
|
-
|
|
23149
|
+
stack2 = Stack(app, "Stack2",
|
|
23150
|
+
env=Environment(
|
|
23151
|
+
region="us-east-2"
|
|
23152
|
+
),
|
|
23153
|
+
cross_region_references=True
|
|
23154
|
+
)
|
|
23155
|
+
cloudfront.Distribution(stack2, "Distribution",
|
|
23156
|
+
default_behavior=cloudfront.BehaviorOptions(
|
|
23157
|
+
origin=origins.HttpOrigin("example.com")
|
|
23158
|
+
),
|
|
23159
|
+
domain_names=["dev.example.com"],
|
|
23160
|
+
certificate=cert
|
|
22166
23161
|
)
|
|
22167
23162
|
'''
|
|
22168
23163
|
if isinstance(env, dict):
|
|
@@ -22175,6 +23170,7 @@ class StackProps:
|
|
|
22175
23170
|
check_type(argname="argument env", value=env, expected_type=type_hints["env"])
|
|
22176
23171
|
check_type(argname="argument notification_arns", value=notification_arns, expected_type=type_hints["notification_arns"])
|
|
22177
23172
|
check_type(argname="argument permissions_boundary", value=permissions_boundary, expected_type=type_hints["permissions_boundary"])
|
|
23173
|
+
check_type(argname="argument property_injectors", value=property_injectors, expected_type=type_hints["property_injectors"])
|
|
22178
23174
|
check_type(argname="argument stack_name", value=stack_name, expected_type=type_hints["stack_name"])
|
|
22179
23175
|
check_type(argname="argument suppress_template_indentation", value=suppress_template_indentation, expected_type=type_hints["suppress_template_indentation"])
|
|
22180
23176
|
check_type(argname="argument synthesizer", value=synthesizer, expected_type=type_hints["synthesizer"])
|
|
@@ -22193,6 +23189,8 @@ class StackProps:
|
|
|
22193
23189
|
self._values["notification_arns"] = notification_arns
|
|
22194
23190
|
if permissions_boundary is not None:
|
|
22195
23191
|
self._values["permissions_boundary"] = permissions_boundary
|
|
23192
|
+
if property_injectors is not None:
|
|
23193
|
+
self._values["property_injectors"] = property_injectors
|
|
22196
23194
|
if stack_name is not None:
|
|
22197
23195
|
self._values["stack_name"] = stack_name
|
|
22198
23196
|
if suppress_template_indentation is not None:
|
|
@@ -22313,7 +23311,7 @@ class StackProps:
|
|
|
22313
23311
|
def notification_arns(self) -> typing.Optional[typing.List[builtins.str]]:
|
|
22314
23312
|
'''SNS Topic ARNs that will receive stack events.
|
|
22315
23313
|
|
|
22316
|
-
:default: - no
|
|
23314
|
+
:default: - no notification arns.
|
|
22317
23315
|
'''
|
|
22318
23316
|
result = self._values.get("notification_arns")
|
|
22319
23317
|
return typing.cast(typing.Optional[typing.List[builtins.str]], result)
|
|
@@ -22327,6 +23325,15 @@ class StackProps:
|
|
|
22327
23325
|
result = self._values.get("permissions_boundary")
|
|
22328
23326
|
return typing.cast(typing.Optional[PermissionsBoundary], result)
|
|
22329
23327
|
|
|
23328
|
+
@builtins.property
|
|
23329
|
+
def property_injectors(self) -> typing.Optional[typing.List[IPropertyInjector]]:
|
|
23330
|
+
'''A list of IPropertyInjector attached to this Stack.
|
|
23331
|
+
|
|
23332
|
+
:default: - no PropertyInjectors
|
|
23333
|
+
'''
|
|
23334
|
+
result = self._values.get("property_injectors")
|
|
23335
|
+
return typing.cast(typing.Optional[typing.List[IPropertyInjector]], result)
|
|
23336
|
+
|
|
22330
23337
|
@builtins.property
|
|
22331
23338
|
def stack_name(self) -> typing.Optional[builtins.str]:
|
|
22332
23339
|
'''Name to deploy the stack with.
|
|
@@ -22370,7 +23377,15 @@ class StackProps:
|
|
|
22370
23377
|
|
|
22371
23378
|
@builtins.property
|
|
22372
23379
|
def tags(self) -> typing.Optional[typing.Mapping[builtins.str, builtins.str]]:
|
|
22373
|
-
'''
|
|
23380
|
+
'''Tags that will be applied to the Stack.
|
|
23381
|
+
|
|
23382
|
+
These tags are applied to the CloudFormation Stack itself. They will not
|
|
23383
|
+
appear in the CloudFormation template.
|
|
23384
|
+
|
|
23385
|
+
However, at deployment time, CloudFormation will apply these tags to all
|
|
23386
|
+
resources in the stack that support tagging. You will not be able to exempt
|
|
23387
|
+
resources from tagging (using the ``excludeResourceTypes`` property of
|
|
23388
|
+
``Tags.of(...).add()``) for tags applied in this way.
|
|
22374
23389
|
|
|
22375
23390
|
:default: {}
|
|
22376
23391
|
'''
|
|
@@ -22941,19 +23956,15 @@ class Stage(
|
|
|
22941
23956
|
|
|
22942
23957
|
# pipeline: pipelines.CodePipeline
|
|
22943
23958
|
|
|
22944
|
-
|
|
22945
|
-
|
|
22946
|
-
|
|
22947
|
-
|
|
22948
|
-
|
|
22949
|
-
|
|
22950
|
-
|
|
22951
|
-
)
|
|
22952
|
-
|
|
22953
|
-
)
|
|
22954
|
-
pipeline.add_stage(prod,
|
|
22955
|
-
pre=[pipelines.ManualApprovalStep("PromoteToProd")]
|
|
22956
|
-
)
|
|
23959
|
+
europe_wave = pipeline.add_wave("Europe")
|
|
23960
|
+
europe_wave.add_stage(
|
|
23961
|
+
MyApplicationStage(self, "Ireland",
|
|
23962
|
+
env=cdk.Environment(region="eu-west-1")
|
|
23963
|
+
))
|
|
23964
|
+
europe_wave.add_stage(
|
|
23965
|
+
MyApplicationStage(self, "Germany",
|
|
23966
|
+
env=cdk.Environment(region="eu-central-1")
|
|
23967
|
+
))
|
|
22957
23968
|
'''
|
|
22958
23969
|
|
|
22959
23970
|
def __init__(
|
|
@@ -22965,6 +23976,7 @@ class Stage(
|
|
|
22965
23976
|
outdir: typing.Optional[builtins.str] = None,
|
|
22966
23977
|
permissions_boundary: typing.Optional[PermissionsBoundary] = None,
|
|
22967
23978
|
policy_validation_beta1: typing.Optional[typing.Sequence[IPolicyValidationPluginBeta1]] = None,
|
|
23979
|
+
property_injectors: typing.Optional[typing.Sequence[IPropertyInjector]] = None,
|
|
22968
23980
|
stage_name: typing.Optional[builtins.str] = None,
|
|
22969
23981
|
) -> None:
|
|
22970
23982
|
'''
|
|
@@ -22974,6 +23986,7 @@ class Stage(
|
|
|
22974
23986
|
:param outdir: The output directory into which to emit synthesized artifacts. Can only be specified if this stage is the root stage (the app). If this is specified and this stage is nested within another stage, an error will be thrown. Default: - for nested stages, outdir will be determined as a relative directory to the outdir of the app. For apps, if outdir is not specified, a temporary directory will be created.
|
|
22975
23987
|
:param permissions_boundary: Options for applying a permissions boundary to all IAM Roles and Users created within this Stage. Be aware that this feature uses Aspects, and the Aspects are applied at the Stack level with a priority of ``MUTATING`` (if the feature flag ``@aws-cdk/core:aspectPrioritiesMutating`` is set) or ``DEFAULT`` (if the flag is not set). This is relevant if you are both using your own Aspects to assign Permissions Boundaries, as well as specifying this property. The Aspect added by this property will overwrite the Permissions Boundary assigned by your own Aspect if both: (a) your Aspect has a lower or equal priority to the automatic Aspect, and (b) your Aspect is applied *above* the Stack level. If either of those conditions are not true, your own Aspect will win. We recommend assigning Permissions Boundaries only using the provided APIs, and not using custom Aspects. Default: - no permissions boundary is applied
|
|
22976
23988
|
:param policy_validation_beta1: Validation plugins to run during synthesis. If any plugin reports any violation, synthesis will be interrupted and the report displayed to the user. Default: - no validation plugins are used
|
|
23989
|
+
:param property_injectors: A list of IPropertyInjector attached to this Stage. Default: - no PropertyInjectors
|
|
22977
23990
|
:param stage_name: Name of this stage. Default: - Derived from the id.
|
|
22978
23991
|
'''
|
|
22979
23992
|
if __debug__:
|
|
@@ -22985,6 +23998,7 @@ class Stage(
|
|
|
22985
23998
|
outdir=outdir,
|
|
22986
23999
|
permissions_boundary=permissions_boundary,
|
|
22987
24000
|
policy_validation_beta1=policy_validation_beta1,
|
|
24001
|
+
property_injectors=property_injectors,
|
|
22988
24002
|
stage_name=stage_name,
|
|
22989
24003
|
)
|
|
22990
24004
|
|
|
@@ -23121,6 +24135,7 @@ class Stage(
|
|
|
23121
24135
|
"outdir": "outdir",
|
|
23122
24136
|
"permissions_boundary": "permissionsBoundary",
|
|
23123
24137
|
"policy_validation_beta1": "policyValidationBeta1",
|
|
24138
|
+
"property_injectors": "propertyInjectors",
|
|
23124
24139
|
"stage_name": "stageName",
|
|
23125
24140
|
},
|
|
23126
24141
|
)
|
|
@@ -23132,6 +24147,7 @@ class StageProps:
|
|
|
23132
24147
|
outdir: typing.Optional[builtins.str] = None,
|
|
23133
24148
|
permissions_boundary: typing.Optional[PermissionsBoundary] = None,
|
|
23134
24149
|
policy_validation_beta1: typing.Optional[typing.Sequence[IPolicyValidationPluginBeta1]] = None,
|
|
24150
|
+
property_injectors: typing.Optional[typing.Sequence[IPropertyInjector]] = None,
|
|
23135
24151
|
stage_name: typing.Optional[builtins.str] = None,
|
|
23136
24152
|
) -> None:
|
|
23137
24153
|
'''Initialization props for a stage.
|
|
@@ -23140,6 +24156,7 @@ class StageProps:
|
|
|
23140
24156
|
:param outdir: The output directory into which to emit synthesized artifacts. Can only be specified if this stage is the root stage (the app). If this is specified and this stage is nested within another stage, an error will be thrown. Default: - for nested stages, outdir will be determined as a relative directory to the outdir of the app. For apps, if outdir is not specified, a temporary directory will be created.
|
|
23141
24157
|
:param permissions_boundary: Options for applying a permissions boundary to all IAM Roles and Users created within this Stage. Be aware that this feature uses Aspects, and the Aspects are applied at the Stack level with a priority of ``MUTATING`` (if the feature flag ``@aws-cdk/core:aspectPrioritiesMutating`` is set) or ``DEFAULT`` (if the flag is not set). This is relevant if you are both using your own Aspects to assign Permissions Boundaries, as well as specifying this property. The Aspect added by this property will overwrite the Permissions Boundary assigned by your own Aspect if both: (a) your Aspect has a lower or equal priority to the automatic Aspect, and (b) your Aspect is applied *above* the Stack level. If either of those conditions are not true, your own Aspect will win. We recommend assigning Permissions Boundaries only using the provided APIs, and not using custom Aspects. Default: - no permissions boundary is applied
|
|
23142
24158
|
:param policy_validation_beta1: Validation plugins to run during synthesis. If any plugin reports any violation, synthesis will be interrupted and the report displayed to the user. Default: - no validation plugins are used
|
|
24159
|
+
:param property_injectors: A list of IPropertyInjector attached to this Stage. Default: - no PropertyInjectors
|
|
23143
24160
|
:param stage_name: Name of this stage. Default: - Derived from the id.
|
|
23144
24161
|
|
|
23145
24162
|
:exampleMetadata: infused
|
|
@@ -23171,6 +24188,7 @@ class StageProps:
|
|
|
23171
24188
|
check_type(argname="argument outdir", value=outdir, expected_type=type_hints["outdir"])
|
|
23172
24189
|
check_type(argname="argument permissions_boundary", value=permissions_boundary, expected_type=type_hints["permissions_boundary"])
|
|
23173
24190
|
check_type(argname="argument policy_validation_beta1", value=policy_validation_beta1, expected_type=type_hints["policy_validation_beta1"])
|
|
24191
|
+
check_type(argname="argument property_injectors", value=property_injectors, expected_type=type_hints["property_injectors"])
|
|
23174
24192
|
check_type(argname="argument stage_name", value=stage_name, expected_type=type_hints["stage_name"])
|
|
23175
24193
|
self._values: typing.Dict[builtins.str, typing.Any] = {}
|
|
23176
24194
|
if env is not None:
|
|
@@ -23181,6 +24199,8 @@ class StageProps:
|
|
|
23181
24199
|
self._values["permissions_boundary"] = permissions_boundary
|
|
23182
24200
|
if policy_validation_beta1 is not None:
|
|
23183
24201
|
self._values["policy_validation_beta1"] = policy_validation_beta1
|
|
24202
|
+
if property_injectors is not None:
|
|
24203
|
+
self._values["property_injectors"] = property_injectors
|
|
23184
24204
|
if stage_name is not None:
|
|
23185
24205
|
self._values["stage_name"] = stage_name
|
|
23186
24206
|
|
|
@@ -23272,6 +24292,15 @@ class StageProps:
|
|
|
23272
24292
|
result = self._values.get("policy_validation_beta1")
|
|
23273
24293
|
return typing.cast(typing.Optional[typing.List[IPolicyValidationPluginBeta1]], result)
|
|
23274
24294
|
|
|
24295
|
+
@builtins.property
|
|
24296
|
+
def property_injectors(self) -> typing.Optional[typing.List[IPropertyInjector]]:
|
|
24297
|
+
'''A list of IPropertyInjector attached to this Stage.
|
|
24298
|
+
|
|
24299
|
+
:default: - no PropertyInjectors
|
|
24300
|
+
'''
|
|
24301
|
+
result = self._values.get("property_injectors")
|
|
24302
|
+
return typing.cast(typing.Optional[typing.List[IPropertyInjector]], result)
|
|
24303
|
+
|
|
23275
24304
|
@builtins.property
|
|
23276
24305
|
def stage_name(self) -> typing.Optional[builtins.str]:
|
|
23277
24306
|
'''Name of this stage.
|
|
@@ -24275,7 +25304,26 @@ class Tags(metaclass=jsii.JSIIMeta, jsii_type="aws-cdk-lib.Tags"):
|
|
|
24275
25304
|
include_resource_types: typing.Optional[typing.Sequence[builtins.str]] = None,
|
|
24276
25305
|
priority: typing.Optional[jsii.Number] = None,
|
|
24277
25306
|
) -> None:
|
|
24278
|
-
'''
|
|
25307
|
+
'''Add tags to the node of a construct and all its the taggable children.
|
|
25308
|
+
|
|
25309
|
+
|
|
25310
|
+
|
|
25311
|
+
Tagging and CloudFormation Stacks
|
|
25312
|
+
|
|
25313
|
+
If the feature flag ``@aws-cdk/core:explicitStackTags`` is set to ``true``
|
|
25314
|
+
(recommended modern behavior), Stacks will not automatically be tagged.
|
|
25315
|
+
Stack tags should be configured on Stacks directly (preferred), or
|
|
25316
|
+
you must explicitly include the resource type ``aws:cdk:stack`` in the
|
|
25317
|
+
``includeResourceTypes`` array.
|
|
25318
|
+
|
|
25319
|
+
If the feature flag is set to ``false`` (legacy behavior) then both Stacks
|
|
25320
|
+
and resources in the indicated scope will both be tagged by default, which
|
|
25321
|
+
leads to tags being applied twice (once in the template, and then once
|
|
25322
|
+
again automatically by CloudFormation as part of the stack deployment).
|
|
25323
|
+
That behavior leads to loss of control as ``excludeResourceTypes`` will
|
|
25324
|
+
prevent tags from appearing in the template, but they will still be
|
|
25325
|
+
applied to the Stack and hence CloudFormation will still apply them
|
|
25326
|
+
to the resource.
|
|
24279
25327
|
|
|
24280
25328
|
:param key: -
|
|
24281
25329
|
:param value: -
|
|
@@ -24388,25 +25436,25 @@ class TimeZone(metaclass=jsii.JSIIMeta, jsii_type="aws-cdk-lib.TimeZone"):
|
|
|
24388
25436
|
|
|
24389
25437
|
Example::
|
|
24390
25438
|
|
|
24391
|
-
|
|
25439
|
+
from aws_cdk import TimeZone
|
|
25440
|
+
# resource: SomeScalableResource
|
|
24392
25441
|
|
|
24393
25442
|
|
|
24394
|
-
|
|
24395
|
-
|
|
24396
|
-
|
|
24397
|
-
description="This is a test rate-based schedule"
|
|
25443
|
+
capacity = resource.auto_scale_capacity(
|
|
25444
|
+
min_capacity=1,
|
|
25445
|
+
max_capacity=50
|
|
24398
25446
|
)
|
|
24399
25447
|
|
|
24400
|
-
|
|
24401
|
-
schedule=
|
|
24402
|
-
|
|
24403
|
-
|
|
24404
|
-
|
|
24405
|
-
|
|
24406
|
-
|
|
24407
|
-
),
|
|
24408
|
-
|
|
24409
|
-
|
|
25448
|
+
capacity.scale_on_schedule("PrescaleInTheMorning",
|
|
25449
|
+
schedule=appscaling.Schedule.cron(hour="8", minute="0"),
|
|
25450
|
+
min_capacity=20,
|
|
25451
|
+
time_zone=TimeZone.AMERICA_DENVER
|
|
25452
|
+
)
|
|
25453
|
+
|
|
25454
|
+
capacity.scale_on_schedule("AllowDownscalingAtNight",
|
|
25455
|
+
schedule=appscaling.Schedule.cron(hour="20", minute="0"),
|
|
25456
|
+
min_capacity=1,
|
|
25457
|
+
time_zone=TimeZone.AMERICA_DENVER
|
|
24410
25458
|
)
|
|
24411
25459
|
'''
|
|
24412
25460
|
|
|
@@ -28334,6 +29382,7 @@ class App(Stage, metaclass=jsii.JSIIMeta, jsii_type="aws-cdk-lib.App"):
|
|
|
28334
29382
|
outdir: typing.Optional[builtins.str] = None,
|
|
28335
29383
|
policy_validation_beta1: typing.Optional[typing.Sequence[IPolicyValidationPluginBeta1]] = None,
|
|
28336
29384
|
post_cli_context: typing.Optional[typing.Mapping[builtins.str, typing.Any]] = None,
|
|
29385
|
+
property_injectors: typing.Optional[typing.Sequence[IPropertyInjector]] = None,
|
|
28337
29386
|
stack_traces: typing.Optional[builtins.bool] = None,
|
|
28338
29387
|
tree_metadata: typing.Optional[builtins.bool] = None,
|
|
28339
29388
|
) -> None:
|
|
@@ -28346,6 +29395,7 @@ class App(Stage, metaclass=jsii.JSIIMeta, jsii_type="aws-cdk-lib.App"):
|
|
|
28346
29395
|
:param outdir: The output directory into which to emit synthesized artifacts. You should never need to set this value. By default, the value you pass to the CLI's ``--output`` flag will be used, and if you change it to a different directory the CLI will fail to pick up the generated Cloud Assembly. This property is intended for internal and testing use. Default: - If this value is *not* set, considers the environment variable ``CDK_OUTDIR``. If ``CDK_OUTDIR`` is not defined, uses a temp directory.
|
|
28347
29396
|
:param policy_validation_beta1: Validation plugins to run after synthesis. Default: - no validation plugins
|
|
28348
29397
|
:param post_cli_context: Additional context values for the application. Context provided here has precedence over context set by: - The CLI via --context - The ``context`` key in ``cdk.json`` - The ``AppProps.context`` property This property is recommended over the ``AppProps.context`` property since you can make final decision over which context value to take in your app. Context can be read from any construct using ``node.getContext(key)``. Default: - no additional context
|
|
29398
|
+
:param property_injectors: A list of IPropertyInjector attached to this App. Default: - no PropertyInjectors
|
|
28349
29399
|
:param stack_traces: Include construct creation stack trace in the ``aws:cdk:trace`` metadata key of all constructs. Default: true stack traces are included unless ``aws:cdk:disable-stack-trace`` is set in the context.
|
|
28350
29400
|
:param tree_metadata: Include construct tree metadata as part of the Cloud Assembly. Default: true
|
|
28351
29401
|
'''
|
|
@@ -28357,6 +29407,7 @@ class App(Stage, metaclass=jsii.JSIIMeta, jsii_type="aws-cdk-lib.App"):
|
|
|
28357
29407
|
outdir=outdir,
|
|
28358
29408
|
policy_validation_beta1=policy_validation_beta1,
|
|
28359
29409
|
post_cli_context=post_cli_context,
|
|
29410
|
+
property_injectors=property_injectors,
|
|
28360
29411
|
stack_traces=stack_traces,
|
|
28361
29412
|
tree_metadata=tree_metadata,
|
|
28362
29413
|
)
|
|
@@ -28771,7 +29822,7 @@ class CfnCodeDeployBlueGreenHook(
|
|
|
28771
29822
|
jsii.set(self, "trafficRoutingConfig", value) # pyright: ignore[reportArgumentType]
|
|
28772
29823
|
|
|
28773
29824
|
|
|
28774
|
-
@jsii.implements(IInspectable)
|
|
29825
|
+
@jsii.implements(IInspectable, _ICustomResourceRef_337851e1)
|
|
28775
29826
|
class CfnCustomResource(
|
|
28776
29827
|
CfnResource,
|
|
28777
29828
|
metaclass=jsii.JSIIMeta,
|
|
@@ -28812,7 +29863,8 @@ class CfnCustomResource(
|
|
|
28812
29863
|
service_token: builtins.str,
|
|
28813
29864
|
service_timeout: typing.Optional[jsii.Number] = None,
|
|
28814
29865
|
) -> None:
|
|
28815
|
-
'''
|
|
29866
|
+
'''Create a new ``AWS::CloudFormation::CustomResource``.
|
|
29867
|
+
|
|
28816
29868
|
:param scope: Scope in which this resource is defined.
|
|
28817
29869
|
:param id: Construct identifier for this resource (unique in its scope).
|
|
28818
29870
|
:param service_token: The service token, such as an Amazon SNS topic ARN or Lambda function ARN. The service token must be from the same Region as the stack. Updates aren't supported.
|
|
@@ -28871,6 +29923,12 @@ class CfnCustomResource(
|
|
|
28871
29923
|
def _cfn_properties(self) -> typing.Mapping[builtins.str, typing.Any]:
|
|
28872
29924
|
return typing.cast(typing.Mapping[builtins.str, typing.Any], jsii.get(self, "cfnProperties"))
|
|
28873
29925
|
|
|
29926
|
+
@builtins.property
|
|
29927
|
+
@jsii.member(jsii_name="customResourceRef")
|
|
29928
|
+
def custom_resource_ref(self) -> _CustomResourceReference_d8e366c9:
|
|
29929
|
+
'''A reference to a CustomResource resource.'''
|
|
29930
|
+
return typing.cast(_CustomResourceReference_d8e366c9, jsii.get(self, "customResourceRef"))
|
|
29931
|
+
|
|
28874
29932
|
@builtins.property
|
|
28875
29933
|
@jsii.member(jsii_name="serviceToken")
|
|
28876
29934
|
def service_token(self) -> builtins.str:
|
|
@@ -28928,7 +29986,7 @@ class CfnDynamicReference(
|
|
|
28928
29986
|
jsii.create(self.__class__, self, [service, key])
|
|
28929
29987
|
|
|
28930
29988
|
|
|
28931
|
-
@jsii.implements(IInspectable)
|
|
29989
|
+
@jsii.implements(IInspectable, _IGuardHookRef_e0640792)
|
|
28932
29990
|
class CfnGuardHook(
|
|
28933
29991
|
CfnResource,
|
|
28934
29992
|
metaclass=jsii.JSIIMeta,
|
|
@@ -29017,7 +30075,8 @@ class CfnGuardHook(
|
|
|
29017
30075
|
stack_filters: typing.Optional[typing.Union[IResolvable, typing.Union["CfnGuardHook.StackFiltersProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
|
|
29018
30076
|
target_filters: typing.Optional[typing.Union[IResolvable, typing.Union["CfnGuardHook.TargetFiltersProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
|
|
29019
30077
|
) -> None:
|
|
29020
|
-
'''
|
|
30078
|
+
'''Create a new ``AWS::CloudFormation::GuardHook``.
|
|
30079
|
+
|
|
29021
30080
|
:param scope: Scope in which this resource is defined.
|
|
29022
30081
|
:param id: Construct identifier for this resource (unique in its scope).
|
|
29023
30082
|
:param alias: The type name alias for the Hook. This alias must be unique per account and Region. The alias must be in the form ``Name1::Name2::Name3`` and must not begin with ``AWS`` . For example, ``Private::Guard::MyTestHook`` .
|
|
@@ -29029,7 +30088,7 @@ class CfnGuardHook(
|
|
|
29029
30088
|
:param log_bucket: Specifies the name of an S3 bucket to store the Guard output report. This report contains the results of your Guard rule validations.
|
|
29030
30089
|
:param options: Specifies the S3 location of your input parameters.
|
|
29031
30090
|
:param stack_filters: Specifies the stack level filters for the Hook. Example stack level filter in JSON: ``"StackFilters": {"FilteringCriteria": "ALL", "StackNames": {"Exclude": [ "stack-1", "stack-2"]}}`` Example stack level filter in YAML: ``StackFilters: FilteringCriteria: ALL StackNames: Exclude: - stack-1 - stack-2``
|
|
29032
|
-
:param target_filters: Specifies the target filters for the Hook. Example target filter in JSON: ``"TargetFilters": {"Actions": [ "
|
|
30091
|
+
:param target_filters: Specifies the target filters for the Hook. Example target filter in JSON: ``"TargetFilters": {"Actions": [ "CREATE", "UPDATE", "DELETE" ]}`` Example target filter in YAML: ``TargetFilters: Actions: - CREATE - UPDATE - DELETE``
|
|
29033
30092
|
'''
|
|
29034
30093
|
if __debug__:
|
|
29035
30094
|
type_hints = typing.get_type_hints(_typecheckingstub__af8d2663a8bac5046ca50537b031b46f870c6edd4948ed8528ca4e3ff9367b17)
|
|
@@ -29094,6 +30153,12 @@ class CfnGuardHook(
|
|
|
29094
30153
|
def _cfn_properties(self) -> typing.Mapping[builtins.str, typing.Any]:
|
|
29095
30154
|
return typing.cast(typing.Mapping[builtins.str, typing.Any], jsii.get(self, "cfnProperties"))
|
|
29096
30155
|
|
|
30156
|
+
@builtins.property
|
|
30157
|
+
@jsii.member(jsii_name="guardHookRef")
|
|
30158
|
+
def guard_hook_ref(self) -> _GuardHookReference_9ad20ca0:
|
|
30159
|
+
'''A reference to a GuardHook resource.'''
|
|
30160
|
+
return typing.cast(_GuardHookReference_9ad20ca0, jsii.get(self, "guardHookRef"))
|
|
30161
|
+
|
|
29097
30162
|
@builtins.property
|
|
29098
30163
|
@jsii.member(jsii_name="alias")
|
|
29099
30164
|
def alias(self) -> builtins.str:
|
|
@@ -29415,7 +30480,7 @@ class CfnGuardHook(
|
|
|
29415
30480
|
) -> None:
|
|
29416
30481
|
'''Specifies the S3 location where your Guard rules or input parameters are located.
|
|
29417
30482
|
|
|
29418
|
-
:param uri: Specifies the S3 path to the file
|
|
30483
|
+
:param uri: Specifies the S3 path to the file that contains your Guard rules or input parameters (in the form ``s3://<bucket name>/<file name>`` ). For Guard rules, the object stored in S3 must have one of the following file extensions: ``.guard`` , ``.zip`` , or ``.tar.gz`` . For input parameters, the object stored in S3 must have one of the following file extensions: ``.yaml`` , ``.json`` , ``.zip`` , or ``.tar.gz`` .
|
|
29419
30484
|
:param version_id: For S3 buckets with versioning enabled, specifies the unique ID of the S3 object version to download your Guard rules or input parameters from. The Guard Hook downloads files from S3 every time the Hook is invoked. To prevent accidental changes or deletions, we recommend using a version when configuring your Guard Hook.
|
|
29420
30485
|
|
|
29421
30486
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudformation-guardhook-s3location.html
|
|
@@ -29446,7 +30511,7 @@ class CfnGuardHook(
|
|
|
29446
30511
|
|
|
29447
30512
|
@builtins.property
|
|
29448
30513
|
def uri(self) -> builtins.str:
|
|
29449
|
-
'''Specifies the S3 path to the file
|
|
30514
|
+
'''Specifies the S3 path to the file that contains your Guard rules or input parameters (in the form ``s3://<bucket name>/<file name>`` ).
|
|
29450
30515
|
|
|
29451
30516
|
For Guard rules, the object stored in S3 must have one of the following file extensions: ``.guard`` , ``.zip`` , or ``.tar.gz`` .
|
|
29452
30517
|
|
|
@@ -29860,7 +30925,7 @@ class CfnGuardHook(
|
|
|
29860
30925
|
)
|
|
29861
30926
|
|
|
29862
30927
|
|
|
29863
|
-
@jsii.implements(IInspectable)
|
|
30928
|
+
@jsii.implements(IInspectable, _IHookDefaultVersionRef_a4784949)
|
|
29864
30929
|
class CfnHookDefaultVersion(
|
|
29865
30930
|
CfnResource,
|
|
29866
30931
|
metaclass=jsii.JSIIMeta,
|
|
@@ -29900,7 +30965,8 @@ class CfnHookDefaultVersion(
|
|
|
29900
30965
|
type_version_arn: typing.Optional[builtins.str] = None,
|
|
29901
30966
|
version_id: typing.Optional[builtins.str] = None,
|
|
29902
30967
|
) -> None:
|
|
29903
|
-
'''
|
|
30968
|
+
'''Create a new ``AWS::CloudFormation::HookDefaultVersion``.
|
|
30969
|
+
|
|
29904
30970
|
:param scope: Scope in which this resource is defined.
|
|
29905
30971
|
:param id: Construct identifier for this resource (unique in its scope).
|
|
29906
30972
|
:param type_name: The name of the Hook. You must specify either ``TypeVersionArn`` , or ``TypeName`` and ``VersionId`` .
|
|
@@ -29952,7 +31018,7 @@ class CfnHookDefaultVersion(
|
|
|
29952
31018
|
@builtins.property
|
|
29953
31019
|
@jsii.member(jsii_name="attrArn")
|
|
29954
31020
|
def attr_arn(self) -> builtins.str:
|
|
29955
|
-
'''The Amazon Resource Number (ARN) of the activated Hook
|
|
31021
|
+
'''The Amazon Resource Number (ARN) of the activated Hook in this account and Region.
|
|
29956
31022
|
|
|
29957
31023
|
:cloudformationAttribute: Arn
|
|
29958
31024
|
'''
|
|
@@ -29963,6 +31029,12 @@ class CfnHookDefaultVersion(
|
|
|
29963
31029
|
def _cfn_properties(self) -> typing.Mapping[builtins.str, typing.Any]:
|
|
29964
31030
|
return typing.cast(typing.Mapping[builtins.str, typing.Any], jsii.get(self, "cfnProperties"))
|
|
29965
31031
|
|
|
31032
|
+
@builtins.property
|
|
31033
|
+
@jsii.member(jsii_name="hookDefaultVersionRef")
|
|
31034
|
+
def hook_default_version_ref(self) -> _HookDefaultVersionReference_11df53e8:
|
|
31035
|
+
'''A reference to a HookDefaultVersion resource.'''
|
|
31036
|
+
return typing.cast(_HookDefaultVersionReference_11df53e8, jsii.get(self, "hookDefaultVersionRef"))
|
|
31037
|
+
|
|
29966
31038
|
@builtins.property
|
|
29967
31039
|
@jsii.member(jsii_name="typeName")
|
|
29968
31040
|
def type_name(self) -> typing.Optional[builtins.str]:
|
|
@@ -30003,7 +31075,7 @@ class CfnHookDefaultVersion(
|
|
|
30003
31075
|
jsii.set(self, "versionId", value) # pyright: ignore[reportArgumentType]
|
|
30004
31076
|
|
|
30005
31077
|
|
|
30006
|
-
@jsii.implements(IInspectable)
|
|
31078
|
+
@jsii.implements(IInspectable, _IHookTypeConfigRef_7bc118dc)
|
|
30007
31079
|
class CfnHookTypeConfig(
|
|
30008
31080
|
CfnResource,
|
|
30009
31081
|
metaclass=jsii.JSIIMeta,
|
|
@@ -30043,7 +31115,8 @@ class CfnHookTypeConfig(
|
|
|
30043
31115
|
type_arn: typing.Optional[builtins.str] = None,
|
|
30044
31116
|
type_name: typing.Optional[builtins.str] = None,
|
|
30045
31117
|
) -> None:
|
|
30046
|
-
'''
|
|
31118
|
+
'''Create a new ``AWS::CloudFormation::HookTypeConfig``.
|
|
31119
|
+
|
|
30047
31120
|
:param scope: Scope in which this resource is defined.
|
|
30048
31121
|
:param id: Construct identifier for this resource (unique in its scope).
|
|
30049
31122
|
:param configuration: Specifies the activated Hook type configuration, in this AWS account and AWS Region . You must specify either ``TypeName`` and ``Configuration`` or ``TypeArn`` and ``Configuration`` .
|
|
@@ -30097,7 +31170,7 @@ class CfnHookTypeConfig(
|
|
|
30097
31170
|
@builtins.property
|
|
30098
31171
|
@jsii.member(jsii_name="attrConfigurationArn")
|
|
30099
31172
|
def attr_configuration_arn(self) -> builtins.str:
|
|
30100
|
-
'''The Amazon Resource Number (ARN) of the activated Hook type configuration
|
|
31173
|
+
'''The Amazon Resource Number (ARN) of the activated Hook type configuration in this account and Region.
|
|
30101
31174
|
|
|
30102
31175
|
:cloudformationAttribute: ConfigurationArn
|
|
30103
31176
|
'''
|
|
@@ -30108,6 +31181,12 @@ class CfnHookTypeConfig(
|
|
|
30108
31181
|
def _cfn_properties(self) -> typing.Mapping[builtins.str, typing.Any]:
|
|
30109
31182
|
return typing.cast(typing.Mapping[builtins.str, typing.Any], jsii.get(self, "cfnProperties"))
|
|
30110
31183
|
|
|
31184
|
+
@builtins.property
|
|
31185
|
+
@jsii.member(jsii_name="hookTypeConfigRef")
|
|
31186
|
+
def hook_type_config_ref(self) -> _HookTypeConfigReference_ed91f4cb:
|
|
31187
|
+
'''A reference to a HookTypeConfig resource.'''
|
|
31188
|
+
return typing.cast(_HookTypeConfigReference_ed91f4cb, jsii.get(self, "hookTypeConfigRef"))
|
|
31189
|
+
|
|
30111
31190
|
@builtins.property
|
|
30112
31191
|
@jsii.member(jsii_name="configuration")
|
|
30113
31192
|
def configuration(self) -> builtins.str:
|
|
@@ -30161,7 +31240,7 @@ class CfnHookTypeConfig(
|
|
|
30161
31240
|
jsii.set(self, "typeName", value) # pyright: ignore[reportArgumentType]
|
|
30162
31241
|
|
|
30163
31242
|
|
|
30164
|
-
@jsii.implements(IInspectable)
|
|
31243
|
+
@jsii.implements(IInspectable, _IHookVersionRef_0d71a867)
|
|
30165
31244
|
class CfnHookVersion(
|
|
30166
31245
|
CfnResource,
|
|
30167
31246
|
metaclass=jsii.JSIIMeta,
|
|
@@ -30206,11 +31285,12 @@ class CfnHookVersion(
|
|
|
30206
31285
|
execution_role_arn: typing.Optional[builtins.str] = None,
|
|
30207
31286
|
logging_config: typing.Optional[typing.Union[IResolvable, typing.Union["CfnHookVersion.LoggingConfigProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
|
|
30208
31287
|
) -> None:
|
|
30209
|
-
'''
|
|
31288
|
+
'''Create a new ``AWS::CloudFormation::HookVersion``.
|
|
31289
|
+
|
|
30210
31290
|
:param scope: Scope in which this resource is defined.
|
|
30211
31291
|
:param id: Construct identifier for this resource (unique in its scope).
|
|
30212
|
-
:param schema_handler_package: A URL to the Amazon S3 bucket
|
|
30213
|
-
:param type_name: The unique name for your
|
|
31292
|
+
:param schema_handler_package: A URL to the Amazon S3 bucket for the Hook project package that contains the necessary files for the Hook you want to register. For information on generating a schema handler package, see `Modeling custom CloudFormation Hooks <https://docs.aws.amazon.com/cloudformation-cli/latest/hooks-userguide/hooks-model.html>`_ in the *AWS CloudFormation Hooks User Guide* . .. epigraph:: To register the Hook, you must have ``s3:GetObject`` permissions to access the S3 objects.
|
|
31293
|
+
:param type_name: The unique name for your Hook. Specifies a three-part namespace for your Hook, with a recommended pattern of ``Organization::Service::Hook`` . .. epigraph:: The following organization namespaces are reserved and can't be used in your Hook type names: - ``Alexa`` - ``AMZN`` - ``Amazon`` - ``ASK`` - ``AWS`` - ``Custom`` - ``Dev``
|
|
30214
31294
|
:param execution_role_arn: The Amazon Resource Name (ARN) of the task execution role that grants the Hook permission.
|
|
30215
31295
|
:param logging_config: Contains logging configuration information for an extension.
|
|
30216
31296
|
'''
|
|
@@ -30296,12 +31376,10 @@ class CfnHookVersion(
|
|
|
30296
31376
|
@builtins.property
|
|
30297
31377
|
@jsii.member(jsii_name="attrVisibility")
|
|
30298
31378
|
def attr_visibility(self) -> builtins.str:
|
|
30299
|
-
'''The
|
|
30300
|
-
|
|
30301
|
-
Valid values include:
|
|
31379
|
+
'''The visibility level that determines who can see and use this Hook in CloudFormation operations:.
|
|
30302
31380
|
|
|
30303
|
-
- ``PRIVATE`` : The
|
|
30304
|
-
- ``PUBLIC`` : The
|
|
31381
|
+
- ``PRIVATE`` : The Hook is only visible and usable within the account where it was registered. CloudFormation automatically marks any Hooks you register as ``PRIVATE`` .
|
|
31382
|
+
- ``PUBLIC`` : The Hook is publicly visible and usable within any AWS account.
|
|
30305
31383
|
|
|
30306
31384
|
:cloudformationAttribute: Visibility
|
|
30307
31385
|
'''
|
|
@@ -30312,10 +31390,16 @@ class CfnHookVersion(
|
|
|
30312
31390
|
def _cfn_properties(self) -> typing.Mapping[builtins.str, typing.Any]:
|
|
30313
31391
|
return typing.cast(typing.Mapping[builtins.str, typing.Any], jsii.get(self, "cfnProperties"))
|
|
30314
31392
|
|
|
31393
|
+
@builtins.property
|
|
31394
|
+
@jsii.member(jsii_name="hookVersionRef")
|
|
31395
|
+
def hook_version_ref(self) -> _HookVersionReference_3688b53a:
|
|
31396
|
+
'''A reference to a HookVersion resource.'''
|
|
31397
|
+
return typing.cast(_HookVersionReference_3688b53a, jsii.get(self, "hookVersionRef"))
|
|
31398
|
+
|
|
30315
31399
|
@builtins.property
|
|
30316
31400
|
@jsii.member(jsii_name="schemaHandlerPackage")
|
|
30317
31401
|
def schema_handler_package(self) -> builtins.str:
|
|
30318
|
-
'''A URL to the Amazon S3 bucket
|
|
31402
|
+
'''A URL to the Amazon S3 bucket for the Hook project package that contains the necessary files for the Hook you want to register.'''
|
|
30319
31403
|
return typing.cast(builtins.str, jsii.get(self, "schemaHandlerPackage"))
|
|
30320
31404
|
|
|
30321
31405
|
@schema_handler_package.setter
|
|
@@ -30328,7 +31412,7 @@ class CfnHookVersion(
|
|
|
30328
31412
|
@builtins.property
|
|
30329
31413
|
@jsii.member(jsii_name="typeName")
|
|
30330
31414
|
def type_name(self) -> builtins.str:
|
|
30331
|
-
'''The unique name for your
|
|
31415
|
+
'''The unique name for your Hook.'''
|
|
30332
31416
|
return typing.cast(builtins.str, jsii.get(self, "typeName"))
|
|
30333
31417
|
|
|
30334
31418
|
@type_name.setter
|
|
@@ -30534,7 +31618,7 @@ class CfnJson(
|
|
|
30534
31618
|
return typing.cast(Reference, jsii.get(self, "value"))
|
|
30535
31619
|
|
|
30536
31620
|
|
|
30537
|
-
@jsii.implements(IInspectable)
|
|
31621
|
+
@jsii.implements(IInspectable, _ILambdaHookRef_5ceec28e)
|
|
30538
31622
|
class CfnLambdaHook(
|
|
30539
31623
|
CfnResource,
|
|
30540
31624
|
metaclass=jsii.JSIIMeta,
|
|
@@ -30607,7 +31691,8 @@ class CfnLambdaHook(
|
|
|
30607
31691
|
stack_filters: typing.Optional[typing.Union[IResolvable, typing.Union["CfnLambdaHook.StackFiltersProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
|
|
30608
31692
|
target_filters: typing.Optional[typing.Union[IResolvable, typing.Union["CfnLambdaHook.TargetFiltersProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
|
|
30609
31693
|
) -> None:
|
|
30610
|
-
'''
|
|
31694
|
+
'''Create a new ``AWS::CloudFormation::LambdaHook``.
|
|
31695
|
+
|
|
30611
31696
|
:param scope: Scope in which this resource is defined.
|
|
30612
31697
|
:param id: Construct identifier for this resource (unique in its scope).
|
|
30613
31698
|
:param alias: The type name alias for the Hook. This alias must be unique per account and Region. The alias must be in the form ``Name1::Name2::Name3`` and must not begin with ``AWS`` . For example, ``Private::Lambda::MyTestHook`` .
|
|
@@ -30617,7 +31702,7 @@ class CfnLambdaHook(
|
|
|
30617
31702
|
:param lambda_function: Specifies the Lambda function for the Hook. You can use:. - The full Amazon Resource Name (ARN) without a suffix. - A qualified ARN with a version or alias suffix.
|
|
30618
31703
|
:param target_operations: Specifies the list of operations the Hook is run against. For more information, see `Hook targets <https://docs.aws.amazon.com/cloudformation-cli/latest/hooks-userguide/hooks-concepts.html#hook-terms-hook-target>`_ in the *AWS CloudFormation Hooks User Guide* . Valid values: ``STACK`` | ``RESOURCE`` | ``CHANGE_SET`` | ``CLOUD_CONTROL``
|
|
30619
31704
|
:param stack_filters: Specifies the stack level filters for the Hook. Example stack level filter in JSON: ``"StackFilters": {"FilteringCriteria": "ALL", "StackNames": {"Exclude": [ "stack-1", "stack-2"]}}`` Example stack level filter in YAML: ``StackFilters: FilteringCriteria: ALL StackNames: Exclude: - stack-1 - stack-2``
|
|
30620
|
-
:param target_filters: Specifies the target filters for the Hook. Example target filter in JSON: ``"TargetFilters": {"Actions": [ "
|
|
31705
|
+
:param target_filters: Specifies the target filters for the Hook. Example target filter in JSON: ``"TargetFilters": {"Actions": [ "CREATE", "UPDATE", "DELETE" ]}`` Example target filter in YAML: ``TargetFilters: Actions: - CREATE - UPDATE - DELETE``
|
|
30621
31706
|
'''
|
|
30622
31707
|
if __debug__:
|
|
30623
31708
|
type_hints = typing.get_type_hints(_typecheckingstub__407b4a631e3a832f02376728222302ded8f1ba90d2538b0469e5b99641f17447)
|
|
@@ -30680,6 +31765,12 @@ class CfnLambdaHook(
|
|
|
30680
31765
|
def _cfn_properties(self) -> typing.Mapping[builtins.str, typing.Any]:
|
|
30681
31766
|
return typing.cast(typing.Mapping[builtins.str, typing.Any], jsii.get(self, "cfnProperties"))
|
|
30682
31767
|
|
|
31768
|
+
@builtins.property
|
|
31769
|
+
@jsii.member(jsii_name="lambdaHookRef")
|
|
31770
|
+
def lambda_hook_ref(self) -> _LambdaHookReference_1c262218:
|
|
31771
|
+
'''A reference to a LambdaHook resource.'''
|
|
31772
|
+
return typing.cast(_LambdaHookReference_1c262218, jsii.get(self, "lambdaHookRef"))
|
|
31773
|
+
|
|
30683
31774
|
@builtins.property
|
|
30684
31775
|
@jsii.member(jsii_name="alias")
|
|
30685
31776
|
def alias(self) -> builtins.str:
|
|
@@ -31272,7 +32363,7 @@ class CfnLambdaHook(
|
|
|
31272
32363
|
)
|
|
31273
32364
|
|
|
31274
32365
|
|
|
31275
|
-
@jsii.implements(IInspectable)
|
|
32366
|
+
@jsii.implements(IInspectable, _IMacroRef_e9ae4afa)
|
|
31276
32367
|
class CfnMacro(CfnResource, metaclass=jsii.JSIIMeta, jsii_type="aws-cdk-lib.CfnMacro"):
|
|
31277
32368
|
'''The ``AWS::CloudFormation::Macro`` resource is a CloudFormation resource type that creates a CloudFormation macro to perform custom processing on CloudFormation templates.
|
|
31278
32369
|
|
|
@@ -31310,7 +32401,8 @@ class CfnMacro(CfnResource, metaclass=jsii.JSIIMeta, jsii_type="aws-cdk-lib.CfnM
|
|
|
31310
32401
|
log_group_name: typing.Optional[builtins.str] = None,
|
|
31311
32402
|
log_role_arn: typing.Optional[builtins.str] = None,
|
|
31312
32403
|
) -> None:
|
|
31313
|
-
'''
|
|
32404
|
+
'''Create a new ``AWS::CloudFormation::Macro``.
|
|
32405
|
+
|
|
31314
32406
|
:param scope: Scope in which this resource is defined.
|
|
31315
32407
|
:param id: Construct identifier for this resource (unique in its scope).
|
|
31316
32408
|
:param function_name: The Amazon Resource Name (ARN) of the underlying Lambda function that you want CloudFormation to invoke when the macro is run.
|
|
@@ -31366,7 +32458,8 @@ class CfnMacro(CfnResource, metaclass=jsii.JSIIMeta, jsii_type="aws-cdk-lib.CfnM
|
|
|
31366
32458
|
@builtins.property
|
|
31367
32459
|
@jsii.member(jsii_name="attrId")
|
|
31368
32460
|
def attr_id(self) -> builtins.str:
|
|
31369
|
-
'''
|
|
32461
|
+
'''Returns a unique identifier for the resource.
|
|
32462
|
+
|
|
31370
32463
|
:cloudformationAttribute: Id
|
|
31371
32464
|
'''
|
|
31372
32465
|
return typing.cast(builtins.str, jsii.get(self, "attrId"))
|
|
@@ -31376,6 +32469,12 @@ class CfnMacro(CfnResource, metaclass=jsii.JSIIMeta, jsii_type="aws-cdk-lib.CfnM
|
|
|
31376
32469
|
def _cfn_properties(self) -> typing.Mapping[builtins.str, typing.Any]:
|
|
31377
32470
|
return typing.cast(typing.Mapping[builtins.str, typing.Any], jsii.get(self, "cfnProperties"))
|
|
31378
32471
|
|
|
32472
|
+
@builtins.property
|
|
32473
|
+
@jsii.member(jsii_name="macroRef")
|
|
32474
|
+
def macro_ref(self) -> _MacroReference_2603df14:
|
|
32475
|
+
'''A reference to a Macro resource.'''
|
|
32476
|
+
return typing.cast(_MacroReference_2603df14, jsii.get(self, "macroRef"))
|
|
32477
|
+
|
|
31379
32478
|
@builtins.property
|
|
31380
32479
|
@jsii.member(jsii_name="functionName")
|
|
31381
32480
|
def function_name(self) -> builtins.str:
|
|
@@ -31534,7 +32633,7 @@ class CfnMapping(
|
|
|
31534
32633
|
return typing.cast(None, jsii.invoke(self, "setValue", [key1, key2, value]))
|
|
31535
32634
|
|
|
31536
32635
|
|
|
31537
|
-
@jsii.implements(IInspectable)
|
|
32636
|
+
@jsii.implements(IInspectable, _IModuleDefaultVersionRef_8f5f90c3)
|
|
31538
32637
|
class CfnModuleDefaultVersion(
|
|
31539
32638
|
CfnResource,
|
|
31540
32639
|
metaclass=jsii.JSIIMeta,
|
|
@@ -31574,7 +32673,8 @@ class CfnModuleDefaultVersion(
|
|
|
31574
32673
|
module_name: typing.Optional[builtins.str] = None,
|
|
31575
32674
|
version_id: typing.Optional[builtins.str] = None,
|
|
31576
32675
|
) -> None:
|
|
31577
|
-
'''
|
|
32676
|
+
'''Create a new ``AWS::CloudFormation::ModuleDefaultVersion``.
|
|
32677
|
+
|
|
31578
32678
|
:param scope: Scope in which this resource is defined.
|
|
31579
32679
|
:param id: Construct identifier for this resource (unique in its scope).
|
|
31580
32680
|
:param arn: The Amazon Resource Name (ARN) of the module version to set as the default version. Conditional: You must specify either ``Arn`` , or ``ModuleName`` and ``VersionId`` .
|
|
@@ -31626,6 +32726,12 @@ class CfnModuleDefaultVersion(
|
|
|
31626
32726
|
def _cfn_properties(self) -> typing.Mapping[builtins.str, typing.Any]:
|
|
31627
32727
|
return typing.cast(typing.Mapping[builtins.str, typing.Any], jsii.get(self, "cfnProperties"))
|
|
31628
32728
|
|
|
32729
|
+
@builtins.property
|
|
32730
|
+
@jsii.member(jsii_name="moduleDefaultVersionRef")
|
|
32731
|
+
def module_default_version_ref(self) -> _ModuleDefaultVersionReference_6e4498de:
|
|
32732
|
+
'''A reference to a ModuleDefaultVersion resource.'''
|
|
32733
|
+
return typing.cast(_ModuleDefaultVersionReference_6e4498de, jsii.get(self, "moduleDefaultVersionRef"))
|
|
32734
|
+
|
|
31629
32735
|
@builtins.property
|
|
31630
32736
|
@jsii.member(jsii_name="arn")
|
|
31631
32737
|
def arn(self) -> typing.Optional[builtins.str]:
|
|
@@ -31666,7 +32772,7 @@ class CfnModuleDefaultVersion(
|
|
|
31666
32772
|
jsii.set(self, "versionId", value) # pyright: ignore[reportArgumentType]
|
|
31667
32773
|
|
|
31668
32774
|
|
|
31669
|
-
@jsii.implements(IInspectable)
|
|
32775
|
+
@jsii.implements(IInspectable, _IModuleVersionRef_76485182)
|
|
31670
32776
|
class CfnModuleVersion(
|
|
31671
32777
|
CfnResource,
|
|
31672
32778
|
metaclass=jsii.JSIIMeta,
|
|
@@ -31704,11 +32810,12 @@ class CfnModuleVersion(
|
|
|
31704
32810
|
module_name: builtins.str,
|
|
31705
32811
|
module_package: builtins.str,
|
|
31706
32812
|
) -> None:
|
|
31707
|
-
'''
|
|
32813
|
+
'''Create a new ``AWS::CloudFormation::ModuleVersion``.
|
|
32814
|
+
|
|
31708
32815
|
:param scope: Scope in which this resource is defined.
|
|
31709
32816
|
:param id: Construct identifier for this resource (unique in its scope).
|
|
31710
32817
|
:param module_name: The name of the module being registered.
|
|
31711
|
-
:param module_package: A URL to the S3 bucket
|
|
32818
|
+
:param module_package: A URL to the S3 bucket for the package that contains the template fragment and schema files for the module version to register. For more information, see `Module structure and requirements <https://docs.aws.amazon.com/cloudformation-cli/latest/userguide/modules-structure.html>`_ in the *AWS CloudFormation Command Line Interface (CLI) User Guide* . .. epigraph:: To register the module version, you must have ``s3:GetObject`` permissions to access the S3 objects.
|
|
31712
32819
|
'''
|
|
31713
32820
|
if __debug__:
|
|
31714
32821
|
type_hints = typing.get_type_hints(_typecheckingstub__3d780aabbd07e1197c5165344069ba0f46d2e4740d74a296d922fbcbf26044c2)
|
|
@@ -31818,12 +32925,10 @@ class CfnModuleVersion(
|
|
|
31818
32925
|
@builtins.property
|
|
31819
32926
|
@jsii.member(jsii_name="attrVisibility")
|
|
31820
32927
|
def attr_visibility(self) -> builtins.str:
|
|
31821
|
-
'''The
|
|
31822
|
-
|
|
31823
|
-
Valid values include:
|
|
32928
|
+
'''The visibility level that determines who can see and use this module in CloudFormation operations:.
|
|
31824
32929
|
|
|
31825
|
-
- ``PRIVATE`` : The
|
|
31826
|
-
- ``PUBLIC`` : The
|
|
32930
|
+
- ``PRIVATE`` : The module is only visible and usable within the account where it was registered. CloudFormation automatically marks any modules you register as ``PRIVATE`` .
|
|
32931
|
+
- ``PUBLIC`` : The module is publicly visible and usable within any AWS account.
|
|
31827
32932
|
|
|
31828
32933
|
:cloudformationAttribute: Visibility
|
|
31829
32934
|
'''
|
|
@@ -31834,6 +32939,12 @@ class CfnModuleVersion(
|
|
|
31834
32939
|
def _cfn_properties(self) -> typing.Mapping[builtins.str, typing.Any]:
|
|
31835
32940
|
return typing.cast(typing.Mapping[builtins.str, typing.Any], jsii.get(self, "cfnProperties"))
|
|
31836
32941
|
|
|
32942
|
+
@builtins.property
|
|
32943
|
+
@jsii.member(jsii_name="moduleVersionRef")
|
|
32944
|
+
def module_version_ref(self) -> _ModuleVersionReference_16e9080f:
|
|
32945
|
+
'''A reference to a ModuleVersion resource.'''
|
|
32946
|
+
return typing.cast(_ModuleVersionReference_16e9080f, jsii.get(self, "moduleVersionRef"))
|
|
32947
|
+
|
|
31837
32948
|
@builtins.property
|
|
31838
32949
|
@jsii.member(jsii_name="moduleName")
|
|
31839
32950
|
def module_name(self) -> builtins.str:
|
|
@@ -31850,7 +32961,7 @@ class CfnModuleVersion(
|
|
|
31850
32961
|
@builtins.property
|
|
31851
32962
|
@jsii.member(jsii_name="modulePackage")
|
|
31852
32963
|
def module_package(self) -> builtins.str:
|
|
31853
|
-
'''A URL to the S3 bucket
|
|
32964
|
+
'''A URL to the S3 bucket for the package that contains the template fragment and schema files for the module version to register.'''
|
|
31854
32965
|
return typing.cast(builtins.str, jsii.get(self, "modulePackage"))
|
|
31855
32966
|
|
|
31856
32967
|
@module_package.setter
|
|
@@ -31861,7 +32972,7 @@ class CfnModuleVersion(
|
|
|
31861
32972
|
jsii.set(self, "modulePackage", value) # pyright: ignore[reportArgumentType]
|
|
31862
32973
|
|
|
31863
32974
|
|
|
31864
|
-
@jsii.implements(IInspectable)
|
|
32975
|
+
@jsii.implements(IInspectable, _IPublicTypeVersionRef_554ddaba)
|
|
31865
32976
|
class CfnPublicTypeVersion(
|
|
31866
32977
|
CfnResource,
|
|
31867
32978
|
metaclass=jsii.JSIIMeta,
|
|
@@ -31912,7 +33023,8 @@ class CfnPublicTypeVersion(
|
|
|
31912
33023
|
type: typing.Optional[builtins.str] = None,
|
|
31913
33024
|
type_name: typing.Optional[builtins.str] = None,
|
|
31914
33025
|
) -> None:
|
|
31915
|
-
'''
|
|
33026
|
+
'''Create a new ``AWS::CloudFormation::PublicTypeVersion``.
|
|
33027
|
+
|
|
31916
33028
|
:param scope: Scope in which this resource is defined.
|
|
31917
33029
|
:param id: Construct identifier for this resource (unique in its scope).
|
|
31918
33030
|
:param arn: The Amazon Resource Number (ARN) of the extension. Conditional: You must specify ``Arn`` , or ``TypeName`` and ``Type`` .
|
|
@@ -31999,6 +33111,12 @@ class CfnPublicTypeVersion(
|
|
|
31999
33111
|
def _cfn_properties(self) -> typing.Mapping[builtins.str, typing.Any]:
|
|
32000
33112
|
return typing.cast(typing.Mapping[builtins.str, typing.Any], jsii.get(self, "cfnProperties"))
|
|
32001
33113
|
|
|
33114
|
+
@builtins.property
|
|
33115
|
+
@jsii.member(jsii_name="publicTypeVersionRef")
|
|
33116
|
+
def public_type_version_ref(self) -> _PublicTypeVersionReference_da345091:
|
|
33117
|
+
'''A reference to a PublicTypeVersion resource.'''
|
|
33118
|
+
return typing.cast(_PublicTypeVersionReference_da345091, jsii.get(self, "publicTypeVersionRef"))
|
|
33119
|
+
|
|
32002
33120
|
@builtins.property
|
|
32003
33121
|
@jsii.member(jsii_name="arn")
|
|
32004
33122
|
def arn(self) -> typing.Optional[builtins.str]:
|
|
@@ -32065,7 +33183,7 @@ class CfnPublicTypeVersion(
|
|
|
32065
33183
|
jsii.set(self, "typeName", value) # pyright: ignore[reportArgumentType]
|
|
32066
33184
|
|
|
32067
33185
|
|
|
32068
|
-
@jsii.implements(IInspectable)
|
|
33186
|
+
@jsii.implements(IInspectable, _IPublisherRef_43e14b13)
|
|
32069
33187
|
class CfnPublisher(
|
|
32070
33188
|
CfnResource,
|
|
32071
33189
|
metaclass=jsii.JSIIMeta,
|
|
@@ -32103,7 +33221,8 @@ class CfnPublisher(
|
|
|
32103
33221
|
accept_terms_and_conditions: typing.Union[builtins.bool, IResolvable],
|
|
32104
33222
|
connection_arn: typing.Optional[builtins.str] = None,
|
|
32105
33223
|
) -> None:
|
|
32106
|
-
'''
|
|
33224
|
+
'''Create a new ``AWS::CloudFormation::Publisher``.
|
|
33225
|
+
|
|
32107
33226
|
:param scope: Scope in which this resource is defined.
|
|
32108
33227
|
:param id: Construct identifier for this resource (unique in its scope).
|
|
32109
33228
|
:param accept_terms_and_conditions: Whether you accept the `Terms and Conditions <https://docs.aws.amazon.com/https://cloudformation-registry-documents.s3.amazonaws.com/Terms_and_Conditions_for_AWS_CloudFormation_Registry_Publishers.pdf>`_ for publishing extensions in the CloudFormation registry. You must accept the terms and conditions in order to register to publish public extensions to the CloudFormation registry. The default is ``false`` .
|
|
@@ -32193,6 +33312,12 @@ class CfnPublisher(
|
|
|
32193
33312
|
def _cfn_properties(self) -> typing.Mapping[builtins.str, typing.Any]:
|
|
32194
33313
|
return typing.cast(typing.Mapping[builtins.str, typing.Any], jsii.get(self, "cfnProperties"))
|
|
32195
33314
|
|
|
33315
|
+
@builtins.property
|
|
33316
|
+
@jsii.member(jsii_name="publisherRef")
|
|
33317
|
+
def publisher_ref(self) -> _PublisherReference_2058d21f:
|
|
33318
|
+
'''A reference to a Publisher resource.'''
|
|
33319
|
+
return typing.cast(_PublisherReference_2058d21f, jsii.get(self, "publisherRef"))
|
|
33320
|
+
|
|
32196
33321
|
@builtins.property
|
|
32197
33322
|
@jsii.member(jsii_name="acceptTermsAndConditions")
|
|
32198
33323
|
def accept_terms_and_conditions(self) -> typing.Union[builtins.bool, IResolvable]:
|
|
@@ -32223,7 +33348,7 @@ class CfnPublisher(
|
|
|
32223
33348
|
jsii.set(self, "connectionArn", value) # pyright: ignore[reportArgumentType]
|
|
32224
33349
|
|
|
32225
33350
|
|
|
32226
|
-
@jsii.implements(IInspectable)
|
|
33351
|
+
@jsii.implements(IInspectable, _IResourceDefaultVersionRef_6bcf9f85)
|
|
32227
33352
|
class CfnResourceDefaultVersion(
|
|
32228
33353
|
CfnResource,
|
|
32229
33354
|
metaclass=jsii.JSIIMeta,
|
|
@@ -32261,7 +33386,8 @@ class CfnResourceDefaultVersion(
|
|
|
32261
33386
|
type_version_arn: typing.Optional[builtins.str] = None,
|
|
32262
33387
|
version_id: typing.Optional[builtins.str] = None,
|
|
32263
33388
|
) -> None:
|
|
32264
|
-
'''
|
|
33389
|
+
'''Create a new ``AWS::CloudFormation::ResourceDefaultVersion``.
|
|
33390
|
+
|
|
32265
33391
|
:param scope: Scope in which this resource is defined.
|
|
32266
33392
|
:param id: Construct identifier for this resource (unique in its scope).
|
|
32267
33393
|
:param type_name: The name of the resource. Conditional: You must specify either ``TypeVersionArn`` , or ``TypeName`` and ``VersionId`` .
|
|
@@ -32324,6 +33450,12 @@ class CfnResourceDefaultVersion(
|
|
|
32324
33450
|
def _cfn_properties(self) -> typing.Mapping[builtins.str, typing.Any]:
|
|
32325
33451
|
return typing.cast(typing.Mapping[builtins.str, typing.Any], jsii.get(self, "cfnProperties"))
|
|
32326
33452
|
|
|
33453
|
+
@builtins.property
|
|
33454
|
+
@jsii.member(jsii_name="resourceDefaultVersionRef")
|
|
33455
|
+
def resource_default_version_ref(self) -> _ResourceDefaultVersionReference_878c9c7f:
|
|
33456
|
+
'''A reference to a ResourceDefaultVersion resource.'''
|
|
33457
|
+
return typing.cast(_ResourceDefaultVersionReference_878c9c7f, jsii.get(self, "resourceDefaultVersionRef"))
|
|
33458
|
+
|
|
32327
33459
|
@builtins.property
|
|
32328
33460
|
@jsii.member(jsii_name="typeName")
|
|
32329
33461
|
def type_name(self) -> typing.Optional[builtins.str]:
|
|
@@ -32364,7 +33496,7 @@ class CfnResourceDefaultVersion(
|
|
|
32364
33496
|
jsii.set(self, "versionId", value) # pyright: ignore[reportArgumentType]
|
|
32365
33497
|
|
|
32366
33498
|
|
|
32367
|
-
@jsii.implements(IInspectable)
|
|
33499
|
+
@jsii.implements(IInspectable, _IResourceVersionRef_8fc1bbae)
|
|
32368
33500
|
class CfnResourceVersion(
|
|
32369
33501
|
CfnResource,
|
|
32370
33502
|
metaclass=jsii.JSIIMeta,
|
|
@@ -32415,10 +33547,11 @@ class CfnResourceVersion(
|
|
|
32415
33547
|
execution_role_arn: typing.Optional[builtins.str] = None,
|
|
32416
33548
|
logging_config: typing.Optional[typing.Union[IResolvable, typing.Union["CfnResourceVersion.LoggingConfigProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
|
|
32417
33549
|
) -> None:
|
|
32418
|
-
'''
|
|
33550
|
+
'''Create a new ``AWS::CloudFormation::ResourceVersion``.
|
|
33551
|
+
|
|
32419
33552
|
:param scope: Scope in which this resource is defined.
|
|
32420
33553
|
:param id: Construct identifier for this resource (unique in its scope).
|
|
32421
|
-
:param schema_handler_package: A URL to the S3 bucket
|
|
33554
|
+
:param schema_handler_package: A URL to the S3 bucket for the resource project package that contains the necessary files for the resource you want to register. For information on generating a schema handler package, see `Modeling resource types to use with AWS CloudFormation <https://docs.aws.amazon.com/cloudformation-cli/latest/userguide/resource-type-model.html>`_ in the *AWS CloudFormation Command Line Interface (CLI) User Guide* . .. epigraph:: To register the resource version, you must have ``s3:GetObject`` permissions to access the S3 objects.
|
|
32422
33555
|
:param type_name: The name of the resource being registered. We recommend that resource names adhere to the following pattern: *company_or_organization* :: *service* :: *type* . .. epigraph:: The following organization namespaces are reserved and can't be used in your resource names: - ``Alexa`` - ``AMZN`` - ``Amazon`` - ``AWS`` - ``Custom`` - ``Dev``
|
|
32423
33556
|
:param execution_role_arn: The Amazon Resource Name (ARN) of the IAM role for CloudFormation to assume when invoking the resource. If your resource calls AWS APIs in any of its handlers, you must create an IAM execution role that includes the necessary permissions to call those AWS APIs, and provision that execution role in your account. When CloudFormation needs to invoke the resource type handler, CloudFormation assumes this execution role to create a temporary session token, which it then passes to the resource type handler, thereby supplying your resource type with the appropriate credentials.
|
|
32424
33557
|
:param logging_config: Logging configuration information for a resource.
|
|
@@ -32493,7 +33626,7 @@ class CfnResourceVersion(
|
|
|
32493
33626
|
|
|
32494
33627
|
CloudFormation determines the provisioning type during registration, based on the types of handlers in the schema handler package submitted.
|
|
32495
33628
|
|
|
32496
|
-
|
|
33629
|
+
Possible values:
|
|
32497
33630
|
|
|
32498
33631
|
- ``FULLY_MUTABLE`` : The resource type includes an update handler to process updates to the type during stack update operations.
|
|
32499
33632
|
- ``IMMUTABLE`` : The resource type doesn't include an update handler, so the type can't be updated and must instead be replaced during stack update operations.
|
|
@@ -32529,12 +33662,10 @@ class CfnResourceVersion(
|
|
|
32529
33662
|
@builtins.property
|
|
32530
33663
|
@jsii.member(jsii_name="attrVisibility")
|
|
32531
33664
|
def attr_visibility(self) -> builtins.str:
|
|
32532
|
-
'''The
|
|
33665
|
+
'''The visibility level that determines who can see and use this resource in CloudFormation operations:.
|
|
32533
33666
|
|
|
32534
|
-
|
|
32535
|
-
|
|
32536
|
-
- ``PRIVATE`` : The extension (resource) is only visible and usable within the account in which it is registered. CloudFormation marks any extensions you register as ``PRIVATE`` .
|
|
32537
|
-
- ``PUBLIC`` : The extension (resource) is publicly visible and usable within any AWS account.
|
|
33667
|
+
- ``PRIVATE`` : The resource is only visible and usable within the account where it was registered. CloudFormation automatically marks any resources you register as ``PRIVATE`` .
|
|
33668
|
+
- ``PUBLIC`` : The resource is publicly visible and usable within any AWS account.
|
|
32538
33669
|
|
|
32539
33670
|
:cloudformationAttribute: Visibility
|
|
32540
33671
|
'''
|
|
@@ -32545,10 +33676,16 @@ class CfnResourceVersion(
|
|
|
32545
33676
|
def _cfn_properties(self) -> typing.Mapping[builtins.str, typing.Any]:
|
|
32546
33677
|
return typing.cast(typing.Mapping[builtins.str, typing.Any], jsii.get(self, "cfnProperties"))
|
|
32547
33678
|
|
|
33679
|
+
@builtins.property
|
|
33680
|
+
@jsii.member(jsii_name="resourceVersionRef")
|
|
33681
|
+
def resource_version_ref(self) -> _ResourceVersionReference_a8ae93f7:
|
|
33682
|
+
'''A reference to a ResourceVersion resource.'''
|
|
33683
|
+
return typing.cast(_ResourceVersionReference_a8ae93f7, jsii.get(self, "resourceVersionRef"))
|
|
33684
|
+
|
|
32548
33685
|
@builtins.property
|
|
32549
33686
|
@jsii.member(jsii_name="schemaHandlerPackage")
|
|
32550
33687
|
def schema_handler_package(self) -> builtins.str:
|
|
32551
|
-
'''A URL to the S3 bucket
|
|
33688
|
+
'''A URL to the S3 bucket for the resource project package that contains the necessary files for the resource you want to register.'''
|
|
32552
33689
|
return typing.cast(builtins.str, jsii.get(self, "schemaHandlerPackage"))
|
|
32553
33690
|
|
|
32554
33691
|
@schema_handler_package.setter
|
|
@@ -32673,19 +33810,19 @@ class CfnResourceVersion(
|
|
|
32673
33810
|
)
|
|
32674
33811
|
|
|
32675
33812
|
|
|
32676
|
-
@jsii.implements(IInspectable, ITaggable)
|
|
33813
|
+
@jsii.implements(IInspectable, _IStackRef_f0f1d363, ITaggable)
|
|
32677
33814
|
class CfnStack(CfnResource, metaclass=jsii.JSIIMeta, jsii_type="aws-cdk-lib.CfnStack"):
|
|
32678
33815
|
'''The ``AWS::CloudFormation::Stack`` resource nests a stack as a resource in a top-level template.
|
|
32679
33816
|
|
|
32680
|
-
For more information, see `
|
|
33817
|
+
For more information, see `Nested stacks <https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-nested-stacks.html>`_ in the *AWS CloudFormation User Guide* .
|
|
32681
33818
|
|
|
32682
|
-
You can add output values from a nested stack within the containing template. You use the `GetAtt <https://docs.aws.amazon.com/AWSCloudFormation/latest/
|
|
33819
|
+
You can add output values from a nested stack within the containing template. You use the `GetAtt <https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/intrinsic-function-reference-getatt.html>`_ function with the nested stack's logical name and the name of the output value in the nested stack in the format ``Outputs. *NestedStackOutputName*`` .
|
|
32683
33820
|
|
|
32684
33821
|
We strongly recommend that updates to nested stacks are run from the parent stack.
|
|
32685
33822
|
|
|
32686
33823
|
When you apply template changes to update a top-level stack, CloudFormation updates the top-level stack and initiates an update to its nested stacks. CloudFormation updates the resources of modified nested stacks, but doesn't update the resources of unmodified nested stacks.
|
|
32687
33824
|
|
|
32688
|
-
|
|
33825
|
+
For stacks that contain IAM resources, you must acknowledge IAM capabilities. Also, make sure that you have cancel update stack permissions, which are required if an update rolls back. For more information about IAM and CloudFormation , see `Controlling access with AWS Identity and Access Management <https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/control-access-with-iam.html>`_ in the *AWS CloudFormation User Guide* .
|
|
32689
33826
|
.. epigraph::
|
|
32690
33827
|
|
|
32691
33828
|
A subset of ``AWS::CloudFormation::Stack`` resource type properties listed below are available to customers using CloudFormation , AWS CDK , and Cloud Control to configure.
|
|
@@ -32757,13 +33894,14 @@ class CfnStack(CfnResource, metaclass=jsii.JSIIMeta, jsii_type="aws-cdk-lib.CfnS
|
|
|
32757
33894
|
template_url: typing.Optional[builtins.str] = None,
|
|
32758
33895
|
timeout_in_minutes: typing.Optional[jsii.Number] = None,
|
|
32759
33896
|
) -> None:
|
|
32760
|
-
'''
|
|
33897
|
+
'''Create a new ``AWS::CloudFormation::Stack``.
|
|
33898
|
+
|
|
32761
33899
|
:param scope: Scope in which this resource is defined.
|
|
32762
33900
|
:param id: Construct identifier for this resource (unique in its scope).
|
|
32763
33901
|
:param notification_arns: The Amazon SNS topic ARNs to publish stack related events. You can find your Amazon SNS topic ARNs using the Amazon SNS console or your Command Line Interface (CLI).
|
|
32764
33902
|
:param parameters: The set value pairs that represent the parameters passed to CloudFormation when this nested stack is created. Each parameter has a name corresponding to a parameter defined in the embedded template and a value representing the value that you want to set for the parameter. .. epigraph:: If you use the ``Ref`` function to pass a parameter value to a nested stack, comma-delimited list parameters must be of type ``String`` . In other words, you can't pass values that are of type ``CommaDelimitedList`` to nested stacks. Required if the nested stack requires input parameters. Whether an update causes interruptions depends on the resources that are being updated. An update never causes a nested stack to be replaced.
|
|
32765
33903
|
:param tags: Key-value pairs to associate with this stack. CloudFormation also propagates these tags to the resources created in the stack. A maximum number of 50 tags can be specified.
|
|
32766
|
-
:param template_url: The URL of a file
|
|
33904
|
+
:param template_url: The URL of a file that contains the template body. The URL must point to a template (max size: 1 MB) that's located in an Amazon S3 bucket. The location for an Amazon S3 bucket must start with ``https://`` . Whether an update causes interruptions depends on the resources that are being updated. An update never causes a nested stack to be replaced.
|
|
32767
33905
|
:param timeout_in_minutes: The length of time, in minutes, that CloudFormation waits for the nested stack to reach the ``CREATE_COMPLETE`` state. The default is no timeout. When CloudFormation detects that the nested stack has reached the ``CREATE_COMPLETE`` state, it marks the nested stack resource as ``CREATE_COMPLETE`` in the parent stack and resumes creating the parent stack. If the timeout period expires before the nested stack reaches ``CREATE_COMPLETE`` , CloudFormation marks the nested stack as failed and rolls back both the nested stack and parent stack. Updates aren't supported.
|
|
32768
33906
|
'''
|
|
32769
33907
|
if __debug__:
|
|
@@ -32813,7 +33951,7 @@ class CfnStack(CfnResource, metaclass=jsii.JSIIMeta, jsii_type="aws-cdk-lib.CfnS
|
|
|
32813
33951
|
@builtins.property
|
|
32814
33952
|
@jsii.member(jsii_name="attrChangeSetId")
|
|
32815
33953
|
def attr_change_set_id(self) -> builtins.str:
|
|
32816
|
-
'''Returns the unique
|
|
33954
|
+
'''Returns the unique identifier of the change set.
|
|
32817
33955
|
|
|
32818
33956
|
:cloudformationAttribute: ChangeSetId
|
|
32819
33957
|
'''
|
|
@@ -32822,7 +33960,7 @@ class CfnStack(CfnResource, metaclass=jsii.JSIIMeta, jsii_type="aws-cdk-lib.CfnS
|
|
|
32822
33960
|
@builtins.property
|
|
32823
33961
|
@jsii.member(jsii_name="attrCreationTime")
|
|
32824
33962
|
def attr_creation_time(self) -> builtins.str:
|
|
32825
|
-
'''Returns
|
|
33963
|
+
'''Returns the time the stack was created.
|
|
32826
33964
|
|
|
32827
33965
|
:cloudformationAttribute: CreationTime
|
|
32828
33966
|
'''
|
|
@@ -32851,7 +33989,7 @@ class CfnStack(CfnResource, metaclass=jsii.JSIIMeta, jsii_type="aws-cdk-lib.CfnS
|
|
|
32851
33989
|
@builtins.property
|
|
32852
33990
|
@jsii.member(jsii_name="attrParentId")
|
|
32853
33991
|
def attr_parent_id(self) -> builtins.str:
|
|
32854
|
-
'''For nested stacks
|
|
33992
|
+
'''For nested stacks, returns the stack ID of the direct parent of this stack.
|
|
32855
33993
|
|
|
32856
33994
|
For the first level of nested stacks, the root stack is also the parent stack.
|
|
32857
33995
|
|
|
@@ -32862,7 +34000,7 @@ class CfnStack(CfnResource, metaclass=jsii.JSIIMeta, jsii_type="aws-cdk-lib.CfnS
|
|
|
32862
34000
|
@builtins.property
|
|
32863
34001
|
@jsii.member(jsii_name="attrRootId")
|
|
32864
34002
|
def attr_root_id(self) -> builtins.str:
|
|
32865
|
-
'''For nested stacks
|
|
34003
|
+
'''For nested stacks, returns the stack ID of the top-level stack to which the nested stack ultimately belongs.
|
|
32866
34004
|
|
|
32867
34005
|
:cloudformationAttribute: RootId
|
|
32868
34006
|
'''
|
|
@@ -32891,6 +34029,12 @@ class CfnStack(CfnResource, metaclass=jsii.JSIIMeta, jsii_type="aws-cdk-lib.CfnS
|
|
|
32891
34029
|
def _cfn_properties(self) -> typing.Mapping[builtins.str, typing.Any]:
|
|
32892
34030
|
return typing.cast(typing.Mapping[builtins.str, typing.Any], jsii.get(self, "cfnProperties"))
|
|
32893
34031
|
|
|
34032
|
+
@builtins.property
|
|
34033
|
+
@jsii.member(jsii_name="stackRef")
|
|
34034
|
+
def stack_ref(self) -> _StackReference_15f8b984:
|
|
34035
|
+
'''A reference to a Stack resource.'''
|
|
34036
|
+
return typing.cast(_StackReference_15f8b984, jsii.get(self, "stackRef"))
|
|
34037
|
+
|
|
32894
34038
|
@builtins.property
|
|
32895
34039
|
@jsii.member(jsii_name="tags")
|
|
32896
34040
|
def tags(self) -> TagManager:
|
|
@@ -32947,7 +34091,7 @@ class CfnStack(CfnResource, metaclass=jsii.JSIIMeta, jsii_type="aws-cdk-lib.CfnS
|
|
|
32947
34091
|
@builtins.property
|
|
32948
34092
|
@jsii.member(jsii_name="templateUrl")
|
|
32949
34093
|
def template_url(self) -> typing.Optional[builtins.str]:
|
|
32950
|
-
'''The URL of a file
|
|
34094
|
+
'''The URL of a file that contains the template body.'''
|
|
32951
34095
|
return typing.cast(typing.Optional[builtins.str], jsii.get(self, "templateUrl"))
|
|
32952
34096
|
|
|
32953
34097
|
@template_url.setter
|
|
@@ -33076,15 +34220,15 @@ class CfnStack(CfnResource, metaclass=jsii.JSIIMeta, jsii_type="aws-cdk-lib.CfnS
|
|
|
33076
34220
|
)
|
|
33077
34221
|
|
|
33078
34222
|
|
|
33079
|
-
@jsii.implements(IInspectable, ITaggable)
|
|
34223
|
+
@jsii.implements(IInspectable, _IStackSetRef_3a202137, ITaggable)
|
|
33080
34224
|
class CfnStackSet(
|
|
33081
34225
|
CfnResource,
|
|
33082
34226
|
metaclass=jsii.JSIIMeta,
|
|
33083
34227
|
jsii_type="aws-cdk-lib.CfnStackSet",
|
|
33084
34228
|
):
|
|
33085
|
-
'''The ``AWS::CloudFormation::StackSet`` resource
|
|
34229
|
+
'''The ``AWS::CloudFormation::StackSet`` resource contains information about a StackSet.
|
|
33086
34230
|
|
|
33087
|
-
|
|
34231
|
+
With StackSets, you can provision stacks across AWS accounts and Regions from a single CloudFormation template. Each stack is based on the same CloudFormation template, but you can customize individual stacks using parameters.
|
|
33088
34232
|
.. epigraph::
|
|
33089
34233
|
|
|
33090
34234
|
Run deployments to nested StackSets from the parent stack, not directly through the StackSet API.
|
|
@@ -33174,24 +34318,25 @@ class CfnStackSet(
|
|
|
33174
34318
|
template_body: typing.Optional[builtins.str] = None,
|
|
33175
34319
|
template_url: typing.Optional[builtins.str] = None,
|
|
33176
34320
|
) -> None:
|
|
33177
|
-
'''
|
|
34321
|
+
'''Create a new ``AWS::CloudFormation::StackSet``.
|
|
34322
|
+
|
|
33178
34323
|
:param scope: Scope in which this resource is defined.
|
|
33179
34324
|
:param id: Construct identifier for this resource (unique in its scope).
|
|
33180
|
-
:param permission_model: Describes how the IAM roles required for
|
|
33181
|
-
:param stack_set_name: The name to associate with the
|
|
33182
|
-
:param administration_role_arn: The Amazon Resource Number (ARN) of the IAM role to use to create this
|
|
33183
|
-
:param auto_deployment: Describes whether StackSets automatically deploys to AWS Organizations accounts that are added to a target organization or organizational unit (OU). For more information, see `
|
|
33184
|
-
:param call_as: Specifies whether you are acting as an account administrator in the organization's management account or as a delegated administrator in a member account. By default, ``SELF`` is specified. Use ``SELF`` for
|
|
33185
|
-
:param capabilities: The capabilities that are allowed in the
|
|
33186
|
-
:param description: A description of the
|
|
33187
|
-
:param execution_role_name: The name of the IAM execution role to use to create the
|
|
33188
|
-
:param managed_execution: Describes whether StackSets performs non-conflicting operations concurrently and queues conflicting operations. When active, StackSets performs non-conflicting operations concurrently and queues conflicting operations. After conflicting operations finish, StackSets starts queued operations in request order. .. epigraph:: If there are already running or queued operations, StackSets queues all incoming operations even if they are non-conflicting. You can't modify your
|
|
33189
|
-
:param operation_preferences: The user-specified preferences for how CloudFormation performs a
|
|
33190
|
-
:param parameters: The input parameters for the
|
|
34325
|
+
:param permission_model: Describes how the IAM roles required for StackSet operations are created. - With ``SELF_MANAGED`` permissions, you must create the administrator and execution roles required to deploy to target accounts. For more information, see `Grant self-managed permissions <https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/stacksets-prereqs-self-managed.html>`_ in the *AWS CloudFormation User Guide* . - With ``SERVICE_MANAGED`` permissions, StackSets automatically creates the IAM roles required to deploy to accounts managed by AWS Organizations . For more information, see `Activate trusted access for StackSets with AWS Organizations <https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/stacksets-orgs-activate-trusted-access.html>`_ in the *AWS CloudFormation User Guide* .
|
|
34326
|
+
:param stack_set_name: The name to associate with the StackSet. The name must be unique in the Region where you create your StackSet.
|
|
34327
|
+
:param administration_role_arn: The Amazon Resource Number (ARN) of the IAM role to use to create this StackSet. Specify an IAM role only if you are using customized administrator roles to control which users or groups can manage specific StackSets within the same administrator account. Use customized administrator roles to control which users or groups can manage specific StackSets within the same administrator account. For more information, see `Grant self-managed permissions <https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/stacksets-prereqs-self-managed.html>`_ in the *AWS CloudFormation User Guide* . Valid only if the permissions model is ``SELF_MANAGED`` .
|
|
34328
|
+
:param auto_deployment: Describes whether StackSets automatically deploys to AWS Organizations accounts that are added to a target organization or organizational unit (OU). For more information, see `Enable or disable automatic deployments for StackSets in AWS Organizations <https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/stacksets-orgs-manage-auto-deployment.html>`_ in the *AWS CloudFormation User Guide* . Required if the permissions model is ``SERVICE_MANAGED`` . (Not used with self-managed permissions.)
|
|
34329
|
+
:param call_as: Specifies whether you are acting as an account administrator in the organization's management account or as a delegated administrator in a member account. By default, ``SELF`` is specified. Use ``SELF`` for StackSets with self-managed permissions. - To create a StackSet with service-managed permissions while signed in to the management account, specify ``SELF`` . - To create a StackSet with service-managed permissions while signed in to a delegated administrator account, specify ``DELEGATED_ADMIN`` . Your AWS account must be registered as a delegated admin in the management account. For more information, see `Register a delegated administrator <https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/stacksets-orgs-delegated-admin.html>`_ in the *AWS CloudFormation User Guide* . StackSets with service-managed permissions are created in the management account, including StackSets that are created by delegated administrators. Valid only if the permissions model is ``SERVICE_MANAGED`` .
|
|
34330
|
+
:param capabilities: The capabilities that are allowed in the StackSet. Some StackSet templates might include resources that can affect permissions in your AWS account —for example, by creating new IAM users. For more information, see `Acknowledging IAM resources in CloudFormation templates <https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/control-access-with-iam.html#using-iam-capabilities>`_ in the *AWS CloudFormation User Guide* .
|
|
34331
|
+
:param description: A description of the StackSet.
|
|
34332
|
+
:param execution_role_name: The name of the IAM execution role to use to create the StackSet. If you don't specify an execution role, CloudFormation uses the ``AWSCloudFormationStackSetExecutionRole`` role for the StackSet operation. Valid only if the permissions model is ``SELF_MANAGED`` . *Pattern* : ``[a-zA-Z_0-9+=,.@-]+``
|
|
34333
|
+
:param managed_execution: Describes whether StackSets performs non-conflicting operations concurrently and queues conflicting operations. When active, StackSets performs non-conflicting operations concurrently and queues conflicting operations. After conflicting operations finish, StackSets starts queued operations in request order. .. epigraph:: If there are already running or queued operations, StackSets queues all incoming operations even if they are non-conflicting. You can't modify your StackSet's execution configuration while there are running or queued operations for that StackSet. When inactive (default), StackSets performs one operation at a time in request order.
|
|
34334
|
+
:param operation_preferences: The user-specified preferences for how CloudFormation performs a StackSet operation.
|
|
34335
|
+
:param parameters: The input parameters for the StackSet template.
|
|
33191
34336
|
:param stack_instances_group: A group of stack instances with parameters in some specific accounts and Regions.
|
|
33192
34337
|
:param tags: Key-value pairs to associate with this stack. CloudFormation also propagates these tags to supported resources in the stack. You can specify a maximum number of 50 tags. If you don't specify this parameter, CloudFormation doesn't modify the stack's tags. If you specify an empty value, CloudFormation removes all associated tags.
|
|
33193
|
-
:param template_body: The structure that contains the template body, with a minimum length of 1 byte and a maximum length of 51,200 bytes. You must include either ``TemplateURL`` or ``TemplateBody`` in a StackSet, but you can't use both. Dynamic references in the ``TemplateBody`` may not work correctly in all cases. It's recommended to pass templates
|
|
33194
|
-
:param template_url: The URL of a file
|
|
34338
|
+
:param template_body: The structure that contains the template body, with a minimum length of 1 byte and a maximum length of 51,200 bytes. You must include either ``TemplateURL`` or ``TemplateBody`` in a StackSet, but you can't use both. Dynamic references in the ``TemplateBody`` may not work correctly in all cases. It's recommended to pass templates that contain dynamic references through ``TemplateUrl`` instead.
|
|
34339
|
+
:param template_url: The URL of a file that contains the template body. The URL must point to a template (max size: 1 MB) that's located in an Amazon S3 bucket or a Systems Manager document. The location for an Amazon S3 bucket must start with ``https://`` . Conditional: You must specify only one of the following parameters: ``TemplateBody`` , ``TemplateURL`` .
|
|
33195
34340
|
'''
|
|
33196
34341
|
if __debug__:
|
|
33197
34342
|
type_hints = typing.get_type_hints(_typecheckingstub__18f5cbcbd69d140eff69172745aeef070057c3c18635b8197f16a411bf031298)
|
|
@@ -33250,7 +34395,7 @@ class CfnStackSet(
|
|
|
33250
34395
|
@builtins.property
|
|
33251
34396
|
@jsii.member(jsii_name="attrStackSetId")
|
|
33252
34397
|
def attr_stack_set_id(self) -> builtins.str:
|
|
33253
|
-
'''
|
|
34398
|
+
'''Returns the unique identifier of the resource.
|
|
33254
34399
|
|
|
33255
34400
|
:cloudformationAttribute: StackSetId
|
|
33256
34401
|
'''
|
|
@@ -33261,6 +34406,12 @@ class CfnStackSet(
|
|
|
33261
34406
|
def _cfn_properties(self) -> typing.Mapping[builtins.str, typing.Any]:
|
|
33262
34407
|
return typing.cast(typing.Mapping[builtins.str, typing.Any], jsii.get(self, "cfnProperties"))
|
|
33263
34408
|
|
|
34409
|
+
@builtins.property
|
|
34410
|
+
@jsii.member(jsii_name="stackSetRef")
|
|
34411
|
+
def stack_set_ref(self) -> _StackSetReference_c5c1f82d:
|
|
34412
|
+
'''A reference to a StackSet resource.'''
|
|
34413
|
+
return typing.cast(_StackSetReference_c5c1f82d, jsii.get(self, "stackSetRef"))
|
|
34414
|
+
|
|
33264
34415
|
@builtins.property
|
|
33265
34416
|
@jsii.member(jsii_name="tags")
|
|
33266
34417
|
def tags(self) -> TagManager:
|
|
@@ -33270,7 +34421,7 @@ class CfnStackSet(
|
|
|
33270
34421
|
@builtins.property
|
|
33271
34422
|
@jsii.member(jsii_name="permissionModel")
|
|
33272
34423
|
def permission_model(self) -> builtins.str:
|
|
33273
|
-
'''Describes how the IAM roles required for
|
|
34424
|
+
'''Describes how the IAM roles required for StackSet operations are created.'''
|
|
33274
34425
|
return typing.cast(builtins.str, jsii.get(self, "permissionModel"))
|
|
33275
34426
|
|
|
33276
34427
|
@permission_model.setter
|
|
@@ -33283,7 +34434,7 @@ class CfnStackSet(
|
|
|
33283
34434
|
@builtins.property
|
|
33284
34435
|
@jsii.member(jsii_name="stackSetName")
|
|
33285
34436
|
def stack_set_name(self) -> builtins.str:
|
|
33286
|
-
'''The name to associate with the
|
|
34437
|
+
'''The name to associate with the StackSet.'''
|
|
33287
34438
|
return typing.cast(builtins.str, jsii.get(self, "stackSetName"))
|
|
33288
34439
|
|
|
33289
34440
|
@stack_set_name.setter
|
|
@@ -33296,7 +34447,7 @@ class CfnStackSet(
|
|
|
33296
34447
|
@builtins.property
|
|
33297
34448
|
@jsii.member(jsii_name="administrationRoleArn")
|
|
33298
34449
|
def administration_role_arn(self) -> typing.Optional[builtins.str]:
|
|
33299
|
-
'''The Amazon Resource Number (ARN) of the IAM role to use to create this
|
|
34450
|
+
'''The Amazon Resource Number (ARN) of the IAM role to use to create this StackSet.'''
|
|
33300
34451
|
return typing.cast(typing.Optional[builtins.str], jsii.get(self, "administrationRoleArn"))
|
|
33301
34452
|
|
|
33302
34453
|
@administration_role_arn.setter
|
|
@@ -33340,7 +34491,7 @@ class CfnStackSet(
|
|
|
33340
34491
|
@builtins.property
|
|
33341
34492
|
@jsii.member(jsii_name="capabilities")
|
|
33342
34493
|
def capabilities(self) -> typing.Optional[typing.List[builtins.str]]:
|
|
33343
|
-
'''The capabilities that are allowed in the
|
|
34494
|
+
'''The capabilities that are allowed in the StackSet.'''
|
|
33344
34495
|
return typing.cast(typing.Optional[typing.List[builtins.str]], jsii.get(self, "capabilities"))
|
|
33345
34496
|
|
|
33346
34497
|
@capabilities.setter
|
|
@@ -33353,7 +34504,7 @@ class CfnStackSet(
|
|
|
33353
34504
|
@builtins.property
|
|
33354
34505
|
@jsii.member(jsii_name="description")
|
|
33355
34506
|
def description(self) -> typing.Optional[builtins.str]:
|
|
33356
|
-
'''A description of the
|
|
34507
|
+
'''A description of the StackSet.'''
|
|
33357
34508
|
return typing.cast(typing.Optional[builtins.str], jsii.get(self, "description"))
|
|
33358
34509
|
|
|
33359
34510
|
@description.setter
|
|
@@ -33366,7 +34517,7 @@ class CfnStackSet(
|
|
|
33366
34517
|
@builtins.property
|
|
33367
34518
|
@jsii.member(jsii_name="executionRoleName")
|
|
33368
34519
|
def execution_role_name(self) -> typing.Optional[builtins.str]:
|
|
33369
|
-
'''The name of the IAM execution role to use to create the
|
|
34520
|
+
'''The name of the IAM execution role to use to create the StackSet.'''
|
|
33370
34521
|
return typing.cast(typing.Optional[builtins.str], jsii.get(self, "executionRoleName"))
|
|
33371
34522
|
|
|
33372
34523
|
@execution_role_name.setter
|
|
@@ -33394,7 +34545,7 @@ class CfnStackSet(
|
|
|
33394
34545
|
def operation_preferences(
|
|
33395
34546
|
self,
|
|
33396
34547
|
) -> typing.Optional[typing.Union[IResolvable, "CfnStackSet.OperationPreferencesProperty"]]:
|
|
33397
|
-
'''The user-specified preferences for how CloudFormation performs a
|
|
34548
|
+
'''The user-specified preferences for how CloudFormation performs a StackSet operation.'''
|
|
33398
34549
|
return typing.cast(typing.Optional[typing.Union[IResolvable, "CfnStackSet.OperationPreferencesProperty"]], jsii.get(self, "operationPreferences"))
|
|
33399
34550
|
|
|
33400
34551
|
@operation_preferences.setter
|
|
@@ -33412,7 +34563,7 @@ class CfnStackSet(
|
|
|
33412
34563
|
def parameters(
|
|
33413
34564
|
self,
|
|
33414
34565
|
) -> typing.Optional[typing.Union[IResolvable, typing.List[typing.Union[IResolvable, "CfnStackSet.ParameterProperty"]]]]:
|
|
33415
|
-
'''The input parameters for the
|
|
34566
|
+
'''The input parameters for the StackSet template.'''
|
|
33416
34567
|
return typing.cast(typing.Optional[typing.Union[IResolvable, typing.List[typing.Union[IResolvable, "CfnStackSet.ParameterProperty"]]]], jsii.get(self, "parameters"))
|
|
33417
34568
|
|
|
33418
34569
|
@parameters.setter
|
|
@@ -33472,7 +34623,7 @@ class CfnStackSet(
|
|
|
33472
34623
|
@builtins.property
|
|
33473
34624
|
@jsii.member(jsii_name="templateUrl")
|
|
33474
34625
|
def template_url(self) -> typing.Optional[builtins.str]:
|
|
33475
|
-
'''The URL of a file
|
|
34626
|
+
'''The URL of a file that contains the template body.'''
|
|
33476
34627
|
return typing.cast(typing.Optional[builtins.str], jsii.get(self, "templateUrl"))
|
|
33477
34628
|
|
|
33478
34629
|
@template_url.setter
|
|
@@ -33497,7 +34648,9 @@ class CfnStackSet(
|
|
|
33497
34648
|
enabled: typing.Optional[typing.Union[builtins.bool, IResolvable]] = None,
|
|
33498
34649
|
retain_stacks_on_account_removal: typing.Optional[typing.Union[builtins.bool, IResolvable]] = None,
|
|
33499
34650
|
) -> None:
|
|
33500
|
-
'''
|
|
34651
|
+
'''Describes whether StackSets automatically deploys to AWS Organizations accounts that are added to a target organization or organizational unit (OU).
|
|
34652
|
+
|
|
34653
|
+
For more information, see `Enable or disable automatic deployments for StackSets in AWS Organizations <https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/stacksets-orgs-manage-auto-deployment.html>`_ in the *AWS CloudFormation User Guide* .
|
|
33501
34654
|
|
|
33502
34655
|
:param enabled: If set to ``true`` , StackSets automatically deploys additional stack instances to AWS Organizations accounts that are added to a target organization or organizational unit (OU) in the specified Regions. If an account is removed from a target organization or OU, StackSets deletes stack instances from the account in the specified Regions.
|
|
33503
34656
|
:param retain_stacks_on_account_removal: If set to ``true`` , stack resources are retained when an account is removed from a target organization or OU. If set to ``false`` , stack resources are deleted. Specify only if ``Enabled`` is set to ``True`` .
|
|
@@ -33580,11 +34733,20 @@ class CfnStackSet(
|
|
|
33580
34733
|
accounts_url: typing.Optional[builtins.str] = None,
|
|
33581
34734
|
organizational_unit_ids: typing.Optional[typing.Sequence[builtins.str]] = None,
|
|
33582
34735
|
) -> None:
|
|
33583
|
-
'''The AWS
|
|
34736
|
+
'''The AWS Organizations accounts or AWS accounts to deploy stacks to in the specified Regions.
|
|
34737
|
+
|
|
34738
|
+
When deploying to AWS Organizations accounts with ``SERVICE_MANAGED`` permissions:
|
|
34739
|
+
|
|
34740
|
+
- You must specify the ``OrganizationalUnitIds`` property.
|
|
34741
|
+
- If you specify organizational units (OUs) for ``OrganizationalUnitIds`` and use either the ``Accounts`` or ``AccountsUrl`` property, you must also specify the ``AccountFilterType`` property.
|
|
34742
|
+
|
|
34743
|
+
When deploying to AWS accounts with ``SELF_MANAGED`` permissions:
|
|
34744
|
+
|
|
34745
|
+
- You must specify either the ``Accounts`` or ``AccountsUrl`` property, but not both.
|
|
33584
34746
|
|
|
33585
|
-
:param account_filter_type:
|
|
34747
|
+
:param account_filter_type: Refines which accounts to deploy stacks to by specifying how to use the ``Accounts`` and ``OrganizationalUnitIds`` properties together. The following values determine how CloudFormation selects target accounts: - ``INTERSECTION`` : StackSet deploys to the accounts specified in the ``Accounts`` property. - ``DIFFERENCE`` : StackSet deploys to the OU, excluding the accounts specified in the ``Accounts`` property. - ``UNION`` : StackSet deploys to the OU, and the accounts specified in the ``Accounts`` property. ``UNION`` is not supported for create operations when using StackSet as a resource or the ``CreateStackInstances`` API.
|
|
33586
34748
|
:param accounts: The account IDs of the AWS accounts . If you have many account numbers, you can provide those accounts using the ``AccountsUrl`` property instead. *Pattern* : ``^[0-9]{12}$``
|
|
33587
|
-
:param accounts_url: The Amazon S3 URL path to a file that contains a list of AWS account IDs. The file format must be either ``.csv`` or ``.txt`` , and the data can be comma-separated or new-line-separated. There is currently a 10MB limit for the data (approximately 800,000 accounts).
|
|
34749
|
+
:param accounts_url: The Amazon S3 URL path to a file that contains a list of AWS account IDs. The file format must be either ``.csv`` or ``.txt`` , and the data can be comma-separated or new-line-separated. There is currently a 10MB limit for the data (approximately 800,000 accounts). This property serves the same purpose as ``Accounts`` but allows you to specify a large number of accounts.
|
|
33588
34750
|
:param organizational_unit_ids: The organization root ID or organizational unit (OU) IDs. *Pattern* : ``^(ou-[a-z0-9]{4,32}-[a-z0-9]{8,32}|r-[a-z0-9]{4,32})$``
|
|
33589
34751
|
|
|
33590
34752
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudformation-stackset-deploymenttargets.html
|
|
@@ -33621,13 +34783,13 @@ class CfnStackSet(
|
|
|
33621
34783
|
|
|
33622
34784
|
@builtins.property
|
|
33623
34785
|
def account_filter_type(self) -> typing.Optional[builtins.str]:
|
|
33624
|
-
'''
|
|
34786
|
+
'''Refines which accounts to deploy stacks to by specifying how to use the ``Accounts`` and ``OrganizationalUnitIds`` properties together.
|
|
33625
34787
|
|
|
33626
|
-
The following
|
|
34788
|
+
The following values determine how CloudFormation selects target accounts:
|
|
33627
34789
|
|
|
33628
|
-
- ``INTERSECTION`` : StackSet deploys to the accounts specified in the ``Accounts``
|
|
33629
|
-
- ``DIFFERENCE`` : StackSet deploys to the OU, excluding the accounts specified in the ``Accounts``
|
|
33630
|
-
- ``UNION`` StackSet deploys to the OU, and the accounts specified in the ``Accounts``
|
|
34790
|
+
- ``INTERSECTION`` : StackSet deploys to the accounts specified in the ``Accounts`` property.
|
|
34791
|
+
- ``DIFFERENCE`` : StackSet deploys to the OU, excluding the accounts specified in the ``Accounts`` property.
|
|
34792
|
+
- ``UNION`` : StackSet deploys to the OU, and the accounts specified in the ``Accounts`` property. ``UNION`` is not supported for create operations when using StackSet as a resource or the ``CreateStackInstances`` API.
|
|
33631
34793
|
|
|
33632
34794
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudformation-stackset-deploymenttargets.html#cfn-cloudformation-stackset-deploymenttargets-accountfiltertype
|
|
33633
34795
|
'''
|
|
@@ -33653,6 +34815,8 @@ class CfnStackSet(
|
|
|
33653
34815
|
|
|
33654
34816
|
The file format must be either ``.csv`` or ``.txt`` , and the data can be comma-separated or new-line-separated. There is currently a 10MB limit for the data (approximately 800,000 accounts).
|
|
33655
34817
|
|
|
34818
|
+
This property serves the same purpose as ``Accounts`` but allows you to specify a large number of accounts.
|
|
34819
|
+
|
|
33656
34820
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudformation-stackset-deploymenttargets.html#cfn-cloudformation-stackset-deploymenttargets-accountsurl
|
|
33657
34821
|
'''
|
|
33658
34822
|
result = self._values.get("accounts_url")
|
|
@@ -33693,7 +34857,7 @@ class CfnStackSet(
|
|
|
33693
34857
|
) -> None:
|
|
33694
34858
|
'''Describes whether StackSets performs non-conflicting operations concurrently and queues conflicting operations.
|
|
33695
34859
|
|
|
33696
|
-
:param active: When ``true`` ,
|
|
34860
|
+
:param active: When ``true`` , CloudFormation performs non-conflicting operations concurrently and queues conflicting operations. After conflicting operations finish, CloudFormation starts queued operations in request order. .. epigraph:: If there are already running or queued operations, CloudFormation queues all incoming operations even if they are non-conflicting. You can't modify your StackSet's execution configuration while there are running or queued operations for that StackSet. When ``false`` (default), StackSets performs one operation at a time in request order.
|
|
33697
34861
|
|
|
33698
34862
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudformation-stackset-managedexecution.html
|
|
33699
34863
|
:exampleMetadata: fixture=_generated
|
|
@@ -33717,14 +34881,14 @@ class CfnStackSet(
|
|
|
33717
34881
|
|
|
33718
34882
|
@builtins.property
|
|
33719
34883
|
def active(self) -> typing.Optional[typing.Union[builtins.bool, IResolvable]]:
|
|
33720
|
-
'''When ``true`` ,
|
|
34884
|
+
'''When ``true`` , CloudFormation performs non-conflicting operations concurrently and queues conflicting operations.
|
|
33721
34885
|
|
|
33722
|
-
After conflicting operations finish,
|
|
34886
|
+
After conflicting operations finish, CloudFormation starts queued operations in request order.
|
|
33723
34887
|
.. epigraph::
|
|
33724
34888
|
|
|
33725
|
-
If there are already running or queued operations,
|
|
34889
|
+
If there are already running or queued operations, CloudFormation queues all incoming operations even if they are non-conflicting.
|
|
33726
34890
|
|
|
33727
|
-
You can't modify your
|
|
34891
|
+
You can't modify your StackSet's execution configuration while there are running or queued operations for that StackSet.
|
|
33728
34892
|
|
|
33729
34893
|
When ``false`` (default), StackSets performs one operation at a time in request order.
|
|
33730
34894
|
|
|
@@ -33769,13 +34933,13 @@ class CfnStackSet(
|
|
|
33769
34933
|
region_concurrency_type: typing.Optional[builtins.str] = None,
|
|
33770
34934
|
region_order: typing.Optional[typing.Sequence[builtins.str]] = None,
|
|
33771
34935
|
) -> None:
|
|
33772
|
-
'''The user-specified preferences for how CloudFormation performs a
|
|
34936
|
+
'''The user-specified preferences for how CloudFormation performs a StackSet operation.
|
|
33773
34937
|
|
|
33774
|
-
For more information on maximum concurrent accounts and failure tolerance, see `
|
|
34938
|
+
For more information on maximum concurrent accounts and failure tolerance, see `StackSet operation options <https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/stacksets-concepts.html#stackset-ops-options>`_ in the *AWS CloudFormation User Guide* .
|
|
33775
34939
|
|
|
33776
|
-
:param concurrency_mode: Specifies how the concurrency level behaves during the operation execution. - ``STRICT_FAILURE_TOLERANCE`` : This option dynamically lowers the concurrency level to ensure the number of failed accounts never exceeds the value of ``FailureToleranceCount`` +1. The initial actual concurrency is set to the lower of either the value of the ``MaxConcurrentCount`` , or the value of ``FailureToleranceCount`` +1. The actual concurrency is then reduced proportionally by the number of failures. This is the default behavior. If failure tolerance or Maximum concurrent accounts are set to percentages, the behavior is similar. - ``SOFT_FAILURE_TOLERANCE`` : This option decouples ``FailureToleranceCount`` from the actual concurrency. This allows
|
|
33777
|
-
:param failure_tolerance_count: The number of accounts
|
|
33778
|
-
:param failure_tolerance_percentage: The percentage of accounts
|
|
34940
|
+
:param concurrency_mode: Specifies how the concurrency level behaves during the operation execution. - ``STRICT_FAILURE_TOLERANCE`` : This option dynamically lowers the concurrency level to ensure the number of failed accounts never exceeds the value of ``FailureToleranceCount`` +1. The initial actual concurrency is set to the lower of either the value of the ``MaxConcurrentCount`` , or the value of ``FailureToleranceCount`` +1. The actual concurrency is then reduced proportionally by the number of failures. This is the default behavior. If failure tolerance or Maximum concurrent accounts are set to percentages, the behavior is similar. - ``SOFT_FAILURE_TOLERANCE`` : This option decouples ``FailureToleranceCount`` from the actual concurrency. This allows StackSet operations to run at the concurrency level set by the ``MaxConcurrentCount`` value, or ``MaxConcurrentPercentage`` , regardless of the number of failures.
|
|
34941
|
+
:param failure_tolerance_count: The number of accounts per Region this operation can fail in before CloudFormation stops the operation in that Region. If the operation is stopped in a Region, CloudFormation doesn't attempt the operation in any subsequent Regions. Conditional: You must specify either ``FailureToleranceCount`` or ``FailureTolerancePercentage`` (but not both).
|
|
34942
|
+
:param failure_tolerance_percentage: The percentage of accounts per Region this stack operation can fail in before CloudFormation stops the operation in that Region. If the operation is stopped in a Region, CloudFormation doesn't attempt the operation in any subsequent Regions. When calculating the number of accounts based on the specified percentage, CloudFormation rounds *down* to the next whole number. Conditional: You must specify either ``FailureToleranceCount`` or ``FailureTolerancePercentage`` , but not both.
|
|
33779
34943
|
:param max_concurrent_count: The maximum number of accounts in which to perform this operation at one time. This is dependent on the value of ``FailureToleranceCount`` . ``MaxConcurrentCount`` is at most one more than the ``FailureToleranceCount`` . Note that this setting lets you specify the *maximum* for operations. For large deployments, under certain circumstances the actual number of accounts acted upon concurrently may be lower due to service throttling. Conditional: You must specify either ``MaxConcurrentCount`` or ``MaxConcurrentPercentage`` , but not both.
|
|
33780
34944
|
:param max_concurrent_percentage: The maximum percentage of accounts in which to perform this operation at one time. When calculating the number of accounts based on the specified percentage, CloudFormation rounds down to the next whole number. This is true except in cases where rounding down would result is zero. In this case, CloudFormation sets the number as one instead. Note that this setting lets you specify the *maximum* for operations. For large deployments, under certain circumstances the actual number of accounts acted upon concurrently may be lower due to service throttling. Conditional: You must specify either ``MaxConcurrentCount`` or ``MaxConcurrentPercentage`` , but not both.
|
|
33781
34945
|
:param region_concurrency_type: The concurrency type of deploying StackSets operations in Regions, could be in parallel or one Region at a time.
|
|
@@ -33833,7 +34997,7 @@ class CfnStackSet(
|
|
|
33833
34997
|
|
|
33834
34998
|
If failure tolerance or Maximum concurrent accounts are set to percentages, the behavior is similar.
|
|
33835
34999
|
|
|
33836
|
-
- ``SOFT_FAILURE_TOLERANCE`` : This option decouples ``FailureToleranceCount`` from the actual concurrency. This allows
|
|
35000
|
+
- ``SOFT_FAILURE_TOLERANCE`` : This option decouples ``FailureToleranceCount`` from the actual concurrency. This allows StackSet operations to run at the concurrency level set by the ``MaxConcurrentCount`` value, or ``MaxConcurrentPercentage`` , regardless of the number of failures.
|
|
33837
35001
|
|
|
33838
35002
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudformation-stackset-operationpreferences.html#cfn-cloudformation-stackset-operationpreferences-concurrencymode
|
|
33839
35003
|
'''
|
|
@@ -33842,7 +35006,7 @@ class CfnStackSet(
|
|
|
33842
35006
|
|
|
33843
35007
|
@builtins.property
|
|
33844
35008
|
def failure_tolerance_count(self) -> typing.Optional[jsii.Number]:
|
|
33845
|
-
'''The number of accounts
|
|
35009
|
+
'''The number of accounts per Region this operation can fail in before CloudFormation stops the operation in that Region.
|
|
33846
35010
|
|
|
33847
35011
|
If the operation is stopped in a Region, CloudFormation doesn't attempt the operation in any subsequent Regions.
|
|
33848
35012
|
|
|
@@ -33855,7 +35019,7 @@ class CfnStackSet(
|
|
|
33855
35019
|
|
|
33856
35020
|
@builtins.property
|
|
33857
35021
|
def failure_tolerance_percentage(self) -> typing.Optional[jsii.Number]:
|
|
33858
|
-
'''The percentage of accounts
|
|
35022
|
+
'''The percentage of accounts per Region this stack operation can fail in before CloudFormation stops the operation in that Region.
|
|
33859
35023
|
|
|
33860
35024
|
If the operation is stopped in a Region, CloudFormation doesn't attempt the operation in any subsequent Regions.
|
|
33861
35025
|
|
|
@@ -34022,9 +35186,9 @@ class CfnStackSet(
|
|
|
34022
35186
|
) -> None:
|
|
34023
35187
|
'''Stack instances in some specific accounts and Regions.
|
|
34024
35188
|
|
|
34025
|
-
:param deployment_targets: The AWS
|
|
35189
|
+
:param deployment_targets: The AWS Organizations accounts or AWS accounts to deploy stacks to in the specified Regions.
|
|
34026
35190
|
:param regions: The names of one or more Regions where you want to create stack instances using the specified AWS accounts .
|
|
34027
|
-
:param parameter_overrides: A list of
|
|
35191
|
+
:param parameter_overrides: A list of StackSet parameters whose values you want to override in the selected stack instances.
|
|
34028
35192
|
|
|
34029
35193
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudformation-stackset-stackinstances.html
|
|
34030
35194
|
:exampleMetadata: fixture=_generated
|
|
@@ -34067,7 +35231,7 @@ class CfnStackSet(
|
|
|
34067
35231
|
def deployment_targets(
|
|
34068
35232
|
self,
|
|
34069
35233
|
) -> typing.Union[IResolvable, "CfnStackSet.DeploymentTargetsProperty"]:
|
|
34070
|
-
'''The AWS
|
|
35234
|
+
'''The AWS Organizations accounts or AWS accounts to deploy stacks to in the specified Regions.
|
|
34071
35235
|
|
|
34072
35236
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudformation-stackset-stackinstances.html#cfn-cloudformation-stackset-stackinstances-deploymenttargets
|
|
34073
35237
|
'''
|
|
@@ -34089,7 +35253,7 @@ class CfnStackSet(
|
|
|
34089
35253
|
def parameter_overrides(
|
|
34090
35254
|
self,
|
|
34091
35255
|
) -> typing.Optional[typing.Union[IResolvable, typing.List[typing.Union[IResolvable, "CfnStackSet.ParameterProperty"]]]]:
|
|
34092
|
-
'''A list of
|
|
35256
|
+
'''A list of StackSet parameters whose values you want to override in the selected stack instances.
|
|
34093
35257
|
|
|
34094
35258
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudformation-stackset-stackinstances.html#cfn-cloudformation-stackset-stackinstances-parameteroverrides
|
|
34095
35259
|
'''
|
|
@@ -34108,7 +35272,7 @@ class CfnStackSet(
|
|
|
34108
35272
|
)
|
|
34109
35273
|
|
|
34110
35274
|
|
|
34111
|
-
@jsii.implements(IInspectable)
|
|
35275
|
+
@jsii.implements(IInspectable, _ITypeActivationRef_95db49a7)
|
|
34112
35276
|
class CfnTypeActivation(
|
|
34113
35277
|
CfnResource,
|
|
34114
35278
|
metaclass=jsii.JSIIMeta,
|
|
@@ -34161,7 +35325,8 @@ class CfnTypeActivation(
|
|
|
34161
35325
|
type_name_alias: typing.Optional[builtins.str] = None,
|
|
34162
35326
|
version_bump: typing.Optional[builtins.str] = None,
|
|
34163
35327
|
) -> None:
|
|
34164
|
-
'''
|
|
35328
|
+
'''Create a new ``AWS::CloudFormation::TypeActivation``.
|
|
35329
|
+
|
|
34165
35330
|
:param scope: Scope in which this resource is defined.
|
|
34166
35331
|
:param id: Construct identifier for this resource (unique in its scope).
|
|
34167
35332
|
:param auto_update: Whether to automatically update the extension in this account and Region when a new *minor* version is published by the extension publisher. Major versions released by the publisher must be manually updated. The default is ``true`` .
|
|
@@ -34172,7 +35337,7 @@ class CfnTypeActivation(
|
|
|
34172
35337
|
:param publisher_id: The ID of the extension publisher. Conditional: You must specify ``PublicTypeArn`` , or ``TypeName`` , ``Type`` , and ``PublisherId`` .
|
|
34173
35338
|
:param type: The extension type. Conditional: You must specify ``PublicTypeArn`` , or ``TypeName`` , ``Type`` , and ``PublisherId`` .
|
|
34174
35339
|
:param type_name: The name of the extension. Conditional: You must specify ``PublicTypeArn`` , or ``TypeName`` , ``Type`` , and ``PublisherId`` .
|
|
34175
|
-
:param type_name_alias: An alias to assign to the public extension
|
|
35340
|
+
:param type_name_alias: An alias to assign to the public extension in this account and Region. If you specify an alias for the extension, CloudFormation treats the alias as the extension type name within this account and Region. You must use the alias to refer to the extension in your templates, API calls, and CloudFormation console. An extension alias must be unique within a given account and Region. You can activate the same public resource multiple times in the same account and Region, using different type name aliases.
|
|
34176
35341
|
:param version_bump: Manually updates a previously-activated type to a new major or minor version, if available. You can also use this parameter to update the value of ``AutoUpdate`` . - ``MAJOR`` : CloudFormation updates the extension to the newest major version, if one is available. - ``MINOR`` : CloudFormation updates the extension to the newest minor version, if one is available.
|
|
34177
35342
|
'''
|
|
34178
35343
|
if __debug__:
|
|
@@ -34227,7 +35392,7 @@ class CfnTypeActivation(
|
|
|
34227
35392
|
@builtins.property
|
|
34228
35393
|
@jsii.member(jsii_name="attrArn")
|
|
34229
35394
|
def attr_arn(self) -> builtins.str:
|
|
34230
|
-
'''The Amazon Resource Name (ARN) of the activated extension
|
|
35395
|
+
'''The Amazon Resource Name (ARN) of the activated extension in this account and Region.
|
|
34231
35396
|
|
|
34232
35397
|
:cloudformationAttribute: Arn
|
|
34233
35398
|
'''
|
|
@@ -34238,6 +35403,12 @@ class CfnTypeActivation(
|
|
|
34238
35403
|
def _cfn_properties(self) -> typing.Mapping[builtins.str, typing.Any]:
|
|
34239
35404
|
return typing.cast(typing.Mapping[builtins.str, typing.Any], jsii.get(self, "cfnProperties"))
|
|
34240
35405
|
|
|
35406
|
+
@builtins.property
|
|
35407
|
+
@jsii.member(jsii_name="typeActivationRef")
|
|
35408
|
+
def type_activation_ref(self) -> _TypeActivationReference_03c77595:
|
|
35409
|
+
'''A reference to a TypeActivation resource.'''
|
|
35410
|
+
return typing.cast(_TypeActivationReference_03c77595, jsii.get(self, "typeActivationRef"))
|
|
35411
|
+
|
|
34241
35412
|
@builtins.property
|
|
34242
35413
|
@jsii.member(jsii_name="autoUpdate")
|
|
34243
35414
|
def auto_update(self) -> typing.Optional[typing.Union[builtins.bool, IResolvable]]:
|
|
@@ -34353,7 +35524,7 @@ class CfnTypeActivation(
|
|
|
34353
35524
|
@builtins.property
|
|
34354
35525
|
@jsii.member(jsii_name="typeNameAlias")
|
|
34355
35526
|
def type_name_alias(self) -> typing.Optional[builtins.str]:
|
|
34356
|
-
'''An alias to assign to the public extension
|
|
35527
|
+
'''An alias to assign to the public extension in this account and Region.'''
|
|
34357
35528
|
return typing.cast(typing.Optional[builtins.str], jsii.get(self, "typeNameAlias"))
|
|
34358
35529
|
|
|
34359
35530
|
@type_name_alias.setter
|
|
@@ -34447,7 +35618,7 @@ class CfnTypeActivation(
|
|
|
34447
35618
|
)
|
|
34448
35619
|
|
|
34449
35620
|
|
|
34450
|
-
@jsii.implements(IInspectable)
|
|
35621
|
+
@jsii.implements(IInspectable, _IWaitConditionRef_5bc95657)
|
|
34451
35622
|
class CfnWaitCondition(
|
|
34452
35623
|
CfnResource,
|
|
34453
35624
|
metaclass=jsii.JSIIMeta,
|
|
@@ -34455,7 +35626,7 @@ class CfnWaitCondition(
|
|
|
34455
35626
|
):
|
|
34456
35627
|
'''The ``AWS::CloudFormation::WaitCondition`` resource provides a way to coordinate stack resource creation with configuration actions that are external to the stack creation or to track the status of a configuration process.
|
|
34457
35628
|
|
|
34458
|
-
In these situations, we recommend that you associate a ``CreationPolicy`` attribute with the wait condition instead of using a wait condition handle. For more information and an example, see `CreationPolicy attribute <https://docs.aws.amazon.com/AWSCloudFormation/latest/
|
|
35629
|
+
In these situations, we recommend that you associate a ``CreationPolicy`` attribute with the wait condition instead of using a wait condition handle. For more information and an example, see `CreationPolicy attribute <https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/aws-attribute-creationpolicy.html>`_ in the *AWS CloudFormation User Guide* . If you use a ``CreationPolicy`` with a wait condition, don't specify any of the wait condition's properties.
|
|
34459
35630
|
.. epigraph::
|
|
34460
35631
|
|
|
34461
35632
|
If you use AWS PrivateLink , resources in the VPC that respond to wait conditions must have access to CloudFormation , specific Amazon S3 buckets. Resources must send wait condition responses to a presigned Amazon S3 URL. If they can't send responses to Amazon S3 , CloudFormation won't receive a response and the stack operation fails. For more information, see `Access CloudFormation using an interface endpoint ( AWS PrivateLink ) <https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/vpc-interface-endpoints.html>`_ in the *AWS CloudFormation User Guide* . > For Amazon EC2 and Auto Scaling resources, we recommend that you use a ``CreationPolicy`` attribute instead of wait conditions. Add a ``CreationPolicy`` attribute to those resources, and use the ``cfn-signal`` helper script to signal when an instance creation process has completed successfully.
|
|
@@ -34486,11 +35657,12 @@ class CfnWaitCondition(
|
|
|
34486
35657
|
handle: typing.Optional[builtins.str] = None,
|
|
34487
35658
|
timeout: typing.Optional[builtins.str] = None,
|
|
34488
35659
|
) -> None:
|
|
34489
|
-
'''
|
|
35660
|
+
'''Create a new ``AWS::CloudFormation::WaitCondition``.
|
|
35661
|
+
|
|
34490
35662
|
:param scope: Scope in which this resource is defined.
|
|
34491
35663
|
:param id: Construct identifier for this resource (unique in its scope).
|
|
34492
35664
|
:param count: The number of success signals that CloudFormation must receive before it continues the stack creation process. When the wait condition receives the requisite number of success signals, CloudFormation resumes the creation of the stack. If the wait condition doesn't receive the specified number of success signals before the Timeout period expires, CloudFormation assumes that the wait condition has failed and rolls the stack back. Updates aren't supported.
|
|
34493
|
-
:param handle: A reference to the wait condition handle used to signal this wait condition. Use the ``Ref`` intrinsic function to specify an `AWS::CloudFormation::WaitConditionHandle <https://docs.aws.amazon.com/AWSCloudFormation/latest/
|
|
35665
|
+
:param handle: A reference to the wait condition handle used to signal this wait condition. Use the ``Ref`` intrinsic function to specify an `AWS::CloudFormation::WaitConditionHandle <https://docs.aws.amazon.com/AWSCloudFormation/latest/TemplateReference/aws-resource-cloudformation-waitconditionhandle.html>`_ resource. Anytime you add a ``WaitCondition`` resource during a stack update, you must associate the wait condition with a new WaitConditionHandle resource. Don't reuse an old wait condition handle that has already been defined in the template. If you reuse a wait condition handle, the wait condition might evaluate old signals from a previous create or update stack command. Updates aren't supported.
|
|
34494
35666
|
:param timeout: The length of time (in seconds) to wait for the number of signals that the ``Count`` property specifies. ``Timeout`` is a minimum-bound property, meaning the timeout occurs no sooner than the time you specify, but can occur shortly thereafter. The maximum time that can be specified for this property is 12 hours (43200 seconds). Updates aren't supported.
|
|
34495
35667
|
'''
|
|
34496
35668
|
if __debug__:
|
|
@@ -34542,7 +35714,8 @@ class CfnWaitCondition(
|
|
|
34542
35714
|
@builtins.property
|
|
34543
35715
|
@jsii.member(jsii_name="attrId")
|
|
34544
35716
|
def attr_id(self) -> builtins.str:
|
|
34545
|
-
'''
|
|
35717
|
+
'''Returns a unique identifier for the resource.
|
|
35718
|
+
|
|
34546
35719
|
:cloudformationAttribute: Id
|
|
34547
35720
|
'''
|
|
34548
35721
|
return typing.cast(builtins.str, jsii.get(self, "attrId"))
|
|
@@ -34552,6 +35725,12 @@ class CfnWaitCondition(
|
|
|
34552
35725
|
def _cfn_properties(self) -> typing.Mapping[builtins.str, typing.Any]:
|
|
34553
35726
|
return typing.cast(typing.Mapping[builtins.str, typing.Any], jsii.get(self, "cfnProperties"))
|
|
34554
35727
|
|
|
35728
|
+
@builtins.property
|
|
35729
|
+
@jsii.member(jsii_name="waitConditionRef")
|
|
35730
|
+
def wait_condition_ref(self) -> _WaitConditionReference_e2d94a43:
|
|
35731
|
+
'''A reference to a WaitCondition resource.'''
|
|
35732
|
+
return typing.cast(_WaitConditionReference_e2d94a43, jsii.get(self, "waitConditionRef"))
|
|
35733
|
+
|
|
34555
35734
|
@builtins.property
|
|
34556
35735
|
@jsii.member(jsii_name="count")
|
|
34557
35736
|
def count(self) -> typing.Optional[jsii.Number]:
|
|
@@ -34592,7 +35771,7 @@ class CfnWaitCondition(
|
|
|
34592
35771
|
jsii.set(self, "timeout", value) # pyright: ignore[reportArgumentType]
|
|
34593
35772
|
|
|
34594
35773
|
|
|
34595
|
-
@jsii.implements(IInspectable)
|
|
35774
|
+
@jsii.implements(IInspectable, _IWaitConditionHandleRef_6fbe7b4b)
|
|
34596
35775
|
class CfnWaitConditionHandle(
|
|
34597
35776
|
CfnResource,
|
|
34598
35777
|
metaclass=jsii.JSIIMeta,
|
|
@@ -34622,7 +35801,8 @@ class CfnWaitConditionHandle(
|
|
|
34622
35801
|
'''
|
|
34623
35802
|
|
|
34624
35803
|
def __init__(self, scope: _constructs_77d1e7e8.Construct, id: builtins.str) -> None:
|
|
34625
|
-
'''
|
|
35804
|
+
'''Create a new ``AWS::CloudFormation::WaitConditionHandle``.
|
|
35805
|
+
|
|
34626
35806
|
:param scope: Scope in which this resource is defined.
|
|
34627
35807
|
:param id: Construct identifier for this resource (unique in its scope).
|
|
34628
35808
|
'''
|
|
@@ -34667,7 +35847,7 @@ class CfnWaitConditionHandle(
|
|
|
34667
35847
|
@builtins.property
|
|
34668
35848
|
@jsii.member(jsii_name="attrId")
|
|
34669
35849
|
def attr_id(self) -> builtins.str:
|
|
34670
|
-
'''
|
|
35850
|
+
'''Returns a unique identifier for the resource.
|
|
34671
35851
|
|
|
34672
35852
|
:cloudformationAttribute: Id
|
|
34673
35853
|
'''
|
|
@@ -34678,6 +35858,12 @@ class CfnWaitConditionHandle(
|
|
|
34678
35858
|
def _cfn_properties(self) -> typing.Mapping[builtins.str, typing.Any]:
|
|
34679
35859
|
return typing.cast(typing.Mapping[builtins.str, typing.Any], jsii.get(self, "cfnProperties"))
|
|
34680
35860
|
|
|
35861
|
+
@builtins.property
|
|
35862
|
+
@jsii.member(jsii_name="waitConditionHandleRef")
|
|
35863
|
+
def wait_condition_handle_ref(self) -> _WaitConditionHandleReference_ba26e35b:
|
|
35864
|
+
'''A reference to a WaitConditionHandle resource.'''
|
|
35865
|
+
return typing.cast(_WaitConditionHandleReference_ba26e35b, jsii.get(self, "waitConditionHandleRef"))
|
|
35866
|
+
|
|
34681
35867
|
|
|
34682
35868
|
class CustomResource(
|
|
34683
35869
|
Resource,
|
|
@@ -34792,6 +35978,12 @@ class CustomResource(
|
|
|
34792
35978
|
check_type(argname="argument attribute_name", value=attribute_name, expected_type=type_hints["attribute_name"])
|
|
34793
35979
|
return typing.cast(builtins.str, jsii.invoke(self, "getAttString", [attribute_name]))
|
|
34794
35980
|
|
|
35981
|
+
@jsii.python.classproperty
|
|
35982
|
+
@jsii.member(jsii_name="PROPERTY_INJECTION_ID")
|
|
35983
|
+
def PROPERTY_INJECTION_ID(cls) -> builtins.str:
|
|
35984
|
+
'''Uniquely identifies this class.'''
|
|
35985
|
+
return typing.cast(builtins.str, jsii.sget(cls, "PROPERTY_INJECTION_ID"))
|
|
35986
|
+
|
|
34795
35987
|
@builtins.property
|
|
34796
35988
|
@jsii.member(jsii_name="ref")
|
|
34797
35989
|
def ref(self) -> builtins.str:
|
|
@@ -35317,6 +36509,22 @@ class DockerIgnoreStrategy(
|
|
|
35317
36509
|
check_type(argname="argument pattern", value=pattern, expected_type=type_hints["pattern"])
|
|
35318
36510
|
return typing.cast(None, jsii.invoke(self, "add", [pattern]))
|
|
35319
36511
|
|
|
36512
|
+
@jsii.member(jsii_name="completelyIgnores")
|
|
36513
|
+
def completely_ignores(
|
|
36514
|
+
self,
|
|
36515
|
+
absolute_directory_path: builtins.str,
|
|
36516
|
+
) -> builtins.bool:
|
|
36517
|
+
'''Determines whether a given directory path should be ignored and have all of its children ignored.
|
|
36518
|
+
|
|
36519
|
+
:param absolute_directory_path: absolute directory path to be assessed against the pattern.
|
|
36520
|
+
|
|
36521
|
+
:return: ``true`` if the directory and all of its children should be ignored
|
|
36522
|
+
'''
|
|
36523
|
+
if __debug__:
|
|
36524
|
+
type_hints = typing.get_type_hints(_typecheckingstub__4eeec3aad8660d3f77c7f5fd848b52abf32a847311801373080bbfe35642315a)
|
|
36525
|
+
check_type(argname="argument absolute_directory_path", value=absolute_directory_path, expected_type=type_hints["absolute_directory_path"])
|
|
36526
|
+
return typing.cast(builtins.bool, jsii.invoke(self, "completelyIgnores", [absolute_directory_path]))
|
|
36527
|
+
|
|
35320
36528
|
@jsii.member(jsii_name="ignores")
|
|
35321
36529
|
def ignores(self, absolute_file_path: builtins.str) -> builtins.bool:
|
|
35322
36530
|
'''Determines whether a given file path should be ignored or not.
|
|
@@ -35377,6 +36585,22 @@ class GitIgnoreStrategy(
|
|
|
35377
36585
|
check_type(argname="argument pattern", value=pattern, expected_type=type_hints["pattern"])
|
|
35378
36586
|
return typing.cast(None, jsii.invoke(self, "add", [pattern]))
|
|
35379
36587
|
|
|
36588
|
+
@jsii.member(jsii_name="completelyIgnores")
|
|
36589
|
+
def completely_ignores(
|
|
36590
|
+
self,
|
|
36591
|
+
absolute_directory_path: builtins.str,
|
|
36592
|
+
) -> builtins.bool:
|
|
36593
|
+
'''Determines whether a given directory path should be ignored and have all of its children ignored.
|
|
36594
|
+
|
|
36595
|
+
:param absolute_directory_path: absolute directory path to be assessed against the pattern.
|
|
36596
|
+
|
|
36597
|
+
:return: ``true`` if the directory and all of its children should be ignored
|
|
36598
|
+
'''
|
|
36599
|
+
if __debug__:
|
|
36600
|
+
type_hints = typing.get_type_hints(_typecheckingstub__e0e824f5e018cd48b279cd34fa185b0a533eed88eee2e88ebb3868389b89b517)
|
|
36601
|
+
check_type(argname="argument absolute_directory_path", value=absolute_directory_path, expected_type=type_hints["absolute_directory_path"])
|
|
36602
|
+
return typing.cast(builtins.bool, jsii.invoke(self, "completelyIgnores", [absolute_directory_path]))
|
|
36603
|
+
|
|
35380
36604
|
@jsii.member(jsii_name="ignores")
|
|
35381
36605
|
def ignores(self, absolute_file_path: builtins.str) -> builtins.bool:
|
|
35382
36606
|
'''Determines whether a given file path should be ignored or not.
|
|
@@ -35926,6 +37150,12 @@ class NestedStack(Stack, metaclass=jsii.JSIIMeta, jsii_type="aws-cdk-lib.NestedS
|
|
|
35926
37150
|
check_type(argname="argument value", value=value, expected_type=type_hints["value"])
|
|
35927
37151
|
return typing.cast(None, jsii.invoke(self, "setParameter", [name, value]))
|
|
35928
37152
|
|
|
37153
|
+
@builtins.property
|
|
37154
|
+
@jsii.member(jsii_name="bundlingRequired")
|
|
37155
|
+
def bundling_required(self) -> builtins.bool:
|
|
37156
|
+
'''Indicates whether the stack requires bundling or not.'''
|
|
37157
|
+
return typing.cast(builtins.bool, jsii.get(self, "bundlingRequired"))
|
|
37158
|
+
|
|
35929
37159
|
@builtins.property
|
|
35930
37160
|
@jsii.member(jsii_name="stackId")
|
|
35931
37161
|
def stack_id(self) -> builtins.str:
|
|
@@ -36459,18 +37689,22 @@ class DefaultStackSynthesizer(
|
|
|
36459
37689
|
|
|
36460
37690
|
Example::
|
|
36461
37691
|
|
|
36462
|
-
|
|
36463
|
-
|
|
36464
|
-
|
|
36465
|
-
|
|
36466
|
-
|
|
36467
|
-
|
|
36468
|
-
|
|
36469
|
-
|
|
36470
|
-
|
|
36471
|
-
|
|
36472
|
-
|
|
36473
|
-
|
|
37692
|
+
class MyStack(Stack):
|
|
37693
|
+
def __init__(self, scope, id, *, description=None, env=None, stackName=None, tags=None, notificationArns=None, synthesizer=None, terminationProtection=None, analyticsReporting=None, crossRegionReferences=None, permissionsBoundary=None, suppressTemplateIndentation=None, propertyInjectors=None):
|
|
37694
|
+
super().__init__(scope, id,
|
|
37695
|
+
(SpreadAssignment ...props
|
|
37696
|
+
description=description, env=env, stackName=stackName, tags=tags, notificationArns=notificationArns, synthesizer=synthesizer, terminationProtection=terminationProtection, analyticsReporting=analyticsReporting, crossRegionReferences=crossRegionReferences, permissionsBoundary=permissionsBoundary, suppressTemplateIndentation=suppressTemplateIndentation, propertyInjectors=propertyInjectors),
|
|
37697
|
+
synthesizer=DefaultStackSynthesizer(
|
|
37698
|
+
deploy_role_external_id="",
|
|
37699
|
+
deploy_role_additional_options={},
|
|
37700
|
+
file_asset_publishing_external_id="",
|
|
37701
|
+
file_asset_publishing_role_additional_options={},
|
|
37702
|
+
image_asset_publishing_external_id="",
|
|
37703
|
+
image_asset_publishing_role_additional_options={},
|
|
37704
|
+
lookup_role_external_id="",
|
|
37705
|
+
lookup_role_additional_options={}
|
|
37706
|
+
)
|
|
37707
|
+
)
|
|
36474
37708
|
'''
|
|
36475
37709
|
|
|
36476
37710
|
def __init__(
|
|
@@ -36849,7 +38083,8 @@ class BootstraplessSynthesizer(
|
|
|
36849
38083
|
|
|
36850
38084
|
bootstrapless_synthesizer = cdk.BootstraplessSynthesizer(
|
|
36851
38085
|
cloud_formation_execution_role_arn="cloudFormationExecutionRoleArn",
|
|
36852
|
-
deploy_role_arn="deployRoleArn"
|
|
38086
|
+
deploy_role_arn="deployRoleArn",
|
|
38087
|
+
qualifier="qualifier"
|
|
36853
38088
|
)
|
|
36854
38089
|
'''
|
|
36855
38090
|
|
|
@@ -36858,14 +38093,17 @@ class BootstraplessSynthesizer(
|
|
|
36858
38093
|
*,
|
|
36859
38094
|
cloud_formation_execution_role_arn: typing.Optional[builtins.str] = None,
|
|
36860
38095
|
deploy_role_arn: typing.Optional[builtins.str] = None,
|
|
38096
|
+
qualifier: typing.Optional[builtins.str] = None,
|
|
36861
38097
|
) -> None:
|
|
36862
38098
|
'''
|
|
36863
38099
|
:param cloud_formation_execution_role_arn: The CFN execution Role ARN to use. Default: - No CloudFormation role (use CLI credentials)
|
|
36864
38100
|
:param deploy_role_arn: The deploy Role ARN to use. Default: - No deploy role (use CLI credentials)
|
|
38101
|
+
:param qualifier: The qualifier used to specialize strings. Can be used to specify custom bootstrapped role names Default: 'hnb659fds'
|
|
36865
38102
|
'''
|
|
36866
38103
|
props = BootstraplessSynthesizerProps(
|
|
36867
38104
|
cloud_formation_execution_role_arn=cloud_formation_execution_role_arn,
|
|
36868
38105
|
deploy_role_arn=deploy_role_arn,
|
|
38106
|
+
qualifier=qualifier,
|
|
36869
38107
|
)
|
|
36870
38108
|
|
|
36871
38109
|
jsii.create(self.__class__, self, [props])
|
|
@@ -37151,6 +38389,7 @@ __all__ = [
|
|
|
37151
38389
|
"ICfnConditionExpression",
|
|
37152
38390
|
"ICfnResourceOptions",
|
|
37153
38391
|
"ICfnRuleConditionExpression",
|
|
38392
|
+
"IEnvironmentAware",
|
|
37154
38393
|
"IFragmentConcatenator",
|
|
37155
38394
|
"IInspectable",
|
|
37156
38395
|
"IListProducer",
|
|
@@ -37159,6 +38398,7 @@ __all__ = [
|
|
|
37159
38398
|
"IPolicyValidationContextBeta1",
|
|
37160
38399
|
"IPolicyValidationPluginBeta1",
|
|
37161
38400
|
"IPostProcessor",
|
|
38401
|
+
"IPropertyInjector",
|
|
37162
38402
|
"IResolvable",
|
|
37163
38403
|
"IResolveContext",
|
|
37164
38404
|
"IResource",
|
|
@@ -37177,6 +38417,7 @@ __all__ = [
|
|
|
37177
38417
|
"ITokenResolver",
|
|
37178
38418
|
"IgnoreMode",
|
|
37179
38419
|
"IgnoreStrategy",
|
|
38420
|
+
"InjectionContext",
|
|
37180
38421
|
"Intrinsic",
|
|
37181
38422
|
"IntrinsicProps",
|
|
37182
38423
|
"JsonNull",
|
|
@@ -37197,6 +38438,7 @@ __all__ = [
|
|
|
37197
38438
|
"PolicyValidationReportStatusBeta1",
|
|
37198
38439
|
"PolicyViolatingResourceBeta1",
|
|
37199
38440
|
"PolicyViolationBeta1",
|
|
38441
|
+
"PropertyInjectors",
|
|
37200
38442
|
"Reference",
|
|
37201
38443
|
"RemovalPolicies",
|
|
37202
38444
|
"RemovalPolicy",
|
|
@@ -37246,6 +38488,7 @@ __all__ = [
|
|
|
37246
38488
|
"assertions",
|
|
37247
38489
|
"aws_accessanalyzer",
|
|
37248
38490
|
"aws_acmpca",
|
|
38491
|
+
"aws_aiops",
|
|
37249
38492
|
"aws_amazonmq",
|
|
37250
38493
|
"aws_amplify",
|
|
37251
38494
|
"aws_amplifyuibuilder",
|
|
@@ -37265,6 +38508,7 @@ __all__ = [
|
|
|
37265
38508
|
"aws_appsync",
|
|
37266
38509
|
"aws_apptest",
|
|
37267
38510
|
"aws_aps",
|
|
38511
|
+
"aws_arcregionswitch",
|
|
37268
38512
|
"aws_arczonalshift",
|
|
37269
38513
|
"aws_athena",
|
|
37270
38514
|
"aws_auditmanager",
|
|
@@ -37278,6 +38522,7 @@ __all__ = [
|
|
|
37278
38522
|
"aws_batch",
|
|
37279
38523
|
"aws_bcmdataexports",
|
|
37280
38524
|
"aws_bedrock",
|
|
38525
|
+
"aws_bedrockagentcore",
|
|
37281
38526
|
"aws_billingconductor",
|
|
37282
38527
|
"aws_budgets",
|
|
37283
38528
|
"aws_cassandra",
|
|
@@ -37353,6 +38598,7 @@ __all__ = [
|
|
|
37353
38598
|
"aws_events_targets",
|
|
37354
38599
|
"aws_eventschemas",
|
|
37355
38600
|
"aws_evidently",
|
|
38601
|
+
"aws_evs",
|
|
37356
38602
|
"aws_finspace",
|
|
37357
38603
|
"aws_fis",
|
|
37358
38604
|
"aws_fms",
|
|
@@ -37425,6 +38671,7 @@ __all__ = [
|
|
|
37425
38671
|
"aws_mediastore",
|
|
37426
38672
|
"aws_mediatailor",
|
|
37427
38673
|
"aws_memorydb",
|
|
38674
|
+
"aws_mpa",
|
|
37428
38675
|
"aws_msk",
|
|
37429
38676
|
"aws_mwaa",
|
|
37430
38677
|
"aws_neptune",
|
|
@@ -37435,6 +38682,8 @@ __all__ = [
|
|
|
37435
38682
|
"aws_notifications",
|
|
37436
38683
|
"aws_notificationscontacts",
|
|
37437
38684
|
"aws_oam",
|
|
38685
|
+
"aws_observabilityadmin",
|
|
38686
|
+
"aws_odb",
|
|
37438
38687
|
"aws_omics",
|
|
37439
38688
|
"aws_opensearchserverless",
|
|
37440
38689
|
"aws_opensearchservice",
|
|
@@ -37474,6 +38723,7 @@ __all__ = [
|
|
|
37474
38723
|
"aws_route53recoverycontrol",
|
|
37475
38724
|
"aws_route53recoveryreadiness",
|
|
37476
38725
|
"aws_route53resolver",
|
|
38726
|
+
"aws_rtbfabric",
|
|
37477
38727
|
"aws_rum",
|
|
37478
38728
|
"aws_s3",
|
|
37479
38729
|
"aws_s3_assets",
|
|
@@ -37483,6 +38733,7 @@ __all__ = [
|
|
|
37483
38733
|
"aws_s3objectlambda",
|
|
37484
38734
|
"aws_s3outposts",
|
|
37485
38735
|
"aws_s3tables",
|
|
38736
|
+
"aws_s3vectors",
|
|
37486
38737
|
"aws_sagemaker",
|
|
37487
38738
|
"aws_sam",
|
|
37488
38739
|
"aws_scheduler",
|
|
@@ -37499,6 +38750,7 @@ __all__ = [
|
|
|
37499
38750
|
"aws_shield",
|
|
37500
38751
|
"aws_signer",
|
|
37501
38752
|
"aws_simspaceweaver",
|
|
38753
|
+
"aws_smsvoice",
|
|
37502
38754
|
"aws_sns",
|
|
37503
38755
|
"aws_sns_subscriptions",
|
|
37504
38756
|
"aws_sqs",
|
|
@@ -37523,6 +38775,7 @@ __all__ = [
|
|
|
37523
38775
|
"aws_wafv2",
|
|
37524
38776
|
"aws_wisdom",
|
|
37525
38777
|
"aws_workspaces",
|
|
38778
|
+
"aws_workspacesinstances",
|
|
37526
38779
|
"aws_workspacesthinclient",
|
|
37527
38780
|
"aws_workspacesweb",
|
|
37528
38781
|
"aws_xray",
|
|
@@ -37530,6 +38783,7 @@ __all__ = [
|
|
|
37530
38783
|
"cloudformation_include",
|
|
37531
38784
|
"custom_resources",
|
|
37532
38785
|
"cx_api",
|
|
38786
|
+
"interfaces",
|
|
37533
38787
|
"lambda_layer_awscli",
|
|
37534
38788
|
"lambda_layer_node_proxy_agent",
|
|
37535
38789
|
"pipelines",
|
|
@@ -37544,6 +38798,7 @@ from . import alexa_ask
|
|
|
37544
38798
|
from . import assertions
|
|
37545
38799
|
from . import aws_accessanalyzer
|
|
37546
38800
|
from . import aws_acmpca
|
|
38801
|
+
from . import aws_aiops
|
|
37547
38802
|
from . import aws_amazonmq
|
|
37548
38803
|
from . import aws_amplify
|
|
37549
38804
|
from . import aws_amplifyuibuilder
|
|
@@ -37563,6 +38818,7 @@ from . import aws_appstream
|
|
|
37563
38818
|
from . import aws_appsync
|
|
37564
38819
|
from . import aws_apptest
|
|
37565
38820
|
from . import aws_aps
|
|
38821
|
+
from . import aws_arcregionswitch
|
|
37566
38822
|
from . import aws_arczonalshift
|
|
37567
38823
|
from . import aws_athena
|
|
37568
38824
|
from . import aws_auditmanager
|
|
@@ -37576,6 +38832,7 @@ from . import aws_backupgateway
|
|
|
37576
38832
|
from . import aws_batch
|
|
37577
38833
|
from . import aws_bcmdataexports
|
|
37578
38834
|
from . import aws_bedrock
|
|
38835
|
+
from . import aws_bedrockagentcore
|
|
37579
38836
|
from . import aws_billingconductor
|
|
37580
38837
|
from . import aws_budgets
|
|
37581
38838
|
from . import aws_cassandra
|
|
@@ -37651,6 +38908,7 @@ from . import aws_events
|
|
|
37651
38908
|
from . import aws_events_targets
|
|
37652
38909
|
from . import aws_eventschemas
|
|
37653
38910
|
from . import aws_evidently
|
|
38911
|
+
from . import aws_evs
|
|
37654
38912
|
from . import aws_finspace
|
|
37655
38913
|
from . import aws_fis
|
|
37656
38914
|
from . import aws_fms
|
|
@@ -37723,6 +38981,7 @@ from . import aws_mediapackagev2
|
|
|
37723
38981
|
from . import aws_mediastore
|
|
37724
38982
|
from . import aws_mediatailor
|
|
37725
38983
|
from . import aws_memorydb
|
|
38984
|
+
from . import aws_mpa
|
|
37726
38985
|
from . import aws_msk
|
|
37727
38986
|
from . import aws_mwaa
|
|
37728
38987
|
from . import aws_neptune
|
|
@@ -37733,6 +38992,8 @@ from . import aws_nimblestudio
|
|
|
37733
38992
|
from . import aws_notifications
|
|
37734
38993
|
from . import aws_notificationscontacts
|
|
37735
38994
|
from . import aws_oam
|
|
38995
|
+
from . import aws_observabilityadmin
|
|
38996
|
+
from . import aws_odb
|
|
37736
38997
|
from . import aws_omics
|
|
37737
38998
|
from . import aws_opensearchserverless
|
|
37738
38999
|
from . import aws_opensearchservice
|
|
@@ -37772,6 +39033,7 @@ from . import aws_route53profiles
|
|
|
37772
39033
|
from . import aws_route53recoverycontrol
|
|
37773
39034
|
from . import aws_route53recoveryreadiness
|
|
37774
39035
|
from . import aws_route53resolver
|
|
39036
|
+
from . import aws_rtbfabric
|
|
37775
39037
|
from . import aws_rum
|
|
37776
39038
|
from . import aws_s3
|
|
37777
39039
|
from . import aws_s3_assets
|
|
@@ -37781,6 +39043,7 @@ from . import aws_s3express
|
|
|
37781
39043
|
from . import aws_s3objectlambda
|
|
37782
39044
|
from . import aws_s3outposts
|
|
37783
39045
|
from . import aws_s3tables
|
|
39046
|
+
from . import aws_s3vectors
|
|
37784
39047
|
from . import aws_sagemaker
|
|
37785
39048
|
from . import aws_sam
|
|
37786
39049
|
from . import aws_scheduler
|
|
@@ -37797,6 +39060,7 @@ from . import aws_ses_actions
|
|
|
37797
39060
|
from . import aws_shield
|
|
37798
39061
|
from . import aws_signer
|
|
37799
39062
|
from . import aws_simspaceweaver
|
|
39063
|
+
from . import aws_smsvoice
|
|
37800
39064
|
from . import aws_sns
|
|
37801
39065
|
from . import aws_sns_subscriptions
|
|
37802
39066
|
from . import aws_sqs
|
|
@@ -37821,6 +39085,7 @@ from . import aws_wafregional
|
|
|
37821
39085
|
from . import aws_wafv2
|
|
37822
39086
|
from . import aws_wisdom
|
|
37823
39087
|
from . import aws_workspaces
|
|
39088
|
+
from . import aws_workspacesinstances
|
|
37824
39089
|
from . import aws_workspacesthinclient
|
|
37825
39090
|
from . import aws_workspacesweb
|
|
37826
39091
|
from . import aws_xray
|
|
@@ -37828,6 +39093,7 @@ from . import cloud_assembly_schema
|
|
|
37828
39093
|
from . import cloudformation_include
|
|
37829
39094
|
from . import custom_resources
|
|
37830
39095
|
from . import cx_api
|
|
39096
|
+
from . import interfaces
|
|
37831
39097
|
from . import lambda_layer_awscli
|
|
37832
39098
|
from . import lambda_layer_node_proxy_agent
|
|
37833
39099
|
from . import pipelines
|
|
@@ -37854,6 +39120,13 @@ def _typecheckingstub__cfddeb4c359528028785fb7ca8a01e86bcda81d53c82cdaef6ad18dd0
|
|
|
37854
39120
|
"""Type checking stubs"""
|
|
37855
39121
|
pass
|
|
37856
39122
|
|
|
39123
|
+
def _typecheckingstub__71c75ad95e6c491e615a0c0a9cc9bc5b538f2d93e7057612251cfc9592380513(
|
|
39124
|
+
id: builtins.str,
|
|
39125
|
+
message: typing.Optional[builtins.str] = None,
|
|
39126
|
+
) -> None:
|
|
39127
|
+
"""Type checking stubs"""
|
|
39128
|
+
pass
|
|
39129
|
+
|
|
37857
39130
|
def _typecheckingstub__58bb467dabbe29a0334a62f44fa1a8a9b59742b9dfac031624ed782055bf0ada(
|
|
37858
39131
|
id: builtins.str,
|
|
37859
39132
|
message: typing.Optional[builtins.str] = None,
|
|
@@ -37880,6 +39153,13 @@ def _typecheckingstub__42febf8c4cbec6748c47fab1f601511d3bc57ef5bc415cb489e10605f
|
|
|
37880
39153
|
"""Type checking stubs"""
|
|
37881
39154
|
pass
|
|
37882
39155
|
|
|
39156
|
+
def _typecheckingstub__843fb7798b96b5a06278ca94ba80d2ae0fb300672c44f21b2ee4d759a04bdba9(
|
|
39157
|
+
id: builtins.str,
|
|
39158
|
+
message: builtins.str,
|
|
39159
|
+
) -> None:
|
|
39160
|
+
"""Type checking stubs"""
|
|
39161
|
+
pass
|
|
39162
|
+
|
|
37883
39163
|
def _typecheckingstub__e2fdcebb577d63295330a53b495fc6906cfbd98497144c53b1cb802e3e082f72(
|
|
37884
39164
|
message: builtins.str,
|
|
37885
39165
|
) -> None:
|
|
@@ -37902,6 +39182,7 @@ def _typecheckingstub__ef2fee5e91b22ed9e2b91aa309be73835ddfb834f19eb3d41540c7e38
|
|
|
37902
39182
|
outdir: typing.Optional[builtins.str] = None,
|
|
37903
39183
|
policy_validation_beta1: typing.Optional[typing.Sequence[IPolicyValidationPluginBeta1]] = None,
|
|
37904
39184
|
post_cli_context: typing.Optional[typing.Mapping[builtins.str, typing.Any]] = None,
|
|
39185
|
+
property_injectors: typing.Optional[typing.Sequence[IPropertyInjector]] = None,
|
|
37905
39186
|
stack_traces: typing.Optional[builtins.bool] = None,
|
|
37906
39187
|
tree_metadata: typing.Optional[builtins.bool] = None,
|
|
37907
39188
|
) -> None:
|
|
@@ -38081,6 +39362,7 @@ def _typecheckingstub__3f56ec309bd76e41562731f3b986025649d4592e71caa79fed875d702
|
|
|
38081
39362
|
*,
|
|
38082
39363
|
cloud_formation_execution_role_arn: typing.Optional[builtins.str] = None,
|
|
38083
39364
|
deploy_role_arn: typing.Optional[builtins.str] = None,
|
|
39365
|
+
qualifier: typing.Optional[builtins.str] = None,
|
|
38084
39366
|
) -> None:
|
|
38085
39367
|
"""Type checking stubs"""
|
|
38086
39368
|
pass
|
|
@@ -38872,6 +40154,7 @@ def _typecheckingstub__43574b9eb91c9a4b6203c6c4dae8ace9123c2746c25560e39a6b8a8db
|
|
|
38872
40154
|
scope: _constructs_77d1e7e8.Construct,
|
|
38873
40155
|
*,
|
|
38874
40156
|
provider: builtins.str,
|
|
40157
|
+
additional_cache_key: typing.Optional[builtins.str] = None,
|
|
38875
40158
|
include_environment: typing.Optional[builtins.bool] = None,
|
|
38876
40159
|
props: typing.Optional[typing.Mapping[builtins.str, typing.Any]] = None,
|
|
38877
40160
|
) -> None:
|
|
@@ -38885,6 +40168,7 @@ def _typecheckingstub__cbcd83febe5237c988f26712b8a838ca5d2e34ea47490d008757c21a6
|
|
|
38885
40168
|
ignore_error_on_missing_context: typing.Optional[builtins.bool] = None,
|
|
38886
40169
|
must_exist: typing.Optional[builtins.bool] = None,
|
|
38887
40170
|
provider: builtins.str,
|
|
40171
|
+
additional_cache_key: typing.Optional[builtins.str] = None,
|
|
38888
40172
|
include_environment: typing.Optional[builtins.bool] = None,
|
|
38889
40173
|
props: typing.Optional[typing.Mapping[builtins.str, typing.Any]] = None,
|
|
38890
40174
|
) -> None:
|
|
@@ -38994,6 +40278,7 @@ def _typecheckingstub__e285633ad5a50949fcc0277b0b38d3679a006cdac41feaef60665b393
|
|
|
38994
40278
|
cache_from: typing.Optional[typing.Sequence[typing.Union[DockerCacheOption, typing.Dict[builtins.str, typing.Any]]]] = None,
|
|
38995
40279
|
cache_to: typing.Optional[typing.Union[DockerCacheOption, typing.Dict[builtins.str, typing.Any]]] = None,
|
|
38996
40280
|
file: typing.Optional[builtins.str] = None,
|
|
40281
|
+
network: typing.Optional[builtins.str] = None,
|
|
38997
40282
|
platform: typing.Optional[builtins.str] = None,
|
|
38998
40283
|
target_stage: typing.Optional[builtins.str] = None,
|
|
38999
40284
|
) -> None:
|
|
@@ -39029,6 +40314,7 @@ def _typecheckingstub__ee160dc0667b6e8f45df2c2f176a77d9d6a3ece4b83cdf7804625adf8
|
|
|
39029
40314
|
cache_from: typing.Optional[typing.Sequence[typing.Union[DockerCacheOption, typing.Dict[builtins.str, typing.Any]]]] = None,
|
|
39030
40315
|
cache_to: typing.Optional[typing.Union[DockerCacheOption, typing.Dict[builtins.str, typing.Any]]] = None,
|
|
39031
40316
|
file: typing.Optional[builtins.str] = None,
|
|
40317
|
+
network: typing.Optional[builtins.str] = None,
|
|
39032
40318
|
platform: typing.Optional[builtins.str] = None,
|
|
39033
40319
|
target_stage: typing.Optional[builtins.str] = None,
|
|
39034
40320
|
) -> None:
|
|
@@ -39173,6 +40459,12 @@ def _typecheckingstub__4b06766267738419297aaf93a2368e0c38c274adc14053ce29fd653d6
|
|
|
39173
40459
|
"""Type checking stubs"""
|
|
39174
40460
|
pass
|
|
39175
40461
|
|
|
40462
|
+
def _typecheckingstub__1c1f003fc36fb573df38915f709b99bb9c1a74aac84c52ba7fe12c54cf2cae8d(
|
|
40463
|
+
x: typing.Any,
|
|
40464
|
+
) -> None:
|
|
40465
|
+
"""Type checking stubs"""
|
|
40466
|
+
pass
|
|
40467
|
+
|
|
39176
40468
|
def _typecheckingstub__1cadecf7c75d3f55ff2fcddf8a0d000d9f8e54b48218f1336d97358901d38c0b(
|
|
39177
40469
|
x: typing.Any,
|
|
39178
40470
|
) -> None:
|
|
@@ -39185,6 +40477,12 @@ def _typecheckingstub__0c62bc5a6fe032556ae3c32e105ddaad3f4ca89286fd26884af6347d3
|
|
|
39185
40477
|
"""Type checking stubs"""
|
|
39186
40478
|
pass
|
|
39187
40479
|
|
|
40480
|
+
def _typecheckingstub__f2bf053437a17fa72244a5b0342af56acbb0f4ad4bc7fc877ac3974df0b811d3(
|
|
40481
|
+
x: typing.Any,
|
|
40482
|
+
) -> None:
|
|
40483
|
+
"""Type checking stubs"""
|
|
40484
|
+
pass
|
|
40485
|
+
|
|
39188
40486
|
def _typecheckingstub__c9afe20487c547932befb7a2f6567c38793e8d7df55f47046e1cfb408408d733(
|
|
39189
40487
|
x: typing.Any,
|
|
39190
40488
|
) -> None:
|
|
@@ -39519,6 +40817,7 @@ def _typecheckingstub__1aa84b6f7c7da29afeaf8cce6ea2a4aee978df497c5cb6d4432224b24
|
|
|
39519
40817
|
def _typecheckingstub__4a3bc64bd38ef14ad5ebdf5807563d2355b26f4f0c446c315782c9818b76192a(
|
|
39520
40818
|
*,
|
|
39521
40819
|
provider: builtins.str,
|
|
40820
|
+
additional_cache_key: typing.Optional[builtins.str] = None,
|
|
39522
40821
|
include_environment: typing.Optional[builtins.bool] = None,
|
|
39523
40822
|
props: typing.Optional[typing.Mapping[builtins.str, typing.Any]] = None,
|
|
39524
40823
|
) -> None:
|
|
@@ -39536,6 +40835,7 @@ def _typecheckingstub__8870c87947d551a1842549591423e81e319fe3185c0ae81f67b67b1bf
|
|
|
39536
40835
|
def _typecheckingstub__16ea3024419c210903405ca05f7de1bb3fad517c101a7a84926fb5e09ac784ec(
|
|
39537
40836
|
*,
|
|
39538
40837
|
provider: builtins.str,
|
|
40838
|
+
additional_cache_key: typing.Optional[builtins.str] = None,
|
|
39539
40839
|
include_environment: typing.Optional[builtins.bool] = None,
|
|
39540
40840
|
props: typing.Optional[typing.Mapping[builtins.str, typing.Any]] = None,
|
|
39541
40841
|
dummy_value: typing.Any,
|
|
@@ -39671,6 +40971,15 @@ def _typecheckingstub__421f2755d7e81609d225eb32560b6f8749147026d0e9c4a8130c5421a
|
|
|
39671
40971
|
"""Type checking stubs"""
|
|
39672
40972
|
pass
|
|
39673
40973
|
|
|
40974
|
+
def _typecheckingstub__a84c13d89fffb1ee8026280d3071636f041aaa121bab44f9659e3255feca881d(
|
|
40975
|
+
original_props: typing.Any,
|
|
40976
|
+
*,
|
|
40977
|
+
id: builtins.str,
|
|
40978
|
+
scope: _constructs_77d1e7e8.Construct,
|
|
40979
|
+
) -> None:
|
|
40980
|
+
"""Type checking stubs"""
|
|
40981
|
+
pass
|
|
40982
|
+
|
|
39674
40983
|
def _typecheckingstub__09341b9d2d6a06b3937530fa96a1bcb7562ccdf5246e5563a8a552ec1f8c0fa5(
|
|
39675
40984
|
context: IResolveContext,
|
|
39676
40985
|
) -> None:
|
|
@@ -39814,6 +41123,12 @@ def _typecheckingstub__eece2ad7e2f3cbe035a92302343ee656a4e8438489e1b15a43554b124
|
|
|
39814
41123
|
"""Type checking stubs"""
|
|
39815
41124
|
pass
|
|
39816
41125
|
|
|
41126
|
+
def _typecheckingstub__3a80a66d2944a2c289e3c51a3686487dddf7c755eb54d7726f3fd91652eddcde(
|
|
41127
|
+
absolute_directory_path: builtins.str,
|
|
41128
|
+
) -> None:
|
|
41129
|
+
"""Type checking stubs"""
|
|
41130
|
+
pass
|
|
41131
|
+
|
|
39817
41132
|
def _typecheckingstub__30e8e458c385d1db329cfc0c45f966d2d15c1b0166b3e7cfe8a57c7809196bf5(
|
|
39818
41133
|
pattern: builtins.str,
|
|
39819
41134
|
) -> None:
|
|
@@ -39826,6 +41141,14 @@ def _typecheckingstub__639820bc3ab9fb78a31dec5d3d916a2befafc70af8c041b6e444ac075
|
|
|
39826
41141
|
"""Type checking stubs"""
|
|
39827
41142
|
pass
|
|
39828
41143
|
|
|
41144
|
+
def _typecheckingstub__474d9096cc3297bd5f64e3e487372aedd71d529e93d80a946aa117f0e0f8bc5b(
|
|
41145
|
+
*,
|
|
41146
|
+
id: builtins.str,
|
|
41147
|
+
scope: _constructs_77d1e7e8.Construct,
|
|
41148
|
+
) -> None:
|
|
41149
|
+
"""Type checking stubs"""
|
|
41150
|
+
pass
|
|
41151
|
+
|
|
39829
41152
|
def _typecheckingstub__4fdfa4eddae987229a9f6236b6c0b78b4d7e291c17d32a624ad710cd632917ff(
|
|
39830
41153
|
value: typing.Any,
|
|
39831
41154
|
*,
|
|
@@ -40046,6 +41369,30 @@ def _typecheckingstub__2f965066f077908d4839609b519c39167a0b14e83374fbf4bb1601ab5
|
|
|
40046
41369
|
"""Type checking stubs"""
|
|
40047
41370
|
pass
|
|
40048
41371
|
|
|
41372
|
+
def _typecheckingstub__4200e15e2cc09377aa6dd49e79c545a26e8c65589955f7210d145afb4881fcc5(
|
|
41373
|
+
x: typing.Any,
|
|
41374
|
+
) -> None:
|
|
41375
|
+
"""Type checking stubs"""
|
|
41376
|
+
pass
|
|
41377
|
+
|
|
41378
|
+
def _typecheckingstub__d558bd5d62319107ba8d7aec423cb982f18f533d7f90939b4576ae5cabe237e6(
|
|
41379
|
+
scope: _constructs_77d1e7e8.IConstruct,
|
|
41380
|
+
) -> None:
|
|
41381
|
+
"""Type checking stubs"""
|
|
41382
|
+
pass
|
|
41383
|
+
|
|
41384
|
+
def _typecheckingstub__b15ed456b528cac4ffc455783d09279b63e060419397678acf12dc8a07323ae9(
|
|
41385
|
+
*props_injectors: IPropertyInjector,
|
|
41386
|
+
) -> None:
|
|
41387
|
+
"""Type checking stubs"""
|
|
41388
|
+
pass
|
|
41389
|
+
|
|
41390
|
+
def _typecheckingstub__ba79b618f23d72687ff58834f8d791bcc5f41fb49c8301987bb45eee4378958b(
|
|
41391
|
+
unique_id: builtins.str,
|
|
41392
|
+
) -> None:
|
|
41393
|
+
"""Type checking stubs"""
|
|
41394
|
+
pass
|
|
41395
|
+
|
|
40049
41396
|
def _typecheckingstub__151f083e00bfac139cbf164b9069ab02924a37639eb1b7b58edc3dee3fdf3279(
|
|
40050
41397
|
value: typing.Any,
|
|
40051
41398
|
target: _constructs_77d1e7e8.IConstruct,
|
|
@@ -40246,6 +41593,16 @@ def _typecheckingstub__42536acc3fbfb7962f85e1c13349d32667f2fd64146363d2d766a253d
|
|
|
40246
41593
|
"""Type checking stubs"""
|
|
40247
41594
|
pass
|
|
40248
41595
|
|
|
41596
|
+
def _typecheckingstub__ba81ab5d0a7811c904f34d1d9805888e14bbd4da3987d73185cb1acbfc46df06(
|
|
41597
|
+
secret_id: builtins.str,
|
|
41598
|
+
*,
|
|
41599
|
+
json_field: typing.Optional[builtins.str] = None,
|
|
41600
|
+
version_id: typing.Optional[builtins.str] = None,
|
|
41601
|
+
version_stage: typing.Optional[builtins.str] = None,
|
|
41602
|
+
) -> None:
|
|
41603
|
+
"""Type checking stubs"""
|
|
41604
|
+
pass
|
|
41605
|
+
|
|
40249
41606
|
def _typecheckingstub__8241420a9f59d70313b0ea1bef892ebf8261a60f603687b732491bb889791322(
|
|
40250
41607
|
param: CfnParameter,
|
|
40251
41608
|
) -> None:
|
|
@@ -40361,6 +41718,7 @@ def _typecheckingstub__835828a2dac25cb8eb22f32985554296e8bd61463c8cc32bb2df4c1f4
|
|
|
40361
41718
|
env: typing.Optional[typing.Union[Environment, typing.Dict[builtins.str, typing.Any]]] = None,
|
|
40362
41719
|
notification_arns: typing.Optional[typing.Sequence[builtins.str]] = None,
|
|
40363
41720
|
permissions_boundary: typing.Optional[PermissionsBoundary] = None,
|
|
41721
|
+
property_injectors: typing.Optional[typing.Sequence[IPropertyInjector]] = None,
|
|
40364
41722
|
stack_name: typing.Optional[builtins.str] = None,
|
|
40365
41723
|
suppress_template_indentation: typing.Optional[builtins.bool] = None,
|
|
40366
41724
|
synthesizer: typing.Optional[IStackSynthesizer] = None,
|
|
@@ -40396,6 +41754,13 @@ def _typecheckingstub__2747e69e9678b96621f1476e1bee4426100a530229cea9dce16210392
|
|
|
40396
41754
|
"""Type checking stubs"""
|
|
40397
41755
|
pass
|
|
40398
41756
|
|
|
41757
|
+
def _typecheckingstub__c79ea9b0cd54830acfa2c93ac0786782e515591ac5cda10c42b42f8ff76457a0(
|
|
41758
|
+
tag_name: builtins.str,
|
|
41759
|
+
tag_value: builtins.str,
|
|
41760
|
+
) -> None:
|
|
41761
|
+
"""Type checking stubs"""
|
|
41762
|
+
pass
|
|
41763
|
+
|
|
40399
41764
|
def _typecheckingstub__4b8bfc7ce675d439b6218b58ddc312a45cfe87ee7179a489f0cc18c67560faac(
|
|
40400
41765
|
transform: builtins.str,
|
|
40401
41766
|
) -> None:
|
|
@@ -40439,6 +41804,12 @@ def _typecheckingstub__1f4a18c1188f55ad7c4058f8aace9f6ebb7b7e9b596dd51616883b350
|
|
|
40439
41804
|
"""Type checking stubs"""
|
|
40440
41805
|
pass
|
|
40441
41806
|
|
|
41807
|
+
def _typecheckingstub__25f39c18a619c464f8e693cb5c5847cdf10f847438cac04672be8ba78d2b49d0(
|
|
41808
|
+
tag_name: builtins.str,
|
|
41809
|
+
) -> None:
|
|
41810
|
+
"""Type checking stubs"""
|
|
41811
|
+
pass
|
|
41812
|
+
|
|
40442
41813
|
def _typecheckingstub__363ae1d6a0b84b63acd48fd337e70f58cc140887b9d61b4f55f925b3a7e2cded(
|
|
40443
41814
|
old_id: builtins.str,
|
|
40444
41815
|
new_id: builtins.str,
|
|
@@ -40486,6 +41857,7 @@ def _typecheckingstub__a36aaf4edf2967c8ed36d2cad24d023f14778db721379dffbd74eb6dd
|
|
|
40486
41857
|
env: typing.Optional[typing.Union[Environment, typing.Dict[builtins.str, typing.Any]]] = None,
|
|
40487
41858
|
notification_arns: typing.Optional[typing.Sequence[builtins.str]] = None,
|
|
40488
41859
|
permissions_boundary: typing.Optional[PermissionsBoundary] = None,
|
|
41860
|
+
property_injectors: typing.Optional[typing.Sequence[IPropertyInjector]] = None,
|
|
40489
41861
|
stack_name: typing.Optional[builtins.str] = None,
|
|
40490
41862
|
suppress_template_indentation: typing.Optional[builtins.bool] = None,
|
|
40491
41863
|
synthesizer: typing.Optional[IStackSynthesizer] = None,
|
|
@@ -40573,6 +41945,7 @@ def _typecheckingstub__c0677d374e192ff51310cb5059d45186fd8a854f0c4f6485ff9ec9692
|
|
|
40573
41945
|
outdir: typing.Optional[builtins.str] = None,
|
|
40574
41946
|
permissions_boundary: typing.Optional[PermissionsBoundary] = None,
|
|
40575
41947
|
policy_validation_beta1: typing.Optional[typing.Sequence[IPolicyValidationPluginBeta1]] = None,
|
|
41948
|
+
property_injectors: typing.Optional[typing.Sequence[IPropertyInjector]] = None,
|
|
40576
41949
|
stage_name: typing.Optional[builtins.str] = None,
|
|
40577
41950
|
) -> None:
|
|
40578
41951
|
"""Type checking stubs"""
|
|
@@ -40596,6 +41969,7 @@ def _typecheckingstub__c519a1aa0534921a8dfdfa69ddc24b52c09a7eb52fc889f7fb96b737e
|
|
|
40596
41969
|
outdir: typing.Optional[builtins.str] = None,
|
|
40597
41970
|
permissions_boundary: typing.Optional[PermissionsBoundary] = None,
|
|
40598
41971
|
policy_validation_beta1: typing.Optional[typing.Sequence[IPolicyValidationPluginBeta1]] = None,
|
|
41972
|
+
property_injectors: typing.Optional[typing.Sequence[IPropertyInjector]] = None,
|
|
40599
41973
|
stage_name: typing.Optional[builtins.str] = None,
|
|
40600
41974
|
) -> None:
|
|
40601
41975
|
"""Type checking stubs"""
|
|
@@ -42373,6 +43747,12 @@ def _typecheckingstub__dce0fd20685d4b7457e08a1567eb5aa8c53335612222538272b7d69db
|
|
|
42373
43747
|
"""Type checking stubs"""
|
|
42374
43748
|
pass
|
|
42375
43749
|
|
|
43750
|
+
def _typecheckingstub__4eeec3aad8660d3f77c7f5fd848b52abf32a847311801373080bbfe35642315a(
|
|
43751
|
+
absolute_directory_path: builtins.str,
|
|
43752
|
+
) -> None:
|
|
43753
|
+
"""Type checking stubs"""
|
|
43754
|
+
pass
|
|
43755
|
+
|
|
42376
43756
|
def _typecheckingstub__a94afdff9185f6eef56446b1ee12df7551a9ea60e1fd57e80213dc039cb3980c(
|
|
42377
43757
|
absolute_file_path: builtins.str,
|
|
42378
43758
|
) -> None:
|
|
@@ -42392,6 +43772,12 @@ def _typecheckingstub__41215ad4567a0e20a39ebe81e961b4c04ce243413f01303ac836fdb48
|
|
|
42392
43772
|
"""Type checking stubs"""
|
|
42393
43773
|
pass
|
|
42394
43774
|
|
|
43775
|
+
def _typecheckingstub__e0e824f5e018cd48b279cd34fa185b0a533eed88eee2e88ebb3868389b89b517(
|
|
43776
|
+
absolute_directory_path: builtins.str,
|
|
43777
|
+
) -> None:
|
|
43778
|
+
"""Type checking stubs"""
|
|
43779
|
+
pass
|
|
43780
|
+
|
|
42395
43781
|
def _typecheckingstub__e836fbc1866005d0d4acf04190bb860cb94af53b18c0a2f12af8835f961ccedd(
|
|
42396
43782
|
absolute_file_path: builtins.str,
|
|
42397
43783
|
) -> None:
|
|
@@ -42542,3 +43928,6 @@ def _typecheckingstub__47e469f0015340593bcbbe8474c853bc170a6dfd3bcb31e6795042408
|
|
|
42542
43928
|
) -> None:
|
|
42543
43929
|
"""Type checking stubs"""
|
|
42544
43930
|
pass
|
|
43931
|
+
|
|
43932
|
+
for cls in [IAnyProducer, IAspect, IAsset, IBoundStackSynthesizer, ICfnConditionExpression, ICfnResourceOptions, ICfnRuleConditionExpression, IEnvironmentAware, IFragmentConcatenator, IInspectable, IListProducer, ILocalBundling, INumberProducer, IPolicyValidationContextBeta1, IPolicyValidationPluginBeta1, IPostProcessor, IPropertyInjector, IResolvable, IResolveContext, IResource, IReusableStackSynthesizer, IStableAnyProducer, IStableListProducer, IStableNumberProducer, IStableStringProducer, IStackSynthesizer, IStringProducer, ISynthesisSession, ITaggable, ITaggableV2, ITemplateOptions, ITokenMapper, ITokenResolver]:
|
|
43933
|
+
typing.cast(typing.Any, cls).__protocol_attrs__ = typing.cast(typing.Any, cls).__protocol_attrs__ - set(['__jsii_proxy_class__', '__jsii_type__'])
|