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/aws_pcs/__init__.py
CHANGED
|
@@ -76,15 +76,25 @@ from .. import (
|
|
|
76
76
|
TagManager as _TagManager_0a598cb3,
|
|
77
77
|
TreeInspector as _TreeInspector_488e0dd5,
|
|
78
78
|
)
|
|
79
|
+
from ..interfaces.aws_pcs import (
|
|
80
|
+
ClusterReference as _ClusterReference_ee361793,
|
|
81
|
+
ComputeNodeGroupReference as _ComputeNodeGroupReference_25cba40d,
|
|
82
|
+
IClusterRef as _IClusterRef_a438c263,
|
|
83
|
+
IComputeNodeGroupRef as _IComputeNodeGroupRef_61cc8303,
|
|
84
|
+
IQueueRef as _IQueueRef_533cbfaf,
|
|
85
|
+
QueueReference as _QueueReference_4d04703d,
|
|
86
|
+
)
|
|
79
87
|
|
|
80
88
|
|
|
81
|
-
@jsii.implements(_IInspectable_c2943556, _ITaggableV2_4e6798f8)
|
|
89
|
+
@jsii.implements(_IInspectable_c2943556, _IClusterRef_a438c263, _ITaggableV2_4e6798f8)
|
|
82
90
|
class CfnCluster(
|
|
83
91
|
_CfnResource_9df397a6,
|
|
84
92
|
metaclass=jsii.JSIIMeta,
|
|
85
93
|
jsii_type="aws-cdk-lib.aws_pcs.CfnCluster",
|
|
86
94
|
):
|
|
87
|
-
'''
|
|
95
|
+
'''Creates an AWS PCS cluster resource.
|
|
96
|
+
|
|
97
|
+
For more information, see `Creating a cluster in AWS Parallel Computing Service <https://docs.aws.amazon.com/pcs/latest/userguide/working-with_clusters_create.html>`_ in the *AWS PCS User Guide* .
|
|
88
98
|
|
|
89
99
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pcs-cluster.html
|
|
90
100
|
:cloudformationResource: AWS::PCS::Cluster
|
|
@@ -98,6 +108,7 @@ class CfnCluster(
|
|
|
98
108
|
|
|
99
109
|
cfn_cluster = pcs.CfnCluster(self, "MyCfnCluster",
|
|
100
110
|
networking=pcs.CfnCluster.NetworkingProperty(
|
|
111
|
+
network_type="networkType",
|
|
101
112
|
security_group_ids=["securityGroupIds"],
|
|
102
113
|
subnet_ids=["subnetIds"]
|
|
103
114
|
),
|
|
@@ -110,6 +121,12 @@ class CfnCluster(
|
|
|
110
121
|
# the properties below are optional
|
|
111
122
|
name="name",
|
|
112
123
|
slurm_configuration=pcs.CfnCluster.SlurmConfigurationProperty(
|
|
124
|
+
accounting=pcs.CfnCluster.AccountingProperty(
|
|
125
|
+
mode="mode",
|
|
126
|
+
|
|
127
|
+
# the properties below are optional
|
|
128
|
+
default_purge_time_in_days=123
|
|
129
|
+
),
|
|
113
130
|
auth_key=pcs.CfnCluster.AuthKeyProperty(
|
|
114
131
|
secret_arn="secretArn",
|
|
115
132
|
secret_version="secretVersion"
|
|
@@ -138,12 +155,13 @@ class CfnCluster(
|
|
|
138
155
|
slurm_configuration: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnCluster.SlurmConfigurationProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
|
|
139
156
|
tags: typing.Optional[typing.Mapping[builtins.str, builtins.str]] = None,
|
|
140
157
|
) -> None:
|
|
141
|
-
'''
|
|
158
|
+
'''Create a new ``AWS::PCS::Cluster``.
|
|
159
|
+
|
|
142
160
|
:param scope: Scope in which this resource is defined.
|
|
143
161
|
:param id: Construct identifier for this resource (unique in its scope).
|
|
144
162
|
:param networking: The networking configuration for the cluster's control plane.
|
|
145
163
|
:param scheduler: The cluster management and job scheduling software associated with the cluster.
|
|
146
|
-
:param size: The size of the cluster.
|
|
164
|
+
:param size: The size of the cluster. - ``SMALL`` : 32 compute nodes and 256 jobs - ``MEDIUM`` : 512 compute nodes and 8192 jobs - ``LARGE`` : 2048 compute nodes and 16,384 jobs
|
|
147
165
|
:param name: The name that identifies the cluster.
|
|
148
166
|
:param slurm_configuration: Additional options related to the Slurm scheduler.
|
|
149
167
|
:param tags: 1 or more tags added to the resource. Each tag consists of a tag key and tag value. The tag value is optional and can be an empty string.
|
|
@@ -234,7 +252,9 @@ class CfnCluster(
|
|
|
234
252
|
def attr_status(self) -> builtins.str:
|
|
235
253
|
'''The provisioning status of the cluster.
|
|
236
254
|
|
|
237
|
-
|
|
255
|
+
.. epigraph::
|
|
256
|
+
|
|
257
|
+
The provisioning status doesn't indicate the overall health of the cluster. > The resource enters the ``SUSPENDING`` and ``SUSPENDED`` states when the scheduler is beyond end of life and we have suspended the cluster. When in these states, you can't use the cluster. The cluster controller is down and all compute instances are terminated. The resources still count toward your service quotas. You can delete a resource if its status is ``SUSPENDED`` . For more information, see `Frequently asked questions about Slurm versions in AWS PCS <https://docs.aws.amazon.com//pcs/latest/userguide/slurm-versions_faq.html>`_ in the *AWS PCS User Guide* .
|
|
238
258
|
|
|
239
259
|
:cloudformationAttribute: Status
|
|
240
260
|
'''
|
|
@@ -251,6 +271,12 @@ class CfnCluster(
|
|
|
251
271
|
def _cfn_properties(self) -> typing.Mapping[builtins.str, typing.Any]:
|
|
252
272
|
return typing.cast(typing.Mapping[builtins.str, typing.Any], jsii.get(self, "cfnProperties"))
|
|
253
273
|
|
|
274
|
+
@builtins.property
|
|
275
|
+
@jsii.member(jsii_name="clusterRef")
|
|
276
|
+
def cluster_ref(self) -> _ClusterReference_ee361793:
|
|
277
|
+
'''A reference to a Cluster resource.'''
|
|
278
|
+
return typing.cast(_ClusterReference_ee361793, jsii.get(self, "clusterRef"))
|
|
279
|
+
|
|
254
280
|
@builtins.property
|
|
255
281
|
@jsii.member(jsii_name="networking")
|
|
256
282
|
def networking(
|
|
@@ -347,6 +373,95 @@ class CfnCluster(
|
|
|
347
373
|
check_type(argname="argument value", value=value, expected_type=type_hints["value"])
|
|
348
374
|
jsii.set(self, "tags", value) # pyright: ignore[reportArgumentType]
|
|
349
375
|
|
|
376
|
+
@jsii.data_type(
|
|
377
|
+
jsii_type="aws-cdk-lib.aws_pcs.CfnCluster.AccountingProperty",
|
|
378
|
+
jsii_struct_bases=[],
|
|
379
|
+
name_mapping={
|
|
380
|
+
"mode": "mode",
|
|
381
|
+
"default_purge_time_in_days": "defaultPurgeTimeInDays",
|
|
382
|
+
},
|
|
383
|
+
)
|
|
384
|
+
class AccountingProperty:
|
|
385
|
+
def __init__(
|
|
386
|
+
self,
|
|
387
|
+
*,
|
|
388
|
+
mode: builtins.str,
|
|
389
|
+
default_purge_time_in_days: typing.Optional[jsii.Number] = None,
|
|
390
|
+
) -> None:
|
|
391
|
+
'''The accounting configuration includes configurable settings for Slurm accounting.
|
|
392
|
+
|
|
393
|
+
:param mode: The default value for ``mode`` is ``STANDARD`` . A value of ``STANDARD`` means Slurm accounting is enabled. Default: - "NONE"
|
|
394
|
+
:param default_purge_time_in_days: The default value for all purge settings for ``slurmdbd.conf`` . For more information, see the `slurmdbd.conf documentation at SchedMD <https://docs.aws.amazon.com/https://slurm.schedmd.com/slurmdbd.conf.html>`_ . The default value for ``defaultPurgeTimeInDays`` is ``-1`` . A value of ``-1`` means there is no purge time and records persist as long as the cluster exists. .. epigraph:: ``0`` isn't a valid value. Default: - -1
|
|
395
|
+
|
|
396
|
+
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pcs-cluster-accounting.html
|
|
397
|
+
:exampleMetadata: fixture=_generated
|
|
398
|
+
|
|
399
|
+
Example::
|
|
400
|
+
|
|
401
|
+
# The code below shows an example of how to instantiate this type.
|
|
402
|
+
# The values are placeholders you should change.
|
|
403
|
+
from aws_cdk import aws_pcs as pcs
|
|
404
|
+
|
|
405
|
+
accounting_property = pcs.CfnCluster.AccountingProperty(
|
|
406
|
+
mode="mode",
|
|
407
|
+
|
|
408
|
+
# the properties below are optional
|
|
409
|
+
default_purge_time_in_days=123
|
|
410
|
+
)
|
|
411
|
+
'''
|
|
412
|
+
if __debug__:
|
|
413
|
+
type_hints = typing.get_type_hints(_typecheckingstub__1371c6dd1b40632a0c832b301d232842e616e6e2e20240f16e1a18c257dec328)
|
|
414
|
+
check_type(argname="argument mode", value=mode, expected_type=type_hints["mode"])
|
|
415
|
+
check_type(argname="argument default_purge_time_in_days", value=default_purge_time_in_days, expected_type=type_hints["default_purge_time_in_days"])
|
|
416
|
+
self._values: typing.Dict[builtins.str, typing.Any] = {
|
|
417
|
+
"mode": mode,
|
|
418
|
+
}
|
|
419
|
+
if default_purge_time_in_days is not None:
|
|
420
|
+
self._values["default_purge_time_in_days"] = default_purge_time_in_days
|
|
421
|
+
|
|
422
|
+
@builtins.property
|
|
423
|
+
def mode(self) -> builtins.str:
|
|
424
|
+
'''The default value for ``mode`` is ``STANDARD`` .
|
|
425
|
+
|
|
426
|
+
A value of ``STANDARD`` means Slurm accounting is enabled.
|
|
427
|
+
|
|
428
|
+
:default: - "NONE"
|
|
429
|
+
|
|
430
|
+
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pcs-cluster-accounting.html#cfn-pcs-cluster-accounting-mode
|
|
431
|
+
'''
|
|
432
|
+
result = self._values.get("mode")
|
|
433
|
+
assert result is not None, "Required property 'mode' is missing"
|
|
434
|
+
return typing.cast(builtins.str, result)
|
|
435
|
+
|
|
436
|
+
@builtins.property
|
|
437
|
+
def default_purge_time_in_days(self) -> typing.Optional[jsii.Number]:
|
|
438
|
+
'''The default value for all purge settings for ``slurmdbd.conf`` . For more information, see the `slurmdbd.conf documentation at SchedMD <https://docs.aws.amazon.com/https://slurm.schedmd.com/slurmdbd.conf.html>`_ .
|
|
439
|
+
|
|
440
|
+
The default value for ``defaultPurgeTimeInDays`` is ``-1`` .
|
|
441
|
+
|
|
442
|
+
A value of ``-1`` means there is no purge time and records persist as long as the cluster exists.
|
|
443
|
+
.. epigraph::
|
|
444
|
+
|
|
445
|
+
``0`` isn't a valid value.
|
|
446
|
+
|
|
447
|
+
:default: - -1
|
|
448
|
+
|
|
449
|
+
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pcs-cluster-accounting.html#cfn-pcs-cluster-accounting-defaultpurgetimeindays
|
|
450
|
+
'''
|
|
451
|
+
result = self._values.get("default_purge_time_in_days")
|
|
452
|
+
return typing.cast(typing.Optional[jsii.Number], result)
|
|
453
|
+
|
|
454
|
+
def __eq__(self, rhs: typing.Any) -> builtins.bool:
|
|
455
|
+
return isinstance(rhs, self.__class__) and rhs._values == self._values
|
|
456
|
+
|
|
457
|
+
def __ne__(self, rhs: typing.Any) -> builtins.bool:
|
|
458
|
+
return not (rhs == self)
|
|
459
|
+
|
|
460
|
+
def __repr__(self) -> str:
|
|
461
|
+
return "AccountingProperty(%s)" % ", ".join(
|
|
462
|
+
k + "=" + repr(v) for k, v in self._values.items()
|
|
463
|
+
)
|
|
464
|
+
|
|
350
465
|
@jsii.data_type(
|
|
351
466
|
jsii_type="aws-cdk-lib.aws_pcs.CfnCluster.AuthKeyProperty",
|
|
352
467
|
jsii_struct_bases=[],
|
|
@@ -425,6 +540,7 @@ class CfnCluster(
|
|
|
425
540
|
"port": "port",
|
|
426
541
|
"private_ip_address": "privateIpAddress",
|
|
427
542
|
"type": "type",
|
|
543
|
+
"ipv6_address": "ipv6Address",
|
|
428
544
|
"public_ip_address": "publicIpAddress",
|
|
429
545
|
},
|
|
430
546
|
)
|
|
@@ -435,14 +551,16 @@ class CfnCluster(
|
|
|
435
551
|
port: builtins.str,
|
|
436
552
|
private_ip_address: builtins.str,
|
|
437
553
|
type: builtins.str,
|
|
554
|
+
ipv6_address: typing.Optional[builtins.str] = None,
|
|
438
555
|
public_ip_address: typing.Optional[builtins.str] = None,
|
|
439
556
|
) -> None:
|
|
440
557
|
'''An endpoint available for interaction with the scheduler.
|
|
441
558
|
|
|
442
|
-
:param port: The endpoint's connection port number.
|
|
443
|
-
:param private_ip_address:
|
|
559
|
+
:param port: The endpoint's connection port number. Example: ``1234``
|
|
560
|
+
:param private_ip_address: For clusters that use IPv4, this is the endpoint's private IP address. Example: ``10.1.2.3`` For clusters configured to use IPv6, this is an empty string.
|
|
444
561
|
:param type: Indicates the type of endpoint running at the specific IP address.
|
|
445
|
-
:param
|
|
562
|
+
:param ipv6_address: The endpoint's IPv6 address. Example: ``2001:db8::1``
|
|
563
|
+
:param public_ip_address: The endpoint's public IP address. Example: ``192.0.2.1``
|
|
446
564
|
|
|
447
565
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pcs-cluster-endpoint.html
|
|
448
566
|
:exampleMetadata: fixture=_generated
|
|
@@ -459,6 +577,7 @@ class CfnCluster(
|
|
|
459
577
|
type="type",
|
|
460
578
|
|
|
461
579
|
# the properties below are optional
|
|
580
|
+
ipv6_address="ipv6Address",
|
|
462
581
|
public_ip_address="publicIpAddress"
|
|
463
582
|
)
|
|
464
583
|
'''
|
|
@@ -467,12 +586,15 @@ class CfnCluster(
|
|
|
467
586
|
check_type(argname="argument port", value=port, expected_type=type_hints["port"])
|
|
468
587
|
check_type(argname="argument private_ip_address", value=private_ip_address, expected_type=type_hints["private_ip_address"])
|
|
469
588
|
check_type(argname="argument type", value=type, expected_type=type_hints["type"])
|
|
589
|
+
check_type(argname="argument ipv6_address", value=ipv6_address, expected_type=type_hints["ipv6_address"])
|
|
470
590
|
check_type(argname="argument public_ip_address", value=public_ip_address, expected_type=type_hints["public_ip_address"])
|
|
471
591
|
self._values: typing.Dict[builtins.str, typing.Any] = {
|
|
472
592
|
"port": port,
|
|
473
593
|
"private_ip_address": private_ip_address,
|
|
474
594
|
"type": type,
|
|
475
595
|
}
|
|
596
|
+
if ipv6_address is not None:
|
|
597
|
+
self._values["ipv6_address"] = ipv6_address
|
|
476
598
|
if public_ip_address is not None:
|
|
477
599
|
self._values["public_ip_address"] = public_ip_address
|
|
478
600
|
|
|
@@ -480,6 +602,8 @@ class CfnCluster(
|
|
|
480
602
|
def port(self) -> builtins.str:
|
|
481
603
|
'''The endpoint's connection port number.
|
|
482
604
|
|
|
605
|
+
Example: ``1234``
|
|
606
|
+
|
|
483
607
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pcs-cluster-endpoint.html#cfn-pcs-cluster-endpoint-port
|
|
484
608
|
'''
|
|
485
609
|
result = self._values.get("port")
|
|
@@ -488,7 +612,11 @@ class CfnCluster(
|
|
|
488
612
|
|
|
489
613
|
@builtins.property
|
|
490
614
|
def private_ip_address(self) -> builtins.str:
|
|
491
|
-
'''
|
|
615
|
+
'''For clusters that use IPv4, this is the endpoint's private IP address.
|
|
616
|
+
|
|
617
|
+
Example: ``10.1.2.3``
|
|
618
|
+
|
|
619
|
+
For clusters configured to use IPv6, this is an empty string.
|
|
492
620
|
|
|
493
621
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pcs-cluster-endpoint.html#cfn-pcs-cluster-endpoint-privateipaddress
|
|
494
622
|
'''
|
|
@@ -506,10 +634,23 @@ class CfnCluster(
|
|
|
506
634
|
assert result is not None, "Required property 'type' is missing"
|
|
507
635
|
return typing.cast(builtins.str, result)
|
|
508
636
|
|
|
637
|
+
@builtins.property
|
|
638
|
+
def ipv6_address(self) -> typing.Optional[builtins.str]:
|
|
639
|
+
'''The endpoint's IPv6 address.
|
|
640
|
+
|
|
641
|
+
Example: ``2001:db8::1``
|
|
642
|
+
|
|
643
|
+
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pcs-cluster-endpoint.html#cfn-pcs-cluster-endpoint-ipv6address
|
|
644
|
+
'''
|
|
645
|
+
result = self._values.get("ipv6_address")
|
|
646
|
+
return typing.cast(typing.Optional[builtins.str], result)
|
|
647
|
+
|
|
509
648
|
@builtins.property
|
|
510
649
|
def public_ip_address(self) -> typing.Optional[builtins.str]:
|
|
511
650
|
'''The endpoint's public IP address.
|
|
512
651
|
|
|
652
|
+
Example: ``192.0.2.1``
|
|
653
|
+
|
|
513
654
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pcs-cluster-endpoint.html#cfn-pcs-cluster-endpoint-publicipaddress
|
|
514
655
|
'''
|
|
515
656
|
result = self._values.get("public_ip_address")
|
|
@@ -538,7 +679,7 @@ class CfnCluster(
|
|
|
538
679
|
code: typing.Optional[builtins.str] = None,
|
|
539
680
|
message: typing.Optional[builtins.str] = None,
|
|
540
681
|
) -> None:
|
|
541
|
-
'''An error that occurred during resource
|
|
682
|
+
'''An error that occurred during resource creation.
|
|
542
683
|
|
|
543
684
|
:param code: The short-form error code.
|
|
544
685
|
:param message: The detailed error information.
|
|
@@ -600,6 +741,7 @@ class CfnCluster(
|
|
|
600
741
|
jsii_type="aws-cdk-lib.aws_pcs.CfnCluster.NetworkingProperty",
|
|
601
742
|
jsii_struct_bases=[],
|
|
602
743
|
name_mapping={
|
|
744
|
+
"network_type": "networkType",
|
|
603
745
|
"security_group_ids": "securityGroupIds",
|
|
604
746
|
"subnet_ids": "subnetIds",
|
|
605
747
|
},
|
|
@@ -608,13 +750,15 @@ class CfnCluster(
|
|
|
608
750
|
def __init__(
|
|
609
751
|
self,
|
|
610
752
|
*,
|
|
753
|
+
network_type: typing.Optional[builtins.str] = None,
|
|
611
754
|
security_group_ids: typing.Optional[typing.Sequence[builtins.str]] = None,
|
|
612
755
|
subnet_ids: typing.Optional[typing.Sequence[builtins.str]] = None,
|
|
613
756
|
) -> None:
|
|
614
|
-
'''
|
|
757
|
+
'''The networking configuration for the cluster's control plane.
|
|
615
758
|
|
|
616
|
-
:param
|
|
617
|
-
:param
|
|
759
|
+
:param network_type: The IP address version the cluster uses. The default is ``IPV4`` .
|
|
760
|
+
:param security_group_ids: The list of security group IDs associated with the Elastic Network Interface (ENI) created in subnets. The following rules are required: - Inbound rule 1 - Protocol: All - Ports: All - Source: Self - Outbound rule 1 - Protocol: All - Ports: All - Destination: 0.0.0.0/0 (IPv4) or ::/0 (IPv6) - Outbound rule 2 - Protocol: All - Ports: All - Destination: Self
|
|
761
|
+
:param subnet_ids: The ID of the subnet where AWS PCS creates an Elastic Network Interface (ENI) to enable communication between managed controllers and AWS PCS resources. The subnet must have an available IP address, cannot reside in AWS Outposts , AWS Wavelength , or an AWS Local Zone. Example: ``subnet-abcd1234``
|
|
618
762
|
|
|
619
763
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pcs-cluster-networking.html
|
|
620
764
|
:exampleMetadata: fixture=_generated
|
|
@@ -626,24 +770,54 @@ class CfnCluster(
|
|
|
626
770
|
from aws_cdk import aws_pcs as pcs
|
|
627
771
|
|
|
628
772
|
networking_property = pcs.CfnCluster.NetworkingProperty(
|
|
773
|
+
network_type="networkType",
|
|
629
774
|
security_group_ids=["securityGroupIds"],
|
|
630
775
|
subnet_ids=["subnetIds"]
|
|
631
776
|
)
|
|
632
777
|
'''
|
|
633
778
|
if __debug__:
|
|
634
779
|
type_hints = typing.get_type_hints(_typecheckingstub__82c7f3d28e2ed0d063467ea787c6cfc31c28d4c5f26ef1ddf71940887dea9d1f)
|
|
780
|
+
check_type(argname="argument network_type", value=network_type, expected_type=type_hints["network_type"])
|
|
635
781
|
check_type(argname="argument security_group_ids", value=security_group_ids, expected_type=type_hints["security_group_ids"])
|
|
636
782
|
check_type(argname="argument subnet_ids", value=subnet_ids, expected_type=type_hints["subnet_ids"])
|
|
637
783
|
self._values: typing.Dict[builtins.str, typing.Any] = {}
|
|
784
|
+
if network_type is not None:
|
|
785
|
+
self._values["network_type"] = network_type
|
|
638
786
|
if security_group_ids is not None:
|
|
639
787
|
self._values["security_group_ids"] = security_group_ids
|
|
640
788
|
if subnet_ids is not None:
|
|
641
789
|
self._values["subnet_ids"] = subnet_ids
|
|
642
790
|
|
|
791
|
+
@builtins.property
|
|
792
|
+
def network_type(self) -> typing.Optional[builtins.str]:
|
|
793
|
+
'''The IP address version the cluster uses.
|
|
794
|
+
|
|
795
|
+
The default is ``IPV4`` .
|
|
796
|
+
|
|
797
|
+
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pcs-cluster-networking.html#cfn-pcs-cluster-networking-networktype
|
|
798
|
+
'''
|
|
799
|
+
result = self._values.get("network_type")
|
|
800
|
+
return typing.cast(typing.Optional[builtins.str], result)
|
|
801
|
+
|
|
643
802
|
@builtins.property
|
|
644
803
|
def security_group_ids(self) -> typing.Optional[typing.List[builtins.str]]:
|
|
645
804
|
'''The list of security group IDs associated with the Elastic Network Interface (ENI) created in subnets.
|
|
646
805
|
|
|
806
|
+
The following rules are required:
|
|
807
|
+
|
|
808
|
+
- Inbound rule 1
|
|
809
|
+
- Protocol: All
|
|
810
|
+
- Ports: All
|
|
811
|
+
- Source: Self
|
|
812
|
+
- Outbound rule 1
|
|
813
|
+
- Protocol: All
|
|
814
|
+
- Ports: All
|
|
815
|
+
- Destination: 0.0.0.0/0 (IPv4) or ::/0 (IPv6)
|
|
816
|
+
- Outbound rule 2
|
|
817
|
+
- Protocol: All
|
|
818
|
+
- Ports: All
|
|
819
|
+
- Destination: Self
|
|
820
|
+
|
|
647
821
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pcs-cluster-networking.html#cfn-pcs-cluster-networking-securitygroupids
|
|
648
822
|
'''
|
|
649
823
|
result = self._values.get("security_group_ids")
|
|
@@ -651,9 +825,11 @@ class CfnCluster(
|
|
|
651
825
|
|
|
652
826
|
@builtins.property
|
|
653
827
|
def subnet_ids(self) -> typing.Optional[typing.List[builtins.str]]:
|
|
654
|
-
'''The
|
|
828
|
+
'''The ID of the subnet where AWS PCS creates an Elastic Network Interface (ENI) to enable communication between managed controllers and AWS PCS resources.
|
|
655
829
|
|
|
656
|
-
The subnet must have an available IP address, cannot reside in AWS Outposts, AWS Wavelength, or an AWS Local Zone.
|
|
830
|
+
The subnet must have an available IP address, cannot reside in AWS Outposts , AWS Wavelength , or an AWS Local Zone.
|
|
831
|
+
|
|
832
|
+
Example: ``subnet-abcd1234``
|
|
657
833
|
|
|
658
834
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pcs-cluster-networking.html#cfn-pcs-cluster-networking-subnetids
|
|
659
835
|
'''
|
|
@@ -681,7 +857,7 @@ class CfnCluster(
|
|
|
681
857
|
'''The cluster management and job scheduling software associated with the cluster.
|
|
682
858
|
|
|
683
859
|
:param type: The software AWS PCS uses to manage cluster scaling and job scheduling.
|
|
684
|
-
:param version: The version of the specified scheduling software that AWS PCS uses to manage cluster scaling and job scheduling.
|
|
860
|
+
:param version: The version of the specified scheduling software that AWS PCS uses to manage cluster scaling and job scheduling. For more information, see `Slurm versions in AWS PCS <https://docs.aws.amazon.com/pcs/latest/userguide/slurm-versions.html>`_ in the *AWS PCS User Guide* . Valid Values: ``23.11 | 24.05 | 24.11``
|
|
685
861
|
|
|
686
862
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pcs-cluster-scheduler.html
|
|
687
863
|
:exampleMetadata: fixture=_generated
|
|
@@ -720,6 +896,10 @@ class CfnCluster(
|
|
|
720
896
|
def version(self) -> builtins.str:
|
|
721
897
|
'''The version of the specified scheduling software that AWS PCS uses to manage cluster scaling and job scheduling.
|
|
722
898
|
|
|
899
|
+
For more information, see `Slurm versions in AWS PCS <https://docs.aws.amazon.com/pcs/latest/userguide/slurm-versions.html>`_ in the *AWS PCS User Guide* .
|
|
900
|
+
|
|
901
|
+
Valid Values: ``23.11 | 24.05 | 24.11``
|
|
902
|
+
|
|
723
903
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pcs-cluster-scheduler.html#cfn-pcs-cluster-scheduler-version
|
|
724
904
|
'''
|
|
725
905
|
result = self._values.get("version")
|
|
@@ -741,6 +921,7 @@ class CfnCluster(
|
|
|
741
921
|
jsii_type="aws-cdk-lib.aws_pcs.CfnCluster.SlurmConfigurationProperty",
|
|
742
922
|
jsii_struct_bases=[],
|
|
743
923
|
name_mapping={
|
|
924
|
+
"accounting": "accounting",
|
|
744
925
|
"auth_key": "authKey",
|
|
745
926
|
"scale_down_idle_time_in_seconds": "scaleDownIdleTimeInSeconds",
|
|
746
927
|
"slurm_custom_settings": "slurmCustomSettings",
|
|
@@ -750,14 +931,16 @@ class CfnCluster(
|
|
|
750
931
|
def __init__(
|
|
751
932
|
self,
|
|
752
933
|
*,
|
|
934
|
+
accounting: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnCluster.AccountingProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
|
|
753
935
|
auth_key: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnCluster.AuthKeyProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
|
|
754
936
|
scale_down_idle_time_in_seconds: typing.Optional[jsii.Number] = None,
|
|
755
937
|
slurm_custom_settings: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union["CfnCluster.SlurmCustomSettingProperty", typing.Dict[builtins.str, typing.Any]]]]]] = None,
|
|
756
938
|
) -> None:
|
|
757
939
|
'''Additional options related to the Slurm scheduler.
|
|
758
940
|
|
|
759
|
-
:param
|
|
760
|
-
:param
|
|
941
|
+
:param accounting: The accounting configuration includes configurable settings for Slurm accounting.
|
|
942
|
+
:param auth_key: The shared Slurm key for authentication, also known as the *cluster secret* .
|
|
943
|
+
:param scale_down_idle_time_in_seconds: The time (in seconds) before an idle node is scaled down. Default: ``600``
|
|
761
944
|
:param slurm_custom_settings: Additional Slurm-specific configuration that directly maps to Slurm settings.
|
|
762
945
|
|
|
763
946
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pcs-cluster-slurmconfiguration.html
|
|
@@ -770,6 +953,12 @@ class CfnCluster(
|
|
|
770
953
|
from aws_cdk import aws_pcs as pcs
|
|
771
954
|
|
|
772
955
|
slurm_configuration_property = pcs.CfnCluster.SlurmConfigurationProperty(
|
|
956
|
+
accounting=pcs.CfnCluster.AccountingProperty(
|
|
957
|
+
mode="mode",
|
|
958
|
+
|
|
959
|
+
# the properties below are optional
|
|
960
|
+
default_purge_time_in_days=123
|
|
961
|
+
),
|
|
773
962
|
auth_key=pcs.CfnCluster.AuthKeyProperty(
|
|
774
963
|
secret_arn="secretArn",
|
|
775
964
|
secret_version="secretVersion"
|
|
@@ -783,10 +972,13 @@ class CfnCluster(
|
|
|
783
972
|
'''
|
|
784
973
|
if __debug__:
|
|
785
974
|
type_hints = typing.get_type_hints(_typecheckingstub__e6bb8855a5cf237041c92e56f09fd1b1d2d40c49f363bfde280100fbfd6f137f)
|
|
975
|
+
check_type(argname="argument accounting", value=accounting, expected_type=type_hints["accounting"])
|
|
786
976
|
check_type(argname="argument auth_key", value=auth_key, expected_type=type_hints["auth_key"])
|
|
787
977
|
check_type(argname="argument scale_down_idle_time_in_seconds", value=scale_down_idle_time_in_seconds, expected_type=type_hints["scale_down_idle_time_in_seconds"])
|
|
788
978
|
check_type(argname="argument slurm_custom_settings", value=slurm_custom_settings, expected_type=type_hints["slurm_custom_settings"])
|
|
789
979
|
self._values: typing.Dict[builtins.str, typing.Any] = {}
|
|
980
|
+
if accounting is not None:
|
|
981
|
+
self._values["accounting"] = accounting
|
|
790
982
|
if auth_key is not None:
|
|
791
983
|
self._values["auth_key"] = auth_key
|
|
792
984
|
if scale_down_idle_time_in_seconds is not None:
|
|
@@ -794,11 +986,22 @@ class CfnCluster(
|
|
|
794
986
|
if slurm_custom_settings is not None:
|
|
795
987
|
self._values["slurm_custom_settings"] = slurm_custom_settings
|
|
796
988
|
|
|
989
|
+
@builtins.property
|
|
990
|
+
def accounting(
|
|
991
|
+
self,
|
|
992
|
+
) -> typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnCluster.AccountingProperty"]]:
|
|
993
|
+
'''The accounting configuration includes configurable settings for Slurm accounting.
|
|
994
|
+
|
|
995
|
+
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pcs-cluster-slurmconfiguration.html#cfn-pcs-cluster-slurmconfiguration-accounting
|
|
996
|
+
'''
|
|
997
|
+
result = self._values.get("accounting")
|
|
998
|
+
return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnCluster.AccountingProperty"]], result)
|
|
999
|
+
|
|
797
1000
|
@builtins.property
|
|
798
1001
|
def auth_key(
|
|
799
1002
|
self,
|
|
800
1003
|
) -> typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnCluster.AuthKeyProperty"]]:
|
|
801
|
-
'''The shared Slurm key for authentication, also known as the cluster secret.
|
|
1004
|
+
'''The shared Slurm key for authentication, also known as the *cluster secret* .
|
|
802
1005
|
|
|
803
1006
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pcs-cluster-slurmconfiguration.html#cfn-pcs-cluster-slurmconfiguration-authkey
|
|
804
1007
|
'''
|
|
@@ -807,7 +1010,9 @@ class CfnCluster(
|
|
|
807
1010
|
|
|
808
1011
|
@builtins.property
|
|
809
1012
|
def scale_down_idle_time_in_seconds(self) -> typing.Optional[jsii.Number]:
|
|
810
|
-
'''The time before an idle node is scaled down.
|
|
1013
|
+
'''The time (in seconds) before an idle node is scaled down.
|
|
1014
|
+
|
|
1015
|
+
Default: ``600``
|
|
811
1016
|
|
|
812
1017
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pcs-cluster-slurmconfiguration.html#cfn-pcs-cluster-slurmconfiguration-scaledownidletimeinseconds
|
|
813
1018
|
'''
|
|
@@ -853,7 +1058,11 @@ class CfnCluster(
|
|
|
853
1058
|
) -> None:
|
|
854
1059
|
'''Additional settings that directly map to Slurm settings.
|
|
855
1060
|
|
|
856
|
-
|
|
1061
|
+
.. epigraph::
|
|
1062
|
+
|
|
1063
|
+
AWS PCS supports a subset of Slurm settings. For more information, see `Configuring custom Slurm settings in AWS PCS <https://docs.aws.amazon.com//pcs/latest/userguide/slurm-custom-settings.html>`_ in the *AWS PCS User Guide* .
|
|
1064
|
+
|
|
1065
|
+
:param parameter_name: AWS PCS supports custom Slurm settings for clusters, compute node groups, and queues. For more information, see `Configuring custom Slurm settings in AWS PCS <https://docs.aws.amazon.com//pcs/latest/userguide/slurm-custom-settings.html>`_ in the *AWS PCS User Guide* .
|
|
857
1066
|
:param parameter_value: The values for the configured Slurm settings.
|
|
858
1067
|
|
|
859
1068
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pcs-cluster-slurmcustomsetting.html
|
|
@@ -881,15 +1090,9 @@ class CfnCluster(
|
|
|
881
1090
|
|
|
882
1091
|
@builtins.property
|
|
883
1092
|
def parameter_name(self) -> builtins.str:
|
|
884
|
-
'''AWS PCS supports
|
|
1093
|
+
'''AWS PCS supports custom Slurm settings for clusters, compute node groups, and queues.
|
|
885
1094
|
|
|
886
|
-
-
|
|
887
|
-
- ```Prolog`` <https://docs.aws.amazon.com/https://slurm.schedmd.com/slurm.conf.html#OPT_Prolog_1>`_
|
|
888
|
-
- ```Epilog`` <https://docs.aws.amazon.com/https://slurm.schedmd.com/slurm.conf.html#OPT_Epilog_1>`_
|
|
889
|
-
- ```SelectTypeParameters`` <https://docs.aws.amazon.com/https://slurm.schedmd.com/slurm.conf.html#OPT_SelectTypeParameters>`_
|
|
890
|
-
- For *compute node groups*
|
|
891
|
-
- ```Weight`` <https://docs.aws.amazon.com/https://slurm.schedmd.com/slurm.conf.html#OPT_Weight>`_
|
|
892
|
-
- ```RealMemory`` <https://docs.aws.amazon.com/https://slurm.schedmd.com/slurm.conf.html#OPT_Weight>`_
|
|
1095
|
+
For more information, see `Configuring custom Slurm settings in AWS PCS <https://docs.aws.amazon.com//pcs/latest/userguide/slurm-custom-settings.html>`_ in the *AWS PCS User Guide* .
|
|
893
1096
|
|
|
894
1097
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pcs-cluster-slurmcustomsetting.html#cfn-pcs-cluster-slurmcustomsetting-parametername
|
|
895
1098
|
'''
|
|
@@ -946,7 +1149,7 @@ class CfnClusterProps:
|
|
|
946
1149
|
|
|
947
1150
|
:param networking: The networking configuration for the cluster's control plane.
|
|
948
1151
|
:param scheduler: The cluster management and job scheduling software associated with the cluster.
|
|
949
|
-
:param size: The size of the cluster.
|
|
1152
|
+
:param size: The size of the cluster. - ``SMALL`` : 32 compute nodes and 256 jobs - ``MEDIUM`` : 512 compute nodes and 8192 jobs - ``LARGE`` : 2048 compute nodes and 16,384 jobs
|
|
950
1153
|
:param name: The name that identifies the cluster.
|
|
951
1154
|
:param slurm_configuration: Additional options related to the Slurm scheduler.
|
|
952
1155
|
:param tags: 1 or more tags added to the resource. Each tag consists of a tag key and tag value. The tag value is optional and can be an empty string.
|
|
@@ -962,6 +1165,7 @@ class CfnClusterProps:
|
|
|
962
1165
|
|
|
963
1166
|
cfn_cluster_props = pcs.CfnClusterProps(
|
|
964
1167
|
networking=pcs.CfnCluster.NetworkingProperty(
|
|
1168
|
+
network_type="networkType",
|
|
965
1169
|
security_group_ids=["securityGroupIds"],
|
|
966
1170
|
subnet_ids=["subnetIds"]
|
|
967
1171
|
),
|
|
@@ -974,6 +1178,12 @@ class CfnClusterProps:
|
|
|
974
1178
|
# the properties below are optional
|
|
975
1179
|
name="name",
|
|
976
1180
|
slurm_configuration=pcs.CfnCluster.SlurmConfigurationProperty(
|
|
1181
|
+
accounting=pcs.CfnCluster.AccountingProperty(
|
|
1182
|
+
mode="mode",
|
|
1183
|
+
|
|
1184
|
+
# the properties below are optional
|
|
1185
|
+
default_purge_time_in_days=123
|
|
1186
|
+
),
|
|
977
1187
|
auth_key=pcs.CfnCluster.AuthKeyProperty(
|
|
978
1188
|
secret_arn="secretArn",
|
|
979
1189
|
secret_version="secretVersion"
|
|
@@ -1037,6 +1247,10 @@ class CfnClusterProps:
|
|
|
1037
1247
|
def size(self) -> builtins.str:
|
|
1038
1248
|
'''The size of the cluster.
|
|
1039
1249
|
|
|
1250
|
+
- ``SMALL`` : 32 compute nodes and 256 jobs
|
|
1251
|
+
- ``MEDIUM`` : 512 compute nodes and 8192 jobs
|
|
1252
|
+
- ``LARGE`` : 2048 compute nodes and 16,384 jobs
|
|
1253
|
+
|
|
1040
1254
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pcs-cluster.html#cfn-pcs-cluster-size
|
|
1041
1255
|
'''
|
|
1042
1256
|
result = self._values.get("size")
|
|
@@ -1086,13 +1300,15 @@ class CfnClusterProps:
|
|
|
1086
1300
|
)
|
|
1087
1301
|
|
|
1088
1302
|
|
|
1089
|
-
@jsii.implements(_IInspectable_c2943556, _ITaggableV2_4e6798f8)
|
|
1303
|
+
@jsii.implements(_IInspectable_c2943556, _IComputeNodeGroupRef_61cc8303, _ITaggableV2_4e6798f8)
|
|
1090
1304
|
class CfnComputeNodeGroup(
|
|
1091
1305
|
_CfnResource_9df397a6,
|
|
1092
1306
|
metaclass=jsii.JSIIMeta,
|
|
1093
1307
|
jsii_type="aws-cdk-lib.aws_pcs.CfnComputeNodeGroup",
|
|
1094
1308
|
):
|
|
1095
|
-
'''
|
|
1309
|
+
'''Creates an AWS PCS compute node group resource.
|
|
1310
|
+
|
|
1311
|
+
For more information, see `Creating a compute node group in AWS PCS <https://docs.aws.amazon.com/pcs/latest/userguide/working-with_cng_create.html>`_ in the *AWS PCS User Guide* .
|
|
1096
1312
|
|
|
1097
1313
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pcs-computenodegroup.html
|
|
1098
1314
|
:cloudformationResource: AWS::PCS::ComputeNodeGroup
|
|
@@ -1159,20 +1375,21 @@ class CfnComputeNodeGroup(
|
|
|
1159
1375
|
spot_options: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnComputeNodeGroup.SpotOptionsProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
|
|
1160
1376
|
tags: typing.Optional[typing.Mapping[builtins.str, builtins.str]] = None,
|
|
1161
1377
|
) -> None:
|
|
1162
|
-
'''
|
|
1378
|
+
'''Create a new ``AWS::PCS::ComputeNodeGroup``.
|
|
1379
|
+
|
|
1163
1380
|
:param scope: Scope in which this resource is defined.
|
|
1164
1381
|
:param id: Construct identifier for this resource (unique in its scope).
|
|
1165
1382
|
:param cluster_id: The ID of the cluster of the compute node group.
|
|
1166
1383
|
:param custom_launch_template: An Amazon EC2 launch template AWS PCS uses to launch compute nodes.
|
|
1167
|
-
:param iam_instance_profile_arn: The Amazon Resource Name (ARN) of the IAM instance profile used to pass an IAM role when launching EC2 instances. The role contained in your instance profile must have pcs:RegisterComputeNodeGroupInstance
|
|
1384
|
+
:param iam_instance_profile_arn: The Amazon Resource Name (ARN) of the IAM instance profile used to pass an IAM role when launching EC2 instances. The role contained in your instance profile must have the ``pcs:RegisterComputeNodeGroupInstance`` permission and the role name must start with ``AWSPCS`` or must have the path ``/aws-pcs/`` . For more information, see `IAM instance profiles for AWS PCS <https://docs.aws.amazon.com//pcs/latest/userguide/security-instance-profiles.html>`_ in the *AWS PCS User Guide* .
|
|
1168
1385
|
:param instance_configs: A list of EC2 instance configurations that AWS PCS can provision in the compute node group.
|
|
1169
1386
|
:param scaling_configuration: Specifies the boundaries of the compute node group auto scaling.
|
|
1170
1387
|
:param subnet_ids: The list of subnet IDs where instances are provisioned by the compute node group. The subnets must be in the same VPC as the cluster.
|
|
1171
1388
|
:param ami_id: The ID of the Amazon Machine Image (AMI) that AWS PCS uses to launch instances. If not provided, AWS PCS uses the AMI ID specified in the custom launch template.
|
|
1172
1389
|
:param name: The name that identifies the compute node group.
|
|
1173
|
-
:param purchase_option: Specifies how EC2 instances are purchased on your behalf. AWS PCS supports On-Demand
|
|
1390
|
+
:param purchase_option: Specifies how EC2 instances are purchased on your behalf. AWS PCS supports On-Demand Instances, Spot Instances, and Amazon EC2 Capacity Blocks for ML. For more information, see `Amazon EC2 billing and purchasing options <https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/instance-purchasing-options.html>`_ in the *Amazon Elastic Compute Cloud User Guide* . For more information about AWS PCS support for Capacity Blocks, see `Using Amazon EC2 Capacity Blocks for ML with AWS PCS <https://docs.aws.amazon.com/pcs/latest/userguide/capacity-blocks.html>`_ in the *AWS PCS User Guide* . If you don't provide this option, it defaults to On-Demand.
|
|
1174
1391
|
:param slurm_configuration: Additional options related to the Slurm scheduler.
|
|
1175
|
-
:param spot_options: Additional configuration when you specify ``SPOT`` as the ``purchaseOption`` .
|
|
1392
|
+
:param spot_options: Additional configuration when you specify ``SPOT`` as the ``purchaseOption`` for the ``CreateComputeNodeGroup`` API action.
|
|
1176
1393
|
:param tags: 1 or more tags added to the resource. Each tag consists of a tag key and tag value. The tag value is optional and can be an empty string.
|
|
1177
1394
|
'''
|
|
1178
1395
|
if __debug__:
|
|
@@ -1258,7 +1475,9 @@ class CfnComputeNodeGroup(
|
|
|
1258
1475
|
def attr_status(self) -> builtins.str:
|
|
1259
1476
|
'''The provisioning status of the compute node group.
|
|
1260
1477
|
|
|
1261
|
-
|
|
1478
|
+
.. epigraph::
|
|
1479
|
+
|
|
1480
|
+
The provisioning status doesn't indicate the overall health of the compute node group. > The resource enters the ``SUSPENDING`` and ``SUSPENDED`` states when the scheduler is beyond end of life and we have suspended the cluster. When in these states, you can't use the cluster. The cluster controller is down and all compute instances are terminated. The resources still count toward your service quotas. You can delete a resource if its status is ``SUSPENDED`` . For more information, see `Frequently asked questions about Slurm versions in AWS PCS <https://docs.aws.amazon.com//pcs/latest/userguide/slurm-versions_faq.html>`_ in the *AWS PCS User Guide* .
|
|
1262
1481
|
|
|
1263
1482
|
:cloudformationAttribute: Status
|
|
1264
1483
|
'''
|
|
@@ -1275,6 +1494,12 @@ class CfnComputeNodeGroup(
|
|
|
1275
1494
|
def _cfn_properties(self) -> typing.Mapping[builtins.str, typing.Any]:
|
|
1276
1495
|
return typing.cast(typing.Mapping[builtins.str, typing.Any], jsii.get(self, "cfnProperties"))
|
|
1277
1496
|
|
|
1497
|
+
@builtins.property
|
|
1498
|
+
@jsii.member(jsii_name="computeNodeGroupRef")
|
|
1499
|
+
def compute_node_group_ref(self) -> _ComputeNodeGroupReference_25cba40d:
|
|
1500
|
+
'''A reference to a ComputeNodeGroup resource.'''
|
|
1501
|
+
return typing.cast(_ComputeNodeGroupReference_25cba40d, jsii.get(self, "computeNodeGroupRef"))
|
|
1502
|
+
|
|
1278
1503
|
@builtins.property
|
|
1279
1504
|
@jsii.member(jsii_name="clusterId")
|
|
1280
1505
|
def cluster_id(self) -> builtins.str:
|
|
@@ -1430,7 +1655,7 @@ class CfnComputeNodeGroup(
|
|
|
1430
1655
|
def spot_options(
|
|
1431
1656
|
self,
|
|
1432
1657
|
) -> typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnComputeNodeGroup.SpotOptionsProperty"]]:
|
|
1433
|
-
'''Additional configuration when you specify ``SPOT`` as the ``purchaseOption`` .'''
|
|
1658
|
+
'''Additional configuration when you specify ``SPOT`` as the ``purchaseOption`` for the ``CreateComputeNodeGroup`` API action.'''
|
|
1434
1659
|
return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnComputeNodeGroup.SpotOptionsProperty"]], jsii.get(self, "spotOptions"))
|
|
1435
1660
|
|
|
1436
1661
|
@spot_options.setter
|
|
@@ -1544,7 +1769,7 @@ class CfnComputeNodeGroup(
|
|
|
1544
1769
|
code: typing.Optional[builtins.str] = None,
|
|
1545
1770
|
message: typing.Optional[builtins.str] = None,
|
|
1546
1771
|
) -> None:
|
|
1547
|
-
'''
|
|
1772
|
+
'''An error that occurred during resource creation.
|
|
1548
1773
|
|
|
1549
1774
|
:param code: The short-form error code.
|
|
1550
1775
|
:param message: The detailed error information.
|
|
@@ -1810,7 +2035,11 @@ class CfnComputeNodeGroup(
|
|
|
1810
2035
|
) -> None:
|
|
1811
2036
|
'''Additional settings that directly map to Slurm settings.
|
|
1812
2037
|
|
|
1813
|
-
|
|
2038
|
+
.. epigraph::
|
|
2039
|
+
|
|
2040
|
+
AWS PCS supports a subset of Slurm settings. For more information, see `Configuring custom Slurm settings in AWS PCS <https://docs.aws.amazon.com//pcs/latest/userguide/slurm-custom-settings.html>`_ in the *AWS PCS User Guide* .
|
|
2041
|
+
|
|
2042
|
+
:param parameter_name: AWS PCS supports custom Slurm settings for clusters, compute node groups, and queues. For more information, see `Configuring custom Slurm settings in AWS PCS <https://docs.aws.amazon.com//pcs/latest/userguide/slurm-custom-settings.html>`_ in the *AWS PCS User Guide* .
|
|
1814
2043
|
:param parameter_value: The values for the configured Slurm settings.
|
|
1815
2044
|
|
|
1816
2045
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pcs-computenodegroup-slurmcustomsetting.html
|
|
@@ -1838,15 +2067,9 @@ class CfnComputeNodeGroup(
|
|
|
1838
2067
|
|
|
1839
2068
|
@builtins.property
|
|
1840
2069
|
def parameter_name(self) -> builtins.str:
|
|
1841
|
-
'''AWS PCS supports
|
|
2070
|
+
'''AWS PCS supports custom Slurm settings for clusters, compute node groups, and queues.
|
|
1842
2071
|
|
|
1843
|
-
-
|
|
1844
|
-
- ```Prolog`` <https://docs.aws.amazon.com/https://slurm.schedmd.com/slurm.conf.html#OPT_Prolog_1>`_
|
|
1845
|
-
- ```Epilog`` <https://docs.aws.amazon.com/https://slurm.schedmd.com/slurm.conf.html#OPT_Epilog_1>`_
|
|
1846
|
-
- ```SelectTypeParameters`` <https://docs.aws.amazon.com/https://slurm.schedmd.com/slurm.conf.html#OPT_SelectTypeParameters>`_
|
|
1847
|
-
- For *compute node groups*
|
|
1848
|
-
- ```Weight`` <https://docs.aws.amazon.com/https://slurm.schedmd.com/slurm.conf.html#OPT_Weight>`_
|
|
1849
|
-
- ```RealMemory`` <https://docs.aws.amazon.com/https://slurm.schedmd.com/slurm.conf.html#OPT_Weight>`_
|
|
2072
|
+
For more information, see `Configuring custom Slurm settings in AWS PCS <https://docs.aws.amazon.com//pcs/latest/userguide/slurm-custom-settings.html>`_ in the *AWS PCS User Guide* .
|
|
1850
2073
|
|
|
1851
2074
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pcs-computenodegroup-slurmcustomsetting.html#cfn-pcs-computenodegroup-slurmcustomsetting-parametername
|
|
1852
2075
|
'''
|
|
@@ -1886,9 +2109,9 @@ class CfnComputeNodeGroup(
|
|
|
1886
2109
|
*,
|
|
1887
2110
|
allocation_strategy: typing.Optional[builtins.str] = None,
|
|
1888
2111
|
) -> None:
|
|
1889
|
-
'''Additional configuration when you specify ``SPOT`` as the ``purchaseOption`` .
|
|
2112
|
+
'''Additional configuration when you specify ``SPOT`` as the ``purchaseOption`` for the ``CreateComputeNodeGroup`` API action.
|
|
1890
2113
|
|
|
1891
|
-
:param allocation_strategy: The Amazon EC2 allocation strategy AWS PCS uses to provision EC2 instances. AWS PCS supports lowest price, capacity optimized, and price capacity optimized. If you don't provide this option, it defaults to price capacity optimized.
|
|
2114
|
+
:param allocation_strategy: The Amazon EC2 allocation strategy AWS PCS uses to provision EC2 instances. AWS PCS supports *lowest price* , *capacity optimized* , and *price capacity optimized* . For more information, see `Use allocation strategies to determine how EC2 Fleet or Spot Fleet fulfills Spot and On-Demand capacity <https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/spot-fleet-allocation-strategy.html>`_ in the *Amazon Elastic Compute Cloud User Guide* . If you don't provide this option, it defaults to *price capacity optimized* .
|
|
1892
2115
|
|
|
1893
2116
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pcs-computenodegroup-spotoptions.html
|
|
1894
2117
|
:exampleMetadata: fixture=_generated
|
|
@@ -1914,7 +2137,7 @@ class CfnComputeNodeGroup(
|
|
|
1914
2137
|
def allocation_strategy(self) -> typing.Optional[builtins.str]:
|
|
1915
2138
|
'''The Amazon EC2 allocation strategy AWS PCS uses to provision EC2 instances.
|
|
1916
2139
|
|
|
1917
|
-
AWS PCS supports lowest price, capacity optimized, and price capacity optimized. If you don't provide this option, it defaults to price capacity optimized.
|
|
2140
|
+
AWS PCS supports *lowest price* , *capacity optimized* , and *price capacity optimized* . For more information, see `Use allocation strategies to determine how EC2 Fleet or Spot Fleet fulfills Spot and On-Demand capacity <https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/spot-fleet-allocation-strategy.html>`_ in the *Amazon Elastic Compute Cloud User Guide* . If you don't provide this option, it defaults to *price capacity optimized* .
|
|
1918
2141
|
|
|
1919
2142
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pcs-computenodegroup-spotoptions.html#cfn-pcs-computenodegroup-spotoptions-allocationstrategy
|
|
1920
2143
|
'''
|
|
@@ -1972,15 +2195,15 @@ class CfnComputeNodeGroupProps:
|
|
|
1972
2195
|
|
|
1973
2196
|
:param cluster_id: The ID of the cluster of the compute node group.
|
|
1974
2197
|
:param custom_launch_template: An Amazon EC2 launch template AWS PCS uses to launch compute nodes.
|
|
1975
|
-
:param iam_instance_profile_arn: The Amazon Resource Name (ARN) of the IAM instance profile used to pass an IAM role when launching EC2 instances. The role contained in your instance profile must have pcs:RegisterComputeNodeGroupInstance
|
|
2198
|
+
:param iam_instance_profile_arn: The Amazon Resource Name (ARN) of the IAM instance profile used to pass an IAM role when launching EC2 instances. The role contained in your instance profile must have the ``pcs:RegisterComputeNodeGroupInstance`` permission and the role name must start with ``AWSPCS`` or must have the path ``/aws-pcs/`` . For more information, see `IAM instance profiles for AWS PCS <https://docs.aws.amazon.com//pcs/latest/userguide/security-instance-profiles.html>`_ in the *AWS PCS User Guide* .
|
|
1976
2199
|
:param instance_configs: A list of EC2 instance configurations that AWS PCS can provision in the compute node group.
|
|
1977
2200
|
:param scaling_configuration: Specifies the boundaries of the compute node group auto scaling.
|
|
1978
2201
|
:param subnet_ids: The list of subnet IDs where instances are provisioned by the compute node group. The subnets must be in the same VPC as the cluster.
|
|
1979
2202
|
:param ami_id: The ID of the Amazon Machine Image (AMI) that AWS PCS uses to launch instances. If not provided, AWS PCS uses the AMI ID specified in the custom launch template.
|
|
1980
2203
|
:param name: The name that identifies the compute node group.
|
|
1981
|
-
:param purchase_option: Specifies how EC2 instances are purchased on your behalf. AWS PCS supports On-Demand
|
|
2204
|
+
:param purchase_option: Specifies how EC2 instances are purchased on your behalf. AWS PCS supports On-Demand Instances, Spot Instances, and Amazon EC2 Capacity Blocks for ML. For more information, see `Amazon EC2 billing and purchasing options <https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/instance-purchasing-options.html>`_ in the *Amazon Elastic Compute Cloud User Guide* . For more information about AWS PCS support for Capacity Blocks, see `Using Amazon EC2 Capacity Blocks for ML with AWS PCS <https://docs.aws.amazon.com/pcs/latest/userguide/capacity-blocks.html>`_ in the *AWS PCS User Guide* . If you don't provide this option, it defaults to On-Demand.
|
|
1982
2205
|
:param slurm_configuration: Additional options related to the Slurm scheduler.
|
|
1983
|
-
:param spot_options: Additional configuration when you specify ``SPOT`` as the ``purchaseOption`` .
|
|
2206
|
+
:param spot_options: Additional configuration when you specify ``SPOT`` as the ``purchaseOption`` for the ``CreateComputeNodeGroup`` API action.
|
|
1984
2207
|
:param tags: 1 or more tags added to the resource. Each tag consists of a tag key and tag value. The tag value is optional and can be an empty string.
|
|
1985
2208
|
|
|
1986
2209
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pcs-computenodegroup.html
|
|
@@ -2089,7 +2312,7 @@ class CfnComputeNodeGroupProps:
|
|
|
2089
2312
|
def iam_instance_profile_arn(self) -> builtins.str:
|
|
2090
2313
|
'''The Amazon Resource Name (ARN) of the IAM instance profile used to pass an IAM role when launching EC2 instances.
|
|
2091
2314
|
|
|
2092
|
-
The role contained in your instance profile must have pcs:RegisterComputeNodeGroupInstance
|
|
2315
|
+
The role contained in your instance profile must have the ``pcs:RegisterComputeNodeGroupInstance`` permission and the role name must start with ``AWSPCS`` or must have the path ``/aws-pcs/`` . For more information, see `IAM instance profiles for AWS PCS <https://docs.aws.amazon.com//pcs/latest/userguide/security-instance-profiles.html>`_ in the *AWS PCS User Guide* .
|
|
2093
2316
|
|
|
2094
2317
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pcs-computenodegroup.html#cfn-pcs-computenodegroup-iaminstanceprofilearn
|
|
2095
2318
|
'''
|
|
@@ -2157,7 +2380,7 @@ class CfnComputeNodeGroupProps:
|
|
|
2157
2380
|
def purchase_option(self) -> typing.Optional[builtins.str]:
|
|
2158
2381
|
'''Specifies how EC2 instances are purchased on your behalf.
|
|
2159
2382
|
|
|
2160
|
-
AWS PCS supports On-Demand
|
|
2383
|
+
AWS PCS supports On-Demand Instances, Spot Instances, and Amazon EC2 Capacity Blocks for ML. For more information, see `Amazon EC2 billing and purchasing options <https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/instance-purchasing-options.html>`_ in the *Amazon Elastic Compute Cloud User Guide* . For more information about AWS PCS support for Capacity Blocks, see `Using Amazon EC2 Capacity Blocks for ML with AWS PCS <https://docs.aws.amazon.com/pcs/latest/userguide/capacity-blocks.html>`_ in the *AWS PCS User Guide* . If you don't provide this option, it defaults to On-Demand.
|
|
2161
2384
|
|
|
2162
2385
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pcs-computenodegroup.html#cfn-pcs-computenodegroup-purchaseoption
|
|
2163
2386
|
'''
|
|
@@ -2179,7 +2402,7 @@ class CfnComputeNodeGroupProps:
|
|
|
2179
2402
|
def spot_options(
|
|
2180
2403
|
self,
|
|
2181
2404
|
) -> typing.Optional[typing.Union[_IResolvable_da3f097b, CfnComputeNodeGroup.SpotOptionsProperty]]:
|
|
2182
|
-
'''Additional configuration when you specify ``SPOT`` as the ``purchaseOption`` .
|
|
2405
|
+
'''Additional configuration when you specify ``SPOT`` as the ``purchaseOption`` for the ``CreateComputeNodeGroup`` API action.
|
|
2183
2406
|
|
|
2184
2407
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pcs-computenodegroup.html#cfn-pcs-computenodegroup-spotoptions
|
|
2185
2408
|
'''
|
|
@@ -2209,13 +2432,15 @@ class CfnComputeNodeGroupProps:
|
|
|
2209
2432
|
)
|
|
2210
2433
|
|
|
2211
2434
|
|
|
2212
|
-
@jsii.implements(_IInspectable_c2943556, _ITaggableV2_4e6798f8)
|
|
2435
|
+
@jsii.implements(_IInspectable_c2943556, _IQueueRef_533cbfaf, _ITaggableV2_4e6798f8)
|
|
2213
2436
|
class CfnQueue(
|
|
2214
2437
|
_CfnResource_9df397a6,
|
|
2215
2438
|
metaclass=jsii.JSIIMeta,
|
|
2216
2439
|
jsii_type="aws-cdk-lib.aws_pcs.CfnQueue",
|
|
2217
2440
|
):
|
|
2218
|
-
'''
|
|
2441
|
+
'''Creates an AWS PCS queue resource.
|
|
2442
|
+
|
|
2443
|
+
For more information, see `Creating a queue in AWS PCS <https://docs.aws.amazon.com/pcs/latest/userguide/working-with_queues_create.html>`_ in the *AWS PCS User Guide* .
|
|
2219
2444
|
|
|
2220
2445
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pcs-queue.html
|
|
2221
2446
|
:cloudformationResource: AWS::PCS::Queue
|
|
@@ -2235,6 +2460,12 @@ class CfnQueue(
|
|
|
2235
2460
|
compute_node_group_id="computeNodeGroupId"
|
|
2236
2461
|
)],
|
|
2237
2462
|
name="name",
|
|
2463
|
+
slurm_configuration=pcs.CfnQueue.SlurmConfigurationProperty(
|
|
2464
|
+
slurm_custom_settings=[pcs.CfnQueue.SlurmCustomSettingProperty(
|
|
2465
|
+
parameter_name="parameterName",
|
|
2466
|
+
parameter_value="parameterValue"
|
|
2467
|
+
)]
|
|
2468
|
+
),
|
|
2238
2469
|
tags={
|
|
2239
2470
|
"tags_key": "tags"
|
|
2240
2471
|
}
|
|
@@ -2249,14 +2480,17 @@ class CfnQueue(
|
|
|
2249
2480
|
cluster_id: builtins.str,
|
|
2250
2481
|
compute_node_group_configurations: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union["CfnQueue.ComputeNodeGroupConfigurationProperty", typing.Dict[builtins.str, typing.Any]]]]]] = None,
|
|
2251
2482
|
name: typing.Optional[builtins.str] = None,
|
|
2483
|
+
slurm_configuration: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnQueue.SlurmConfigurationProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
|
|
2252
2484
|
tags: typing.Optional[typing.Mapping[builtins.str, builtins.str]] = None,
|
|
2253
2485
|
) -> None:
|
|
2254
|
-
'''
|
|
2486
|
+
'''Create a new ``AWS::PCS::Queue``.
|
|
2487
|
+
|
|
2255
2488
|
:param scope: Scope in which this resource is defined.
|
|
2256
2489
|
:param id: Construct identifier for this resource (unique in its scope).
|
|
2257
2490
|
:param cluster_id: The ID of the cluster of the queue.
|
|
2258
2491
|
:param compute_node_group_configurations: The list of compute node group configurations associated with the queue. Queues assign jobs to associated compute node groups.
|
|
2259
2492
|
:param name: The name that identifies the queue.
|
|
2493
|
+
:param slurm_configuration: Additional options related to the Slurm scheduler.
|
|
2260
2494
|
:param tags: 1 or more tags added to the resource. Each tag consists of a tag key and tag value. The tag value is optional and can be an empty string.
|
|
2261
2495
|
'''
|
|
2262
2496
|
if __debug__:
|
|
@@ -2267,6 +2501,7 @@ class CfnQueue(
|
|
|
2267
2501
|
cluster_id=cluster_id,
|
|
2268
2502
|
compute_node_group_configurations=compute_node_group_configurations,
|
|
2269
2503
|
name=name,
|
|
2504
|
+
slurm_configuration=slurm_configuration,
|
|
2270
2505
|
tags=tags,
|
|
2271
2506
|
)
|
|
2272
2507
|
|
|
@@ -2334,7 +2569,9 @@ class CfnQueue(
|
|
|
2334
2569
|
def attr_status(self) -> builtins.str:
|
|
2335
2570
|
'''The provisioning status of the queue.
|
|
2336
2571
|
|
|
2337
|
-
|
|
2572
|
+
.. epigraph::
|
|
2573
|
+
|
|
2574
|
+
The provisioning status doesn't indicate the overall health of the queue. > The resource enters the ``SUSPENDING`` and ``SUSPENDED`` states when the scheduler is beyond end of life and we have suspended the cluster. When in these states, you can't use the cluster. The cluster controller is down and all compute instances are terminated. The resources still count toward your service quotas. You can delete a resource if its status is ``SUSPENDED`` . For more information, see `Frequently asked questions about Slurm versions in AWS PCS <https://docs.aws.amazon.com//pcs/latest/userguide/slurm-versions_faq.html>`_ in the *AWS PCS User Guide* .
|
|
2338
2575
|
|
|
2339
2576
|
:cloudformationAttribute: Status
|
|
2340
2577
|
'''
|
|
@@ -2351,6 +2588,12 @@ class CfnQueue(
|
|
|
2351
2588
|
def _cfn_properties(self) -> typing.Mapping[builtins.str, typing.Any]:
|
|
2352
2589
|
return typing.cast(typing.Mapping[builtins.str, typing.Any], jsii.get(self, "cfnProperties"))
|
|
2353
2590
|
|
|
2591
|
+
@builtins.property
|
|
2592
|
+
@jsii.member(jsii_name="queueRef")
|
|
2593
|
+
def queue_ref(self) -> _QueueReference_4d04703d:
|
|
2594
|
+
'''A reference to a Queue resource.'''
|
|
2595
|
+
return typing.cast(_QueueReference_4d04703d, jsii.get(self, "queueRef"))
|
|
2596
|
+
|
|
2354
2597
|
@builtins.property
|
|
2355
2598
|
@jsii.member(jsii_name="clusterId")
|
|
2356
2599
|
def cluster_id(self) -> builtins.str:
|
|
@@ -2395,6 +2638,24 @@ class CfnQueue(
|
|
|
2395
2638
|
check_type(argname="argument value", value=value, expected_type=type_hints["value"])
|
|
2396
2639
|
jsii.set(self, "name", value) # pyright: ignore[reportArgumentType]
|
|
2397
2640
|
|
|
2641
|
+
@builtins.property
|
|
2642
|
+
@jsii.member(jsii_name="slurmConfiguration")
|
|
2643
|
+
def slurm_configuration(
|
|
2644
|
+
self,
|
|
2645
|
+
) -> typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnQueue.SlurmConfigurationProperty"]]:
|
|
2646
|
+
'''Additional options related to the Slurm scheduler.'''
|
|
2647
|
+
return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnQueue.SlurmConfigurationProperty"]], jsii.get(self, "slurmConfiguration"))
|
|
2648
|
+
|
|
2649
|
+
@slurm_configuration.setter
|
|
2650
|
+
def slurm_configuration(
|
|
2651
|
+
self,
|
|
2652
|
+
value: typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnQueue.SlurmConfigurationProperty"]],
|
|
2653
|
+
) -> None:
|
|
2654
|
+
if __debug__:
|
|
2655
|
+
type_hints = typing.get_type_hints(_typecheckingstub__8b7380033da0bbecbc38adb9cf8f52dc687fd71722aa673c38c6fb2beb4cf53c)
|
|
2656
|
+
check_type(argname="argument value", value=value, expected_type=type_hints["value"])
|
|
2657
|
+
jsii.set(self, "slurmConfiguration", value) # pyright: ignore[reportArgumentType]
|
|
2658
|
+
|
|
2398
2659
|
@builtins.property
|
|
2399
2660
|
@jsii.member(jsii_name="tags")
|
|
2400
2661
|
def tags(self) -> typing.Optional[typing.Mapping[builtins.str, builtins.str]]:
|
|
@@ -2478,10 +2739,10 @@ class CfnQueue(
|
|
|
2478
2739
|
code: typing.Optional[builtins.str] = None,
|
|
2479
2740
|
message: typing.Optional[builtins.str] = None,
|
|
2480
2741
|
) -> None:
|
|
2481
|
-
'''An error that occurred during resource
|
|
2742
|
+
'''An error that occurred during resource creation.
|
|
2482
2743
|
|
|
2483
2744
|
:param code: The short-form error code.
|
|
2484
|
-
:param message:
|
|
2745
|
+
:param message: The detailed error information.
|
|
2485
2746
|
|
|
2486
2747
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pcs-queue-errorinfo.html
|
|
2487
2748
|
:exampleMetadata: fixture=_generated
|
|
@@ -2518,7 +2779,7 @@ class CfnQueue(
|
|
|
2518
2779
|
|
|
2519
2780
|
@builtins.property
|
|
2520
2781
|
def message(self) -> typing.Optional[builtins.str]:
|
|
2521
|
-
'''
|
|
2782
|
+
'''The detailed error information.
|
|
2522
2783
|
|
|
2523
2784
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pcs-queue-errorinfo.html#cfn-pcs-queue-errorinfo-message
|
|
2524
2785
|
'''
|
|
@@ -2536,6 +2797,140 @@ class CfnQueue(
|
|
|
2536
2797
|
k + "=" + repr(v) for k, v in self._values.items()
|
|
2537
2798
|
)
|
|
2538
2799
|
|
|
2800
|
+
@jsii.data_type(
|
|
2801
|
+
jsii_type="aws-cdk-lib.aws_pcs.CfnQueue.SlurmConfigurationProperty",
|
|
2802
|
+
jsii_struct_bases=[],
|
|
2803
|
+
name_mapping={"slurm_custom_settings": "slurmCustomSettings"},
|
|
2804
|
+
)
|
|
2805
|
+
class SlurmConfigurationProperty:
|
|
2806
|
+
def __init__(
|
|
2807
|
+
self,
|
|
2808
|
+
*,
|
|
2809
|
+
slurm_custom_settings: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union["CfnQueue.SlurmCustomSettingProperty", typing.Dict[builtins.str, typing.Any]]]]]] = None,
|
|
2810
|
+
) -> None:
|
|
2811
|
+
'''The Slurm configuration for the queue.
|
|
2812
|
+
|
|
2813
|
+
:param slurm_custom_settings: Custom Slurm parameters that directly map to Slurm configuration settings.
|
|
2814
|
+
|
|
2815
|
+
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pcs-queue-slurmconfiguration.html
|
|
2816
|
+
:exampleMetadata: fixture=_generated
|
|
2817
|
+
|
|
2818
|
+
Example::
|
|
2819
|
+
|
|
2820
|
+
# The code below shows an example of how to instantiate this type.
|
|
2821
|
+
# The values are placeholders you should change.
|
|
2822
|
+
from aws_cdk import aws_pcs as pcs
|
|
2823
|
+
|
|
2824
|
+
slurm_configuration_property = pcs.CfnQueue.SlurmConfigurationProperty(
|
|
2825
|
+
slurm_custom_settings=[pcs.CfnQueue.SlurmCustomSettingProperty(
|
|
2826
|
+
parameter_name="parameterName",
|
|
2827
|
+
parameter_value="parameterValue"
|
|
2828
|
+
)]
|
|
2829
|
+
)
|
|
2830
|
+
'''
|
|
2831
|
+
if __debug__:
|
|
2832
|
+
type_hints = typing.get_type_hints(_typecheckingstub__28618a9f4bd71d830d18eda5c9c09bf4d7f232a6179eb690e9a3aa36984af24b)
|
|
2833
|
+
check_type(argname="argument slurm_custom_settings", value=slurm_custom_settings, expected_type=type_hints["slurm_custom_settings"])
|
|
2834
|
+
self._values: typing.Dict[builtins.str, typing.Any] = {}
|
|
2835
|
+
if slurm_custom_settings is not None:
|
|
2836
|
+
self._values["slurm_custom_settings"] = slurm_custom_settings
|
|
2837
|
+
|
|
2838
|
+
@builtins.property
|
|
2839
|
+
def slurm_custom_settings(
|
|
2840
|
+
self,
|
|
2841
|
+
) -> typing.Optional[typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, "CfnQueue.SlurmCustomSettingProperty"]]]]:
|
|
2842
|
+
'''Custom Slurm parameters that directly map to Slurm configuration settings.
|
|
2843
|
+
|
|
2844
|
+
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pcs-queue-slurmconfiguration.html#cfn-pcs-queue-slurmconfiguration-slurmcustomsettings
|
|
2845
|
+
'''
|
|
2846
|
+
result = self._values.get("slurm_custom_settings")
|
|
2847
|
+
return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, "CfnQueue.SlurmCustomSettingProperty"]]]], result)
|
|
2848
|
+
|
|
2849
|
+
def __eq__(self, rhs: typing.Any) -> builtins.bool:
|
|
2850
|
+
return isinstance(rhs, self.__class__) and rhs._values == self._values
|
|
2851
|
+
|
|
2852
|
+
def __ne__(self, rhs: typing.Any) -> builtins.bool:
|
|
2853
|
+
return not (rhs == self)
|
|
2854
|
+
|
|
2855
|
+
def __repr__(self) -> str:
|
|
2856
|
+
return "SlurmConfigurationProperty(%s)" % ", ".join(
|
|
2857
|
+
k + "=" + repr(v) for k, v in self._values.items()
|
|
2858
|
+
)
|
|
2859
|
+
|
|
2860
|
+
@jsii.data_type(
|
|
2861
|
+
jsii_type="aws-cdk-lib.aws_pcs.CfnQueue.SlurmCustomSettingProperty",
|
|
2862
|
+
jsii_struct_bases=[],
|
|
2863
|
+
name_mapping={
|
|
2864
|
+
"parameter_name": "parameterName",
|
|
2865
|
+
"parameter_value": "parameterValue",
|
|
2866
|
+
},
|
|
2867
|
+
)
|
|
2868
|
+
class SlurmCustomSettingProperty:
|
|
2869
|
+
def __init__(
|
|
2870
|
+
self,
|
|
2871
|
+
*,
|
|
2872
|
+
parameter_name: builtins.str,
|
|
2873
|
+
parameter_value: builtins.str,
|
|
2874
|
+
) -> None:
|
|
2875
|
+
'''Additional settings that directly map to Slurm settings.
|
|
2876
|
+
|
|
2877
|
+
:param parameter_name: AWS PCS supports configuration of the Slurm parameters for queues:.
|
|
2878
|
+
:param parameter_value: The value for the configured Slurm setting.
|
|
2879
|
+
|
|
2880
|
+
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pcs-queue-slurmcustomsetting.html
|
|
2881
|
+
:exampleMetadata: fixture=_generated
|
|
2882
|
+
|
|
2883
|
+
Example::
|
|
2884
|
+
|
|
2885
|
+
# The code below shows an example of how to instantiate this type.
|
|
2886
|
+
# The values are placeholders you should change.
|
|
2887
|
+
from aws_cdk import aws_pcs as pcs
|
|
2888
|
+
|
|
2889
|
+
slurm_custom_setting_property = pcs.CfnQueue.SlurmCustomSettingProperty(
|
|
2890
|
+
parameter_name="parameterName",
|
|
2891
|
+
parameter_value="parameterValue"
|
|
2892
|
+
)
|
|
2893
|
+
'''
|
|
2894
|
+
if __debug__:
|
|
2895
|
+
type_hints = typing.get_type_hints(_typecheckingstub__4b79818f0e6641251312f7d3e9ef610148d1b07122021df8e1de03465c51222b)
|
|
2896
|
+
check_type(argname="argument parameter_name", value=parameter_name, expected_type=type_hints["parameter_name"])
|
|
2897
|
+
check_type(argname="argument parameter_value", value=parameter_value, expected_type=type_hints["parameter_value"])
|
|
2898
|
+
self._values: typing.Dict[builtins.str, typing.Any] = {
|
|
2899
|
+
"parameter_name": parameter_name,
|
|
2900
|
+
"parameter_value": parameter_value,
|
|
2901
|
+
}
|
|
2902
|
+
|
|
2903
|
+
@builtins.property
|
|
2904
|
+
def parameter_name(self) -> builtins.str:
|
|
2905
|
+
'''AWS PCS supports configuration of the Slurm parameters for queues:.
|
|
2906
|
+
|
|
2907
|
+
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pcs-queue-slurmcustomsetting.html#cfn-pcs-queue-slurmcustomsetting-parametername
|
|
2908
|
+
'''
|
|
2909
|
+
result = self._values.get("parameter_name")
|
|
2910
|
+
assert result is not None, "Required property 'parameter_name' is missing"
|
|
2911
|
+
return typing.cast(builtins.str, result)
|
|
2912
|
+
|
|
2913
|
+
@builtins.property
|
|
2914
|
+
def parameter_value(self) -> builtins.str:
|
|
2915
|
+
'''The value for the configured Slurm setting.
|
|
2916
|
+
|
|
2917
|
+
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-pcs-queue-slurmcustomsetting.html#cfn-pcs-queue-slurmcustomsetting-parametervalue
|
|
2918
|
+
'''
|
|
2919
|
+
result = self._values.get("parameter_value")
|
|
2920
|
+
assert result is not None, "Required property 'parameter_value' is missing"
|
|
2921
|
+
return typing.cast(builtins.str, result)
|
|
2922
|
+
|
|
2923
|
+
def __eq__(self, rhs: typing.Any) -> builtins.bool:
|
|
2924
|
+
return isinstance(rhs, self.__class__) and rhs._values == self._values
|
|
2925
|
+
|
|
2926
|
+
def __ne__(self, rhs: typing.Any) -> builtins.bool:
|
|
2927
|
+
return not (rhs == self)
|
|
2928
|
+
|
|
2929
|
+
def __repr__(self) -> str:
|
|
2930
|
+
return "SlurmCustomSettingProperty(%s)" % ", ".join(
|
|
2931
|
+
k + "=" + repr(v) for k, v in self._values.items()
|
|
2932
|
+
)
|
|
2933
|
+
|
|
2539
2934
|
|
|
2540
2935
|
@jsii.data_type(
|
|
2541
2936
|
jsii_type="aws-cdk-lib.aws_pcs.CfnQueueProps",
|
|
@@ -2544,6 +2939,7 @@ class CfnQueue(
|
|
|
2544
2939
|
"cluster_id": "clusterId",
|
|
2545
2940
|
"compute_node_group_configurations": "computeNodeGroupConfigurations",
|
|
2546
2941
|
"name": "name",
|
|
2942
|
+
"slurm_configuration": "slurmConfiguration",
|
|
2547
2943
|
"tags": "tags",
|
|
2548
2944
|
},
|
|
2549
2945
|
)
|
|
@@ -2554,6 +2950,7 @@ class CfnQueueProps:
|
|
|
2554
2950
|
cluster_id: builtins.str,
|
|
2555
2951
|
compute_node_group_configurations: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union[CfnQueue.ComputeNodeGroupConfigurationProperty, typing.Dict[builtins.str, typing.Any]]]]]] = None,
|
|
2556
2952
|
name: typing.Optional[builtins.str] = None,
|
|
2953
|
+
slurm_configuration: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnQueue.SlurmConfigurationProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
|
|
2557
2954
|
tags: typing.Optional[typing.Mapping[builtins.str, builtins.str]] = None,
|
|
2558
2955
|
) -> None:
|
|
2559
2956
|
'''Properties for defining a ``CfnQueue``.
|
|
@@ -2561,6 +2958,7 @@ class CfnQueueProps:
|
|
|
2561
2958
|
:param cluster_id: The ID of the cluster of the queue.
|
|
2562
2959
|
:param compute_node_group_configurations: The list of compute node group configurations associated with the queue. Queues assign jobs to associated compute node groups.
|
|
2563
2960
|
:param name: The name that identifies the queue.
|
|
2961
|
+
:param slurm_configuration: Additional options related to the Slurm scheduler.
|
|
2564
2962
|
:param tags: 1 or more tags added to the resource. Each tag consists of a tag key and tag value. The tag value is optional and can be an empty string.
|
|
2565
2963
|
|
|
2566
2964
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pcs-queue.html
|
|
@@ -2580,6 +2978,12 @@ class CfnQueueProps:
|
|
|
2580
2978
|
compute_node_group_id="computeNodeGroupId"
|
|
2581
2979
|
)],
|
|
2582
2980
|
name="name",
|
|
2981
|
+
slurm_configuration=pcs.CfnQueue.SlurmConfigurationProperty(
|
|
2982
|
+
slurm_custom_settings=[pcs.CfnQueue.SlurmCustomSettingProperty(
|
|
2983
|
+
parameter_name="parameterName",
|
|
2984
|
+
parameter_value="parameterValue"
|
|
2985
|
+
)]
|
|
2986
|
+
),
|
|
2583
2987
|
tags={
|
|
2584
2988
|
"tags_key": "tags"
|
|
2585
2989
|
}
|
|
@@ -2590,6 +2994,7 @@ class CfnQueueProps:
|
|
|
2590
2994
|
check_type(argname="argument cluster_id", value=cluster_id, expected_type=type_hints["cluster_id"])
|
|
2591
2995
|
check_type(argname="argument compute_node_group_configurations", value=compute_node_group_configurations, expected_type=type_hints["compute_node_group_configurations"])
|
|
2592
2996
|
check_type(argname="argument name", value=name, expected_type=type_hints["name"])
|
|
2997
|
+
check_type(argname="argument slurm_configuration", value=slurm_configuration, expected_type=type_hints["slurm_configuration"])
|
|
2593
2998
|
check_type(argname="argument tags", value=tags, expected_type=type_hints["tags"])
|
|
2594
2999
|
self._values: typing.Dict[builtins.str, typing.Any] = {
|
|
2595
3000
|
"cluster_id": cluster_id,
|
|
@@ -2598,6 +3003,8 @@ class CfnQueueProps:
|
|
|
2598
3003
|
self._values["compute_node_group_configurations"] = compute_node_group_configurations
|
|
2599
3004
|
if name is not None:
|
|
2600
3005
|
self._values["name"] = name
|
|
3006
|
+
if slurm_configuration is not None:
|
|
3007
|
+
self._values["slurm_configuration"] = slurm_configuration
|
|
2601
3008
|
if tags is not None:
|
|
2602
3009
|
self._values["tags"] = tags
|
|
2603
3010
|
|
|
@@ -2633,6 +3040,17 @@ class CfnQueueProps:
|
|
|
2633
3040
|
result = self._values.get("name")
|
|
2634
3041
|
return typing.cast(typing.Optional[builtins.str], result)
|
|
2635
3042
|
|
|
3043
|
+
@builtins.property
|
|
3044
|
+
def slurm_configuration(
|
|
3045
|
+
self,
|
|
3046
|
+
) -> typing.Optional[typing.Union[_IResolvable_da3f097b, CfnQueue.SlurmConfigurationProperty]]:
|
|
3047
|
+
'''Additional options related to the Slurm scheduler.
|
|
3048
|
+
|
|
3049
|
+
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-pcs-queue.html#cfn-pcs-queue-slurmconfiguration
|
|
3050
|
+
'''
|
|
3051
|
+
result = self._values.get("slurm_configuration")
|
|
3052
|
+
return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, CfnQueue.SlurmConfigurationProperty]], result)
|
|
3053
|
+
|
|
2636
3054
|
@builtins.property
|
|
2637
3055
|
def tags(self) -> typing.Optional[typing.Mapping[builtins.str, builtins.str]]:
|
|
2638
3056
|
'''1 or more tags added to the resource.
|
|
@@ -2729,6 +3147,14 @@ def _typecheckingstub__b386ea2d0b46e98dda569b5edccc0da74b6c12d09181731c93163fcad
|
|
|
2729
3147
|
"""Type checking stubs"""
|
|
2730
3148
|
pass
|
|
2731
3149
|
|
|
3150
|
+
def _typecheckingstub__1371c6dd1b40632a0c832b301d232842e616e6e2e20240f16e1a18c257dec328(
|
|
3151
|
+
*,
|
|
3152
|
+
mode: builtins.str,
|
|
3153
|
+
default_purge_time_in_days: typing.Optional[jsii.Number] = None,
|
|
3154
|
+
) -> None:
|
|
3155
|
+
"""Type checking stubs"""
|
|
3156
|
+
pass
|
|
3157
|
+
|
|
2732
3158
|
def _typecheckingstub__1864f71bcded956851b861671a045d1c7d6402331c1d756c5ac88d21e9fe823c(
|
|
2733
3159
|
*,
|
|
2734
3160
|
secret_arn: builtins.str,
|
|
@@ -2742,6 +3168,7 @@ def _typecheckingstub__fb46faa4736fd5bede060ea1460c35898193ef49ace1726974a1db895
|
|
|
2742
3168
|
port: builtins.str,
|
|
2743
3169
|
private_ip_address: builtins.str,
|
|
2744
3170
|
type: builtins.str,
|
|
3171
|
+
ipv6_address: typing.Optional[builtins.str] = None,
|
|
2745
3172
|
public_ip_address: typing.Optional[builtins.str] = None,
|
|
2746
3173
|
) -> None:
|
|
2747
3174
|
"""Type checking stubs"""
|
|
@@ -2757,6 +3184,7 @@ def _typecheckingstub__b9e127e61b0ea75f45a99bba1dcc51875a9ecf36ea91f697889ebe4cb
|
|
|
2757
3184
|
|
|
2758
3185
|
def _typecheckingstub__82c7f3d28e2ed0d063467ea787c6cfc31c28d4c5f26ef1ddf71940887dea9d1f(
|
|
2759
3186
|
*,
|
|
3187
|
+
network_type: typing.Optional[builtins.str] = None,
|
|
2760
3188
|
security_group_ids: typing.Optional[typing.Sequence[builtins.str]] = None,
|
|
2761
3189
|
subnet_ids: typing.Optional[typing.Sequence[builtins.str]] = None,
|
|
2762
3190
|
) -> None:
|
|
@@ -2773,6 +3201,7 @@ def _typecheckingstub__fe24d9f1c44d1db4489549227b033216d5b6490b74f43ce9c2871e34c
|
|
|
2773
3201
|
|
|
2774
3202
|
def _typecheckingstub__e6bb8855a5cf237041c92e56f09fd1b1d2d40c49f363bfde280100fbfd6f137f(
|
|
2775
3203
|
*,
|
|
3204
|
+
accounting: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnCluster.AccountingProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
|
|
2776
3205
|
auth_key: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnCluster.AuthKeyProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
|
|
2777
3206
|
scale_down_idle_time_in_seconds: typing.Optional[jsii.Number] = None,
|
|
2778
3207
|
slurm_custom_settings: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union[CfnCluster.SlurmCustomSettingProperty, typing.Dict[builtins.str, typing.Any]]]]]] = None,
|
|
@@ -2982,6 +3411,7 @@ def _typecheckingstub__456edeb02414f262683a35f15a1fae223f92feec590d98024478f680e
|
|
|
2982
3411
|
cluster_id: builtins.str,
|
|
2983
3412
|
compute_node_group_configurations: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union[CfnQueue.ComputeNodeGroupConfigurationProperty, typing.Dict[builtins.str, typing.Any]]]]]] = None,
|
|
2984
3413
|
name: typing.Optional[builtins.str] = None,
|
|
3414
|
+
slurm_configuration: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnQueue.SlurmConfigurationProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
|
|
2985
3415
|
tags: typing.Optional[typing.Mapping[builtins.str, builtins.str]] = None,
|
|
2986
3416
|
) -> None:
|
|
2987
3417
|
"""Type checking stubs"""
|
|
@@ -3017,6 +3447,12 @@ def _typecheckingstub__7e4f1e9c61fd11b4d3ed4834db791c7064b5408b742dfa6c4a00a2428
|
|
|
3017
3447
|
"""Type checking stubs"""
|
|
3018
3448
|
pass
|
|
3019
3449
|
|
|
3450
|
+
def _typecheckingstub__8b7380033da0bbecbc38adb9cf8f52dc687fd71722aa673c38c6fb2beb4cf53c(
|
|
3451
|
+
value: typing.Optional[typing.Union[_IResolvable_da3f097b, CfnQueue.SlurmConfigurationProperty]],
|
|
3452
|
+
) -> None:
|
|
3453
|
+
"""Type checking stubs"""
|
|
3454
|
+
pass
|
|
3455
|
+
|
|
3020
3456
|
def _typecheckingstub__31674031b3f2a49a29efb9edfdb5a54431db3db7616989edd3617113cd6b9afd(
|
|
3021
3457
|
value: typing.Optional[typing.Mapping[builtins.str, builtins.str]],
|
|
3022
3458
|
) -> None:
|
|
@@ -3038,11 +3474,27 @@ def _typecheckingstub__5e51eb0cec81203da74b9b3c33259135afec8fef04327498ab79338af
|
|
|
3038
3474
|
"""Type checking stubs"""
|
|
3039
3475
|
pass
|
|
3040
3476
|
|
|
3477
|
+
def _typecheckingstub__28618a9f4bd71d830d18eda5c9c09bf4d7f232a6179eb690e9a3aa36984af24b(
|
|
3478
|
+
*,
|
|
3479
|
+
slurm_custom_settings: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union[CfnQueue.SlurmCustomSettingProperty, typing.Dict[builtins.str, typing.Any]]]]]] = None,
|
|
3480
|
+
) -> None:
|
|
3481
|
+
"""Type checking stubs"""
|
|
3482
|
+
pass
|
|
3483
|
+
|
|
3484
|
+
def _typecheckingstub__4b79818f0e6641251312f7d3e9ef610148d1b07122021df8e1de03465c51222b(
|
|
3485
|
+
*,
|
|
3486
|
+
parameter_name: builtins.str,
|
|
3487
|
+
parameter_value: builtins.str,
|
|
3488
|
+
) -> None:
|
|
3489
|
+
"""Type checking stubs"""
|
|
3490
|
+
pass
|
|
3491
|
+
|
|
3041
3492
|
def _typecheckingstub__4211e23057aa9883cd55dc7f797abf7f4ad0554424bd2d7d7cfce123004b8557(
|
|
3042
3493
|
*,
|
|
3043
3494
|
cluster_id: builtins.str,
|
|
3044
3495
|
compute_node_group_configurations: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union[CfnQueue.ComputeNodeGroupConfigurationProperty, typing.Dict[builtins.str, typing.Any]]]]]] = None,
|
|
3045
3496
|
name: typing.Optional[builtins.str] = None,
|
|
3497
|
+
slurm_configuration: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnQueue.SlurmConfigurationProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
|
|
3046
3498
|
tags: typing.Optional[typing.Mapping[builtins.str, builtins.str]] = None,
|
|
3047
3499
|
) -> None:
|
|
3048
3500
|
"""Type checking stubs"""
|