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_batch/__init__.py
CHANGED
|
@@ -66,7 +66,18 @@ For stateful or otherwise non-interruption-tolerant workflows, omit `spot` or se
|
|
|
66
66
|
|
|
67
67
|
#### Choosing Your Instance Types
|
|
68
68
|
|
|
69
|
-
Batch allows you to choose
|
|
69
|
+
Batch allows you to choose most up-to-date instance classes based on your region.
|
|
70
|
+
This example configures your `ComputeEnvironment` to use only ARM64 instance:
|
|
71
|
+
|
|
72
|
+
```python
|
|
73
|
+
vpc = ec2.Vpc(self, "VPC")
|
|
74
|
+
|
|
75
|
+
batch.ManagedEc2EcsComputeEnvironment(self, "myEc2ComputeEnv",
|
|
76
|
+
vpc=vpc,
|
|
77
|
+
default_instance_classes=[batch.DefaultInstanceClass.ARM64]
|
|
78
|
+
)
|
|
79
|
+
```
|
|
80
|
+
|
|
70
81
|
This example configures your `ComputeEnvironment` to use only the `M5AD.large` instance:
|
|
71
82
|
|
|
72
83
|
```python
|
|
@@ -91,6 +102,9 @@ batch.ManagedEc2EcsComputeEnvironment(self, "myEc2ComputeEnv",
|
|
|
91
102
|
)
|
|
92
103
|
```
|
|
93
104
|
|
|
105
|
+
> [!WARNING]
|
|
106
|
+
> `useOptimalInstanceClasses` is deprecated! Use `defaultInstanceClasses` instead.
|
|
107
|
+
|
|
94
108
|
Unless you explicitly specify `useOptimalInstanceClasses: false`, this compute environment will use `'optimal'` instances,
|
|
95
109
|
which tells Batch to pick an instance from the C4, M4, and R4 instance families.
|
|
96
110
|
*Note*: Batch does not allow specifying instance types or classes with different architectures.
|
|
@@ -533,6 +547,40 @@ job_defn = batch.EcsJobDefinition(self, "JobDefn",
|
|
|
533
547
|
)
|
|
534
548
|
```
|
|
535
549
|
|
|
550
|
+
### Enable Execute Command (ECS Exec)
|
|
551
|
+
|
|
552
|
+
You can enable [ECS Exec](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ecs-exec.html) for interactive debugging and troubleshooting by setting `enableExecuteCommand` to `true`.
|
|
553
|
+
When enabled, you'll be able to execute commands interactively in running containers.
|
|
554
|
+
|
|
555
|
+
```python
|
|
556
|
+
job_defn = batch.EcsJobDefinition(self, "JobDefn",
|
|
557
|
+
container=batch.EcsEc2ContainerDefinition(self, "Ec2Container",
|
|
558
|
+
image=ecs.ContainerImage.from_registry("public.ecr.aws/amazonlinux/amazonlinux:latest"),
|
|
559
|
+
memory=cdk.Size.mebibytes(2048),
|
|
560
|
+
cpu=256,
|
|
561
|
+
enable_execute_command=True
|
|
562
|
+
)
|
|
563
|
+
)
|
|
564
|
+
```
|
|
565
|
+
|
|
566
|
+
The same functionality is available for Fargate containers:
|
|
567
|
+
|
|
568
|
+
```python
|
|
569
|
+
job_defn = batch.EcsJobDefinition(self, "JobDefn",
|
|
570
|
+
container=batch.EcsFargateContainerDefinition(self, "FargateContainer",
|
|
571
|
+
image=ecs.ContainerImage.from_registry("public.ecr.aws/amazonlinux/amazonlinux:latest"),
|
|
572
|
+
memory=cdk.Size.mebibytes(2048),
|
|
573
|
+
cpu=256,
|
|
574
|
+
enable_execute_command=True
|
|
575
|
+
)
|
|
576
|
+
)
|
|
577
|
+
```
|
|
578
|
+
|
|
579
|
+
When `enableExecuteCommand` is set to `true`:
|
|
580
|
+
|
|
581
|
+
* If no `jobRole` is provided, a new IAM role will be automatically created with the required SSM permissions
|
|
582
|
+
* If a `jobRole` is already provided, the necessary SSM permissions will be added to the existing role
|
|
583
|
+
|
|
536
584
|
### Secrets
|
|
537
585
|
|
|
538
586
|
You can expose SecretsManager Secret ARNs or SSM Parameters to your container as environment variables.
|
|
@@ -792,6 +840,21 @@ from ..aws_iam import (
|
|
|
792
840
|
)
|
|
793
841
|
from ..aws_secretsmanager import ISecret as _ISecret_6e020e6a
|
|
794
842
|
from ..aws_ssm import IParameter as _IParameter_509a0f80
|
|
843
|
+
from ..interfaces.aws_batch import (
|
|
844
|
+
ComputeEnvironmentReference as _ComputeEnvironmentReference_74ec9988,
|
|
845
|
+
ConsumableResourceReference as _ConsumableResourceReference_eb60ef1d,
|
|
846
|
+
IComputeEnvironmentRef as _IComputeEnvironmentRef_eab02155,
|
|
847
|
+
IConsumableResourceRef as _IConsumableResourceRef_114da7c5,
|
|
848
|
+
IJobDefinitionRef as _IJobDefinitionRef_ae0cae56,
|
|
849
|
+
IJobQueueRef as _IJobQueueRef_2f1c7bda,
|
|
850
|
+
ISchedulingPolicyRef as _ISchedulingPolicyRef_a7864c7c,
|
|
851
|
+
IServiceEnvironmentRef as _IServiceEnvironmentRef_5865fef4,
|
|
852
|
+
JobDefinitionReference as _JobDefinitionReference_e67f0e8f,
|
|
853
|
+
JobQueueReference as _JobQueueReference_1a1e9db8,
|
|
854
|
+
SchedulingPolicyReference as _SchedulingPolicyReference_a55795c6,
|
|
855
|
+
ServiceEnvironmentReference as _ServiceEnvironmentReference_9a7dc7ee,
|
|
856
|
+
)
|
|
857
|
+
from ..interfaces.aws_ec2 import IPlacementGroupRef as _IPlacementGroupRef_5d6e601f
|
|
795
858
|
|
|
796
859
|
|
|
797
860
|
@jsii.enum(jsii_type="aws-cdk-lib.aws_batch.Action")
|
|
@@ -886,7 +949,7 @@ class AllocationStrategy(enum.Enum):
|
|
|
886
949
|
'''
|
|
887
950
|
|
|
888
951
|
|
|
889
|
-
@jsii.implements(_IInspectable_c2943556, _ITaggable_36806126)
|
|
952
|
+
@jsii.implements(_IInspectable_c2943556, _IComputeEnvironmentRef_eab02155, _ITaggable_36806126)
|
|
890
953
|
class CfnComputeEnvironment(
|
|
891
954
|
_CfnResource_9df397a6,
|
|
892
955
|
metaclass=jsii.JSIIMeta,
|
|
@@ -970,8 +1033,10 @@ class CfnComputeEnvironment(
|
|
|
970
1033
|
launch_template_id="launchTemplateId",
|
|
971
1034
|
launch_template_name="launchTemplateName",
|
|
972
1035
|
target_instance_types=["targetInstanceTypes"],
|
|
1036
|
+
userdata_type="userdataType",
|
|
973
1037
|
version="version"
|
|
974
1038
|
)],
|
|
1039
|
+
userdata_type="userdataType",
|
|
975
1040
|
version="version"
|
|
976
1041
|
),
|
|
977
1042
|
minv_cpus=123,
|
|
@@ -1019,14 +1084,15 @@ class CfnComputeEnvironment(
|
|
|
1019
1084
|
unmanagedv_cpus: typing.Optional[jsii.Number] = None,
|
|
1020
1085
|
update_policy: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnComputeEnvironment.UpdatePolicyProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
|
|
1021
1086
|
) -> None:
|
|
1022
|
-
'''
|
|
1087
|
+
'''Create a new ``AWS::Batch::ComputeEnvironment``.
|
|
1088
|
+
|
|
1023
1089
|
:param scope: Scope in which this resource is defined.
|
|
1024
1090
|
:param id: Construct identifier for this resource (unique in its scope).
|
|
1025
1091
|
:param type: The type of the compute environment: ``MANAGED`` or ``UNMANAGED`` . For more information, see `Compute Environments <https://docs.aws.amazon.com/batch/latest/userguide/compute_environments.html>`_ in the *AWS Batch User Guide* .
|
|
1026
1092
|
:param compute_environment_name: The name for your compute environment. It can be up to 128 characters long. It can contain uppercase and lowercase letters, numbers, hyphens (-), and underscores (_).
|
|
1027
1093
|
:param compute_resources: The ComputeResources property type specifies details of the compute resources managed by the compute environment. This parameter is required for managed compute environments. For more information, see `Compute Environments <https://docs.aws.amazon.com/batch/latest/userguide/compute_environments.html>`_ in the ** .
|
|
1028
1094
|
:param context: Reserved.
|
|
1029
|
-
:param eks_configuration: The details for the Amazon EKS cluster that supports the compute environment.
|
|
1095
|
+
:param eks_configuration: The details for the Amazon EKS cluster that supports the compute environment. .. epigraph:: To create a compute environment that uses EKS resources, the caller must have permissions to call ``eks:DescribeCluster`` .
|
|
1030
1096
|
:param replace_compute_environment: Specifies whether the compute environment is replaced if an update is made that requires replacing the instances in the compute environment. The default value is ``true`` . To enable more properties to be updated, set this property to ``false`` . When changing the value of this property to ``false`` , do not change any other properties at the same time. If other properties are changed at the same time, and the change needs to be rolled back but it can't, it's possible for the stack to go into the ``UPDATE_ROLLBACK_FAILED`` state. You can't update a stack that is in the ``UPDATE_ROLLBACK_FAILED`` state. However, if you can continue to roll it back, you can return the stack to its original settings and then try to update it again. For more information, see `Continue rolling back an update <https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-continueupdaterollback.html>`_ in the *AWS CloudFormation User Guide* . ``ReplaceComputeEnvironment`` is not applicable for Fargate compute environments. Fargate compute environments are always updated without interruption. The properties that can't be changed without replacing the compute environment are in the ```ComputeResources`` <https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-computeenvironment-computeresources.html>`_ property type: ```AllocationStrategy`` <https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-computeenvironment-computeresources.html#cfn-batch-computeenvironment-computeresources-allocationstrategy>`_ , ```BidPercentage`` <https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-computeenvironment-computeresources.html#cfn-batch-computeenvironment-computeresources-bidpercentage>`_ , ```Ec2Configuration`` <https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-computeenvironment-computeresources.html#cfn-batch-computeenvironment-computeresources-ec2configuration>`_ , ```Ec2KeyPair`` <https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-computeenvironment-computeresources.html#cfn-batch-computeenvironment-computeresources-ec2keypair>`_ , ```Ec2KeyPair`` <https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-computeenvironment-computeresources.html#cfn-batch-computeenvironment-computeresources-ec2keypair>`_ , ```ImageId`` <https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-computeenvironment-computeresources.html#cfn-batch-computeenvironment-computeresources-imageid>`_ , ```InstanceRole`` <https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-computeenvironment-computeresources.html#cfn-batch-computeenvironment-computeresources-instancerole>`_ , ```InstanceTypes`` <https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-computeenvironment-computeresources.html#cfn-batch-computeenvironment-computeresources-instancetypes>`_ , ```LaunchTemplate`` <https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-computeenvironment-computeresources.html#cfn-batch-computeenvironment-computeresources-launchtemplate>`_ , ```MaxvCpus`` <https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-computeenvironment-computeresources.html#cfn-batch-computeenvironment-computeresources-maxvcpus>`_ , ```MinvCpus`` <https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-computeenvironment-computeresources.html#cfn-batch-computeenvironment-computeresources-minvcpus>`_ , ```PlacementGroup`` <https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-computeenvironment-computeresources.html#cfn-batch-computeenvironment-computeresources-placementgroup>`_ , ```SecurityGroupIds`` <https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-computeenvironment-computeresources.html#cfn-batch-computeenvironment-computeresources-securitygroupids>`_ , ```Subnets`` <https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-computeenvironment-computeresources.html#cfn-batch-computeenvironment-computeresources-subnets>`_ , `Tags <https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-computeenvironment-computeresources.html#cfn-batch-computeenvironment-computeresources-tags>`_ , ```Type`` <https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-computeenvironment-computeresources.html#cfn-batch-computeenvironment-computeresources-type>`_ , and ```UpdateToLatestImageVersion`` <https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-computeenvironment-computeresources.html#cfn-batch-computeenvironment-computeresources-updatetolatestimageversion>`_ . Default: - true
|
|
1031
1097
|
:param service_role: The full Amazon Resource Name (ARN) of the IAM role that allows AWS Batch to make calls to other AWS services on your behalf. For more information, see `AWS Batch service IAM role <https://docs.aws.amazon.com/batch/latest/userguide/service_IAM_role.html>`_ in the *AWS Batch User Guide* . .. epigraph:: If your account already created the AWS Batch service-linked role, that role is used by default for your compute environment unless you specify a different role here. If the AWS Batch service-linked role doesn't exist in your account, and no role is specified here, the service attempts to create the AWS Batch service-linked role in your account. If your specified role has a path other than ``/`` , then you must specify either the full role ARN (recommended) or prefix the role name with the path. For example, if a role with the name ``bar`` has a path of ``/foo/`` , specify ``/foo/bar`` as the role name. For more information, see `Friendly names and paths <https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_identifiers.html#identifiers-friendly-names>`_ in the *IAM User Guide* . .. epigraph:: Depending on how you created your AWS Batch service role, its ARN might contain the ``service-role`` path prefix. When you only specify the name of the service role, AWS Batch assumes that your ARN doesn't use the ``service-role`` path prefix. Because of this, we recommend that you specify the full ARN of your service role when you create compute environments.
|
|
1032
1098
|
:param state: The state of the compute environment. If the state is ``ENABLED`` , then the compute environment accepts jobs from a queue and can scale out automatically based on queues. If the state is ``ENABLED`` , then the AWS Batch scheduler can attempt to place jobs from an associated job queue on the compute resources within the environment. If the compute environment is managed, then it can scale its instances out or in automatically, based on the job queue demand. If the state is ``DISABLED`` , then the AWS Batch scheduler doesn't attempt to place jobs within the environment. Jobs in a ``STARTING`` or ``RUNNING`` state continue to progress normally. Managed compute environments in the ``DISABLED`` state don't scale out. .. epigraph:: Compute environments in a ``DISABLED`` state may continue to incur billing charges. To prevent additional charges, turn off and then delete the compute environment. For more information, see `State <https://docs.aws.amazon.com/batch/latest/userguide/compute_environment_parameters.html#compute_environment_state>`_ in the *AWS Batch User Guide* . When an instance is idle, the instance scales down to the ``minvCpus`` value. However, the instance size doesn't change. For example, consider a ``c5.8xlarge`` instance with a ``minvCpus`` value of ``4`` and a ``desiredvCpus`` value of ``36`` . This instance doesn't scale down to a ``c5.large`` instance.
|
|
@@ -1098,6 +1164,12 @@ class CfnComputeEnvironment(
|
|
|
1098
1164
|
def _cfn_properties(self) -> typing.Mapping[builtins.str, typing.Any]:
|
|
1099
1165
|
return typing.cast(typing.Mapping[builtins.str, typing.Any], jsii.get(self, "cfnProperties"))
|
|
1100
1166
|
|
|
1167
|
+
@builtins.property
|
|
1168
|
+
@jsii.member(jsii_name="computeEnvironmentRef")
|
|
1169
|
+
def compute_environment_ref(self) -> _ComputeEnvironmentReference_74ec9988:
|
|
1170
|
+
'''A reference to a ComputeEnvironment resource.'''
|
|
1171
|
+
return typing.cast(_ComputeEnvironmentReference_74ec9988, jsii.get(self, "computeEnvironmentRef"))
|
|
1172
|
+
|
|
1101
1173
|
@builtins.property
|
|
1102
1174
|
@jsii.member(jsii_name="tags")
|
|
1103
1175
|
def tags(self) -> _TagManager_0a598cb3:
|
|
@@ -1331,7 +1403,7 @@ class CfnComputeEnvironment(
|
|
|
1331
1403
|
:param ec2_key_pair: The Amazon EC2 key pair that's used for instances launched in the compute environment. You can use this key pair to log in to your instances with SSH. To remove the Amazon EC2 key pair, set this value to an empty string. When updating a compute environment, changing the Amazon EC2 key pair requires an infrastructure update of the compute environment. For more information, see `Updating compute environments <https://docs.aws.amazon.com/batch/latest/userguide/updating-compute-environments.html>`_ in the *AWS Batch User Guide* . .. epigraph:: This parameter isn't applicable to jobs that are running on Fargate resources. Don't specify it.
|
|
1332
1404
|
:param image_id: The Amazon Machine Image (AMI) ID used for instances launched in the compute environment. This parameter is overridden by the ``imageIdOverride`` member of the ``Ec2Configuration`` structure. To remove the custom AMI ID and use the default AMI ID, set this value to an empty string. When updating a compute environment, changing the AMI ID requires an infrastructure update of the compute environment. For more information, see `Updating compute environments <https://docs.aws.amazon.com/batch/latest/userguide/updating-compute-environments.html>`_ in the *AWS Batch User Guide* . .. epigraph:: This parameter isn't applicable to jobs that are running on Fargate resources. Don't specify it. > The AMI that you choose for a compute environment must match the architecture of the instance types that you intend to use for that compute environment. For example, if your compute environment uses A1 instance types, the compute resource AMI that you choose must support ARM instances. Amazon ECS vends both x86 and ARM versions of the Amazon ECS-optimized Amazon Linux 2 AMI. For more information, see `Amazon ECS-optimized Amazon Linux 2 AMI <https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ecs-optimized_AMI.html#ecs-optimized-ami-linux-variants.html>`_ in the *Amazon Elastic Container Service Developer Guide* .
|
|
1333
1405
|
:param instance_role: The Amazon ECS instance profile applied to Amazon EC2 instances in a compute environment. Required for Amazon EC2 instances. You can specify the short name or full Amazon Resource Name (ARN) of an instance profile. For example, ``*ecsInstanceRole*`` or ``arn:aws:iam:: *<aws_account_id>* :instance-profile/ *ecsInstanceRole*`` . For more information, see `Amazon ECS instance role <https://docs.aws.amazon.com/batch/latest/userguide/instance_IAM_role.html>`_ in the *AWS Batch User Guide* . When updating a compute environment, changing this setting requires an infrastructure update of the compute environment. For more information, see `Updating compute environments <https://docs.aws.amazon.com/batch/latest/userguide/updating-compute-environments.html>`_ in the *AWS Batch User Guide* . .. epigraph:: This parameter isn't applicable to jobs that are running on Fargate resources. Don't specify it.
|
|
1334
|
-
:param instance_types: The instances types that can be launched. You can specify instance families to launch any instance type within those families (for example, ``c5`` or ``p3`` ), or you can specify specific sizes within a family (such as ``c5.8xlarge`` ).
|
|
1406
|
+
:param instance_types: The instances types that can be launched. You can specify instance families to launch any instance type within those families (for example, ``c5`` or ``p3`` ), or you can specify specific sizes within a family (such as ``c5.8xlarge`` ). AWS Batch can select the instance type for you if you choose one of the following: - ``optimal`` to select instance types (from the ``c4`` , ``m4`` , ``r4`` , ``c5`` , ``m5`` , and ``r5`` instance families) that match the demand of your job queues. - ``default_x86_64`` to choose x86 based instance types (from the ``m6i`` , ``c6i`` , ``r6i`` , and ``c7i`` instance families) that matches the resource demands of the job queue. - ``default_arm64`` to choose x86 based instance types (from the ``m6g`` , ``c6g`` , ``r6g`` , and ``c7g`` instance families) that matches the resource demands of the job queue. .. epigraph:: Starting on 11/01/2025 the behavior of ``optimal`` is going to be changed to match ``default_x86_64`` . During the change your instance families could be updated to a newer generation. You do not need to perform any actions for the upgrade to happen. For more information about change, see `Optimal instance type configuration to receive automatic instance family updates <https://docs.aws.amazon.com/batch/latest/userguide/optimal-default-instance-troubleshooting.html>`_ . > Instance family availability varies by AWS Region . For example, some AWS Region s may not have any fourth generation instance families but have fifth and sixth generation instance families. When using ``default_x86_64`` or ``default_arm64`` instance bundles, AWS Batch selects instance families based on a balance of cost-effectiveness and performance. While newer generation instances often provide better price-performance, AWS Batch may choose an earlier generation instance family if it provides the optimal combination of availability, cost, and performance for your workload. For example, in an AWS Region where both c6i and c7i instances are available, AWS Batch might select c6i instances if they offer better cost-effectiveness for your specific job requirements. For more information on AWS Batch instance types and AWS Region availability, see `Instance type compute table <https://docs.aws.amazon.com/batch/latest/userguide/instance-type-compute-table.html>`_ in the *AWS Batch User Guide* . AWS Batch periodically updates your instances in default bundles to newer, more cost-effective options. Updates happen automatically without requiring any action from you. Your workloads continue running during updates with no interruption > This parameter isn't applicable to jobs that are running on Fargate resources. Don't specify it. > When you create a compute environment, the instance types that you select for the compute environment must share the same architecture. For example, you can't mix x86 and ARM instances in the same compute environment.
|
|
1335
1407
|
:param launch_template: The launch template to use for your compute resources. Any other compute resource parameters that you specify in a `CreateComputeEnvironment <https://docs.aws.amazon.com/batch/latest/APIReference/API_CreateComputeEnvironment.html>`_ API operation override the same parameters in the launch template. You must specify either the launch template ID or launch template name in the request, but not both. For more information, see `Launch Template Support <https://docs.aws.amazon.com/batch/latest/userguide/launch-templates.html>`_ in the ** . Removing the launch template from a compute environment will not remove the AMI specified in the launch template. In order to update the AMI specified in a launch template, the ``updateToLatestImageVersion`` parameter must be set to ``true`` . When updating a compute environment, changing the launch template requires an infrastructure update of the compute environment. For more information, see `Updating compute environments <https://docs.aws.amazon.com/batch/latest/userguide/updating-compute-environments.html>`_ in the ** . .. epigraph:: This parameter isn't applicable to jobs running on Fargate resources, and shouldn't be specified.
|
|
1336
1408
|
:param minv_cpus: The minimum number of vCPUs that an environment should maintain (even if the compute environment is ``DISABLED`` ). .. epigraph:: This parameter isn't applicable to jobs that are running on Fargate resources. Don't specify it.
|
|
1337
1409
|
:param placement_group: The Amazon EC2 placement group to associate with your compute resources. If you intend to submit multi-node parallel jobs to your compute environment, you should consider creating a cluster placement group and associate it with your compute resources. This keeps your multi-node parallel job on a logical grouping of instances within a single Availability Zone with high network flow potential. For more information, see `Placement groups <https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/placement-groups.html>`_ in the *Amazon EC2 User Guide for Linux Instances* . When updating a compute environment, changing the placement group requires an infrastructure update of the compute environment. For more information, see `Updating compute environments <https://docs.aws.amazon.com/batch/latest/userguide/updating-compute-environments.html>`_ in the *AWS Batch User Guide* . .. epigraph:: This parameter isn't applicable to jobs that are running on Fargate resources. Don't specify it.
|
|
@@ -1376,8 +1448,10 @@ class CfnComputeEnvironment(
|
|
|
1376
1448
|
launch_template_id="launchTemplateId",
|
|
1377
1449
|
launch_template_name="launchTemplateName",
|
|
1378
1450
|
target_instance_types=["targetInstanceTypes"],
|
|
1451
|
+
userdata_type="userdataType",
|
|
1379
1452
|
version="version"
|
|
1380
1453
|
)],
|
|
1454
|
+
userdata_type="userdataType",
|
|
1381
1455
|
version="version"
|
|
1382
1456
|
),
|
|
1383
1457
|
minv_cpus=123,
|
|
@@ -1628,12 +1702,21 @@ class CfnComputeEnvironment(
|
|
|
1628
1702
|
def instance_types(self) -> typing.Optional[typing.List[builtins.str]]:
|
|
1629
1703
|
'''The instances types that can be launched.
|
|
1630
1704
|
|
|
1631
|
-
You can specify instance families to launch any instance type within those families (for example, ``c5`` or ``p3`` ), or you can specify specific sizes within a family (such as ``c5.8xlarge`` ).
|
|
1705
|
+
You can specify instance families to launch any instance type within those families (for example, ``c5`` or ``p3`` ), or you can specify specific sizes within a family (such as ``c5.8xlarge`` ).
|
|
1706
|
+
|
|
1707
|
+
AWS Batch can select the instance type for you if you choose one of the following:
|
|
1708
|
+
|
|
1709
|
+
- ``optimal`` to select instance types (from the ``c4`` , ``m4`` , ``r4`` , ``c5`` , ``m5`` , and ``r5`` instance families) that match the demand of your job queues.
|
|
1710
|
+
- ``default_x86_64`` to choose x86 based instance types (from the ``m6i`` , ``c6i`` , ``r6i`` , and ``c7i`` instance families) that matches the resource demands of the job queue.
|
|
1711
|
+
- ``default_arm64`` to choose x86 based instance types (from the ``m6g`` , ``c6g`` , ``r6g`` , and ``c7g`` instance families) that matches the resource demands of the job queue.
|
|
1632
1712
|
|
|
1633
|
-
When updating a compute environment, changing this setting requires an infrastructure update of the compute environment. For more information, see `Updating compute environments <https://docs.aws.amazon.com/batch/latest/userguide/updating-compute-environments.html>`_ in the *AWS Batch User Guide* .
|
|
1634
1713
|
.. epigraph::
|
|
1635
1714
|
|
|
1636
|
-
|
|
1715
|
+
Starting on 11/01/2025 the behavior of ``optimal`` is going to be changed to match ``default_x86_64`` . During the change your instance families could be updated to a newer generation. You do not need to perform any actions for the upgrade to happen. For more information about change, see `Optimal instance type configuration to receive automatic instance family updates <https://docs.aws.amazon.com/batch/latest/userguide/optimal-default-instance-troubleshooting.html>`_ . > Instance family availability varies by AWS Region . For example, some AWS Region s may not have any fourth generation instance families but have fifth and sixth generation instance families.
|
|
1716
|
+
|
|
1717
|
+
When using ``default_x86_64`` or ``default_arm64`` instance bundles, AWS Batch selects instance families based on a balance of cost-effectiveness and performance. While newer generation instances often provide better price-performance, AWS Batch may choose an earlier generation instance family if it provides the optimal combination of availability, cost, and performance for your workload. For example, in an AWS Region where both c6i and c7i instances are available, AWS Batch might select c6i instances if they offer better cost-effectiveness for your specific job requirements. For more information on AWS Batch instance types and AWS Region availability, see `Instance type compute table <https://docs.aws.amazon.com/batch/latest/userguide/instance-type-compute-table.html>`_ in the *AWS Batch User Guide* .
|
|
1718
|
+
|
|
1719
|
+
AWS Batch periodically updates your instances in default bundles to newer, more cost-effective options. Updates happen automatically without requiring any action from you. Your workloads continue running during updates with no interruption > This parameter isn't applicable to jobs that are running on Fargate resources. Don't specify it. > When you create a compute environment, the instance types that you select for the compute environment must share the same architecture. For example, you can't mix x86 and ARM instances in the same compute environment.
|
|
1637
1720
|
|
|
1638
1721
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-computeenvironment-computeresources.html#cfn-batch-computeenvironment-computeresources-instancetypes
|
|
1639
1722
|
'''
|
|
@@ -1785,7 +1868,7 @@ class CfnComputeEnvironment(
|
|
|
1785
1868
|
|
|
1786
1869
|
This object isn't applicable to jobs that are running on Fargate resources.
|
|
1787
1870
|
|
|
1788
|
-
:param image_type: The image type to match with the instance type to select an AMI. The supported values are different for ``ECS`` and ``EKS`` resources. - **ECS** - If the ``imageIdOverride`` parameter isn't specified, then a recent `Amazon ECS-optimized Amazon Linux 2 AMI <https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ecs-optimized_AMI.html#al2ami>`_ ( ``ECS_AL2`` ) is used. If a new image type is specified in an update, but neither an ``imageId`` nor a ``imageIdOverride`` parameter is specified, then the latest Amazon ECS optimized AMI for that image type that's supported by AWS Batch is used. - **ECS_AL2** - `Amazon Linux 2 <https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ecs-optimized_AMI.html#al2ami>`_ : Default for all non-GPU instance families. - **ECS_AL2_NVIDIA** - `Amazon Linux 2 (GPU) <https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ecs-optimized_AMI.html#gpuami>`_ : Default for all GPU instance families (for example ``P4`` and ``G4`` ) and can be used for all non AWS Graviton-based instance types. - **ECS_AL2023** - `Amazon Linux 2023 <https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ecs-optimized_AMI.html>`_ : AWS Batch supports Amazon Linux 2023. .. epigraph:: Amazon Linux 2023 does not support ``A1`` instances. - **
|
|
1871
|
+
:param image_type: The image type to match with the instance type to select an AMI. The supported values are different for ``ECS`` and ``EKS`` resources. - **ECS** - If the ``imageIdOverride`` parameter isn't specified, then a recent `Amazon ECS-optimized Amazon Linux 2 AMI <https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ecs-optimized_AMI.html#al2ami>`_ ( ``ECS_AL2`` ) is used. If a new image type is specified in an update, but neither an ``imageId`` nor a ``imageIdOverride`` parameter is specified, then the latest Amazon ECS optimized AMI for that image type that's supported by AWS Batch is used. .. epigraph:: AWS will end support for Amazon ECS optimized AL2-optimized and AL2-accelerated AMIs. Starting in January 2026, AWS Batch will change the default AMI for new Amazon ECS compute environments from Amazon Linux 2 to Amazon Linux 2023. We recommend migrating AWS Batch Amazon ECS compute environments to Amazon Linux 2023 to maintain optimal performance and security. For more information on upgrading from AL2 to AL2023, see `How to migrate from ECS AL2 to ECS AL2023 <https://docs.aws.amazon.com/batch/latest/userguide/ecs-migration-2023.html>`_ in the *AWS Batch User Guide* . - **ECS_AL2** - `Amazon Linux 2 <https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ecs-optimized_AMI.html#al2ami>`_ : Default for all non-GPU instance families. - **ECS_AL2_NVIDIA** - `Amazon Linux 2 (GPU) <https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ecs-optimized_AMI.html#gpuami>`_ : Default for all GPU instance families (for example ``P4`` and ``G4`` ) and can be used for all non AWS Graviton-based instance types. - **ECS_AL2023** - `Amazon Linux 2023 <https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ecs-optimized_AMI.html>`_ : AWS Batch supports Amazon Linux 2023. .. epigraph:: Amazon Linux 2023 does not support ``A1`` instances. - **ECS_AL2023_NVIDIA** - `Amazon Linux 2023 (GPU) <https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ecs-optimized_AMI.html#gpuami>`_ : For all GPU instance families and can be used for all non AWS Graviton-based instance types. .. epigraph:: ECS_AL2023_NVIDIA doesn't support ``p3`` and ``g3`` instance types. - **EKS** - If the ``imageIdOverride`` parameter isn't specified, then a recent `Amazon EKS-optimized Amazon Linux AMI <https://docs.aws.amazon.com/eks/latest/userguide/eks-optimized-ami.html>`_ ( ``EKS_AL2`` ) is used. If a new image type is specified in an update, but neither an ``imageId`` nor a ``imageIdOverride`` parameter is specified, then the latest Amazon EKS optimized AMI for that image type that AWS Batch supports is used. .. epigraph:: Starting end of October 2025 Amazon EKS optimized Amazon Linux 2023 AMIs will be the default on AWS Batch for EKS versions prior to 1.33. Starting from Kubernetes version 1.33, EKS optimized Amazon Linux 2023 AMIs will be the default when it becomes supported on AWS Batch . AWS will end support for Amazon EKS AL2-optimized and AL2-accelerated AMIs, starting 11/26/25. You can continue using AWS Batch -provided Amazon EKS optimized Amazon Linux 2 AMIs on your Amazon EKS compute environments beyond the 11/26/25 end-of-support date, these compute environments will no longer receive any new software updates, security patches, or bug fixes from AWS . For more information on upgrading from AL2 to AL2023, see `How to upgrade from EKS AL2 to EKS AL2023 <https://docs.aws.amazon.com/batch/latest/userguide/eks-migration-2023.html>`_ in the *AWS Batch User Guide* . - **EKS_AL2** - `Amazon Linux 2 <https://docs.aws.amazon.com/eks/latest/userguide/eks-optimized-ami.html>`_ : Default for all non-GPU instance families. - **EKS_AL2_NVIDIA** - `Amazon Linux 2 (accelerated) <https://docs.aws.amazon.com/eks/latest/userguide/eks-optimized-ami.html>`_ : Default for all GPU instance families (for example, ``P4`` and ``G4`` ) and can be used for all non AWS Graviton-based instance types. - **EKS_AL2023** - `Amazon Linux 2023 <https://docs.aws.amazon.com/eks/latest/userguide/eks-optimized-ami.html>`_ : AWS Batch supports Amazon Linux 2023. .. epigraph:: Amazon Linux 2023 does not support ``A1`` instances. - **EKS_AL2023_NVIDIA** - `Amazon Linux 2023 (accelerated) <https://docs.aws.amazon.com/eks/latest/userguide/eks-optimized-ami.html>`_ : GPU instance families and can be used for all non AWS Graviton-based instance types.
|
|
1789
1872
|
:param image_id_override: The AMI ID used for instances launched in the compute environment that match the image type. This setting overrides the ``imageId`` set in the ``computeResource`` object. .. epigraph:: The AMI that you choose for a compute environment must match the architecture of the instance types that you intend to use for that compute environment. For example, if your compute environment uses A1 instance types, the compute resource AMI that you choose must support ARM instances. Amazon ECS vends both x86 and ARM versions of the Amazon ECS-optimized Amazon Linux 2 AMI. For more information, see `Amazon ECS-optimized Amazon Linux 2 AMI <https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ecs-optimized_AMI.html#ecs-optimized-ami-linux-variants.html>`_ in the *Amazon Elastic Container Service Developer Guide* .
|
|
1790
1873
|
:param image_kubernetes_version: The Kubernetes version for the compute environment. If you don't specify a value, the latest version that AWS Batch supports is used.
|
|
1791
1874
|
|
|
@@ -1826,6 +1909,11 @@ class CfnComputeEnvironment(
|
|
|
1826
1909
|
The supported values are different for ``ECS`` and ``EKS`` resources.
|
|
1827
1910
|
|
|
1828
1911
|
- **ECS** - If the ``imageIdOverride`` parameter isn't specified, then a recent `Amazon ECS-optimized Amazon Linux 2 AMI <https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ecs-optimized_AMI.html#al2ami>`_ ( ``ECS_AL2`` ) is used. If a new image type is specified in an update, but neither an ``imageId`` nor a ``imageIdOverride`` parameter is specified, then the latest Amazon ECS optimized AMI for that image type that's supported by AWS Batch is used.
|
|
1912
|
+
|
|
1913
|
+
.. epigraph::
|
|
1914
|
+
|
|
1915
|
+
AWS will end support for Amazon ECS optimized AL2-optimized and AL2-accelerated AMIs. Starting in January 2026, AWS Batch will change the default AMI for new Amazon ECS compute environments from Amazon Linux 2 to Amazon Linux 2023. We recommend migrating AWS Batch Amazon ECS compute environments to Amazon Linux 2023 to maintain optimal performance and security. For more information on upgrading from AL2 to AL2023, see `How to migrate from ECS AL2 to ECS AL2023 <https://docs.aws.amazon.com/batch/latest/userguide/ecs-migration-2023.html>`_ in the *AWS Batch User Guide* .
|
|
1916
|
+
|
|
1829
1917
|
- **ECS_AL2** - `Amazon Linux 2 <https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ecs-optimized_AMI.html#al2ami>`_ : Default for all non-GPU instance families.
|
|
1830
1918
|
- **ECS_AL2_NVIDIA** - `Amazon Linux 2 (GPU) <https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ecs-optimized_AMI.html#gpuami>`_ : Default for all GPU instance families (for example ``P4`` and ``G4`` ) and can be used for all non AWS Graviton-based instance types.
|
|
1831
1919
|
- **ECS_AL2023** - `Amazon Linux 2023 <https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ecs-optimized_AMI.html>`_ : AWS Batch supports Amazon Linux 2023.
|
|
@@ -1834,10 +1922,29 @@ class CfnComputeEnvironment(
|
|
|
1834
1922
|
|
|
1835
1923
|
Amazon Linux 2023 does not support ``A1`` instances.
|
|
1836
1924
|
|
|
1837
|
-
- **
|
|
1925
|
+
- **ECS_AL2023_NVIDIA** - `Amazon Linux 2023 (GPU) <https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ecs-optimized_AMI.html#gpuami>`_ : For all GPU instance families and can be used for all non AWS Graviton-based instance types.
|
|
1926
|
+
|
|
1927
|
+
.. epigraph::
|
|
1928
|
+
|
|
1929
|
+
ECS_AL2023_NVIDIA doesn't support ``p3`` and ``g3`` instance types.
|
|
1930
|
+
|
|
1838
1931
|
- **EKS** - If the ``imageIdOverride`` parameter isn't specified, then a recent `Amazon EKS-optimized Amazon Linux AMI <https://docs.aws.amazon.com/eks/latest/userguide/eks-optimized-ami.html>`_ ( ``EKS_AL2`` ) is used. If a new image type is specified in an update, but neither an ``imageId`` nor a ``imageIdOverride`` parameter is specified, then the latest Amazon EKS optimized AMI for that image type that AWS Batch supports is used.
|
|
1932
|
+
|
|
1933
|
+
.. epigraph::
|
|
1934
|
+
|
|
1935
|
+
Starting end of October 2025 Amazon EKS optimized Amazon Linux 2023 AMIs will be the default on AWS Batch for EKS versions prior to 1.33. Starting from Kubernetes version 1.33, EKS optimized Amazon Linux 2023 AMIs will be the default when it becomes supported on AWS Batch .
|
|
1936
|
+
|
|
1937
|
+
AWS will end support for Amazon EKS AL2-optimized and AL2-accelerated AMIs, starting 11/26/25. You can continue using AWS Batch -provided Amazon EKS optimized Amazon Linux 2 AMIs on your Amazon EKS compute environments beyond the 11/26/25 end-of-support date, these compute environments will no longer receive any new software updates, security patches, or bug fixes from AWS . For more information on upgrading from AL2 to AL2023, see `How to upgrade from EKS AL2 to EKS AL2023 <https://docs.aws.amazon.com/batch/latest/userguide/eks-migration-2023.html>`_ in the *AWS Batch User Guide* .
|
|
1938
|
+
|
|
1839
1939
|
- **EKS_AL2** - `Amazon Linux 2 <https://docs.aws.amazon.com/eks/latest/userguide/eks-optimized-ami.html>`_ : Default for all non-GPU instance families.
|
|
1840
1940
|
- **EKS_AL2_NVIDIA** - `Amazon Linux 2 (accelerated) <https://docs.aws.amazon.com/eks/latest/userguide/eks-optimized-ami.html>`_ : Default for all GPU instance families (for example, ``P4`` and ``G4`` ) and can be used for all non AWS Graviton-based instance types.
|
|
1941
|
+
- **EKS_AL2023** - `Amazon Linux 2023 <https://docs.aws.amazon.com/eks/latest/userguide/eks-optimized-ami.html>`_ : AWS Batch supports Amazon Linux 2023.
|
|
1942
|
+
|
|
1943
|
+
.. epigraph::
|
|
1944
|
+
|
|
1945
|
+
Amazon Linux 2023 does not support ``A1`` instances.
|
|
1946
|
+
|
|
1947
|
+
- **EKS_AL2023_NVIDIA** - `Amazon Linux 2023 (accelerated) <https://docs.aws.amazon.com/eks/latest/userguide/eks-optimized-ami.html>`_ : GPU instance families and can be used for all non AWS Graviton-based instance types.
|
|
1841
1948
|
|
|
1842
1949
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-computeenvironment-ec2configurationobject.html#cfn-batch-computeenvironment-ec2configurationobject-imagetype
|
|
1843
1950
|
'''
|
|
@@ -1968,6 +2075,7 @@ class CfnComputeEnvironment(
|
|
|
1968
2075
|
"launch_template_id": "launchTemplateId",
|
|
1969
2076
|
"launch_template_name": "launchTemplateName",
|
|
1970
2077
|
"target_instance_types": "targetInstanceTypes",
|
|
2078
|
+
"userdata_type": "userdataType",
|
|
1971
2079
|
"version": "version",
|
|
1972
2080
|
},
|
|
1973
2081
|
)
|
|
@@ -1978,6 +2086,7 @@ class CfnComputeEnvironment(
|
|
|
1978
2086
|
launch_template_id: typing.Optional[builtins.str] = None,
|
|
1979
2087
|
launch_template_name: typing.Optional[builtins.str] = None,
|
|
1980
2088
|
target_instance_types: typing.Optional[typing.Sequence[builtins.str]] = None,
|
|
2089
|
+
userdata_type: typing.Optional[builtins.str] = None,
|
|
1981
2090
|
version: typing.Optional[builtins.str] = None,
|
|
1982
2091
|
) -> None:
|
|
1983
2092
|
'''An object that represents a launch template to use in place of the default launch template.
|
|
@@ -1993,7 +2102,8 @@ class CfnComputeEnvironment(
|
|
|
1993
2102
|
|
|
1994
2103
|
:param launch_template_id: The ID of the launch template. *Note:* If you specify the ``launchTemplateId`` you can't specify the ``launchTemplateName`` as well.
|
|
1995
2104
|
:param launch_template_name: The name of the launch template. *Note:* If you specify the ``launchTemplateName`` you can't specify the ``launchTemplateId`` as well.
|
|
1996
|
-
:param target_instance_types: The instance type or family that this override launch template should be applied to. This parameter is required when defining a launch template override. Information included in this parameter must meet the following requirements: - Must be a valid Amazon EC2 instance type or family. - ``optimal``
|
|
2105
|
+
:param target_instance_types: The instance type or family that this override launch template should be applied to. This parameter is required when defining a launch template override. Information included in this parameter must meet the following requirements: - Must be a valid Amazon EC2 instance type or family. - The following AWS Batch ``InstanceTypes`` are not allowed: ``optimal`` , ``default_x86_64`` , and ``default_arm64`` . - ``targetInstanceTypes`` can target only instance types and families that are included within the ```ComputeResource.instanceTypes`` <https://docs.aws.amazon.com/batch/latest/APIReference/API_ComputeResource.html#Batch-Type-ComputeResource-instanceTypes>`_ set. ``targetInstanceTypes`` doesn't need to include all of the instances from the ``instanceType`` set, but at least a subset. For example, if ``ComputeResource.instanceTypes`` includes ``[m5, g5]`` , ``targetInstanceTypes`` can include ``[m5.2xlarge]`` and ``[m5.large]`` but not ``[c5.large]`` . - ``targetInstanceTypes`` included within the same launch template override or across launch template overrides can't overlap for the same compute environment. For example, you can't define one launch template override to target an instance family and another define an instance type within this same family.
|
|
2106
|
+
:param userdata_type: The EKS node initialization process to use. You only need to specify this value if you are using a custom AMI. The default value is ``EKS_BOOTSTRAP_SH`` . If *imageType* is a custom AMI based on EKS_AL2023 or EKS_AL2023_NVIDIA then you must choose ``EKS_NODEADM`` .
|
|
1997
2107
|
:param version: The version number of the launch template, ``$Default`` , or ``$Latest`` . If the value is ``$Default`` , the default version of the launch template is used. If the value is ``$Latest`` , the latest version of the launch template is used. .. epigraph:: If the AMI ID that's used in a compute environment is from the launch template, the AMI isn't changed when the compute environment is updated. It's only changed if the ``updateToLatestImageVersion`` parameter for the compute environment is set to ``true`` . During an infrastructure update, if either ``$Default`` or ``$Latest`` is specified, AWS Batch re-evaluates the launch template version, and it might use a different version of the launch template. This is the case even if the launch template isn't specified in the update. When updating a compute environment, changing the launch template requires an infrastructure update of the compute environment. For more information, see `Updating compute environments <https://docs.aws.amazon.com/batch/latest/userguide/updating-compute-environments.html>`_ in the *AWS Batch User Guide* . Default: ``$Default`` Latest: ``$Latest``
|
|
1998
2108
|
|
|
1999
2109
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-computeenvironment-launchtemplatespecificationoverride.html
|
|
@@ -2009,6 +2119,7 @@ class CfnComputeEnvironment(
|
|
|
2009
2119
|
launch_template_id="launchTemplateId",
|
|
2010
2120
|
launch_template_name="launchTemplateName",
|
|
2011
2121
|
target_instance_types=["targetInstanceTypes"],
|
|
2122
|
+
userdata_type="userdataType",
|
|
2012
2123
|
version="version"
|
|
2013
2124
|
)
|
|
2014
2125
|
'''
|
|
@@ -2017,6 +2128,7 @@ class CfnComputeEnvironment(
|
|
|
2017
2128
|
check_type(argname="argument launch_template_id", value=launch_template_id, expected_type=type_hints["launch_template_id"])
|
|
2018
2129
|
check_type(argname="argument launch_template_name", value=launch_template_name, expected_type=type_hints["launch_template_name"])
|
|
2019
2130
|
check_type(argname="argument target_instance_types", value=target_instance_types, expected_type=type_hints["target_instance_types"])
|
|
2131
|
+
check_type(argname="argument userdata_type", value=userdata_type, expected_type=type_hints["userdata_type"])
|
|
2020
2132
|
check_type(argname="argument version", value=version, expected_type=type_hints["version"])
|
|
2021
2133
|
self._values: typing.Dict[builtins.str, typing.Any] = {}
|
|
2022
2134
|
if launch_template_id is not None:
|
|
@@ -2025,6 +2137,8 @@ class CfnComputeEnvironment(
|
|
|
2025
2137
|
self._values["launch_template_name"] = launch_template_name
|
|
2026
2138
|
if target_instance_types is not None:
|
|
2027
2139
|
self._values["target_instance_types"] = target_instance_types
|
|
2140
|
+
if userdata_type is not None:
|
|
2141
|
+
self._values["userdata_type"] = userdata_type
|
|
2028
2142
|
if version is not None:
|
|
2029
2143
|
self._values["version"] = version
|
|
2030
2144
|
|
|
@@ -2059,7 +2173,7 @@ class CfnComputeEnvironment(
|
|
|
2059
2173
|
Information included in this parameter must meet the following requirements:
|
|
2060
2174
|
|
|
2061
2175
|
- Must be a valid Amazon EC2 instance type or family.
|
|
2062
|
-
- ``optimal``
|
|
2176
|
+
- The following AWS Batch ``InstanceTypes`` are not allowed: ``optimal`` , ``default_x86_64`` , and ``default_arm64`` .
|
|
2063
2177
|
- ``targetInstanceTypes`` can target only instance types and families that are included within the ```ComputeResource.instanceTypes`` <https://docs.aws.amazon.com/batch/latest/APIReference/API_ComputeResource.html#Batch-Type-ComputeResource-instanceTypes>`_ set. ``targetInstanceTypes`` doesn't need to include all of the instances from the ``instanceType`` set, but at least a subset. For example, if ``ComputeResource.instanceTypes`` includes ``[m5, g5]`` , ``targetInstanceTypes`` can include ``[m5.2xlarge]`` and ``[m5.large]`` but not ``[c5.large]`` .
|
|
2064
2178
|
- ``targetInstanceTypes`` included within the same launch template override or across launch template overrides can't overlap for the same compute environment. For example, you can't define one launch template override to target an instance family and another define an instance type within this same family.
|
|
2065
2179
|
|
|
@@ -2068,6 +2182,17 @@ class CfnComputeEnvironment(
|
|
|
2068
2182
|
result = self._values.get("target_instance_types")
|
|
2069
2183
|
return typing.cast(typing.Optional[typing.List[builtins.str]], result)
|
|
2070
2184
|
|
|
2185
|
+
@builtins.property
|
|
2186
|
+
def userdata_type(self) -> typing.Optional[builtins.str]:
|
|
2187
|
+
'''The EKS node initialization process to use.
|
|
2188
|
+
|
|
2189
|
+
You only need to specify this value if you are using a custom AMI. The default value is ``EKS_BOOTSTRAP_SH`` . If *imageType* is a custom AMI based on EKS_AL2023 or EKS_AL2023_NVIDIA then you must choose ``EKS_NODEADM`` .
|
|
2190
|
+
|
|
2191
|
+
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-computeenvironment-launchtemplatespecificationoverride.html#cfn-batch-computeenvironment-launchtemplatespecificationoverride-userdatatype
|
|
2192
|
+
'''
|
|
2193
|
+
result = self._values.get("userdata_type")
|
|
2194
|
+
return typing.cast(typing.Optional[builtins.str], result)
|
|
2195
|
+
|
|
2071
2196
|
@builtins.property
|
|
2072
2197
|
def version(self) -> typing.Optional[builtins.str]:
|
|
2073
2198
|
'''The version number of the launch template, ``$Default`` , or ``$Latest`` .
|
|
@@ -2104,6 +2229,7 @@ class CfnComputeEnvironment(
|
|
|
2104
2229
|
"launch_template_id": "launchTemplateId",
|
|
2105
2230
|
"launch_template_name": "launchTemplateName",
|
|
2106
2231
|
"overrides": "overrides",
|
|
2232
|
+
"userdata_type": "userdataType",
|
|
2107
2233
|
"version": "version",
|
|
2108
2234
|
},
|
|
2109
2235
|
)
|
|
@@ -2114,6 +2240,7 @@ class CfnComputeEnvironment(
|
|
|
2114
2240
|
launch_template_id: typing.Optional[builtins.str] = None,
|
|
2115
2241
|
launch_template_name: typing.Optional[builtins.str] = None,
|
|
2116
2242
|
overrides: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union["CfnComputeEnvironment.LaunchTemplateSpecificationOverrideProperty", typing.Dict[builtins.str, typing.Any]]]]]] = None,
|
|
2243
|
+
userdata_type: typing.Optional[builtins.str] = None,
|
|
2117
2244
|
version: typing.Optional[builtins.str] = None,
|
|
2118
2245
|
) -> None:
|
|
2119
2246
|
'''An object that represents a launch template that's associated with a compute resource.
|
|
@@ -2128,6 +2255,7 @@ class CfnComputeEnvironment(
|
|
|
2128
2255
|
:param launch_template_id: The ID of the launch template.
|
|
2129
2256
|
:param launch_template_name: The name of the launch template.
|
|
2130
2257
|
:param overrides: A launch template to use in place of the default launch template. You must specify either the launch template ID or launch template name in the request, but not both. You can specify up to ten (10) launch template overrides that are associated to unique instance types or families for each compute environment. .. epigraph:: To unset all override templates for a compute environment, you can pass an empty array to the `UpdateComputeEnvironment.overrides <https://docs.aws.amazon.com/batch/latest/APIReference/API_UpdateComputeEnvironment.html>`_ parameter, or not include the ``overrides`` parameter when submitting the ``UpdateComputeEnvironment`` API operation.
|
|
2258
|
+
:param userdata_type: The EKS node initialization process to use. You only need to specify this value if you are using a custom AMI. The default value is ``EKS_BOOTSTRAP_SH`` . If *imageType* is a custom AMI based on EKS_AL2023 or EKS_AL2023_NVIDIA then you must choose ``EKS_NODEADM`` .
|
|
2131
2259
|
:param version: The version number of the launch template, ``$Default`` , or ``$Latest`` . If the value is ``$Default`` , the default version of the launch template is used. If the value is ``$Latest`` , the latest version of the launch template is used. .. epigraph:: If the AMI ID that's used in a compute environment is from the launch template, the AMI isn't changed when the compute environment is updated. It's only changed if the ``updateToLatestImageVersion`` parameter for the compute environment is set to ``true`` . During an infrastructure update, if either ``$Default`` or ``$Latest`` is specified, AWS Batch re-evaluates the launch template version, and it might use a different version of the launch template. This is the case even if the launch template isn't specified in the update. When updating a compute environment, changing the launch template requires an infrastructure update of the compute environment. For more information, see `Updating compute environments <https://docs.aws.amazon.com/batch/latest/userguide/updating-compute-environments.html>`_ in the *AWS Batch User Guide* . Default: ``$Default`` Latest: ``$Latest``
|
|
2132
2260
|
|
|
2133
2261
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-computeenvironment-launchtemplatespecification.html
|
|
@@ -2146,8 +2274,10 @@ class CfnComputeEnvironment(
|
|
|
2146
2274
|
launch_template_id="launchTemplateId",
|
|
2147
2275
|
launch_template_name="launchTemplateName",
|
|
2148
2276
|
target_instance_types=["targetInstanceTypes"],
|
|
2277
|
+
userdata_type="userdataType",
|
|
2149
2278
|
version="version"
|
|
2150
2279
|
)],
|
|
2280
|
+
userdata_type="userdataType",
|
|
2151
2281
|
version="version"
|
|
2152
2282
|
)
|
|
2153
2283
|
'''
|
|
@@ -2156,6 +2286,7 @@ class CfnComputeEnvironment(
|
|
|
2156
2286
|
check_type(argname="argument launch_template_id", value=launch_template_id, expected_type=type_hints["launch_template_id"])
|
|
2157
2287
|
check_type(argname="argument launch_template_name", value=launch_template_name, expected_type=type_hints["launch_template_name"])
|
|
2158
2288
|
check_type(argname="argument overrides", value=overrides, expected_type=type_hints["overrides"])
|
|
2289
|
+
check_type(argname="argument userdata_type", value=userdata_type, expected_type=type_hints["userdata_type"])
|
|
2159
2290
|
check_type(argname="argument version", value=version, expected_type=type_hints["version"])
|
|
2160
2291
|
self._values: typing.Dict[builtins.str, typing.Any] = {}
|
|
2161
2292
|
if launch_template_id is not None:
|
|
@@ -2164,6 +2295,8 @@ class CfnComputeEnvironment(
|
|
|
2164
2295
|
self._values["launch_template_name"] = launch_template_name
|
|
2165
2296
|
if overrides is not None:
|
|
2166
2297
|
self._values["overrides"] = overrides
|
|
2298
|
+
if userdata_type is not None:
|
|
2299
|
+
self._values["userdata_type"] = userdata_type
|
|
2167
2300
|
if version is not None:
|
|
2168
2301
|
self._values["version"] = version
|
|
2169
2302
|
|
|
@@ -2203,6 +2336,17 @@ class CfnComputeEnvironment(
|
|
|
2203
2336
|
result = self._values.get("overrides")
|
|
2204
2337
|
return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, "CfnComputeEnvironment.LaunchTemplateSpecificationOverrideProperty"]]]], result)
|
|
2205
2338
|
|
|
2339
|
+
@builtins.property
|
|
2340
|
+
def userdata_type(self) -> typing.Optional[builtins.str]:
|
|
2341
|
+
'''The EKS node initialization process to use.
|
|
2342
|
+
|
|
2343
|
+
You only need to specify this value if you are using a custom AMI. The default value is ``EKS_BOOTSTRAP_SH`` . If *imageType* is a custom AMI based on EKS_AL2023 or EKS_AL2023_NVIDIA then you must choose ``EKS_NODEADM`` .
|
|
2344
|
+
|
|
2345
|
+
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-computeenvironment-launchtemplatespecification.html#cfn-batch-computeenvironment-launchtemplatespecification-userdatatype
|
|
2346
|
+
'''
|
|
2347
|
+
result = self._values.get("userdata_type")
|
|
2348
|
+
return typing.cast(typing.Optional[builtins.str], result)
|
|
2349
|
+
|
|
2206
2350
|
@builtins.property
|
|
2207
2351
|
def version(self) -> typing.Optional[builtins.str]:
|
|
2208
2352
|
'''The version number of the launch template, ``$Default`` , or ``$Latest`` .
|
|
@@ -2357,7 +2501,7 @@ class CfnComputeEnvironmentProps:
|
|
|
2357
2501
|
:param compute_environment_name: The name for your compute environment. It can be up to 128 characters long. It can contain uppercase and lowercase letters, numbers, hyphens (-), and underscores (_).
|
|
2358
2502
|
:param compute_resources: The ComputeResources property type specifies details of the compute resources managed by the compute environment. This parameter is required for managed compute environments. For more information, see `Compute Environments <https://docs.aws.amazon.com/batch/latest/userguide/compute_environments.html>`_ in the ** .
|
|
2359
2503
|
:param context: Reserved.
|
|
2360
|
-
:param eks_configuration: The details for the Amazon EKS cluster that supports the compute environment.
|
|
2504
|
+
:param eks_configuration: The details for the Amazon EKS cluster that supports the compute environment. .. epigraph:: To create a compute environment that uses EKS resources, the caller must have permissions to call ``eks:DescribeCluster`` .
|
|
2361
2505
|
:param replace_compute_environment: Specifies whether the compute environment is replaced if an update is made that requires replacing the instances in the compute environment. The default value is ``true`` . To enable more properties to be updated, set this property to ``false`` . When changing the value of this property to ``false`` , do not change any other properties at the same time. If other properties are changed at the same time, and the change needs to be rolled back but it can't, it's possible for the stack to go into the ``UPDATE_ROLLBACK_FAILED`` state. You can't update a stack that is in the ``UPDATE_ROLLBACK_FAILED`` state. However, if you can continue to roll it back, you can return the stack to its original settings and then try to update it again. For more information, see `Continue rolling back an update <https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-continueupdaterollback.html>`_ in the *AWS CloudFormation User Guide* . ``ReplaceComputeEnvironment`` is not applicable for Fargate compute environments. Fargate compute environments are always updated without interruption. The properties that can't be changed without replacing the compute environment are in the ```ComputeResources`` <https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-computeenvironment-computeresources.html>`_ property type: ```AllocationStrategy`` <https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-computeenvironment-computeresources.html#cfn-batch-computeenvironment-computeresources-allocationstrategy>`_ , ```BidPercentage`` <https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-computeenvironment-computeresources.html#cfn-batch-computeenvironment-computeresources-bidpercentage>`_ , ```Ec2Configuration`` <https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-computeenvironment-computeresources.html#cfn-batch-computeenvironment-computeresources-ec2configuration>`_ , ```Ec2KeyPair`` <https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-computeenvironment-computeresources.html#cfn-batch-computeenvironment-computeresources-ec2keypair>`_ , ```Ec2KeyPair`` <https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-computeenvironment-computeresources.html#cfn-batch-computeenvironment-computeresources-ec2keypair>`_ , ```ImageId`` <https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-computeenvironment-computeresources.html#cfn-batch-computeenvironment-computeresources-imageid>`_ , ```InstanceRole`` <https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-computeenvironment-computeresources.html#cfn-batch-computeenvironment-computeresources-instancerole>`_ , ```InstanceTypes`` <https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-computeenvironment-computeresources.html#cfn-batch-computeenvironment-computeresources-instancetypes>`_ , ```LaunchTemplate`` <https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-computeenvironment-computeresources.html#cfn-batch-computeenvironment-computeresources-launchtemplate>`_ , ```MaxvCpus`` <https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-computeenvironment-computeresources.html#cfn-batch-computeenvironment-computeresources-maxvcpus>`_ , ```MinvCpus`` <https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-computeenvironment-computeresources.html#cfn-batch-computeenvironment-computeresources-minvcpus>`_ , ```PlacementGroup`` <https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-computeenvironment-computeresources.html#cfn-batch-computeenvironment-computeresources-placementgroup>`_ , ```SecurityGroupIds`` <https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-computeenvironment-computeresources.html#cfn-batch-computeenvironment-computeresources-securitygroupids>`_ , ```Subnets`` <https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-computeenvironment-computeresources.html#cfn-batch-computeenvironment-computeresources-subnets>`_ , `Tags <https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-computeenvironment-computeresources.html#cfn-batch-computeenvironment-computeresources-tags>`_ , ```Type`` <https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-computeenvironment-computeresources.html#cfn-batch-computeenvironment-computeresources-type>`_ , and ```UpdateToLatestImageVersion`` <https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-computeenvironment-computeresources.html#cfn-batch-computeenvironment-computeresources-updatetolatestimageversion>`_ . Default: - true
|
|
2362
2506
|
:param service_role: The full Amazon Resource Name (ARN) of the IAM role that allows AWS Batch to make calls to other AWS services on your behalf. For more information, see `AWS Batch service IAM role <https://docs.aws.amazon.com/batch/latest/userguide/service_IAM_role.html>`_ in the *AWS Batch User Guide* . .. epigraph:: If your account already created the AWS Batch service-linked role, that role is used by default for your compute environment unless you specify a different role here. If the AWS Batch service-linked role doesn't exist in your account, and no role is specified here, the service attempts to create the AWS Batch service-linked role in your account. If your specified role has a path other than ``/`` , then you must specify either the full role ARN (recommended) or prefix the role name with the path. For example, if a role with the name ``bar`` has a path of ``/foo/`` , specify ``/foo/bar`` as the role name. For more information, see `Friendly names and paths <https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_identifiers.html#identifiers-friendly-names>`_ in the *IAM User Guide* . .. epigraph:: Depending on how you created your AWS Batch service role, its ARN might contain the ``service-role`` path prefix. When you only specify the name of the service role, AWS Batch assumes that your ARN doesn't use the ``service-role`` path prefix. Because of this, we recommend that you specify the full ARN of your service role when you create compute environments.
|
|
2363
2507
|
:param state: The state of the compute environment. If the state is ``ENABLED`` , then the compute environment accepts jobs from a queue and can scale out automatically based on queues. If the state is ``ENABLED`` , then the AWS Batch scheduler can attempt to place jobs from an associated job queue on the compute resources within the environment. If the compute environment is managed, then it can scale its instances out or in automatically, based on the job queue demand. If the state is ``DISABLED`` , then the AWS Batch scheduler doesn't attempt to place jobs within the environment. Jobs in a ``STARTING`` or ``RUNNING`` state continue to progress normally. Managed compute environments in the ``DISABLED`` state don't scale out. .. epigraph:: Compute environments in a ``DISABLED`` state may continue to incur billing charges. To prevent additional charges, turn off and then delete the compute environment. For more information, see `State <https://docs.aws.amazon.com/batch/latest/userguide/compute_environment_parameters.html#compute_environment_state>`_ in the *AWS Batch User Guide* . When an instance is idle, the instance scales down to the ``minvCpus`` value. However, the instance size doesn't change. For example, consider a ``c5.8xlarge`` instance with a ``minvCpus`` value of ``4`` and a ``desiredvCpus`` value of ``36`` . This instance doesn't scale down to a ``c5.large`` instance.
|
|
@@ -2406,8 +2550,10 @@ class CfnComputeEnvironmentProps:
|
|
|
2406
2550
|
launch_template_id="launchTemplateId",
|
|
2407
2551
|
launch_template_name="launchTemplateName",
|
|
2408
2552
|
target_instance_types=["targetInstanceTypes"],
|
|
2553
|
+
userdata_type="userdataType",
|
|
2409
2554
|
version="version"
|
|
2410
2555
|
)],
|
|
2556
|
+
userdata_type="userdataType",
|
|
2411
2557
|
version="version"
|
|
2412
2558
|
),
|
|
2413
2559
|
minv_cpus=123,
|
|
@@ -2525,6 +2671,10 @@ class CfnComputeEnvironmentProps:
|
|
|
2525
2671
|
) -> typing.Optional[typing.Union[_IResolvable_da3f097b, CfnComputeEnvironment.EksConfigurationProperty]]:
|
|
2526
2672
|
'''The details for the Amazon EKS cluster that supports the compute environment.
|
|
2527
2673
|
|
|
2674
|
+
.. epigraph::
|
|
2675
|
+
|
|
2676
|
+
To create a compute environment that uses EKS resources, the caller must have permissions to call ``eks:DescribeCluster`` .
|
|
2677
|
+
|
|
2528
2678
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-batch-computeenvironment.html#cfn-batch-computeenvironment-eksconfiguration
|
|
2529
2679
|
'''
|
|
2530
2680
|
result = self._values.get("eks_configuration")
|
|
@@ -2636,7 +2786,7 @@ class CfnComputeEnvironmentProps:
|
|
|
2636
2786
|
)
|
|
2637
2787
|
|
|
2638
2788
|
|
|
2639
|
-
@jsii.implements(_IInspectable_c2943556, _ITaggableV2_4e6798f8)
|
|
2789
|
+
@jsii.implements(_IInspectable_c2943556, _IConsumableResourceRef_114da7c5, _ITaggableV2_4e6798f8)
|
|
2640
2790
|
class CfnConsumableResource(
|
|
2641
2791
|
_CfnResource_9df397a6,
|
|
2642
2792
|
metaclass=jsii.JSIIMeta,
|
|
@@ -2678,7 +2828,8 @@ class CfnConsumableResource(
|
|
|
2678
2828
|
consumable_resource_name: typing.Optional[builtins.str] = None,
|
|
2679
2829
|
tags: typing.Optional[typing.Mapping[builtins.str, builtins.str]] = None,
|
|
2680
2830
|
) -> None:
|
|
2681
|
-
'''
|
|
2831
|
+
'''Create a new ``AWS::Batch::ConsumableResource``.
|
|
2832
|
+
|
|
2682
2833
|
:param scope: Scope in which this resource is defined.
|
|
2683
2834
|
:param id: Construct identifier for this resource (unique in its scope).
|
|
2684
2835
|
:param resource_type: Indicates whether the resource is available to be re-used after a job completes. Can be one of:. - ``REPLENISHABLE`` - ``NON_REPLENISHABLE``
|
|
@@ -2776,6 +2927,12 @@ class CfnConsumableResource(
|
|
|
2776
2927
|
def _cfn_properties(self) -> typing.Mapping[builtins.str, typing.Any]:
|
|
2777
2928
|
return typing.cast(typing.Mapping[builtins.str, typing.Any], jsii.get(self, "cfnProperties"))
|
|
2778
2929
|
|
|
2930
|
+
@builtins.property
|
|
2931
|
+
@jsii.member(jsii_name="consumableResourceRef")
|
|
2932
|
+
def consumable_resource_ref(self) -> _ConsumableResourceReference_eb60ef1d:
|
|
2933
|
+
'''A reference to a ConsumableResource resource.'''
|
|
2934
|
+
return typing.cast(_ConsumableResourceReference_eb60ef1d, jsii.get(self, "consumableResourceRef"))
|
|
2935
|
+
|
|
2779
2936
|
@builtins.property
|
|
2780
2937
|
@jsii.member(jsii_name="resourceType")
|
|
2781
2938
|
def resource_type(self) -> builtins.str:
|
|
@@ -2951,7 +3108,7 @@ class CfnConsumableResourceProps:
|
|
|
2951
3108
|
)
|
|
2952
3109
|
|
|
2953
3110
|
|
|
2954
|
-
@jsii.implements(_IInspectable_c2943556, _ITaggable_36806126)
|
|
3111
|
+
@jsii.implements(_IInspectable_c2943556, _IJobDefinitionRef_ae0cae56, _ITaggable_36806126)
|
|
2955
3112
|
class CfnJobDefinition(
|
|
2956
3113
|
_CfnResource_9df397a6,
|
|
2957
3114
|
metaclass=jsii.JSIIMeta,
|
|
@@ -2985,12 +3142,14 @@ class CfnJobDefinition(
|
|
|
2985
3142
|
parameters: typing.Any = None,
|
|
2986
3143
|
platform_capabilities: typing.Optional[typing.Sequence[builtins.str]] = None,
|
|
2987
3144
|
propagate_tags: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]] = None,
|
|
3145
|
+
resource_retention_policy: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnJobDefinition.ResourceRetentionPolicyProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
|
|
2988
3146
|
retry_strategy: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnJobDefinition.RetryStrategyProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
|
|
2989
3147
|
scheduling_priority: typing.Optional[jsii.Number] = None,
|
|
2990
3148
|
tags: typing.Any = None,
|
|
2991
3149
|
timeout: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnJobDefinition.TimeoutProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
|
|
2992
3150
|
) -> None:
|
|
2993
|
-
'''
|
|
3151
|
+
'''Create a new ``AWS::Batch::JobDefinition``.
|
|
3152
|
+
|
|
2994
3153
|
:param scope: Scope in which this resource is defined.
|
|
2995
3154
|
:param id: Construct identifier for this resource (unique in its scope).
|
|
2996
3155
|
:param type: The type of job definition. For more information about multi-node parallel jobs, see `Creating a multi-node parallel job definition <https://docs.aws.amazon.com/batch/latest/userguide/multi-node-job-def.html>`_ in the *AWS Batch User Guide* . - If the value is ``container`` , then one of the following is required: ``containerProperties`` , ``ecsProperties`` , or ``eksProperties`` . - If the value is ``multinode`` , then ``nodeProperties`` is required. .. epigraph:: If the job is run on Fargate resources, then ``multinode`` isn't supported.
|
|
@@ -3003,6 +3162,7 @@ class CfnJobDefinition(
|
|
|
3003
3162
|
:param parameters: Default parameters or parameter substitution placeholders that are set in the job definition. Parameters are specified as a key-value pair mapping. Parameters in a ``SubmitJob`` request override any corresponding parameter defaults from the job definition. For more information about specifying parameters, see `Job definition parameters <https://docs.aws.amazon.com/batch/latest/userguide/job_definition_parameters.html>`_ in the *AWS Batch User Guide* .
|
|
3004
3163
|
:param platform_capabilities: The platform capabilities required by the job definition. If no value is specified, it defaults to ``EC2`` . Jobs run on Fargate resources specify ``FARGATE`` .
|
|
3005
3164
|
:param propagate_tags: Specifies whether to propagate the tags from the job or job definition to the corresponding Amazon ECS task. If no value is specified, the tags aren't propagated. Tags can only be propagated to the tasks when the tasks are created. For tags with the same name, job tags are given priority over job definitions tags. If the total number of combined tags from the job and job definition is over 50, the job is moved to the ``FAILED`` state.
|
|
3165
|
+
:param resource_retention_policy: Specifies the resource retention policy settings for the job definition.
|
|
3006
3166
|
:param retry_strategy: The retry strategy to use for failed jobs that are submitted with this job definition.
|
|
3007
3167
|
:param scheduling_priority: The scheduling priority of the job definition. This only affects jobs in job queues with a fair-share policy. Jobs with a higher scheduling priority are scheduled before jobs with a lower scheduling priority.
|
|
3008
3168
|
:param tags: The tags that are applied to the job definition.
|
|
@@ -3023,6 +3183,7 @@ class CfnJobDefinition(
|
|
|
3023
3183
|
parameters=parameters,
|
|
3024
3184
|
platform_capabilities=platform_capabilities,
|
|
3025
3185
|
propagate_tags=propagate_tags,
|
|
3186
|
+
resource_retention_policy=resource_retention_policy,
|
|
3026
3187
|
retry_strategy=retry_strategy,
|
|
3027
3188
|
scheduling_priority=scheduling_priority,
|
|
3028
3189
|
tags=tags,
|
|
@@ -3031,6 +3192,48 @@ class CfnJobDefinition(
|
|
|
3031
3192
|
|
|
3032
3193
|
jsii.create(self.__class__, self, [scope, id, props])
|
|
3033
3194
|
|
|
3195
|
+
@jsii.member(jsii_name="fromJobDefinitionArn")
|
|
3196
|
+
@builtins.classmethod
|
|
3197
|
+
def from_job_definition_arn(
|
|
3198
|
+
cls,
|
|
3199
|
+
scope: _constructs_77d1e7e8.Construct,
|
|
3200
|
+
id: builtins.str,
|
|
3201
|
+
arn: builtins.str,
|
|
3202
|
+
) -> _IJobDefinitionRef_ae0cae56:
|
|
3203
|
+
'''Creates a new IJobDefinitionRef from an ARN.
|
|
3204
|
+
|
|
3205
|
+
:param scope: -
|
|
3206
|
+
:param id: -
|
|
3207
|
+
:param arn: -
|
|
3208
|
+
'''
|
|
3209
|
+
if __debug__:
|
|
3210
|
+
type_hints = typing.get_type_hints(_typecheckingstub__9eb64c713801d4b9b5ffb80a279b71c78cb6317fd0c771df22f2646f9d957f0d)
|
|
3211
|
+
check_type(argname="argument scope", value=scope, expected_type=type_hints["scope"])
|
|
3212
|
+
check_type(argname="argument id", value=id, expected_type=type_hints["id"])
|
|
3213
|
+
check_type(argname="argument arn", value=arn, expected_type=type_hints["arn"])
|
|
3214
|
+
return typing.cast(_IJobDefinitionRef_ae0cae56, jsii.sinvoke(cls, "fromJobDefinitionArn", [scope, id, arn]))
|
|
3215
|
+
|
|
3216
|
+
@jsii.member(jsii_name="fromJobDefinitionName")
|
|
3217
|
+
@builtins.classmethod
|
|
3218
|
+
def from_job_definition_name(
|
|
3219
|
+
cls,
|
|
3220
|
+
scope: _constructs_77d1e7e8.Construct,
|
|
3221
|
+
id: builtins.str,
|
|
3222
|
+
job_definition_name: builtins.str,
|
|
3223
|
+
) -> _IJobDefinitionRef_ae0cae56:
|
|
3224
|
+
'''Creates a new IJobDefinitionRef from a jobDefinitionName.
|
|
3225
|
+
|
|
3226
|
+
:param scope: -
|
|
3227
|
+
:param id: -
|
|
3228
|
+
:param job_definition_name: -
|
|
3229
|
+
'''
|
|
3230
|
+
if __debug__:
|
|
3231
|
+
type_hints = typing.get_type_hints(_typecheckingstub__825692ecdcf61885a93251433de856e5a5f6a3a7d68b8673883d418e98bd1956)
|
|
3232
|
+
check_type(argname="argument scope", value=scope, expected_type=type_hints["scope"])
|
|
3233
|
+
check_type(argname="argument id", value=id, expected_type=type_hints["id"])
|
|
3234
|
+
check_type(argname="argument job_definition_name", value=job_definition_name, expected_type=type_hints["job_definition_name"])
|
|
3235
|
+
return typing.cast(_IJobDefinitionRef_ae0cae56, jsii.sinvoke(cls, "fromJobDefinitionName", [scope, id, job_definition_name]))
|
|
3236
|
+
|
|
3034
3237
|
@jsii.member(jsii_name="inspect")
|
|
3035
3238
|
def inspect(self, inspector: _TreeInspector_488e0dd5) -> None:
|
|
3036
3239
|
'''Examines the CloudFormation resource and discloses attributes.
|
|
@@ -3075,6 +3278,12 @@ class CfnJobDefinition(
|
|
|
3075
3278
|
def _cfn_properties(self) -> typing.Mapping[builtins.str, typing.Any]:
|
|
3076
3279
|
return typing.cast(typing.Mapping[builtins.str, typing.Any], jsii.get(self, "cfnProperties"))
|
|
3077
3280
|
|
|
3281
|
+
@builtins.property
|
|
3282
|
+
@jsii.member(jsii_name="jobDefinitionRef")
|
|
3283
|
+
def job_definition_ref(self) -> _JobDefinitionReference_e67f0e8f:
|
|
3284
|
+
'''A reference to a JobDefinition resource.'''
|
|
3285
|
+
return typing.cast(_JobDefinitionReference_e67f0e8f, jsii.get(self, "jobDefinitionRef"))
|
|
3286
|
+
|
|
3078
3287
|
@builtins.property
|
|
3079
3288
|
@jsii.member(jsii_name="tags")
|
|
3080
3289
|
def tags(self) -> _TagManager_0a598cb3:
|
|
@@ -3244,6 +3453,24 @@ class CfnJobDefinition(
|
|
|
3244
3453
|
check_type(argname="argument value", value=value, expected_type=type_hints["value"])
|
|
3245
3454
|
jsii.set(self, "propagateTags", value) # pyright: ignore[reportArgumentType]
|
|
3246
3455
|
|
|
3456
|
+
@builtins.property
|
|
3457
|
+
@jsii.member(jsii_name="resourceRetentionPolicy")
|
|
3458
|
+
def resource_retention_policy(
|
|
3459
|
+
self,
|
|
3460
|
+
) -> typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnJobDefinition.ResourceRetentionPolicyProperty"]]:
|
|
3461
|
+
'''Specifies the resource retention policy settings for the job definition.'''
|
|
3462
|
+
return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnJobDefinition.ResourceRetentionPolicyProperty"]], jsii.get(self, "resourceRetentionPolicy"))
|
|
3463
|
+
|
|
3464
|
+
@resource_retention_policy.setter
|
|
3465
|
+
def resource_retention_policy(
|
|
3466
|
+
self,
|
|
3467
|
+
value: typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnJobDefinition.ResourceRetentionPolicyProperty"]],
|
|
3468
|
+
) -> None:
|
|
3469
|
+
if __debug__:
|
|
3470
|
+
type_hints = typing.get_type_hints(_typecheckingstub__24d6c12e4e40e86cb18eef4cad19675ced395908001d3f74f425b06ab99bb085)
|
|
3471
|
+
check_type(argname="argument value", value=value, expected_type=type_hints["value"])
|
|
3472
|
+
jsii.set(self, "resourceRetentionPolicy", value) # pyright: ignore[reportArgumentType]
|
|
3473
|
+
|
|
3247
3474
|
@builtins.property
|
|
3248
3475
|
@jsii.member(jsii_name="retryStrategy")
|
|
3249
3476
|
def retry_strategy(
|
|
@@ -6606,7 +6833,7 @@ class CfnJobDefinition(
|
|
|
6606
6833
|
) -> None:
|
|
6607
6834
|
'''Log configuration options to send to a custom log driver for the container.
|
|
6608
6835
|
|
|
6609
|
-
:param log_driver: The log driver to use for the container. The valid values that are listed for this parameter are log drivers that the Amazon ECS container agent can communicate with by default. The supported log drivers are ``awslogs`` , ``fluentd`` , ``gelf`` , ``json-file`` , ``journald`` , ``logentries`` , ``syslog`` , and ``splunk`` . .. epigraph:: Jobs that are running on Fargate resources are restricted to the ``awslogs`` and ``splunk`` log drivers. - **awsfirelens** - Specifies the firelens logging driver. For more information on configuring Firelens, see `Send Amazon ECS logs to an AWS service or AWS Partner <https://docs.aws.amazon.com//AmazonECS/latest/developerguide/using_firelens.html>`_ in the *Amazon Elastic Container Service Developer Guide* . - **awslogs** - Specifies the Amazon CloudWatch Logs logging driver. For more information, see `Using the awslogs log driver <https://docs.aws.amazon.com/batch/latest/userguide/using_awslogs.html>`_ in the *AWS Batch User Guide* and `Amazon CloudWatch Logs logging driver <https://docs.aws.amazon.com/https://docs.docker.com/config/containers/logging/awslogs/>`_ in the Docker documentation. - **fluentd** - Specifies the Fluentd logging driver. For more information including usage and options, see `Fluentd logging driver <https://docs.aws.amazon.com/https://docs.docker.com/config/containers/logging/fluentd/>`_ in the *Docker documentation* . - **gelf** - Specifies the Graylog Extended Format (GELF) logging driver. For more information including usage and options, see `Graylog Extended Format logging driver <https://docs.aws.amazon.com/https://docs.docker.com/config/containers/logging/gelf/>`_ in the *Docker documentation* . - **journald** - Specifies the journald logging driver. For more information including usage and options, see `Journald logging driver <https://docs.aws.amazon.com/https://docs.docker.com/config/containers/logging/journald/>`_ in the *Docker documentation* . - **json-file** - Specifies the JSON file logging driver. For more information including usage and options, see `JSON File logging driver <https://docs.aws.amazon.com/https://docs.docker.com/config/containers/logging/json-file/>`_ in the *Docker documentation* . - **splunk** - Specifies the Splunk logging driver. For more information including usage and options, see `Splunk logging driver <https://docs.aws.amazon.com/https://docs.docker.com/config/containers/logging/splunk/>`_ in the *Docker documentation* . - **syslog** - Specifies the syslog logging driver. For more information including usage and options, see `Syslog logging driver <https://docs.aws.amazon.com/https://docs.docker.com/config/containers/logging/syslog/>`_ in the *Docker documentation* . .. epigraph:: If you have a custom driver that's not listed earlier that you want to work with the Amazon ECS container agent, you can fork the Amazon ECS container agent project that's `available on GitHub <https://docs.aws.amazon.com/https://github.com/aws/amazon-ecs-agent>`_ and customize it to work with that driver. We encourage you to submit pull requests for changes that you want to have included. However, Amazon Web Services doesn't currently support running modified copies of this software. This parameter requires version 1.18 of the Docker Remote API or greater on your container instance. To check the Docker Remote API version on your container instance, log in to your container instance and run the following command: ``sudo docker version | grep "Server API version"``
|
|
6836
|
+
:param log_driver: The log driver to use for the container. The valid values that are listed for this parameter are log drivers that the Amazon ECS container agent can communicate with by default. The supported log drivers are ``awsfirelens`` , ``awslogs`` , ``fluentd`` , ``gelf`` , ``json-file`` , ``journald`` , ``logentries`` , ``syslog`` , and ``splunk`` . .. epigraph:: Jobs that are running on Fargate resources are restricted to the ``awslogs`` and ``splunk`` log drivers. - **awsfirelens** - Specifies the firelens logging driver. For more information on configuring Firelens, see `Send Amazon ECS logs to an AWS service or AWS Partner <https://docs.aws.amazon.com//AmazonECS/latest/developerguide/using_firelens.html>`_ in the *Amazon Elastic Container Service Developer Guide* . - **awslogs** - Specifies the Amazon CloudWatch Logs logging driver. For more information, see `Using the awslogs log driver <https://docs.aws.amazon.com/batch/latest/userguide/using_awslogs.html>`_ in the *AWS Batch User Guide* and `Amazon CloudWatch Logs logging driver <https://docs.aws.amazon.com/https://docs.docker.com/config/containers/logging/awslogs/>`_ in the Docker documentation. - **fluentd** - Specifies the Fluentd logging driver. For more information including usage and options, see `Fluentd logging driver <https://docs.aws.amazon.com/https://docs.docker.com/config/containers/logging/fluentd/>`_ in the *Docker documentation* . - **gelf** - Specifies the Graylog Extended Format (GELF) logging driver. For more information including usage and options, see `Graylog Extended Format logging driver <https://docs.aws.amazon.com/https://docs.docker.com/config/containers/logging/gelf/>`_ in the *Docker documentation* . - **journald** - Specifies the journald logging driver. For more information including usage and options, see `Journald logging driver <https://docs.aws.amazon.com/https://docs.docker.com/config/containers/logging/journald/>`_ in the *Docker documentation* . - **json-file** - Specifies the JSON file logging driver. For more information including usage and options, see `JSON File logging driver <https://docs.aws.amazon.com/https://docs.docker.com/config/containers/logging/json-file/>`_ in the *Docker documentation* . - **splunk** - Specifies the Splunk logging driver. For more information including usage and options, see `Splunk logging driver <https://docs.aws.amazon.com/https://docs.docker.com/config/containers/logging/splunk/>`_ in the *Docker documentation* . - **syslog** - Specifies the syslog logging driver. For more information including usage and options, see `Syslog logging driver <https://docs.aws.amazon.com/https://docs.docker.com/config/containers/logging/syslog/>`_ in the *Docker documentation* . .. epigraph:: If you have a custom driver that's not listed earlier that you want to work with the Amazon ECS container agent, you can fork the Amazon ECS container agent project that's `available on GitHub <https://docs.aws.amazon.com/https://github.com/aws/amazon-ecs-agent>`_ and customize it to work with that driver. We encourage you to submit pull requests for changes that you want to have included. However, Amazon Web Services doesn't currently support running modified copies of this software. This parameter requires version 1.18 of the Docker Remote API or greater on your container instance. To check the Docker Remote API version on your container instance, log in to your container instance and run the following command: ``sudo docker version | grep "Server API version"``
|
|
6610
6837
|
:param options: The configuration options to send to the log driver. This parameter requires version 1.19 of the Docker Remote API or greater on your container instance. To check the Docker Remote API version on your container instance, log in to your container instance and run the following command: ``sudo docker version | grep "Server API version"``
|
|
6611
6838
|
:param secret_options: The secrets to pass to the log configuration. For more information, see `Specifying sensitive data <https://docs.aws.amazon.com/batch/latest/userguide/specifying-sensitive-data.html>`_ in the *AWS Batch User Guide* .
|
|
6612
6839
|
|
|
@@ -6651,7 +6878,7 @@ class CfnJobDefinition(
|
|
|
6651
6878
|
|
|
6652
6879
|
The valid values that are listed for this parameter are log drivers that the Amazon ECS container agent can communicate with by default.
|
|
6653
6880
|
|
|
6654
|
-
The supported log drivers are ``awslogs`` , ``fluentd`` , ``gelf`` , ``json-file`` , ``journald`` , ``logentries`` , ``syslog`` , and ``splunk`` .
|
|
6881
|
+
The supported log drivers are ``awsfirelens`` , ``awslogs`` , ``fluentd`` , ``gelf`` , ``json-file`` , ``journald`` , ``logentries`` , ``syslog`` , and ``splunk`` .
|
|
6655
6882
|
.. epigraph::
|
|
6656
6883
|
|
|
6657
6884
|
Jobs that are running on Fargate resources are restricted to the ``awslogs`` and ``splunk`` log drivers.
|
|
@@ -8790,6 +9017,67 @@ class CfnJobDefinition(
|
|
|
8790
9017
|
k + "=" + repr(v) for k, v in self._values.items()
|
|
8791
9018
|
)
|
|
8792
9019
|
|
|
9020
|
+
@jsii.data_type(
|
|
9021
|
+
jsii_type="aws-cdk-lib.aws_batch.CfnJobDefinition.ResourceRetentionPolicyProperty",
|
|
9022
|
+
jsii_struct_bases=[],
|
|
9023
|
+
name_mapping={"skip_deregister_on_update": "skipDeregisterOnUpdate"},
|
|
9024
|
+
)
|
|
9025
|
+
class ResourceRetentionPolicyProperty:
|
|
9026
|
+
def __init__(
|
|
9027
|
+
self,
|
|
9028
|
+
*,
|
|
9029
|
+
skip_deregister_on_update: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]] = None,
|
|
9030
|
+
) -> None:
|
|
9031
|
+
'''Specifies the resource retention policy settings for a job definition.
|
|
9032
|
+
|
|
9033
|
+
:param skip_deregister_on_update: Specifies whether the previous revision of the job definition is retained in an active status after UPDATE events for the resource. The default value is ``false`` . When the property is set to ``false`` , the previous revision of the job definition is de-registered after a new revision is created. When the property is set to ``true`` , the previous revision of the job definition is not de-registered. Default: - false
|
|
9034
|
+
|
|
9035
|
+
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-resourceretentionpolicy.html
|
|
9036
|
+
:exampleMetadata: fixture=_generated
|
|
9037
|
+
|
|
9038
|
+
Example::
|
|
9039
|
+
|
|
9040
|
+
# The code below shows an example of how to instantiate this type.
|
|
9041
|
+
# The values are placeholders you should change.
|
|
9042
|
+
from aws_cdk import aws_batch as batch
|
|
9043
|
+
|
|
9044
|
+
resource_retention_policy_property = batch.CfnJobDefinition.ResourceRetentionPolicyProperty(
|
|
9045
|
+
skip_deregister_on_update=False
|
|
9046
|
+
)
|
|
9047
|
+
'''
|
|
9048
|
+
if __debug__:
|
|
9049
|
+
type_hints = typing.get_type_hints(_typecheckingstub__96a556bd9c16087d87c49ecc18104d825d1cd7dc2f678a8e272fcb8ad46b87ff)
|
|
9050
|
+
check_type(argname="argument skip_deregister_on_update", value=skip_deregister_on_update, expected_type=type_hints["skip_deregister_on_update"])
|
|
9051
|
+
self._values: typing.Dict[builtins.str, typing.Any] = {}
|
|
9052
|
+
if skip_deregister_on_update is not None:
|
|
9053
|
+
self._values["skip_deregister_on_update"] = skip_deregister_on_update
|
|
9054
|
+
|
|
9055
|
+
@builtins.property
|
|
9056
|
+
def skip_deregister_on_update(
|
|
9057
|
+
self,
|
|
9058
|
+
) -> typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]]:
|
|
9059
|
+
'''Specifies whether the previous revision of the job definition is retained in an active status after UPDATE events for the resource.
|
|
9060
|
+
|
|
9061
|
+
The default value is ``false`` . When the property is set to ``false`` , the previous revision of the job definition is de-registered after a new revision is created. When the property is set to ``true`` , the previous revision of the job definition is not de-registered.
|
|
9062
|
+
|
|
9063
|
+
:default: - false
|
|
9064
|
+
|
|
9065
|
+
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-resourceretentionpolicy.html#cfn-batch-jobdefinition-resourceretentionpolicy-skipderegisteronupdate
|
|
9066
|
+
'''
|
|
9067
|
+
result = self._values.get("skip_deregister_on_update")
|
|
9068
|
+
return typing.cast(typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]], result)
|
|
9069
|
+
|
|
9070
|
+
def __eq__(self, rhs: typing.Any) -> builtins.bool:
|
|
9071
|
+
return isinstance(rhs, self.__class__) and rhs._values == self._values
|
|
9072
|
+
|
|
9073
|
+
def __ne__(self, rhs: typing.Any) -> builtins.bool:
|
|
9074
|
+
return not (rhs == self)
|
|
9075
|
+
|
|
9076
|
+
def __repr__(self) -> str:
|
|
9077
|
+
return "ResourceRetentionPolicyProperty(%s)" % ", ".join(
|
|
9078
|
+
k + "=" + repr(v) for k, v in self._values.items()
|
|
9079
|
+
)
|
|
9080
|
+
|
|
8793
9081
|
@jsii.data_type(
|
|
8794
9082
|
jsii_type="aws-cdk-lib.aws_batch.CfnJobDefinition.ResourcesProperty",
|
|
8795
9083
|
jsii_struct_bases=[],
|
|
@@ -8962,8 +9250,8 @@ class CfnJobDefinition(
|
|
|
8962
9250
|
) -> None:
|
|
8963
9251
|
'''An object that represents the compute environment architecture for AWS Batch jobs on Fargate.
|
|
8964
9252
|
|
|
8965
|
-
:param cpu_architecture: The vCPU architecture. The default value is ``X86_64`` . Valid values are ``X86_64`` and ``ARM64`` . .. epigraph:: This parameter must be set to ``X86_64`` for Windows containers. > Fargate Spot is not supported
|
|
8966
|
-
:param operating_system_family: The operating system for the compute environment. Valid values are: ``LINUX`` (default), ``WINDOWS_SERVER_2019_CORE`` , ``WINDOWS_SERVER_2019_FULL`` , ``WINDOWS_SERVER_2022_CORE`` , and ``WINDOWS_SERVER_2022_FULL`` . .. epigraph:: The following parameters can’t be set for Windows containers: ``linuxParameters`` , ``privileged`` , ``user`` , ``ulimits`` , ``readonlyRootFilesystem`` , and ``efsVolumeConfiguration`` . > The AWS Batch Scheduler checks the compute environments that are attached to the job queue before registering a task definition with Fargate. In this scenario, the job queue is where the job is submitted. If the job requires a Windows container and the first compute environment is ``LINUX`` , the compute environment is skipped and the next compute environment is checked until a Windows-based compute environment is found. > Fargate Spot is not supported
|
|
9253
|
+
:param cpu_architecture: The vCPU architecture. The default value is ``X86_64`` . Valid values are ``X86_64`` and ``ARM64`` . .. epigraph:: This parameter must be set to ``X86_64`` for Windows containers. > Fargate Spot is not supported on Windows-based containers on Fargate. A job queue will be blocked if a Windows job is submitted to a job queue with only Fargate Spot compute environments. However, you can attach both ``FARGATE`` and ``FARGATE_SPOT`` compute environments to the same job queue.
|
|
9254
|
+
:param operating_system_family: The operating system for the compute environment. Valid values are: ``LINUX`` (default), ``WINDOWS_SERVER_2019_CORE`` , ``WINDOWS_SERVER_2019_FULL`` , ``WINDOWS_SERVER_2022_CORE`` , and ``WINDOWS_SERVER_2022_FULL`` . .. epigraph:: The following parameters can’t be set for Windows containers: ``linuxParameters`` , ``privileged`` , ``user`` , ``ulimits`` , ``readonlyRootFilesystem`` , and ``efsVolumeConfiguration`` . > The AWS Batch Scheduler checks the compute environments that are attached to the job queue before registering a task definition with Fargate. In this scenario, the job queue is where the job is submitted. If the job requires a Windows container and the first compute environment is ``LINUX`` , the compute environment is skipped and the next compute environment is checked until a Windows-based compute environment is found. > Fargate Spot is not supported on Windows-based containers on Fargate. A job queue will be blocked if a Windows job is submitted to a job queue with only Fargate Spot compute environments. However, you can attach both ``FARGATE`` and ``FARGATE_SPOT`` compute environments to the same job queue.
|
|
8967
9255
|
|
|
8968
9256
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-runtimeplatform.html
|
|
8969
9257
|
:exampleMetadata: fixture=_generated
|
|
@@ -8995,7 +9283,7 @@ class CfnJobDefinition(
|
|
|
8995
9283
|
|
|
8996
9284
|
.. epigraph::
|
|
8997
9285
|
|
|
8998
|
-
This parameter must be set to ``X86_64`` for Windows containers. > Fargate Spot is not supported
|
|
9286
|
+
This parameter must be set to ``X86_64`` for Windows containers. > Fargate Spot is not supported on Windows-based containers on Fargate. A job queue will be blocked if a Windows job is submitted to a job queue with only Fargate Spot compute environments. However, you can attach both ``FARGATE`` and ``FARGATE_SPOT`` compute environments to the same job queue.
|
|
8999
9287
|
|
|
9000
9288
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-runtimeplatform.html#cfn-batch-jobdefinition-runtimeplatform-cpuarchitecture
|
|
9001
9289
|
'''
|
|
@@ -9009,7 +9297,7 @@ class CfnJobDefinition(
|
|
|
9009
9297
|
Valid values are: ``LINUX`` (default), ``WINDOWS_SERVER_2019_CORE`` , ``WINDOWS_SERVER_2019_FULL`` , ``WINDOWS_SERVER_2022_CORE`` , and ``WINDOWS_SERVER_2022_FULL`` .
|
|
9010
9298
|
.. epigraph::
|
|
9011
9299
|
|
|
9012
|
-
The following parameters can’t be set for Windows containers: ``linuxParameters`` , ``privileged`` , ``user`` , ``ulimits`` , ``readonlyRootFilesystem`` , and ``efsVolumeConfiguration`` . > The AWS Batch Scheduler checks the compute environments that are attached to the job queue before registering a task definition with Fargate. In this scenario, the job queue is where the job is submitted. If the job requires a Windows container and the first compute environment is ``LINUX`` , the compute environment is skipped and the next compute environment is checked until a Windows-based compute environment is found. > Fargate Spot is not supported
|
|
9300
|
+
The following parameters can’t be set for Windows containers: ``linuxParameters`` , ``privileged`` , ``user`` , ``ulimits`` , ``readonlyRootFilesystem`` , and ``efsVolumeConfiguration`` . > The AWS Batch Scheduler checks the compute environments that are attached to the job queue before registering a task definition with Fargate. In this scenario, the job queue is where the job is submitted. If the job requires a Windows container and the first compute environment is ``LINUX`` , the compute environment is skipped and the next compute environment is checked until a Windows-based compute environment is found. > Fargate Spot is not supported on Windows-based containers on Fargate. A job queue will be blocked if a Windows job is submitted to a job queue with only Fargate Spot compute environments. However, you can attach both ``FARGATE`` and ``FARGATE_SPOT`` compute environments to the same job queue.
|
|
9013
9301
|
|
|
9014
9302
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobdefinition-runtimeplatform.html#cfn-batch-jobdefinition-runtimeplatform-operatingsystemfamily
|
|
9015
9303
|
'''
|
|
@@ -10212,6 +10500,7 @@ class CfnJobDefinition(
|
|
|
10212
10500
|
"parameters": "parameters",
|
|
10213
10501
|
"platform_capabilities": "platformCapabilities",
|
|
10214
10502
|
"propagate_tags": "propagateTags",
|
|
10503
|
+
"resource_retention_policy": "resourceRetentionPolicy",
|
|
10215
10504
|
"retry_strategy": "retryStrategy",
|
|
10216
10505
|
"scheduling_priority": "schedulingPriority",
|
|
10217
10506
|
"tags": "tags",
|
|
@@ -10232,6 +10521,7 @@ class CfnJobDefinitionProps:
|
|
|
10232
10521
|
parameters: typing.Any = None,
|
|
10233
10522
|
platform_capabilities: typing.Optional[typing.Sequence[builtins.str]] = None,
|
|
10234
10523
|
propagate_tags: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]] = None,
|
|
10524
|
+
resource_retention_policy: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnJobDefinition.ResourceRetentionPolicyProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
|
|
10235
10525
|
retry_strategy: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnJobDefinition.RetryStrategyProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
|
|
10236
10526
|
scheduling_priority: typing.Optional[jsii.Number] = None,
|
|
10237
10527
|
tags: typing.Any = None,
|
|
@@ -10249,6 +10539,7 @@ class CfnJobDefinitionProps:
|
|
|
10249
10539
|
:param parameters: Default parameters or parameter substitution placeholders that are set in the job definition. Parameters are specified as a key-value pair mapping. Parameters in a ``SubmitJob`` request override any corresponding parameter defaults from the job definition. For more information about specifying parameters, see `Job definition parameters <https://docs.aws.amazon.com/batch/latest/userguide/job_definition_parameters.html>`_ in the *AWS Batch User Guide* .
|
|
10250
10540
|
:param platform_capabilities: The platform capabilities required by the job definition. If no value is specified, it defaults to ``EC2`` . Jobs run on Fargate resources specify ``FARGATE`` .
|
|
10251
10541
|
:param propagate_tags: Specifies whether to propagate the tags from the job or job definition to the corresponding Amazon ECS task. If no value is specified, the tags aren't propagated. Tags can only be propagated to the tasks when the tasks are created. For tags with the same name, job tags are given priority over job definitions tags. If the total number of combined tags from the job and job definition is over 50, the job is moved to the ``FAILED`` state.
|
|
10542
|
+
:param resource_retention_policy: Specifies the resource retention policy settings for the job definition.
|
|
10252
10543
|
:param retry_strategy: The retry strategy to use for failed jobs that are submitted with this job definition.
|
|
10253
10544
|
:param scheduling_priority: The scheduling priority of the job definition. This only affects jobs in job queues with a fair-share policy. Jobs with a higher scheduling priority are scheduled before jobs with a lower scheduling priority.
|
|
10254
10545
|
:param tags: The tags that are applied to the job definition.
|
|
@@ -10273,6 +10564,7 @@ class CfnJobDefinitionProps:
|
|
|
10273
10564
|
check_type(argname="argument parameters", value=parameters, expected_type=type_hints["parameters"])
|
|
10274
10565
|
check_type(argname="argument platform_capabilities", value=platform_capabilities, expected_type=type_hints["platform_capabilities"])
|
|
10275
10566
|
check_type(argname="argument propagate_tags", value=propagate_tags, expected_type=type_hints["propagate_tags"])
|
|
10567
|
+
check_type(argname="argument resource_retention_policy", value=resource_retention_policy, expected_type=type_hints["resource_retention_policy"])
|
|
10276
10568
|
check_type(argname="argument retry_strategy", value=retry_strategy, expected_type=type_hints["retry_strategy"])
|
|
10277
10569
|
check_type(argname="argument scheduling_priority", value=scheduling_priority, expected_type=type_hints["scheduling_priority"])
|
|
10278
10570
|
check_type(argname="argument tags", value=tags, expected_type=type_hints["tags"])
|
|
@@ -10298,6 +10590,8 @@ class CfnJobDefinitionProps:
|
|
|
10298
10590
|
self._values["platform_capabilities"] = platform_capabilities
|
|
10299
10591
|
if propagate_tags is not None:
|
|
10300
10592
|
self._values["propagate_tags"] = propagate_tags
|
|
10593
|
+
if resource_retention_policy is not None:
|
|
10594
|
+
self._values["resource_retention_policy"] = resource_retention_policy
|
|
10301
10595
|
if retry_strategy is not None:
|
|
10302
10596
|
self._values["retry_strategy"] = retry_strategy
|
|
10303
10597
|
if scheduling_priority is not None:
|
|
@@ -10434,6 +10728,17 @@ class CfnJobDefinitionProps:
|
|
|
10434
10728
|
result = self._values.get("propagate_tags")
|
|
10435
10729
|
return typing.cast(typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]], result)
|
|
10436
10730
|
|
|
10731
|
+
@builtins.property
|
|
10732
|
+
def resource_retention_policy(
|
|
10733
|
+
self,
|
|
10734
|
+
) -> typing.Optional[typing.Union[_IResolvable_da3f097b, CfnJobDefinition.ResourceRetentionPolicyProperty]]:
|
|
10735
|
+
'''Specifies the resource retention policy settings for the job definition.
|
|
10736
|
+
|
|
10737
|
+
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-batch-jobdefinition.html#cfn-batch-jobdefinition-resourceretentionpolicy
|
|
10738
|
+
'''
|
|
10739
|
+
result = self._values.get("resource_retention_policy")
|
|
10740
|
+
return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, CfnJobDefinition.ResourceRetentionPolicyProperty]], result)
|
|
10741
|
+
|
|
10437
10742
|
@builtins.property
|
|
10438
10743
|
def retry_strategy(
|
|
10439
10744
|
self,
|
|
@@ -10490,7 +10795,7 @@ class CfnJobDefinitionProps:
|
|
|
10490
10795
|
)
|
|
10491
10796
|
|
|
10492
10797
|
|
|
10493
|
-
@jsii.implements(_IInspectable_c2943556, _ITaggable_36806126)
|
|
10798
|
+
@jsii.implements(_IInspectable_c2943556, _IJobQueueRef_2f1c7bda, _ITaggable_36806126)
|
|
10494
10799
|
class CfnJobQueue(
|
|
10495
10800
|
_CfnResource_9df397a6,
|
|
10496
10801
|
metaclass=jsii.JSIIMeta,
|
|
@@ -10511,14 +10816,15 @@ class CfnJobQueue(
|
|
|
10511
10816
|
from aws_cdk import aws_batch as batch
|
|
10512
10817
|
|
|
10513
10818
|
cfn_job_queue = batch.CfnJobQueue(self, "MyCfnJobQueue",
|
|
10819
|
+
priority=123,
|
|
10820
|
+
|
|
10821
|
+
# the properties below are optional
|
|
10514
10822
|
compute_environment_order=[batch.CfnJobQueue.ComputeEnvironmentOrderProperty(
|
|
10515
10823
|
compute_environment="computeEnvironment",
|
|
10516
10824
|
order=123
|
|
10517
10825
|
)],
|
|
10518
|
-
priority=123,
|
|
10519
|
-
|
|
10520
|
-
# the properties below are optional
|
|
10521
10826
|
job_queue_name="jobQueueName",
|
|
10827
|
+
job_queue_type="jobQueueType",
|
|
10522
10828
|
job_state_time_limit_actions=[batch.CfnJobQueue.JobStateTimeLimitActionProperty(
|
|
10523
10829
|
action="action",
|
|
10524
10830
|
max_time_seconds=123,
|
|
@@ -10526,6 +10832,10 @@ class CfnJobQueue(
|
|
|
10526
10832
|
state="state"
|
|
10527
10833
|
)],
|
|
10528
10834
|
scheduling_policy_arn="schedulingPolicyArn",
|
|
10835
|
+
service_environment_order=[batch.CfnJobQueue.ServiceEnvironmentOrderProperty(
|
|
10836
|
+
order=123,
|
|
10837
|
+
service_environment="serviceEnvironment"
|
|
10838
|
+
)],
|
|
10529
10839
|
state="state",
|
|
10530
10840
|
tags={
|
|
10531
10841
|
"tags_key": "tags"
|
|
@@ -10538,22 +10848,27 @@ class CfnJobQueue(
|
|
|
10538
10848
|
scope: _constructs_77d1e7e8.Construct,
|
|
10539
10849
|
id: builtins.str,
|
|
10540
10850
|
*,
|
|
10541
|
-
compute_environment_order: typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union["CfnJobQueue.ComputeEnvironmentOrderProperty", typing.Dict[builtins.str, typing.Any]]]]],
|
|
10542
10851
|
priority: jsii.Number,
|
|
10852
|
+
compute_environment_order: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union["CfnJobQueue.ComputeEnvironmentOrderProperty", typing.Dict[builtins.str, typing.Any]]]]]] = None,
|
|
10543
10853
|
job_queue_name: typing.Optional[builtins.str] = None,
|
|
10854
|
+
job_queue_type: typing.Optional[builtins.str] = None,
|
|
10544
10855
|
job_state_time_limit_actions: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union["CfnJobQueue.JobStateTimeLimitActionProperty", typing.Dict[builtins.str, typing.Any]]]]]] = None,
|
|
10545
10856
|
scheduling_policy_arn: typing.Optional[builtins.str] = None,
|
|
10857
|
+
service_environment_order: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union["CfnJobQueue.ServiceEnvironmentOrderProperty", typing.Dict[builtins.str, typing.Any]]]]]] = None,
|
|
10546
10858
|
state: typing.Optional[builtins.str] = None,
|
|
10547
10859
|
tags: typing.Optional[typing.Mapping[builtins.str, builtins.str]] = None,
|
|
10548
10860
|
) -> None:
|
|
10549
|
-
'''
|
|
10861
|
+
'''Create a new ``AWS::Batch::JobQueue``.
|
|
10862
|
+
|
|
10550
10863
|
:param scope: Scope in which this resource is defined.
|
|
10551
10864
|
:param id: Construct identifier for this resource (unique in its scope).
|
|
10552
|
-
:param compute_environment_order: The set of compute environments mapped to a job queue and their order relative to each other. The job scheduler uses this parameter to determine which compute environment runs a specific job. Compute environments must be in the ``VALID`` state before you can associate them with a job queue. You can associate up to three compute environments with a job queue. All of the compute environments must be either EC2 ( ``EC2`` or ``SPOT`` ) or Fargate ( ``FARGATE`` or ``FARGATE_SPOT`` ); EC2 and Fargate compute environments can't be mixed. .. epigraph:: All compute environments that are associated with a job queue must share the same architecture. AWS Batch doesn't support mixing compute environment architecture types in a single job queue.
|
|
10553
10865
|
:param priority: The priority of the job queue. Job queues with a higher priority (or a higher integer value for the ``priority`` parameter) are evaluated first when associated with the same compute environment. Priority is determined in descending order. For example, a job queue with a priority value of ``10`` is given scheduling preference over a job queue with a priority value of ``1`` . All of the compute environments must be either EC2 ( ``EC2`` or ``SPOT`` ) or Fargate ( ``FARGATE`` or ``FARGATE_SPOT`` ); EC2 and Fargate compute environments can't be mixed.
|
|
10866
|
+
:param compute_environment_order: The set of compute environments mapped to a job queue and their order relative to each other. The job scheduler uses this parameter to determine which compute environment runs a specific job. Compute environments must be in the ``VALID`` state before you can associate them with a job queue. You can associate up to three compute environments with a job queue. All of the compute environments must be either EC2 ( ``EC2`` or ``SPOT`` ) or Fargate ( ``FARGATE`` or ``FARGATE_SPOT`` ); EC2 and Fargate compute environments can't be mixed. .. epigraph:: All compute environments that are associated with a job queue must share the same architecture. AWS Batch doesn't support mixing compute environment architecture types in a single job queue.
|
|
10554
10867
|
:param job_queue_name: The name of the job queue. It can be up to 128 letters long. It can contain uppercase and lowercase letters, numbers, hyphens (-), and underscores (_).
|
|
10868
|
+
:param job_queue_type: The type of job queue. For service jobs that run on SageMaker AI , this value is ``SAGEMAKER_TRAINING`` . For regular container jobs, this value is ``EKS`` , ``ECS`` , or ``ECS_FARGATE`` depending on the compute environment.
|
|
10555
10869
|
:param job_state_time_limit_actions: The set of actions that AWS Batch perform on jobs that remain at the head of the job queue in the specified state longer than specified times. AWS Batch will perform each action after ``maxTimeSeconds`` has passed.
|
|
10556
10870
|
:param scheduling_policy_arn: The Amazon Resource Name (ARN) of the scheduling policy. The format is ``aws: *Partition* :batch: *Region* : *Account* :scheduling-policy/ *Name*`` . For example, ``aws:aws:batch:us-west-2:123456789012:scheduling-policy/MySchedulingPolicy`` .
|
|
10871
|
+
:param service_environment_order: The order of the service environment associated with the job queue. Job queues with a higher priority are evaluated first when associated with the same service environment.
|
|
10557
10872
|
:param state: The state of the job queue. If the job queue state is ``ENABLED`` , it is able to accept jobs. If the job queue state is ``DISABLED`` , new jobs can't be added to the queue, but jobs already in the queue can finish.
|
|
10558
10873
|
:param tags: The tags that are applied to the job queue. For more information, see `Tagging your AWS Batch resources <https://docs.aws.amazon.com/batch/latest/userguide/using-tags.html>`_ in *AWS Batch User Guide* .
|
|
10559
10874
|
'''
|
|
@@ -10562,11 +10877,13 @@ class CfnJobQueue(
|
|
|
10562
10877
|
check_type(argname="argument scope", value=scope, expected_type=type_hints["scope"])
|
|
10563
10878
|
check_type(argname="argument id", value=id, expected_type=type_hints["id"])
|
|
10564
10879
|
props = CfnJobQueueProps(
|
|
10565
|
-
compute_environment_order=compute_environment_order,
|
|
10566
10880
|
priority=priority,
|
|
10881
|
+
compute_environment_order=compute_environment_order,
|
|
10567
10882
|
job_queue_name=job_queue_name,
|
|
10883
|
+
job_queue_type=job_queue_type,
|
|
10568
10884
|
job_state_time_limit_actions=job_state_time_limit_actions,
|
|
10569
10885
|
scheduling_policy_arn=scheduling_policy_arn,
|
|
10886
|
+
service_environment_order=service_environment_order,
|
|
10570
10887
|
state=state,
|
|
10571
10888
|
tags=tags,
|
|
10572
10889
|
)
|
|
@@ -10617,43 +10934,49 @@ class CfnJobQueue(
|
|
|
10617
10934
|
def _cfn_properties(self) -> typing.Mapping[builtins.str, typing.Any]:
|
|
10618
10935
|
return typing.cast(typing.Mapping[builtins.str, typing.Any], jsii.get(self, "cfnProperties"))
|
|
10619
10936
|
|
|
10937
|
+
@builtins.property
|
|
10938
|
+
@jsii.member(jsii_name="jobQueueRef")
|
|
10939
|
+
def job_queue_ref(self) -> _JobQueueReference_1a1e9db8:
|
|
10940
|
+
'''A reference to a JobQueue resource.'''
|
|
10941
|
+
return typing.cast(_JobQueueReference_1a1e9db8, jsii.get(self, "jobQueueRef"))
|
|
10942
|
+
|
|
10620
10943
|
@builtins.property
|
|
10621
10944
|
@jsii.member(jsii_name="tags")
|
|
10622
10945
|
def tags(self) -> _TagManager_0a598cb3:
|
|
10623
10946
|
'''Tag Manager which manages the tags for this resource.'''
|
|
10624
10947
|
return typing.cast(_TagManager_0a598cb3, jsii.get(self, "tags"))
|
|
10625
10948
|
|
|
10949
|
+
@builtins.property
|
|
10950
|
+
@jsii.member(jsii_name="priority")
|
|
10951
|
+
def priority(self) -> jsii.Number:
|
|
10952
|
+
'''The priority of the job queue.'''
|
|
10953
|
+
return typing.cast(jsii.Number, jsii.get(self, "priority"))
|
|
10954
|
+
|
|
10955
|
+
@priority.setter
|
|
10956
|
+
def priority(self, value: jsii.Number) -> None:
|
|
10957
|
+
if __debug__:
|
|
10958
|
+
type_hints = typing.get_type_hints(_typecheckingstub__620331f74c116d31a6d43627e1a45e7041bc3c110194265f30dc193863c8ed94)
|
|
10959
|
+
check_type(argname="argument value", value=value, expected_type=type_hints["value"])
|
|
10960
|
+
jsii.set(self, "priority", value) # pyright: ignore[reportArgumentType]
|
|
10961
|
+
|
|
10626
10962
|
@builtins.property
|
|
10627
10963
|
@jsii.member(jsii_name="computeEnvironmentOrder")
|
|
10628
10964
|
def compute_environment_order(
|
|
10629
10965
|
self,
|
|
10630
|
-
) -> typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, "CfnJobQueue.ComputeEnvironmentOrderProperty"]]]:
|
|
10966
|
+
) -> typing.Optional[typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, "CfnJobQueue.ComputeEnvironmentOrderProperty"]]]]:
|
|
10631
10967
|
'''The set of compute environments mapped to a job queue and their order relative to each other.'''
|
|
10632
|
-
return typing.cast(typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, "CfnJobQueue.ComputeEnvironmentOrderProperty"]]], jsii.get(self, "computeEnvironmentOrder"))
|
|
10968
|
+
return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, "CfnJobQueue.ComputeEnvironmentOrderProperty"]]]], jsii.get(self, "computeEnvironmentOrder"))
|
|
10633
10969
|
|
|
10634
10970
|
@compute_environment_order.setter
|
|
10635
10971
|
def compute_environment_order(
|
|
10636
10972
|
self,
|
|
10637
|
-
value: typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, "CfnJobQueue.ComputeEnvironmentOrderProperty"]]],
|
|
10973
|
+
value: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, "CfnJobQueue.ComputeEnvironmentOrderProperty"]]]],
|
|
10638
10974
|
) -> None:
|
|
10639
10975
|
if __debug__:
|
|
10640
10976
|
type_hints = typing.get_type_hints(_typecheckingstub__aa1c2f3f42165309672c3fdf8c286ff9dc5e99756ec1a5b3ffca9e719d4c7036)
|
|
10641
10977
|
check_type(argname="argument value", value=value, expected_type=type_hints["value"])
|
|
10642
10978
|
jsii.set(self, "computeEnvironmentOrder", value) # pyright: ignore[reportArgumentType]
|
|
10643
10979
|
|
|
10644
|
-
@builtins.property
|
|
10645
|
-
@jsii.member(jsii_name="priority")
|
|
10646
|
-
def priority(self) -> jsii.Number:
|
|
10647
|
-
'''The priority of the job queue.'''
|
|
10648
|
-
return typing.cast(jsii.Number, jsii.get(self, "priority"))
|
|
10649
|
-
|
|
10650
|
-
@priority.setter
|
|
10651
|
-
def priority(self, value: jsii.Number) -> None:
|
|
10652
|
-
if __debug__:
|
|
10653
|
-
type_hints = typing.get_type_hints(_typecheckingstub__620331f74c116d31a6d43627e1a45e7041bc3c110194265f30dc193863c8ed94)
|
|
10654
|
-
check_type(argname="argument value", value=value, expected_type=type_hints["value"])
|
|
10655
|
-
jsii.set(self, "priority", value) # pyright: ignore[reportArgumentType]
|
|
10656
|
-
|
|
10657
10980
|
@builtins.property
|
|
10658
10981
|
@jsii.member(jsii_name="jobQueueName")
|
|
10659
10982
|
def job_queue_name(self) -> typing.Optional[builtins.str]:
|
|
@@ -10667,6 +10990,19 @@ class CfnJobQueue(
|
|
|
10667
10990
|
check_type(argname="argument value", value=value, expected_type=type_hints["value"])
|
|
10668
10991
|
jsii.set(self, "jobQueueName", value) # pyright: ignore[reportArgumentType]
|
|
10669
10992
|
|
|
10993
|
+
@builtins.property
|
|
10994
|
+
@jsii.member(jsii_name="jobQueueType")
|
|
10995
|
+
def job_queue_type(self) -> typing.Optional[builtins.str]:
|
|
10996
|
+
'''The type of job queue.'''
|
|
10997
|
+
return typing.cast(typing.Optional[builtins.str], jsii.get(self, "jobQueueType"))
|
|
10998
|
+
|
|
10999
|
+
@job_queue_type.setter
|
|
11000
|
+
def job_queue_type(self, value: typing.Optional[builtins.str]) -> None:
|
|
11001
|
+
if __debug__:
|
|
11002
|
+
type_hints = typing.get_type_hints(_typecheckingstub__cf7ba788adc96e65e278a0278721e322a7b2c5ad42c7d2cafd707c74e58d6e65)
|
|
11003
|
+
check_type(argname="argument value", value=value, expected_type=type_hints["value"])
|
|
11004
|
+
jsii.set(self, "jobQueueType", value) # pyright: ignore[reportArgumentType]
|
|
11005
|
+
|
|
10670
11006
|
@builtins.property
|
|
10671
11007
|
@jsii.member(jsii_name="jobStateTimeLimitActions")
|
|
10672
11008
|
def job_state_time_limit_actions(
|
|
@@ -10698,6 +11034,24 @@ class CfnJobQueue(
|
|
|
10698
11034
|
check_type(argname="argument value", value=value, expected_type=type_hints["value"])
|
|
10699
11035
|
jsii.set(self, "schedulingPolicyArn", value) # pyright: ignore[reportArgumentType]
|
|
10700
11036
|
|
|
11037
|
+
@builtins.property
|
|
11038
|
+
@jsii.member(jsii_name="serviceEnvironmentOrder")
|
|
11039
|
+
def service_environment_order(
|
|
11040
|
+
self,
|
|
11041
|
+
) -> typing.Optional[typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, "CfnJobQueue.ServiceEnvironmentOrderProperty"]]]]:
|
|
11042
|
+
'''The order of the service environment associated with the job queue.'''
|
|
11043
|
+
return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, "CfnJobQueue.ServiceEnvironmentOrderProperty"]]]], jsii.get(self, "serviceEnvironmentOrder"))
|
|
11044
|
+
|
|
11045
|
+
@service_environment_order.setter
|
|
11046
|
+
def service_environment_order(
|
|
11047
|
+
self,
|
|
11048
|
+
value: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, "CfnJobQueue.ServiceEnvironmentOrderProperty"]]]],
|
|
11049
|
+
) -> None:
|
|
11050
|
+
if __debug__:
|
|
11051
|
+
type_hints = typing.get_type_hints(_typecheckingstub__59b5173dac1cdbe1bbc03df51cc226f4cddcdbdc7dd27fbfc1081cce50fc2d50)
|
|
11052
|
+
check_type(argname="argument value", value=value, expected_type=type_hints["value"])
|
|
11053
|
+
jsii.set(self, "serviceEnvironmentOrder", value) # pyright: ignore[reportArgumentType]
|
|
11054
|
+
|
|
10701
11055
|
@builtins.property
|
|
10702
11056
|
@jsii.member(jsii_name="state")
|
|
10703
11057
|
def state(self) -> typing.Optional[builtins.str]:
|
|
@@ -10917,39 +11271,120 @@ class CfnJobQueue(
|
|
|
10917
11271
|
k + "=" + repr(v) for k, v in self._values.items()
|
|
10918
11272
|
)
|
|
10919
11273
|
|
|
11274
|
+
@jsii.data_type(
|
|
11275
|
+
jsii_type="aws-cdk-lib.aws_batch.CfnJobQueue.ServiceEnvironmentOrderProperty",
|
|
11276
|
+
jsii_struct_bases=[],
|
|
11277
|
+
name_mapping={"order": "order", "service_environment": "serviceEnvironment"},
|
|
11278
|
+
)
|
|
11279
|
+
class ServiceEnvironmentOrderProperty:
|
|
11280
|
+
def __init__(
|
|
11281
|
+
self,
|
|
11282
|
+
*,
|
|
11283
|
+
order: jsii.Number,
|
|
11284
|
+
service_environment: builtins.str,
|
|
11285
|
+
) -> None:
|
|
11286
|
+
'''Specifies the order of a service environment for a job queue.
|
|
10920
11287
|
|
|
10921
|
-
|
|
10922
|
-
jsii_type="aws-cdk-lib.aws_batch.CfnJobQueueProps",
|
|
10923
|
-
jsii_struct_bases=[],
|
|
10924
|
-
name_mapping={
|
|
10925
|
-
"compute_environment_order": "computeEnvironmentOrder",
|
|
10926
|
-
"priority": "priority",
|
|
10927
|
-
"job_queue_name": "jobQueueName",
|
|
10928
|
-
"job_state_time_limit_actions": "jobStateTimeLimitActions",
|
|
10929
|
-
"scheduling_policy_arn": "schedulingPolicyArn",
|
|
10930
|
-
"state": "state",
|
|
10931
|
-
"tags": "tags",
|
|
10932
|
-
},
|
|
10933
|
-
)
|
|
10934
|
-
class CfnJobQueueProps:
|
|
10935
|
-
def __init__(
|
|
10936
|
-
self,
|
|
10937
|
-
*,
|
|
10938
|
-
compute_environment_order: typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union[CfnJobQueue.ComputeEnvironmentOrderProperty, typing.Dict[builtins.str, typing.Any]]]]],
|
|
10939
|
-
priority: jsii.Number,
|
|
10940
|
-
job_queue_name: typing.Optional[builtins.str] = None,
|
|
10941
|
-
job_state_time_limit_actions: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union[CfnJobQueue.JobStateTimeLimitActionProperty, typing.Dict[builtins.str, typing.Any]]]]]] = None,
|
|
10942
|
-
scheduling_policy_arn: typing.Optional[builtins.str] = None,
|
|
10943
|
-
state: typing.Optional[builtins.str] = None,
|
|
10944
|
-
tags: typing.Optional[typing.Mapping[builtins.str, builtins.str]] = None,
|
|
10945
|
-
) -> None:
|
|
10946
|
-
'''Properties for defining a ``CfnJobQueue``.
|
|
11288
|
+
This determines the priority order when multiple service environments are associated with the same job queue.
|
|
10947
11289
|
|
|
10948
|
-
|
|
10949
|
-
|
|
10950
|
-
|
|
11290
|
+
:param order: The order of the service environment. Job queues with a higher priority are evaluated first when associated with the same service environment.
|
|
11291
|
+
:param service_environment: The name or ARN of the service environment.
|
|
11292
|
+
|
|
11293
|
+
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobqueue-serviceenvironmentorder.html
|
|
11294
|
+
:exampleMetadata: fixture=_generated
|
|
11295
|
+
|
|
11296
|
+
Example::
|
|
11297
|
+
|
|
11298
|
+
# The code below shows an example of how to instantiate this type.
|
|
11299
|
+
# The values are placeholders you should change.
|
|
11300
|
+
from aws_cdk import aws_batch as batch
|
|
11301
|
+
|
|
11302
|
+
service_environment_order_property = batch.CfnJobQueue.ServiceEnvironmentOrderProperty(
|
|
11303
|
+
order=123,
|
|
11304
|
+
service_environment="serviceEnvironment"
|
|
11305
|
+
)
|
|
11306
|
+
'''
|
|
11307
|
+
if __debug__:
|
|
11308
|
+
type_hints = typing.get_type_hints(_typecheckingstub__04c4b071542df93d5d7f1e7493b1bd821aaeae2008c337f58b1d399f309446bf)
|
|
11309
|
+
check_type(argname="argument order", value=order, expected_type=type_hints["order"])
|
|
11310
|
+
check_type(argname="argument service_environment", value=service_environment, expected_type=type_hints["service_environment"])
|
|
11311
|
+
self._values: typing.Dict[builtins.str, typing.Any] = {
|
|
11312
|
+
"order": order,
|
|
11313
|
+
"service_environment": service_environment,
|
|
11314
|
+
}
|
|
11315
|
+
|
|
11316
|
+
@builtins.property
|
|
11317
|
+
def order(self) -> jsii.Number:
|
|
11318
|
+
'''The order of the service environment.
|
|
11319
|
+
|
|
11320
|
+
Job queues with a higher priority are evaluated first when associated with the same service environment.
|
|
11321
|
+
|
|
11322
|
+
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobqueue-serviceenvironmentorder.html#cfn-batch-jobqueue-serviceenvironmentorder-order
|
|
11323
|
+
'''
|
|
11324
|
+
result = self._values.get("order")
|
|
11325
|
+
assert result is not None, "Required property 'order' is missing"
|
|
11326
|
+
return typing.cast(jsii.Number, result)
|
|
11327
|
+
|
|
11328
|
+
@builtins.property
|
|
11329
|
+
def service_environment(self) -> builtins.str:
|
|
11330
|
+
'''The name or ARN of the service environment.
|
|
11331
|
+
|
|
11332
|
+
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-jobqueue-serviceenvironmentorder.html#cfn-batch-jobqueue-serviceenvironmentorder-serviceenvironment
|
|
11333
|
+
'''
|
|
11334
|
+
result = self._values.get("service_environment")
|
|
11335
|
+
assert result is not None, "Required property 'service_environment' is missing"
|
|
11336
|
+
return typing.cast(builtins.str, result)
|
|
11337
|
+
|
|
11338
|
+
def __eq__(self, rhs: typing.Any) -> builtins.bool:
|
|
11339
|
+
return isinstance(rhs, self.__class__) and rhs._values == self._values
|
|
11340
|
+
|
|
11341
|
+
def __ne__(self, rhs: typing.Any) -> builtins.bool:
|
|
11342
|
+
return not (rhs == self)
|
|
11343
|
+
|
|
11344
|
+
def __repr__(self) -> str:
|
|
11345
|
+
return "ServiceEnvironmentOrderProperty(%s)" % ", ".join(
|
|
11346
|
+
k + "=" + repr(v) for k, v in self._values.items()
|
|
11347
|
+
)
|
|
11348
|
+
|
|
11349
|
+
|
|
11350
|
+
@jsii.data_type(
|
|
11351
|
+
jsii_type="aws-cdk-lib.aws_batch.CfnJobQueueProps",
|
|
11352
|
+
jsii_struct_bases=[],
|
|
11353
|
+
name_mapping={
|
|
11354
|
+
"priority": "priority",
|
|
11355
|
+
"compute_environment_order": "computeEnvironmentOrder",
|
|
11356
|
+
"job_queue_name": "jobQueueName",
|
|
11357
|
+
"job_queue_type": "jobQueueType",
|
|
11358
|
+
"job_state_time_limit_actions": "jobStateTimeLimitActions",
|
|
11359
|
+
"scheduling_policy_arn": "schedulingPolicyArn",
|
|
11360
|
+
"service_environment_order": "serviceEnvironmentOrder",
|
|
11361
|
+
"state": "state",
|
|
11362
|
+
"tags": "tags",
|
|
11363
|
+
},
|
|
11364
|
+
)
|
|
11365
|
+
class CfnJobQueueProps:
|
|
11366
|
+
def __init__(
|
|
11367
|
+
self,
|
|
11368
|
+
*,
|
|
11369
|
+
priority: jsii.Number,
|
|
11370
|
+
compute_environment_order: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union[CfnJobQueue.ComputeEnvironmentOrderProperty, typing.Dict[builtins.str, typing.Any]]]]]] = None,
|
|
11371
|
+
job_queue_name: typing.Optional[builtins.str] = None,
|
|
11372
|
+
job_queue_type: typing.Optional[builtins.str] = None,
|
|
11373
|
+
job_state_time_limit_actions: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union[CfnJobQueue.JobStateTimeLimitActionProperty, typing.Dict[builtins.str, typing.Any]]]]]] = None,
|
|
11374
|
+
scheduling_policy_arn: typing.Optional[builtins.str] = None,
|
|
11375
|
+
service_environment_order: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union[CfnJobQueue.ServiceEnvironmentOrderProperty, typing.Dict[builtins.str, typing.Any]]]]]] = None,
|
|
11376
|
+
state: typing.Optional[builtins.str] = None,
|
|
11377
|
+
tags: typing.Optional[typing.Mapping[builtins.str, builtins.str]] = None,
|
|
11378
|
+
) -> None:
|
|
11379
|
+
'''Properties for defining a ``CfnJobQueue``.
|
|
11380
|
+
|
|
11381
|
+
:param priority: The priority of the job queue. Job queues with a higher priority (or a higher integer value for the ``priority`` parameter) are evaluated first when associated with the same compute environment. Priority is determined in descending order. For example, a job queue with a priority value of ``10`` is given scheduling preference over a job queue with a priority value of ``1`` . All of the compute environments must be either EC2 ( ``EC2`` or ``SPOT`` ) or Fargate ( ``FARGATE`` or ``FARGATE_SPOT`` ); EC2 and Fargate compute environments can't be mixed.
|
|
11382
|
+
:param compute_environment_order: The set of compute environments mapped to a job queue and their order relative to each other. The job scheduler uses this parameter to determine which compute environment runs a specific job. Compute environments must be in the ``VALID`` state before you can associate them with a job queue. You can associate up to three compute environments with a job queue. All of the compute environments must be either EC2 ( ``EC2`` or ``SPOT`` ) or Fargate ( ``FARGATE`` or ``FARGATE_SPOT`` ); EC2 and Fargate compute environments can't be mixed. .. epigraph:: All compute environments that are associated with a job queue must share the same architecture. AWS Batch doesn't support mixing compute environment architecture types in a single job queue.
|
|
11383
|
+
:param job_queue_name: The name of the job queue. It can be up to 128 letters long. It can contain uppercase and lowercase letters, numbers, hyphens (-), and underscores (_).
|
|
11384
|
+
:param job_queue_type: The type of job queue. For service jobs that run on SageMaker AI , this value is ``SAGEMAKER_TRAINING`` . For regular container jobs, this value is ``EKS`` , ``ECS`` , or ``ECS_FARGATE`` depending on the compute environment.
|
|
10951
11385
|
:param job_state_time_limit_actions: The set of actions that AWS Batch perform on jobs that remain at the head of the job queue in the specified state longer than specified times. AWS Batch will perform each action after ``maxTimeSeconds`` has passed.
|
|
10952
11386
|
:param scheduling_policy_arn: The Amazon Resource Name (ARN) of the scheduling policy. The format is ``aws: *Partition* :batch: *Region* : *Account* :scheduling-policy/ *Name*`` . For example, ``aws:aws:batch:us-west-2:123456789012:scheduling-policy/MySchedulingPolicy`` .
|
|
11387
|
+
:param service_environment_order: The order of the service environment associated with the job queue. Job queues with a higher priority are evaluated first when associated with the same service environment.
|
|
10953
11388
|
:param state: The state of the job queue. If the job queue state is ``ENABLED`` , it is able to accept jobs. If the job queue state is ``DISABLED`` , new jobs can't be added to the queue, but jobs already in the queue can finish.
|
|
10954
11389
|
:param tags: The tags that are applied to the job queue. For more information, see `Tagging your AWS Batch resources <https://docs.aws.amazon.com/batch/latest/userguide/using-tags.html>`_ in *AWS Batch User Guide* .
|
|
10955
11390
|
|
|
@@ -10963,14 +11398,15 @@ class CfnJobQueueProps:
|
|
|
10963
11398
|
from aws_cdk import aws_batch as batch
|
|
10964
11399
|
|
|
10965
11400
|
cfn_job_queue_props = batch.CfnJobQueueProps(
|
|
11401
|
+
priority=123,
|
|
11402
|
+
|
|
11403
|
+
# the properties below are optional
|
|
10966
11404
|
compute_environment_order=[batch.CfnJobQueue.ComputeEnvironmentOrderProperty(
|
|
10967
11405
|
compute_environment="computeEnvironment",
|
|
10968
11406
|
order=123
|
|
10969
11407
|
)],
|
|
10970
|
-
priority=123,
|
|
10971
|
-
|
|
10972
|
-
# the properties below are optional
|
|
10973
11408
|
job_queue_name="jobQueueName",
|
|
11409
|
+
job_queue_type="jobQueueType",
|
|
10974
11410
|
job_state_time_limit_actions=[batch.CfnJobQueue.JobStateTimeLimitActionProperty(
|
|
10975
11411
|
action="action",
|
|
10976
11412
|
max_time_seconds=123,
|
|
@@ -10978,6 +11414,10 @@ class CfnJobQueueProps:
|
|
|
10978
11414
|
state="state"
|
|
10979
11415
|
)],
|
|
10980
11416
|
scheduling_policy_arn="schedulingPolicyArn",
|
|
11417
|
+
service_environment_order=[batch.CfnJobQueue.ServiceEnvironmentOrderProperty(
|
|
11418
|
+
order=123,
|
|
11419
|
+
service_environment="serviceEnvironment"
|
|
11420
|
+
)],
|
|
10981
11421
|
state="state",
|
|
10982
11422
|
tags={
|
|
10983
11423
|
"tags_key": "tags"
|
|
@@ -10986,32 +11426,51 @@ class CfnJobQueueProps:
|
|
|
10986
11426
|
'''
|
|
10987
11427
|
if __debug__:
|
|
10988
11428
|
type_hints = typing.get_type_hints(_typecheckingstub__009d6d384b1b723169e64875095e05fe852ae3931adf5ba2004d22475a76caa9)
|
|
10989
|
-
check_type(argname="argument compute_environment_order", value=compute_environment_order, expected_type=type_hints["compute_environment_order"])
|
|
10990
11429
|
check_type(argname="argument priority", value=priority, expected_type=type_hints["priority"])
|
|
11430
|
+
check_type(argname="argument compute_environment_order", value=compute_environment_order, expected_type=type_hints["compute_environment_order"])
|
|
10991
11431
|
check_type(argname="argument job_queue_name", value=job_queue_name, expected_type=type_hints["job_queue_name"])
|
|
11432
|
+
check_type(argname="argument job_queue_type", value=job_queue_type, expected_type=type_hints["job_queue_type"])
|
|
10992
11433
|
check_type(argname="argument job_state_time_limit_actions", value=job_state_time_limit_actions, expected_type=type_hints["job_state_time_limit_actions"])
|
|
10993
11434
|
check_type(argname="argument scheduling_policy_arn", value=scheduling_policy_arn, expected_type=type_hints["scheduling_policy_arn"])
|
|
11435
|
+
check_type(argname="argument service_environment_order", value=service_environment_order, expected_type=type_hints["service_environment_order"])
|
|
10994
11436
|
check_type(argname="argument state", value=state, expected_type=type_hints["state"])
|
|
10995
11437
|
check_type(argname="argument tags", value=tags, expected_type=type_hints["tags"])
|
|
10996
11438
|
self._values: typing.Dict[builtins.str, typing.Any] = {
|
|
10997
|
-
"compute_environment_order": compute_environment_order,
|
|
10998
11439
|
"priority": priority,
|
|
10999
11440
|
}
|
|
11441
|
+
if compute_environment_order is not None:
|
|
11442
|
+
self._values["compute_environment_order"] = compute_environment_order
|
|
11000
11443
|
if job_queue_name is not None:
|
|
11001
11444
|
self._values["job_queue_name"] = job_queue_name
|
|
11445
|
+
if job_queue_type is not None:
|
|
11446
|
+
self._values["job_queue_type"] = job_queue_type
|
|
11002
11447
|
if job_state_time_limit_actions is not None:
|
|
11003
11448
|
self._values["job_state_time_limit_actions"] = job_state_time_limit_actions
|
|
11004
11449
|
if scheduling_policy_arn is not None:
|
|
11005
11450
|
self._values["scheduling_policy_arn"] = scheduling_policy_arn
|
|
11451
|
+
if service_environment_order is not None:
|
|
11452
|
+
self._values["service_environment_order"] = service_environment_order
|
|
11006
11453
|
if state is not None:
|
|
11007
11454
|
self._values["state"] = state
|
|
11008
11455
|
if tags is not None:
|
|
11009
11456
|
self._values["tags"] = tags
|
|
11010
11457
|
|
|
11458
|
+
@builtins.property
|
|
11459
|
+
def priority(self) -> jsii.Number:
|
|
11460
|
+
'''The priority of the job queue.
|
|
11461
|
+
|
|
11462
|
+
Job queues with a higher priority (or a higher integer value for the ``priority`` parameter) are evaluated first when associated with the same compute environment. Priority is determined in descending order. For example, a job queue with a priority value of ``10`` is given scheduling preference over a job queue with a priority value of ``1`` . All of the compute environments must be either EC2 ( ``EC2`` or ``SPOT`` ) or Fargate ( ``FARGATE`` or ``FARGATE_SPOT`` ); EC2 and Fargate compute environments can't be mixed.
|
|
11463
|
+
|
|
11464
|
+
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-batch-jobqueue.html#cfn-batch-jobqueue-priority
|
|
11465
|
+
'''
|
|
11466
|
+
result = self._values.get("priority")
|
|
11467
|
+
assert result is not None, "Required property 'priority' is missing"
|
|
11468
|
+
return typing.cast(jsii.Number, result)
|
|
11469
|
+
|
|
11011
11470
|
@builtins.property
|
|
11012
11471
|
def compute_environment_order(
|
|
11013
11472
|
self,
|
|
11014
|
-
) -> typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, CfnJobQueue.ComputeEnvironmentOrderProperty]]]:
|
|
11473
|
+
) -> typing.Optional[typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, CfnJobQueue.ComputeEnvironmentOrderProperty]]]]:
|
|
11015
11474
|
'''The set of compute environments mapped to a job queue and their order relative to each other.
|
|
11016
11475
|
|
|
11017
11476
|
The job scheduler uses this parameter to determine which compute environment runs a specific job. Compute environments must be in the ``VALID`` state before you can associate them with a job queue. You can associate up to three compute environments with a job queue. All of the compute environments must be either EC2 ( ``EC2`` or ``SPOT`` ) or Fargate ( ``FARGATE`` or ``FARGATE_SPOT`` ); EC2 and Fargate compute environments can't be mixed.
|
|
@@ -11022,20 +11481,7 @@ class CfnJobQueueProps:
|
|
|
11022
11481
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-batch-jobqueue.html#cfn-batch-jobqueue-computeenvironmentorder
|
|
11023
11482
|
'''
|
|
11024
11483
|
result = self._values.get("compute_environment_order")
|
|
11025
|
-
|
|
11026
|
-
return typing.cast(typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, CfnJobQueue.ComputeEnvironmentOrderProperty]]], result)
|
|
11027
|
-
|
|
11028
|
-
@builtins.property
|
|
11029
|
-
def priority(self) -> jsii.Number:
|
|
11030
|
-
'''The priority of the job queue.
|
|
11031
|
-
|
|
11032
|
-
Job queues with a higher priority (or a higher integer value for the ``priority`` parameter) are evaluated first when associated with the same compute environment. Priority is determined in descending order. For example, a job queue with a priority value of ``10`` is given scheduling preference over a job queue with a priority value of ``1`` . All of the compute environments must be either EC2 ( ``EC2`` or ``SPOT`` ) or Fargate ( ``FARGATE`` or ``FARGATE_SPOT`` ); EC2 and Fargate compute environments can't be mixed.
|
|
11033
|
-
|
|
11034
|
-
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-batch-jobqueue.html#cfn-batch-jobqueue-priority
|
|
11035
|
-
'''
|
|
11036
|
-
result = self._values.get("priority")
|
|
11037
|
-
assert result is not None, "Required property 'priority' is missing"
|
|
11038
|
-
return typing.cast(jsii.Number, result)
|
|
11484
|
+
return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, CfnJobQueue.ComputeEnvironmentOrderProperty]]]], result)
|
|
11039
11485
|
|
|
11040
11486
|
@builtins.property
|
|
11041
11487
|
def job_queue_name(self) -> typing.Optional[builtins.str]:
|
|
@@ -11048,6 +11494,17 @@ class CfnJobQueueProps:
|
|
|
11048
11494
|
result = self._values.get("job_queue_name")
|
|
11049
11495
|
return typing.cast(typing.Optional[builtins.str], result)
|
|
11050
11496
|
|
|
11497
|
+
@builtins.property
|
|
11498
|
+
def job_queue_type(self) -> typing.Optional[builtins.str]:
|
|
11499
|
+
'''The type of job queue.
|
|
11500
|
+
|
|
11501
|
+
For service jobs that run on SageMaker AI , this value is ``SAGEMAKER_TRAINING`` . For regular container jobs, this value is ``EKS`` , ``ECS`` , or ``ECS_FARGATE`` depending on the compute environment.
|
|
11502
|
+
|
|
11503
|
+
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-batch-jobqueue.html#cfn-batch-jobqueue-jobqueuetype
|
|
11504
|
+
'''
|
|
11505
|
+
result = self._values.get("job_queue_type")
|
|
11506
|
+
return typing.cast(typing.Optional[builtins.str], result)
|
|
11507
|
+
|
|
11051
11508
|
@builtins.property
|
|
11052
11509
|
def job_state_time_limit_actions(
|
|
11053
11510
|
self,
|
|
@@ -11072,6 +11529,19 @@ class CfnJobQueueProps:
|
|
|
11072
11529
|
result = self._values.get("scheduling_policy_arn")
|
|
11073
11530
|
return typing.cast(typing.Optional[builtins.str], result)
|
|
11074
11531
|
|
|
11532
|
+
@builtins.property
|
|
11533
|
+
def service_environment_order(
|
|
11534
|
+
self,
|
|
11535
|
+
) -> typing.Optional[typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, CfnJobQueue.ServiceEnvironmentOrderProperty]]]]:
|
|
11536
|
+
'''The order of the service environment associated with the job queue.
|
|
11537
|
+
|
|
11538
|
+
Job queues with a higher priority are evaluated first when associated with the same service environment.
|
|
11539
|
+
|
|
11540
|
+
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-batch-jobqueue.html#cfn-batch-jobqueue-serviceenvironmentorder
|
|
11541
|
+
'''
|
|
11542
|
+
result = self._values.get("service_environment_order")
|
|
11543
|
+
return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, CfnJobQueue.ServiceEnvironmentOrderProperty]]]], result)
|
|
11544
|
+
|
|
11075
11545
|
@builtins.property
|
|
11076
11546
|
def state(self) -> typing.Optional[builtins.str]:
|
|
11077
11547
|
'''The state of the job queue.
|
|
@@ -11106,7 +11576,7 @@ class CfnJobQueueProps:
|
|
|
11106
11576
|
)
|
|
11107
11577
|
|
|
11108
11578
|
|
|
11109
|
-
@jsii.implements(_IInspectable_c2943556, _ITaggable_36806126)
|
|
11579
|
+
@jsii.implements(_IInspectable_c2943556, _ISchedulingPolicyRef_a7864c7c, _ITaggable_36806126)
|
|
11110
11580
|
class CfnSchedulingPolicy(
|
|
11111
11581
|
_CfnResource_9df397a6,
|
|
11112
11582
|
metaclass=jsii.JSIIMeta,
|
|
@@ -11151,7 +11621,8 @@ class CfnSchedulingPolicy(
|
|
|
11151
11621
|
name: typing.Optional[builtins.str] = None,
|
|
11152
11622
|
tags: typing.Optional[typing.Mapping[builtins.str, builtins.str]] = None,
|
|
11153
11623
|
) -> None:
|
|
11154
|
-
'''
|
|
11624
|
+
'''Create a new ``AWS::Batch::SchedulingPolicy``.
|
|
11625
|
+
|
|
11155
11626
|
:param scope: Scope in which this resource is defined.
|
|
11156
11627
|
:param id: Construct identifier for this resource (unique in its scope).
|
|
11157
11628
|
:param fairshare_policy: The fair-share scheduling policy details.
|
|
@@ -11212,6 +11683,12 @@ class CfnSchedulingPolicy(
|
|
|
11212
11683
|
def _cfn_properties(self) -> typing.Mapping[builtins.str, typing.Any]:
|
|
11213
11684
|
return typing.cast(typing.Mapping[builtins.str, typing.Any], jsii.get(self, "cfnProperties"))
|
|
11214
11685
|
|
|
11686
|
+
@builtins.property
|
|
11687
|
+
@jsii.member(jsii_name="schedulingPolicyRef")
|
|
11688
|
+
def scheduling_policy_ref(self) -> _SchedulingPolicyReference_a55795c6:
|
|
11689
|
+
'''A reference to a SchedulingPolicy resource.'''
|
|
11690
|
+
return typing.cast(_SchedulingPolicyReference_a55795c6, jsii.get(self, "schedulingPolicyRef"))
|
|
11691
|
+
|
|
11215
11692
|
@builtins.property
|
|
11216
11693
|
@jsii.member(jsii_name="tags")
|
|
11217
11694
|
def tags(self) -> _TagManager_0a598cb3:
|
|
@@ -11390,7 +11867,7 @@ class CfnSchedulingPolicy(
|
|
|
11390
11867
|
|
|
11391
11868
|
Share identifiers that aren't included have a default weight of ``1.0`` .
|
|
11392
11869
|
|
|
11393
|
-
:param share_identifier: A share identifier or share identifier prefix. If the string ends with an asterisk (*), this entry specifies the weight factor to use for share identifiers that start with that prefix. The list of share identifiers in a fair-share policy can't overlap. For example, you can't have one that specifies a ``shareIdentifier`` of ``UserA*`` and another that specifies a ``shareIdentifier`` of ``
|
|
11870
|
+
:param share_identifier: A share identifier or share identifier prefix. If the string ends with an asterisk (*), this entry specifies the weight factor to use for share identifiers that start with that prefix. The list of share identifiers in a fair-share policy can't overlap. For example, you can't have one that specifies a ``shareIdentifier`` of ``UserA*`` and another that specifies a ``shareIdentifier`` of ``UserA1`` . There can be no more than 500 share identifiers active in a job queue. The string is limited to 255 alphanumeric characters, and can be followed by an asterisk (*).
|
|
11394
11871
|
:param weight_factor: The weight factor for the share identifier. The default value is 1.0. A lower value has a higher priority for compute resources. For example, jobs that use a share identifier with a weight factor of 0.125 (1/8) get 8 times the compute resources of jobs that use a share identifier with a weight factor of 1. The smallest supported value is 0.0001, and the largest supported value is 999.9999.
|
|
11395
11872
|
|
|
11396
11873
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-schedulingpolicy-shareattributes.html
|
|
@@ -11421,7 +11898,7 @@ class CfnSchedulingPolicy(
|
|
|
11421
11898
|
def share_identifier(self) -> typing.Optional[builtins.str]:
|
|
11422
11899
|
'''A share identifier or share identifier prefix.
|
|
11423
11900
|
|
|
11424
|
-
If the string ends with an asterisk (*), this entry specifies the weight factor to use for share identifiers that start with that prefix. The list of share identifiers in a fair-share policy can't overlap. For example, you can't have one that specifies a ``shareIdentifier`` of ``UserA*`` and another that specifies a ``shareIdentifier`` of ``
|
|
11901
|
+
If the string ends with an asterisk (*), this entry specifies the weight factor to use for share identifiers that start with that prefix. The list of share identifiers in a fair-share policy can't overlap. For example, you can't have one that specifies a ``shareIdentifier`` of ``UserA*`` and another that specifies a ``shareIdentifier`` of ``UserA1`` .
|
|
11425
11902
|
|
|
11426
11903
|
There can be no more than 500 share identifiers active in a job queue.
|
|
11427
11904
|
|
|
@@ -11545,9 +12022,428 @@ class CfnSchedulingPolicyProps:
|
|
|
11545
12022
|
|
|
11546
12023
|
Each tag consists of a key and an optional value. For more information, see `Tagging AWS Resources <https://docs.aws.amazon.com/general/latest/gr/aws_tagging.html>`_ in *AWS General Reference* .
|
|
11547
12024
|
|
|
11548
|
-
These tags can be updated or removed using the `TagResource <https://docs.aws.amazon.com/batch/latest/APIReference/API_TagResource.html>`_ and `UntagResource <https://docs.aws.amazon.com/batch/latest/APIReference/API_UntagResource.html>`_ API operations.
|
|
12025
|
+
These tags can be updated or removed using the `TagResource <https://docs.aws.amazon.com/batch/latest/APIReference/API_TagResource.html>`_ and `UntagResource <https://docs.aws.amazon.com/batch/latest/APIReference/API_UntagResource.html>`_ API operations.
|
|
12026
|
+
|
|
12027
|
+
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-batch-schedulingpolicy.html#cfn-batch-schedulingpolicy-tags
|
|
12028
|
+
'''
|
|
12029
|
+
result = self._values.get("tags")
|
|
12030
|
+
return typing.cast(typing.Optional[typing.Mapping[builtins.str, builtins.str]], result)
|
|
12031
|
+
|
|
12032
|
+
def __eq__(self, rhs: typing.Any) -> builtins.bool:
|
|
12033
|
+
return isinstance(rhs, self.__class__) and rhs._values == self._values
|
|
12034
|
+
|
|
12035
|
+
def __ne__(self, rhs: typing.Any) -> builtins.bool:
|
|
12036
|
+
return not (rhs == self)
|
|
12037
|
+
|
|
12038
|
+
def __repr__(self) -> str:
|
|
12039
|
+
return "CfnSchedulingPolicyProps(%s)" % ", ".join(
|
|
12040
|
+
k + "=" + repr(v) for k, v in self._values.items()
|
|
12041
|
+
)
|
|
12042
|
+
|
|
12043
|
+
|
|
12044
|
+
@jsii.implements(_IInspectable_c2943556, _IServiceEnvironmentRef_5865fef4, _ITaggableV2_4e6798f8)
|
|
12045
|
+
class CfnServiceEnvironment(
|
|
12046
|
+
_CfnResource_9df397a6,
|
|
12047
|
+
metaclass=jsii.JSIIMeta,
|
|
12048
|
+
jsii_type="aws-cdk-lib.aws_batch.CfnServiceEnvironment",
|
|
12049
|
+
):
|
|
12050
|
+
'''Creates a service environment for running service jobs.
|
|
12051
|
+
|
|
12052
|
+
Service environments define capacity limits for specific service types such as SageMaker Training jobs.
|
|
12053
|
+
|
|
12054
|
+
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-batch-serviceenvironment.html
|
|
12055
|
+
:cloudformationResource: AWS::Batch::ServiceEnvironment
|
|
12056
|
+
:exampleMetadata: fixture=_generated
|
|
12057
|
+
|
|
12058
|
+
Example::
|
|
12059
|
+
|
|
12060
|
+
# The code below shows an example of how to instantiate this type.
|
|
12061
|
+
# The values are placeholders you should change.
|
|
12062
|
+
from aws_cdk import aws_batch as batch
|
|
12063
|
+
|
|
12064
|
+
cfn_service_environment = batch.CfnServiceEnvironment(self, "MyCfnServiceEnvironment",
|
|
12065
|
+
capacity_limits=[batch.CfnServiceEnvironment.CapacityLimitProperty(
|
|
12066
|
+
capacity_unit="capacityUnit",
|
|
12067
|
+
max_capacity=123
|
|
12068
|
+
)],
|
|
12069
|
+
service_environment_type="serviceEnvironmentType",
|
|
12070
|
+
|
|
12071
|
+
# the properties below are optional
|
|
12072
|
+
service_environment_name="serviceEnvironmentName",
|
|
12073
|
+
state="state",
|
|
12074
|
+
tags={
|
|
12075
|
+
"tags_key": "tags"
|
|
12076
|
+
}
|
|
12077
|
+
)
|
|
12078
|
+
'''
|
|
12079
|
+
|
|
12080
|
+
def __init__(
|
|
12081
|
+
self,
|
|
12082
|
+
scope: _constructs_77d1e7e8.Construct,
|
|
12083
|
+
id: builtins.str,
|
|
12084
|
+
*,
|
|
12085
|
+
capacity_limits: typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union["CfnServiceEnvironment.CapacityLimitProperty", typing.Dict[builtins.str, typing.Any]]]]],
|
|
12086
|
+
service_environment_type: builtins.str,
|
|
12087
|
+
service_environment_name: typing.Optional[builtins.str] = None,
|
|
12088
|
+
state: typing.Optional[builtins.str] = None,
|
|
12089
|
+
tags: typing.Optional[typing.Mapping[builtins.str, builtins.str]] = None,
|
|
12090
|
+
) -> None:
|
|
12091
|
+
'''Create a new ``AWS::Batch::ServiceEnvironment``.
|
|
12092
|
+
|
|
12093
|
+
:param scope: Scope in which this resource is defined.
|
|
12094
|
+
:param id: Construct identifier for this resource (unique in its scope).
|
|
12095
|
+
:param capacity_limits: The capacity limits for the service environment. This defines the maximum resources that can be used by service jobs in this environment.
|
|
12096
|
+
:param service_environment_type: The type of service environment. For SageMaker Training jobs, this value is ``SAGEMAKER_TRAINING`` .
|
|
12097
|
+
:param service_environment_name: The name of the service environment.
|
|
12098
|
+
:param state: The state of the service environment. Valid values are ``ENABLED`` and ``DISABLED`` .
|
|
12099
|
+
:param tags: The tags associated with the service environment. Each tag consists of a key and an optional value. For more information, see `Tagging your AWS Batch resources <https://docs.aws.amazon.com/batch/latest/userguide/using-tags.html>`_ .
|
|
12100
|
+
'''
|
|
12101
|
+
if __debug__:
|
|
12102
|
+
type_hints = typing.get_type_hints(_typecheckingstub__a6f9de8dd6d91e1ef3541444262c3bd9eba874d47c3dbe2b368127e55802962d)
|
|
12103
|
+
check_type(argname="argument scope", value=scope, expected_type=type_hints["scope"])
|
|
12104
|
+
check_type(argname="argument id", value=id, expected_type=type_hints["id"])
|
|
12105
|
+
props = CfnServiceEnvironmentProps(
|
|
12106
|
+
capacity_limits=capacity_limits,
|
|
12107
|
+
service_environment_type=service_environment_type,
|
|
12108
|
+
service_environment_name=service_environment_name,
|
|
12109
|
+
state=state,
|
|
12110
|
+
tags=tags,
|
|
12111
|
+
)
|
|
12112
|
+
|
|
12113
|
+
jsii.create(self.__class__, self, [scope, id, props])
|
|
12114
|
+
|
|
12115
|
+
@jsii.member(jsii_name="inspect")
|
|
12116
|
+
def inspect(self, inspector: _TreeInspector_488e0dd5) -> None:
|
|
12117
|
+
'''Examines the CloudFormation resource and discloses attributes.
|
|
12118
|
+
|
|
12119
|
+
:param inspector: tree inspector to collect and process attributes.
|
|
12120
|
+
'''
|
|
12121
|
+
if __debug__:
|
|
12122
|
+
type_hints = typing.get_type_hints(_typecheckingstub__96e0974d2660553889a9af3a927bfad81828948853f01018235f809576a4c6b9)
|
|
12123
|
+
check_type(argname="argument inspector", value=inspector, expected_type=type_hints["inspector"])
|
|
12124
|
+
return typing.cast(None, jsii.invoke(self, "inspect", [inspector]))
|
|
12125
|
+
|
|
12126
|
+
@jsii.member(jsii_name="renderProperties")
|
|
12127
|
+
def _render_properties(
|
|
12128
|
+
self,
|
|
12129
|
+
props: typing.Mapping[builtins.str, typing.Any],
|
|
12130
|
+
) -> typing.Mapping[builtins.str, typing.Any]:
|
|
12131
|
+
'''
|
|
12132
|
+
:param props: -
|
|
12133
|
+
'''
|
|
12134
|
+
if __debug__:
|
|
12135
|
+
type_hints = typing.get_type_hints(_typecheckingstub__e6991ed0f2dc20fa74e5cde5971e4b3997019046ee7c1e1fc7eca96b677bc91b)
|
|
12136
|
+
check_type(argname="argument props", value=props, expected_type=type_hints["props"])
|
|
12137
|
+
return typing.cast(typing.Mapping[builtins.str, typing.Any], jsii.invoke(self, "renderProperties", [props]))
|
|
12138
|
+
|
|
12139
|
+
@jsii.python.classproperty
|
|
12140
|
+
@jsii.member(jsii_name="CFN_RESOURCE_TYPE_NAME")
|
|
12141
|
+
def CFN_RESOURCE_TYPE_NAME(cls) -> builtins.str:
|
|
12142
|
+
'''The CloudFormation resource type name for this resource class.'''
|
|
12143
|
+
return typing.cast(builtins.str, jsii.sget(cls, "CFN_RESOURCE_TYPE_NAME"))
|
|
12144
|
+
|
|
12145
|
+
@builtins.property
|
|
12146
|
+
@jsii.member(jsii_name="attrServiceEnvironmentArn")
|
|
12147
|
+
def attr_service_environment_arn(self) -> builtins.str:
|
|
12148
|
+
'''The Amazon Resource Name (ARN) of the service environment.
|
|
12149
|
+
|
|
12150
|
+
:cloudformationAttribute: ServiceEnvironmentArn
|
|
12151
|
+
'''
|
|
12152
|
+
return typing.cast(builtins.str, jsii.get(self, "attrServiceEnvironmentArn"))
|
|
12153
|
+
|
|
12154
|
+
@builtins.property
|
|
12155
|
+
@jsii.member(jsii_name="cdkTagManager")
|
|
12156
|
+
def cdk_tag_manager(self) -> _TagManager_0a598cb3:
|
|
12157
|
+
'''Tag Manager which manages the tags for this resource.'''
|
|
12158
|
+
return typing.cast(_TagManager_0a598cb3, jsii.get(self, "cdkTagManager"))
|
|
12159
|
+
|
|
12160
|
+
@builtins.property
|
|
12161
|
+
@jsii.member(jsii_name="cfnProperties")
|
|
12162
|
+
def _cfn_properties(self) -> typing.Mapping[builtins.str, typing.Any]:
|
|
12163
|
+
return typing.cast(typing.Mapping[builtins.str, typing.Any], jsii.get(self, "cfnProperties"))
|
|
12164
|
+
|
|
12165
|
+
@builtins.property
|
|
12166
|
+
@jsii.member(jsii_name="serviceEnvironmentRef")
|
|
12167
|
+
def service_environment_ref(self) -> _ServiceEnvironmentReference_9a7dc7ee:
|
|
12168
|
+
'''A reference to a ServiceEnvironment resource.'''
|
|
12169
|
+
return typing.cast(_ServiceEnvironmentReference_9a7dc7ee, jsii.get(self, "serviceEnvironmentRef"))
|
|
12170
|
+
|
|
12171
|
+
@builtins.property
|
|
12172
|
+
@jsii.member(jsii_name="capacityLimits")
|
|
12173
|
+
def capacity_limits(
|
|
12174
|
+
self,
|
|
12175
|
+
) -> typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, "CfnServiceEnvironment.CapacityLimitProperty"]]]:
|
|
12176
|
+
'''The capacity limits for the service environment.'''
|
|
12177
|
+
return typing.cast(typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, "CfnServiceEnvironment.CapacityLimitProperty"]]], jsii.get(self, "capacityLimits"))
|
|
12178
|
+
|
|
12179
|
+
@capacity_limits.setter
|
|
12180
|
+
def capacity_limits(
|
|
12181
|
+
self,
|
|
12182
|
+
value: typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, "CfnServiceEnvironment.CapacityLimitProperty"]]],
|
|
12183
|
+
) -> None:
|
|
12184
|
+
if __debug__:
|
|
12185
|
+
type_hints = typing.get_type_hints(_typecheckingstub__d996fbedbaec7f1ef9fada43375af4381f0a867d50517c77d6662e6e7d7d26ae)
|
|
12186
|
+
check_type(argname="argument value", value=value, expected_type=type_hints["value"])
|
|
12187
|
+
jsii.set(self, "capacityLimits", value) # pyright: ignore[reportArgumentType]
|
|
12188
|
+
|
|
12189
|
+
@builtins.property
|
|
12190
|
+
@jsii.member(jsii_name="serviceEnvironmentType")
|
|
12191
|
+
def service_environment_type(self) -> builtins.str:
|
|
12192
|
+
'''The type of service environment.'''
|
|
12193
|
+
return typing.cast(builtins.str, jsii.get(self, "serviceEnvironmentType"))
|
|
12194
|
+
|
|
12195
|
+
@service_environment_type.setter
|
|
12196
|
+
def service_environment_type(self, value: builtins.str) -> None:
|
|
12197
|
+
if __debug__:
|
|
12198
|
+
type_hints = typing.get_type_hints(_typecheckingstub__555f27a186fb86df6655903dee02e46968e9230d8927d6c74bb13420e35fb703)
|
|
12199
|
+
check_type(argname="argument value", value=value, expected_type=type_hints["value"])
|
|
12200
|
+
jsii.set(self, "serviceEnvironmentType", value) # pyright: ignore[reportArgumentType]
|
|
12201
|
+
|
|
12202
|
+
@builtins.property
|
|
12203
|
+
@jsii.member(jsii_name="serviceEnvironmentName")
|
|
12204
|
+
def service_environment_name(self) -> typing.Optional[builtins.str]:
|
|
12205
|
+
'''The name of the service environment.'''
|
|
12206
|
+
return typing.cast(typing.Optional[builtins.str], jsii.get(self, "serviceEnvironmentName"))
|
|
12207
|
+
|
|
12208
|
+
@service_environment_name.setter
|
|
12209
|
+
def service_environment_name(self, value: typing.Optional[builtins.str]) -> None:
|
|
12210
|
+
if __debug__:
|
|
12211
|
+
type_hints = typing.get_type_hints(_typecheckingstub__2f9d1cde60619bebd040c4ca1b04e45af9a3d96ad1c7d934c1fe4f4c102b0fde)
|
|
12212
|
+
check_type(argname="argument value", value=value, expected_type=type_hints["value"])
|
|
12213
|
+
jsii.set(self, "serviceEnvironmentName", value) # pyright: ignore[reportArgumentType]
|
|
12214
|
+
|
|
12215
|
+
@builtins.property
|
|
12216
|
+
@jsii.member(jsii_name="state")
|
|
12217
|
+
def state(self) -> typing.Optional[builtins.str]:
|
|
12218
|
+
'''The state of the service environment.'''
|
|
12219
|
+
return typing.cast(typing.Optional[builtins.str], jsii.get(self, "state"))
|
|
12220
|
+
|
|
12221
|
+
@state.setter
|
|
12222
|
+
def state(self, value: typing.Optional[builtins.str]) -> None:
|
|
12223
|
+
if __debug__:
|
|
12224
|
+
type_hints = typing.get_type_hints(_typecheckingstub__eb9c6d092d73d302c59d162da7ef41f680de210ef8b625b0d6804765c19c16cf)
|
|
12225
|
+
check_type(argname="argument value", value=value, expected_type=type_hints["value"])
|
|
12226
|
+
jsii.set(self, "state", value) # pyright: ignore[reportArgumentType]
|
|
12227
|
+
|
|
12228
|
+
@builtins.property
|
|
12229
|
+
@jsii.member(jsii_name="tags")
|
|
12230
|
+
def tags(self) -> typing.Optional[typing.Mapping[builtins.str, builtins.str]]:
|
|
12231
|
+
'''The tags associated with the service environment.'''
|
|
12232
|
+
return typing.cast(typing.Optional[typing.Mapping[builtins.str, builtins.str]], jsii.get(self, "tags"))
|
|
12233
|
+
|
|
12234
|
+
@tags.setter
|
|
12235
|
+
def tags(
|
|
12236
|
+
self,
|
|
12237
|
+
value: typing.Optional[typing.Mapping[builtins.str, builtins.str]],
|
|
12238
|
+
) -> None:
|
|
12239
|
+
if __debug__:
|
|
12240
|
+
type_hints = typing.get_type_hints(_typecheckingstub__07a3aaaa5bb4d6dbce1c225211ed2ba7848e8258ea1ae35767262fbfb6c68d93)
|
|
12241
|
+
check_type(argname="argument value", value=value, expected_type=type_hints["value"])
|
|
12242
|
+
jsii.set(self, "tags", value) # pyright: ignore[reportArgumentType]
|
|
12243
|
+
|
|
12244
|
+
@jsii.data_type(
|
|
12245
|
+
jsii_type="aws-cdk-lib.aws_batch.CfnServiceEnvironment.CapacityLimitProperty",
|
|
12246
|
+
jsii_struct_bases=[],
|
|
12247
|
+
name_mapping={"capacity_unit": "capacityUnit", "max_capacity": "maxCapacity"},
|
|
12248
|
+
)
|
|
12249
|
+
class CapacityLimitProperty:
|
|
12250
|
+
def __init__(
|
|
12251
|
+
self,
|
|
12252
|
+
*,
|
|
12253
|
+
capacity_unit: typing.Optional[builtins.str] = None,
|
|
12254
|
+
max_capacity: typing.Optional[jsii.Number] = None,
|
|
12255
|
+
) -> None:
|
|
12256
|
+
'''Defines the capacity limit for a service environment.
|
|
12257
|
+
|
|
12258
|
+
This structure specifies the maximum amount of resources that can be used by service jobs in the environment.
|
|
12259
|
+
|
|
12260
|
+
:param capacity_unit: The unit of measure for the capacity limit. This defines how the maxCapacity value should be interpreted. For ``SAGEMAKER_TRAINING`` jobs, use ``NUM_INSTANCES`` .
|
|
12261
|
+
:param max_capacity: The maximum capacity available for the service environment. This value represents the maximum amount resources that can be allocated to service jobs. For example, ``maxCapacity=50`` , ``capacityUnit=NUM_INSTANCES`` . This indicates that the maximum number of instances that can be run on this service environment is 50. You could then run 5 SageMaker Training jobs that each use 10 instances. However, if you submit another job that requires 10 instances, it will wait in the queue.
|
|
12262
|
+
|
|
12263
|
+
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-serviceenvironment-capacitylimit.html
|
|
12264
|
+
:exampleMetadata: fixture=_generated
|
|
12265
|
+
|
|
12266
|
+
Example::
|
|
12267
|
+
|
|
12268
|
+
# The code below shows an example of how to instantiate this type.
|
|
12269
|
+
# The values are placeholders you should change.
|
|
12270
|
+
from aws_cdk import aws_batch as batch
|
|
12271
|
+
|
|
12272
|
+
capacity_limit_property = batch.CfnServiceEnvironment.CapacityLimitProperty(
|
|
12273
|
+
capacity_unit="capacityUnit",
|
|
12274
|
+
max_capacity=123
|
|
12275
|
+
)
|
|
12276
|
+
'''
|
|
12277
|
+
if __debug__:
|
|
12278
|
+
type_hints = typing.get_type_hints(_typecheckingstub__8d4366eeddf34eff3fc133ef72e4bd900563fba6b925f9d9524d8c92ac2f3e4a)
|
|
12279
|
+
check_type(argname="argument capacity_unit", value=capacity_unit, expected_type=type_hints["capacity_unit"])
|
|
12280
|
+
check_type(argname="argument max_capacity", value=max_capacity, expected_type=type_hints["max_capacity"])
|
|
12281
|
+
self._values: typing.Dict[builtins.str, typing.Any] = {}
|
|
12282
|
+
if capacity_unit is not None:
|
|
12283
|
+
self._values["capacity_unit"] = capacity_unit
|
|
12284
|
+
if max_capacity is not None:
|
|
12285
|
+
self._values["max_capacity"] = max_capacity
|
|
12286
|
+
|
|
12287
|
+
@builtins.property
|
|
12288
|
+
def capacity_unit(self) -> typing.Optional[builtins.str]:
|
|
12289
|
+
'''The unit of measure for the capacity limit.
|
|
12290
|
+
|
|
12291
|
+
This defines how the maxCapacity value should be interpreted. For ``SAGEMAKER_TRAINING`` jobs, use ``NUM_INSTANCES`` .
|
|
12292
|
+
|
|
12293
|
+
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-serviceenvironment-capacitylimit.html#cfn-batch-serviceenvironment-capacitylimit-capacityunit
|
|
12294
|
+
'''
|
|
12295
|
+
result = self._values.get("capacity_unit")
|
|
12296
|
+
return typing.cast(typing.Optional[builtins.str], result)
|
|
12297
|
+
|
|
12298
|
+
@builtins.property
|
|
12299
|
+
def max_capacity(self) -> typing.Optional[jsii.Number]:
|
|
12300
|
+
'''The maximum capacity available for the service environment.
|
|
12301
|
+
|
|
12302
|
+
This value represents the maximum amount resources that can be allocated to service jobs.
|
|
12303
|
+
|
|
12304
|
+
For example, ``maxCapacity=50`` , ``capacityUnit=NUM_INSTANCES`` . This indicates that the maximum number of instances that can be run on this service environment is 50. You could then run 5 SageMaker Training jobs that each use 10 instances. However, if you submit another job that requires 10 instances, it will wait in the queue.
|
|
12305
|
+
|
|
12306
|
+
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-batch-serviceenvironment-capacitylimit.html#cfn-batch-serviceenvironment-capacitylimit-maxcapacity
|
|
12307
|
+
'''
|
|
12308
|
+
result = self._values.get("max_capacity")
|
|
12309
|
+
return typing.cast(typing.Optional[jsii.Number], result)
|
|
12310
|
+
|
|
12311
|
+
def __eq__(self, rhs: typing.Any) -> builtins.bool:
|
|
12312
|
+
return isinstance(rhs, self.__class__) and rhs._values == self._values
|
|
12313
|
+
|
|
12314
|
+
def __ne__(self, rhs: typing.Any) -> builtins.bool:
|
|
12315
|
+
return not (rhs == self)
|
|
12316
|
+
|
|
12317
|
+
def __repr__(self) -> str:
|
|
12318
|
+
return "CapacityLimitProperty(%s)" % ", ".join(
|
|
12319
|
+
k + "=" + repr(v) for k, v in self._values.items()
|
|
12320
|
+
)
|
|
12321
|
+
|
|
12322
|
+
|
|
12323
|
+
@jsii.data_type(
|
|
12324
|
+
jsii_type="aws-cdk-lib.aws_batch.CfnServiceEnvironmentProps",
|
|
12325
|
+
jsii_struct_bases=[],
|
|
12326
|
+
name_mapping={
|
|
12327
|
+
"capacity_limits": "capacityLimits",
|
|
12328
|
+
"service_environment_type": "serviceEnvironmentType",
|
|
12329
|
+
"service_environment_name": "serviceEnvironmentName",
|
|
12330
|
+
"state": "state",
|
|
12331
|
+
"tags": "tags",
|
|
12332
|
+
},
|
|
12333
|
+
)
|
|
12334
|
+
class CfnServiceEnvironmentProps:
|
|
12335
|
+
def __init__(
|
|
12336
|
+
self,
|
|
12337
|
+
*,
|
|
12338
|
+
capacity_limits: typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union[CfnServiceEnvironment.CapacityLimitProperty, typing.Dict[builtins.str, typing.Any]]]]],
|
|
12339
|
+
service_environment_type: builtins.str,
|
|
12340
|
+
service_environment_name: typing.Optional[builtins.str] = None,
|
|
12341
|
+
state: typing.Optional[builtins.str] = None,
|
|
12342
|
+
tags: typing.Optional[typing.Mapping[builtins.str, builtins.str]] = None,
|
|
12343
|
+
) -> None:
|
|
12344
|
+
'''Properties for defining a ``CfnServiceEnvironment``.
|
|
12345
|
+
|
|
12346
|
+
:param capacity_limits: The capacity limits for the service environment. This defines the maximum resources that can be used by service jobs in this environment.
|
|
12347
|
+
:param service_environment_type: The type of service environment. For SageMaker Training jobs, this value is ``SAGEMAKER_TRAINING`` .
|
|
12348
|
+
:param service_environment_name: The name of the service environment.
|
|
12349
|
+
:param state: The state of the service environment. Valid values are ``ENABLED`` and ``DISABLED`` .
|
|
12350
|
+
:param tags: The tags associated with the service environment. Each tag consists of a key and an optional value. For more information, see `Tagging your AWS Batch resources <https://docs.aws.amazon.com/batch/latest/userguide/using-tags.html>`_ .
|
|
12351
|
+
|
|
12352
|
+
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-batch-serviceenvironment.html
|
|
12353
|
+
:exampleMetadata: fixture=_generated
|
|
12354
|
+
|
|
12355
|
+
Example::
|
|
12356
|
+
|
|
12357
|
+
# The code below shows an example of how to instantiate this type.
|
|
12358
|
+
# The values are placeholders you should change.
|
|
12359
|
+
from aws_cdk import aws_batch as batch
|
|
12360
|
+
|
|
12361
|
+
cfn_service_environment_props = batch.CfnServiceEnvironmentProps(
|
|
12362
|
+
capacity_limits=[batch.CfnServiceEnvironment.CapacityLimitProperty(
|
|
12363
|
+
capacity_unit="capacityUnit",
|
|
12364
|
+
max_capacity=123
|
|
12365
|
+
)],
|
|
12366
|
+
service_environment_type="serviceEnvironmentType",
|
|
12367
|
+
|
|
12368
|
+
# the properties below are optional
|
|
12369
|
+
service_environment_name="serviceEnvironmentName",
|
|
12370
|
+
state="state",
|
|
12371
|
+
tags={
|
|
12372
|
+
"tags_key": "tags"
|
|
12373
|
+
}
|
|
12374
|
+
)
|
|
12375
|
+
'''
|
|
12376
|
+
if __debug__:
|
|
12377
|
+
type_hints = typing.get_type_hints(_typecheckingstub__dfdb5cc25e8550eb4e42278bd3377213122f3560aa9c8e788955ad66e1ecad9a)
|
|
12378
|
+
check_type(argname="argument capacity_limits", value=capacity_limits, expected_type=type_hints["capacity_limits"])
|
|
12379
|
+
check_type(argname="argument service_environment_type", value=service_environment_type, expected_type=type_hints["service_environment_type"])
|
|
12380
|
+
check_type(argname="argument service_environment_name", value=service_environment_name, expected_type=type_hints["service_environment_name"])
|
|
12381
|
+
check_type(argname="argument state", value=state, expected_type=type_hints["state"])
|
|
12382
|
+
check_type(argname="argument tags", value=tags, expected_type=type_hints["tags"])
|
|
12383
|
+
self._values: typing.Dict[builtins.str, typing.Any] = {
|
|
12384
|
+
"capacity_limits": capacity_limits,
|
|
12385
|
+
"service_environment_type": service_environment_type,
|
|
12386
|
+
}
|
|
12387
|
+
if service_environment_name is not None:
|
|
12388
|
+
self._values["service_environment_name"] = service_environment_name
|
|
12389
|
+
if state is not None:
|
|
12390
|
+
self._values["state"] = state
|
|
12391
|
+
if tags is not None:
|
|
12392
|
+
self._values["tags"] = tags
|
|
12393
|
+
|
|
12394
|
+
@builtins.property
|
|
12395
|
+
def capacity_limits(
|
|
12396
|
+
self,
|
|
12397
|
+
) -> typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, CfnServiceEnvironment.CapacityLimitProperty]]]:
|
|
12398
|
+
'''The capacity limits for the service environment.
|
|
12399
|
+
|
|
12400
|
+
This defines the maximum resources that can be used by service jobs in this environment.
|
|
12401
|
+
|
|
12402
|
+
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-batch-serviceenvironment.html#cfn-batch-serviceenvironment-capacitylimits
|
|
12403
|
+
'''
|
|
12404
|
+
result = self._values.get("capacity_limits")
|
|
12405
|
+
assert result is not None, "Required property 'capacity_limits' is missing"
|
|
12406
|
+
return typing.cast(typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, CfnServiceEnvironment.CapacityLimitProperty]]], result)
|
|
12407
|
+
|
|
12408
|
+
@builtins.property
|
|
12409
|
+
def service_environment_type(self) -> builtins.str:
|
|
12410
|
+
'''The type of service environment.
|
|
12411
|
+
|
|
12412
|
+
For SageMaker Training jobs, this value is ``SAGEMAKER_TRAINING`` .
|
|
12413
|
+
|
|
12414
|
+
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-batch-serviceenvironment.html#cfn-batch-serviceenvironment-serviceenvironmenttype
|
|
12415
|
+
'''
|
|
12416
|
+
result = self._values.get("service_environment_type")
|
|
12417
|
+
assert result is not None, "Required property 'service_environment_type' is missing"
|
|
12418
|
+
return typing.cast(builtins.str, result)
|
|
12419
|
+
|
|
12420
|
+
@builtins.property
|
|
12421
|
+
def service_environment_name(self) -> typing.Optional[builtins.str]:
|
|
12422
|
+
'''The name of the service environment.
|
|
12423
|
+
|
|
12424
|
+
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-batch-serviceenvironment.html#cfn-batch-serviceenvironment-serviceenvironmentname
|
|
12425
|
+
'''
|
|
12426
|
+
result = self._values.get("service_environment_name")
|
|
12427
|
+
return typing.cast(typing.Optional[builtins.str], result)
|
|
12428
|
+
|
|
12429
|
+
@builtins.property
|
|
12430
|
+
def state(self) -> typing.Optional[builtins.str]:
|
|
12431
|
+
'''The state of the service environment.
|
|
12432
|
+
|
|
12433
|
+
Valid values are ``ENABLED`` and ``DISABLED`` .
|
|
12434
|
+
|
|
12435
|
+
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-batch-serviceenvironment.html#cfn-batch-serviceenvironment-state
|
|
12436
|
+
'''
|
|
12437
|
+
result = self._values.get("state")
|
|
12438
|
+
return typing.cast(typing.Optional[builtins.str], result)
|
|
12439
|
+
|
|
12440
|
+
@builtins.property
|
|
12441
|
+
def tags(self) -> typing.Optional[typing.Mapping[builtins.str, builtins.str]]:
|
|
12442
|
+
'''The tags associated with the service environment.
|
|
12443
|
+
|
|
12444
|
+
Each tag consists of a key and an optional value. For more information, see `Tagging your AWS Batch resources <https://docs.aws.amazon.com/batch/latest/userguide/using-tags.html>`_ .
|
|
11549
12445
|
|
|
11550
|
-
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-batch-
|
|
12446
|
+
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-batch-serviceenvironment.html#cfn-batch-serviceenvironment-tags
|
|
11551
12447
|
'''
|
|
11552
12448
|
result = self._values.get("tags")
|
|
11553
12449
|
return typing.cast(typing.Optional[typing.Mapping[builtins.str, builtins.str]], result)
|
|
@@ -11559,7 +12455,7 @@ class CfnSchedulingPolicyProps:
|
|
|
11559
12455
|
return not (rhs == self)
|
|
11560
12456
|
|
|
11561
12457
|
def __repr__(self) -> str:
|
|
11562
|
-
return "
|
|
12458
|
+
return "CfnServiceEnvironmentProps(%s)" % ", ".join(
|
|
11563
12459
|
k + "=" + repr(v) for k, v in self._values.items()
|
|
11564
12460
|
)
|
|
11565
12461
|
|
|
@@ -11771,6 +12667,29 @@ class CustomReason:
|
|
|
11771
12667
|
)
|
|
11772
12668
|
|
|
11773
12669
|
|
|
12670
|
+
@jsii.enum(jsii_type="aws-cdk-lib.aws_batch.DefaultInstanceClass")
|
|
12671
|
+
class DefaultInstanceClass(enum.Enum):
|
|
12672
|
+
'''Batch default instances types.
|
|
12673
|
+
|
|
12674
|
+
:see: https://docs.aws.amazon.com/batch/latest/userguide/instance-type-compute-table.html
|
|
12675
|
+
:exampleMetadata: infused
|
|
12676
|
+
|
|
12677
|
+
Example::
|
|
12678
|
+
|
|
12679
|
+
vpc = ec2.Vpc(self, "VPC")
|
|
12680
|
+
|
|
12681
|
+
batch.ManagedEc2EcsComputeEnvironment(self, "myEc2ComputeEnv",
|
|
12682
|
+
vpc=vpc,
|
|
12683
|
+
default_instance_classes=[batch.DefaultInstanceClass.ARM64]
|
|
12684
|
+
)
|
|
12685
|
+
'''
|
|
12686
|
+
|
|
12687
|
+
X86_64 = "X86_64"
|
|
12688
|
+
'''x86 based instance types (from the m6i, c6i, r6i, and c7i instance families).'''
|
|
12689
|
+
ARM64 = "ARM64"
|
|
12690
|
+
'''ARM64 based instance types (from the m6g, c6g, r6g, and c7g instance families).'''
|
|
12691
|
+
|
|
12692
|
+
|
|
11774
12693
|
@jsii.data_type(
|
|
11775
12694
|
jsii_type="aws-cdk-lib.aws_batch.Device",
|
|
11776
12695
|
jsii_struct_bases=[],
|
|
@@ -11900,6 +12819,7 @@ class DnsPolicy(enum.Enum):
|
|
|
11900
12819
|
"image": "image",
|
|
11901
12820
|
"memory": "memory",
|
|
11902
12821
|
"command": "command",
|
|
12822
|
+
"enable_execute_command": "enableExecuteCommand",
|
|
11903
12823
|
"environment": "environment",
|
|
11904
12824
|
"execution_role": "executionRole",
|
|
11905
12825
|
"job_role": "jobRole",
|
|
@@ -11919,6 +12839,7 @@ class EcsContainerDefinitionProps:
|
|
|
11919
12839
|
image: _ContainerImage_94af1b43,
|
|
11920
12840
|
memory: _Size_7b441c34,
|
|
11921
12841
|
command: typing.Optional[typing.Sequence[builtins.str]] = None,
|
|
12842
|
+
enable_execute_command: typing.Optional[builtins.bool] = None,
|
|
11922
12843
|
environment: typing.Optional[typing.Mapping[builtins.str, builtins.str]] = None,
|
|
11923
12844
|
execution_role: typing.Optional[_IRole_235f5d8e] = None,
|
|
11924
12845
|
job_role: typing.Optional[_IRole_235f5d8e] = None,
|
|
@@ -11935,6 +12856,7 @@ class EcsContainerDefinitionProps:
|
|
|
11935
12856
|
:param image: The image that this container will run.
|
|
11936
12857
|
:param memory: The memory hard limit present to the container. If your container attempts to exceed the memory specified, the container is terminated. You must specify at least 4 MiB of memory for a job.
|
|
11937
12858
|
:param command: The command that's passed to the container. Default: - no command
|
|
12859
|
+
:param enable_execute_command: Determines whether execute command functionality is turned on for this task. If true, execute command functionality is turned on all the containers in the task. This allows you to use ECS Exec to access containers interactively. When enabled, a job role with required SSM permissions will be created automatically if no job role is provided. If a job role is alreadyprovided, the required permissions will be added to it. Default: undefined - AWS Batch default is false
|
|
11938
12860
|
:param environment: The environment variables to pass to a container. Cannot start with ``AWS_BATCH``. We don't recommend using plaintext environment variables for sensitive information, such as credential data. Default: - no environment variables
|
|
11939
12861
|
:param execution_role: The role used by Amazon ECS container and AWS Fargate agents to make AWS API calls on your behalf. Default: - a Role will be created
|
|
11940
12862
|
:param job_role: The role that the container can assume. Default: - no job role
|
|
@@ -11971,6 +12893,7 @@ class EcsContainerDefinitionProps:
|
|
|
11971
12893
|
|
|
11972
12894
|
# the properties below are optional
|
|
11973
12895
|
command=["command"],
|
|
12896
|
+
enable_execute_command=False,
|
|
11974
12897
|
environment={
|
|
11975
12898
|
"environment_key": "environment"
|
|
11976
12899
|
},
|
|
@@ -11992,6 +12915,7 @@ class EcsContainerDefinitionProps:
|
|
|
11992
12915
|
check_type(argname="argument image", value=image, expected_type=type_hints["image"])
|
|
11993
12916
|
check_type(argname="argument memory", value=memory, expected_type=type_hints["memory"])
|
|
11994
12917
|
check_type(argname="argument command", value=command, expected_type=type_hints["command"])
|
|
12918
|
+
check_type(argname="argument enable_execute_command", value=enable_execute_command, expected_type=type_hints["enable_execute_command"])
|
|
11995
12919
|
check_type(argname="argument environment", value=environment, expected_type=type_hints["environment"])
|
|
11996
12920
|
check_type(argname="argument execution_role", value=execution_role, expected_type=type_hints["execution_role"])
|
|
11997
12921
|
check_type(argname="argument job_role", value=job_role, expected_type=type_hints["job_role"])
|
|
@@ -12008,6 +12932,8 @@ class EcsContainerDefinitionProps:
|
|
|
12008
12932
|
}
|
|
12009
12933
|
if command is not None:
|
|
12010
12934
|
self._values["command"] = command
|
|
12935
|
+
if enable_execute_command is not None:
|
|
12936
|
+
self._values["enable_execute_command"] = enable_execute_command
|
|
12011
12937
|
if environment is not None:
|
|
12012
12938
|
self._values["environment"] = environment
|
|
12013
12939
|
if execution_role is not None:
|
|
@@ -12067,6 +12993,23 @@ class EcsContainerDefinitionProps:
|
|
|
12067
12993
|
result = self._values.get("command")
|
|
12068
12994
|
return typing.cast(typing.Optional[typing.List[builtins.str]], result)
|
|
12069
12995
|
|
|
12996
|
+
@builtins.property
|
|
12997
|
+
def enable_execute_command(self) -> typing.Optional[builtins.bool]:
|
|
12998
|
+
'''Determines whether execute command functionality is turned on for this task.
|
|
12999
|
+
|
|
13000
|
+
If true, execute command functionality is turned on all the containers in the task.
|
|
13001
|
+
|
|
13002
|
+
This allows you to use ECS Exec to access containers interactively.
|
|
13003
|
+
When enabled, a job role with required SSM permissions will be created automatically if no job role is provided.
|
|
13004
|
+
If a job role is alreadyprovided, the required permissions will be added to it.
|
|
13005
|
+
|
|
13006
|
+
:default: undefined - AWS Batch default is false
|
|
13007
|
+
|
|
13008
|
+
:see: https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ecs-exec.html
|
|
13009
|
+
'''
|
|
13010
|
+
result = self._values.get("enable_execute_command")
|
|
13011
|
+
return typing.cast(typing.Optional[builtins.bool], result)
|
|
13012
|
+
|
|
12070
13013
|
@builtins.property
|
|
12071
13014
|
def environment(
|
|
12072
13015
|
self,
|
|
@@ -12184,6 +13127,7 @@ class EcsContainerDefinitionProps:
|
|
|
12184
13127
|
"image": "image",
|
|
12185
13128
|
"memory": "memory",
|
|
12186
13129
|
"command": "command",
|
|
13130
|
+
"enable_execute_command": "enableExecuteCommand",
|
|
12187
13131
|
"environment": "environment",
|
|
12188
13132
|
"execution_role": "executionRole",
|
|
12189
13133
|
"job_role": "jobRole",
|
|
@@ -12206,6 +13150,7 @@ class EcsEc2ContainerDefinitionProps(EcsContainerDefinitionProps):
|
|
|
12206
13150
|
image: _ContainerImage_94af1b43,
|
|
12207
13151
|
memory: _Size_7b441c34,
|
|
12208
13152
|
command: typing.Optional[typing.Sequence[builtins.str]] = None,
|
|
13153
|
+
enable_execute_command: typing.Optional[builtins.bool] = None,
|
|
12209
13154
|
environment: typing.Optional[typing.Mapping[builtins.str, builtins.str]] = None,
|
|
12210
13155
|
execution_role: typing.Optional[_IRole_235f5d8e] = None,
|
|
12211
13156
|
job_role: typing.Optional[_IRole_235f5d8e] = None,
|
|
@@ -12225,6 +13170,7 @@ class EcsEc2ContainerDefinitionProps(EcsContainerDefinitionProps):
|
|
|
12225
13170
|
:param image: The image that this container will run.
|
|
12226
13171
|
:param memory: The memory hard limit present to the container. If your container attempts to exceed the memory specified, the container is terminated. You must specify at least 4 MiB of memory for a job.
|
|
12227
13172
|
:param command: The command that's passed to the container. Default: - no command
|
|
13173
|
+
:param enable_execute_command: Determines whether execute command functionality is turned on for this task. If true, execute command functionality is turned on all the containers in the task. This allows you to use ECS Exec to access containers interactively. When enabled, a job role with required SSM permissions will be created automatically if no job role is provided. If a job role is alreadyprovided, the required permissions will be added to it. Default: undefined - AWS Batch default is false
|
|
12228
13174
|
:param environment: The environment variables to pass to a container. Cannot start with ``AWS_BATCH``. We don't recommend using plaintext environment variables for sensitive information, such as credential data. Default: - no environment variables
|
|
12229
13175
|
:param execution_role: The role used by Amazon ECS container and AWS Fargate agents to make AWS API calls on your behalf. Default: - a Role will be created
|
|
12230
13176
|
:param job_role: The role that the container can assume. Default: - no job role
|
|
@@ -12272,6 +13218,7 @@ class EcsEc2ContainerDefinitionProps(EcsContainerDefinitionProps):
|
|
|
12272
13218
|
check_type(argname="argument image", value=image, expected_type=type_hints["image"])
|
|
12273
13219
|
check_type(argname="argument memory", value=memory, expected_type=type_hints["memory"])
|
|
12274
13220
|
check_type(argname="argument command", value=command, expected_type=type_hints["command"])
|
|
13221
|
+
check_type(argname="argument enable_execute_command", value=enable_execute_command, expected_type=type_hints["enable_execute_command"])
|
|
12275
13222
|
check_type(argname="argument environment", value=environment, expected_type=type_hints["environment"])
|
|
12276
13223
|
check_type(argname="argument execution_role", value=execution_role, expected_type=type_hints["execution_role"])
|
|
12277
13224
|
check_type(argname="argument job_role", value=job_role, expected_type=type_hints["job_role"])
|
|
@@ -12291,6 +13238,8 @@ class EcsEc2ContainerDefinitionProps(EcsContainerDefinitionProps):
|
|
|
12291
13238
|
}
|
|
12292
13239
|
if command is not None:
|
|
12293
13240
|
self._values["command"] = command
|
|
13241
|
+
if enable_execute_command is not None:
|
|
13242
|
+
self._values["enable_execute_command"] = enable_execute_command
|
|
12294
13243
|
if environment is not None:
|
|
12295
13244
|
self._values["environment"] = environment
|
|
12296
13245
|
if execution_role is not None:
|
|
@@ -12356,6 +13305,23 @@ class EcsEc2ContainerDefinitionProps(EcsContainerDefinitionProps):
|
|
|
12356
13305
|
result = self._values.get("command")
|
|
12357
13306
|
return typing.cast(typing.Optional[typing.List[builtins.str]], result)
|
|
12358
13307
|
|
|
13308
|
+
@builtins.property
|
|
13309
|
+
def enable_execute_command(self) -> typing.Optional[builtins.bool]:
|
|
13310
|
+
'''Determines whether execute command functionality is turned on for this task.
|
|
13311
|
+
|
|
13312
|
+
If true, execute command functionality is turned on all the containers in the task.
|
|
13313
|
+
|
|
13314
|
+
This allows you to use ECS Exec to access containers interactively.
|
|
13315
|
+
When enabled, a job role with required SSM permissions will be created automatically if no job role is provided.
|
|
13316
|
+
If a job role is alreadyprovided, the required permissions will be added to it.
|
|
13317
|
+
|
|
13318
|
+
:default: undefined - AWS Batch default is false
|
|
13319
|
+
|
|
13320
|
+
:see: https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ecs-exec.html
|
|
13321
|
+
'''
|
|
13322
|
+
result = self._values.get("enable_execute_command")
|
|
13323
|
+
return typing.cast(typing.Optional[builtins.bool], result)
|
|
13324
|
+
|
|
12359
13325
|
@builtins.property
|
|
12360
13326
|
def environment(
|
|
12361
13327
|
self,
|
|
@@ -12503,6 +13469,7 @@ class EcsEc2ContainerDefinitionProps(EcsContainerDefinitionProps):
|
|
|
12503
13469
|
"image": "image",
|
|
12504
13470
|
"memory": "memory",
|
|
12505
13471
|
"command": "command",
|
|
13472
|
+
"enable_execute_command": "enableExecuteCommand",
|
|
12506
13473
|
"environment": "environment",
|
|
12507
13474
|
"execution_role": "executionRole",
|
|
12508
13475
|
"job_role": "jobRole",
|
|
@@ -12527,6 +13494,7 @@ class EcsFargateContainerDefinitionProps(EcsContainerDefinitionProps):
|
|
|
12527
13494
|
image: _ContainerImage_94af1b43,
|
|
12528
13495
|
memory: _Size_7b441c34,
|
|
12529
13496
|
command: typing.Optional[typing.Sequence[builtins.str]] = None,
|
|
13497
|
+
enable_execute_command: typing.Optional[builtins.bool] = None,
|
|
12530
13498
|
environment: typing.Optional[typing.Mapping[builtins.str, builtins.str]] = None,
|
|
12531
13499
|
execution_role: typing.Optional[_IRole_235f5d8e] = None,
|
|
12532
13500
|
job_role: typing.Optional[_IRole_235f5d8e] = None,
|
|
@@ -12548,6 +13516,7 @@ class EcsFargateContainerDefinitionProps(EcsContainerDefinitionProps):
|
|
|
12548
13516
|
:param image: The image that this container will run.
|
|
12549
13517
|
:param memory: The memory hard limit present to the container. If your container attempts to exceed the memory specified, the container is terminated. You must specify at least 4 MiB of memory for a job.
|
|
12550
13518
|
:param command: The command that's passed to the container. Default: - no command
|
|
13519
|
+
:param enable_execute_command: Determines whether execute command functionality is turned on for this task. If true, execute command functionality is turned on all the containers in the task. This allows you to use ECS Exec to access containers interactively. When enabled, a job role with required SSM permissions will be created automatically if no job role is provided. If a job role is alreadyprovided, the required permissions will be added to it. Default: undefined - AWS Batch default is false
|
|
12551
13520
|
:param environment: The environment variables to pass to a container. Cannot start with ``AWS_BATCH``. We don't recommend using plaintext environment variables for sensitive information, such as credential data. Default: - no environment variables
|
|
12552
13521
|
:param execution_role: The role used by Amazon ECS container and AWS Fargate agents to make AWS API calls on your behalf. Default: - a Role will be created
|
|
12553
13522
|
:param job_role: The role that the container can assume. Default: - no job role
|
|
@@ -12584,6 +13553,7 @@ class EcsFargateContainerDefinitionProps(EcsContainerDefinitionProps):
|
|
|
12584
13553
|
check_type(argname="argument image", value=image, expected_type=type_hints["image"])
|
|
12585
13554
|
check_type(argname="argument memory", value=memory, expected_type=type_hints["memory"])
|
|
12586
13555
|
check_type(argname="argument command", value=command, expected_type=type_hints["command"])
|
|
13556
|
+
check_type(argname="argument enable_execute_command", value=enable_execute_command, expected_type=type_hints["enable_execute_command"])
|
|
12587
13557
|
check_type(argname="argument environment", value=environment, expected_type=type_hints["environment"])
|
|
12588
13558
|
check_type(argname="argument execution_role", value=execution_role, expected_type=type_hints["execution_role"])
|
|
12589
13559
|
check_type(argname="argument job_role", value=job_role, expected_type=type_hints["job_role"])
|
|
@@ -12605,6 +13575,8 @@ class EcsFargateContainerDefinitionProps(EcsContainerDefinitionProps):
|
|
|
12605
13575
|
}
|
|
12606
13576
|
if command is not None:
|
|
12607
13577
|
self._values["command"] = command
|
|
13578
|
+
if enable_execute_command is not None:
|
|
13579
|
+
self._values["enable_execute_command"] = enable_execute_command
|
|
12608
13580
|
if environment is not None:
|
|
12609
13581
|
self._values["environment"] = environment
|
|
12610
13582
|
if execution_role is not None:
|
|
@@ -12674,6 +13646,23 @@ class EcsFargateContainerDefinitionProps(EcsContainerDefinitionProps):
|
|
|
12674
13646
|
result = self._values.get("command")
|
|
12675
13647
|
return typing.cast(typing.Optional[typing.List[builtins.str]], result)
|
|
12676
13648
|
|
|
13649
|
+
@builtins.property
|
|
13650
|
+
def enable_execute_command(self) -> typing.Optional[builtins.bool]:
|
|
13651
|
+
'''Determines whether execute command functionality is turned on for this task.
|
|
13652
|
+
|
|
13653
|
+
If true, execute command functionality is turned on all the containers in the task.
|
|
13654
|
+
|
|
13655
|
+
This allows you to use ECS Exec to access containers interactively.
|
|
13656
|
+
When enabled, a job role with required SSM permissions will be created automatically if no job role is provided.
|
|
13657
|
+
If a job role is alreadyprovided, the required permissions will be added to it.
|
|
13658
|
+
|
|
13659
|
+
:default: undefined - AWS Batch default is false
|
|
13660
|
+
|
|
13661
|
+
:see: https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ecs-exec.html
|
|
13662
|
+
'''
|
|
13663
|
+
result = self._values.get("enable_execute_command")
|
|
13664
|
+
return typing.cast(typing.Optional[builtins.bool], result)
|
|
13665
|
+
|
|
12677
13666
|
@builtins.property
|
|
12678
13667
|
def environment(
|
|
12679
13668
|
self,
|
|
@@ -15217,6 +16206,15 @@ class IEcsContainerDefinition(
|
|
|
15217
16206
|
'''
|
|
15218
16207
|
...
|
|
15219
16208
|
|
|
16209
|
+
@builtins.property
|
|
16210
|
+
@jsii.member(jsii_name="enableExecuteCommand")
|
|
16211
|
+
def enable_execute_command(self) -> typing.Optional[builtins.bool]:
|
|
16212
|
+
'''Whether to enable ecs exec for this container.
|
|
16213
|
+
|
|
16214
|
+
:default: undefined - AWS Batch default is false
|
|
16215
|
+
'''
|
|
16216
|
+
...
|
|
16217
|
+
|
|
15220
16218
|
@builtins.property
|
|
15221
16219
|
@jsii.member(jsii_name="environment")
|
|
15222
16220
|
def environment(
|
|
@@ -15360,6 +16358,15 @@ class _IEcsContainerDefinitionProxy(
|
|
|
15360
16358
|
'''
|
|
15361
16359
|
return typing.cast(typing.Optional[typing.List[builtins.str]], jsii.get(self, "command"))
|
|
15362
16360
|
|
|
16361
|
+
@builtins.property
|
|
16362
|
+
@jsii.member(jsii_name="enableExecuteCommand")
|
|
16363
|
+
def enable_execute_command(self) -> typing.Optional[builtins.bool]:
|
|
16364
|
+
'''Whether to enable ecs exec for this container.
|
|
16365
|
+
|
|
16366
|
+
:default: undefined - AWS Batch default is false
|
|
16367
|
+
'''
|
|
16368
|
+
return typing.cast(typing.Optional[builtins.bool], jsii.get(self, "enableExecuteCommand"))
|
|
16369
|
+
|
|
15363
16370
|
@builtins.property
|
|
15364
16371
|
@jsii.member(jsii_name="environment")
|
|
15365
16372
|
def environment(
|
|
@@ -17585,6 +18592,12 @@ class JobQueue(
|
|
|
17585
18592
|
check_type(argname="argument order", value=order, expected_type=type_hints["order"])
|
|
17586
18593
|
return typing.cast(None, jsii.invoke(self, "addComputeEnvironment", [compute_environment, order]))
|
|
17587
18594
|
|
|
18595
|
+
@jsii.python.classproperty
|
|
18596
|
+
@jsii.member(jsii_name="PROPERTY_INJECTION_ID")
|
|
18597
|
+
def PROPERTY_INJECTION_ID(cls) -> builtins.str:
|
|
18598
|
+
'''Uniquely identifies this class.'''
|
|
18599
|
+
return typing.cast(builtins.str, jsii.sget(cls, "PROPERTY_INJECTION_ID"))
|
|
18600
|
+
|
|
17588
18601
|
@builtins.property
|
|
17589
18602
|
@jsii.member(jsii_name="computeEnvironments")
|
|
17590
18603
|
def compute_environments(self) -> typing.List["OrderedComputeEnvironment"]:
|
|
@@ -17949,6 +18962,8 @@ class JobStateTimeLimitActionsAction(enum.Enum):
|
|
|
17949
18962
|
|
|
17950
18963
|
CANCEL = "CANCEL"
|
|
17951
18964
|
'''Cancel the job.'''
|
|
18965
|
+
TERMINATE = "TERMINATE"
|
|
18966
|
+
'''Terminate the job.'''
|
|
17952
18967
|
|
|
17953
18968
|
|
|
17954
18969
|
@jsii.enum(jsii_type="aws-cdk-lib.aws_batch.JobStateTimeLimitActionsReason")
|
|
@@ -18585,13 +19600,14 @@ class ManagedEc2EcsComputeEnvironment(
|
|
|
18585
19600
|
id: builtins.str,
|
|
18586
19601
|
*,
|
|
18587
19602
|
allocation_strategy: typing.Optional[AllocationStrategy] = None,
|
|
19603
|
+
default_instance_classes: typing.Optional[typing.Sequence[DefaultInstanceClass]] = None,
|
|
18588
19604
|
images: typing.Optional[typing.Sequence[typing.Union[EcsMachineImage, typing.Dict[builtins.str, typing.Any]]]] = None,
|
|
18589
19605
|
instance_classes: typing.Optional[typing.Sequence[_InstanceClass_85a592e7]] = None,
|
|
18590
19606
|
instance_role: typing.Optional[_IRole_235f5d8e] = None,
|
|
18591
19607
|
instance_types: typing.Optional[typing.Sequence[_InstanceType_f64915b9]] = None,
|
|
18592
19608
|
launch_template: typing.Optional[_ILaunchTemplate_f32c0fd7] = None,
|
|
18593
19609
|
minv_cpus: typing.Optional[jsii.Number] = None,
|
|
18594
|
-
placement_group: typing.Optional[
|
|
19610
|
+
placement_group: typing.Optional[_IPlacementGroupRef_5d6e601f] = None,
|
|
18595
19611
|
spot_bid_percentage: typing.Optional[jsii.Number] = None,
|
|
18596
19612
|
spot_fleet_role: typing.Optional[_IRole_235f5d8e] = None,
|
|
18597
19613
|
use_optimal_instance_classes: typing.Optional[builtins.bool] = None,
|
|
@@ -18612,6 +19628,7 @@ class ManagedEc2EcsComputeEnvironment(
|
|
|
18612
19628
|
:param scope: -
|
|
18613
19629
|
:param id: -
|
|
18614
19630
|
:param allocation_strategy: The allocation strategy to use if not enough instances of the best fitting instance type can be allocated. Default: - ``BEST_FIT_PROGRESSIVE`` if not using Spot instances, ``SPOT_CAPACITY_OPTIMIZED`` if using Spot instances.
|
|
19631
|
+
:param default_instance_classes: Use batch's default instance types. A simpler way to choose up-to-date instance classes based on region instead of specifying exact instance classes. Default: - choose from instanceTypes and instanceClasses
|
|
18615
19632
|
:param images: Configure which AMIs this Compute Environment can launch. If you specify this property with only ``image`` specified, then the ``imageType`` will default to ``ECS_AL2``. *If your image needs GPU resources, specify ``ECS_AL2_NVIDIA``; otherwise, the instances will not be able to properly join the ComputeEnvironment*. Default: - ECS_AL2 for non-GPU instances, ECS_AL2_NVIDIA for GPU instances
|
|
18616
19633
|
:param instance_classes: The instance classes that this Compute Environment can launch. Which one is chosen depends on the ``AllocationStrategy`` used. Batch will automatically choose the instance size. Default: - the instances Batch considers will be used (currently C4, M4, and R4)
|
|
18617
19634
|
:param instance_role: The execution Role that instances launched by this Compute Environment will use. Default: - a role will be created
|
|
@@ -18621,7 +19638,7 @@ class ManagedEc2EcsComputeEnvironment(
|
|
|
18621
19638
|
:param placement_group: The EC2 placement group to associate with your compute resources. If you intend to submit multi-node parallel jobs to this Compute Environment, you should consider creating a cluster placement group and associate it with your compute resources. This keeps your multi-node parallel job on a logical grouping of instances within a single Availability Zone with high network flow potential. Default: - no placement group
|
|
18622
19639
|
:param spot_bid_percentage: The maximum percentage that a Spot Instance price can be when compared with the On-Demand price for that instance type before instances are launched. For example, if your maximum percentage is 20%, the Spot price must be less than 20% of the current On-Demand price for that Instance. You always pay the lowest market price and never more than your maximum percentage. For most use cases, Batch recommends leaving this field empty. Implies ``spot == true`` if set Default: 100%
|
|
18623
19640
|
:param spot_fleet_role: The service-linked role that Spot Fleet needs to launch instances on your behalf. Default: - a new role will be created
|
|
18624
|
-
:param use_optimal_instance_classes: Whether or not to use batch's optimal instance type. The optimal instance type is equivalent to adding the C4, M4, and R4 instance classes. You can specify other instance classes (of the same architecture) in addition to the optimal instance classes. Default: true
|
|
19641
|
+
:param use_optimal_instance_classes: (deprecated) Whether or not to use batch's optimal instance type. The optimal instance type is equivalent to adding the C4, M4, and R4 instance classes. You can specify other instance classes (of the same architecture) in addition to the optimal instance classes. Default: true
|
|
18625
19642
|
:param vpc: VPC in which this Compute Environment will launch Instances.
|
|
18626
19643
|
:param maxv_cpus: The maximum vCpus this ``ManagedComputeEnvironment`` can scale up to. Each vCPU is equivalent to 1024 CPU shares. *Note*: if this Compute Environment uses EC2 resources (not Fargate) with either ``AllocationStrategy.BEST_FIT_PROGRESSIVE`` or ``AllocationStrategy.SPOT_CAPACITY_OPTIMIZED``, or ``AllocationStrategy.BEST_FIT`` with Spot instances, The scheduler may exceed this number by at most one of the instances specified in ``instanceTypes`` or ``instanceClasses``. Default: 256
|
|
18627
19644
|
:param replace_compute_environment: Specifies whether this Compute Environment is replaced if an update is made that requires replacing its instances. To enable more properties to be updated, set this property to ``false``. When changing the value of this property to false, do not change any other properties at the same time. If other properties are changed at the same time, and the change needs to be rolled back but it can't, it's possible for the stack to go into the UPDATE_ROLLBACK_FAILED state. You can't update a stack that is in the UPDATE_ROLLBACK_FAILED state. However, if you can continue to roll it back, you can return the stack to its original settings and then try to update it again. The properties which require a replacement of the Compute Environment are: Default: false
|
|
@@ -18641,6 +19658,7 @@ class ManagedEc2EcsComputeEnvironment(
|
|
|
18641
19658
|
check_type(argname="argument id", value=id, expected_type=type_hints["id"])
|
|
18642
19659
|
props = ManagedEc2EcsComputeEnvironmentProps(
|
|
18643
19660
|
allocation_strategy=allocation_strategy,
|
|
19661
|
+
default_instance_classes=default_instance_classes,
|
|
18644
19662
|
images=images,
|
|
18645
19663
|
instance_classes=instance_classes,
|
|
18646
19664
|
instance_role=instance_role,
|
|
@@ -18710,6 +19728,12 @@ class ManagedEc2EcsComputeEnvironment(
|
|
|
18710
19728
|
check_type(argname="argument instance_type", value=instance_type, expected_type=type_hints["instance_type"])
|
|
18711
19729
|
return typing.cast(None, jsii.invoke(self, "addInstanceType", [instance_type]))
|
|
18712
19730
|
|
|
19731
|
+
@jsii.python.classproperty
|
|
19732
|
+
@jsii.member(jsii_name="PROPERTY_INJECTION_ID")
|
|
19733
|
+
def PROPERTY_INJECTION_ID(cls) -> builtins.str:
|
|
19734
|
+
'''Uniquely identifies this class.'''
|
|
19735
|
+
return typing.cast(builtins.str, jsii.sget(cls, "PROPERTY_INJECTION_ID"))
|
|
19736
|
+
|
|
18713
19737
|
@builtins.property
|
|
18714
19738
|
@jsii.member(jsii_name="computeEnvironmentArn")
|
|
18715
19739
|
def compute_environment_arn(self) -> builtins.str:
|
|
@@ -18945,6 +19969,7 @@ class ManagedEc2EcsComputeEnvironment(
|
|
|
18945
19969
|
"update_to_latest_image_version": "updateToLatestImageVersion",
|
|
18946
19970
|
"vpc_subnets": "vpcSubnets",
|
|
18947
19971
|
"allocation_strategy": "allocationStrategy",
|
|
19972
|
+
"default_instance_classes": "defaultInstanceClasses",
|
|
18948
19973
|
"images": "images",
|
|
18949
19974
|
"instance_classes": "instanceClasses",
|
|
18950
19975
|
"instance_role": "instanceRole",
|
|
@@ -18974,13 +19999,14 @@ class ManagedEc2EcsComputeEnvironmentProps(ManagedComputeEnvironmentProps):
|
|
|
18974
19999
|
update_to_latest_image_version: typing.Optional[builtins.bool] = None,
|
|
18975
20000
|
vpc_subnets: typing.Optional[typing.Union[_SubnetSelection_e57d76df, typing.Dict[builtins.str, typing.Any]]] = None,
|
|
18976
20001
|
allocation_strategy: typing.Optional[AllocationStrategy] = None,
|
|
20002
|
+
default_instance_classes: typing.Optional[typing.Sequence[DefaultInstanceClass]] = None,
|
|
18977
20003
|
images: typing.Optional[typing.Sequence[typing.Union[EcsMachineImage, typing.Dict[builtins.str, typing.Any]]]] = None,
|
|
18978
20004
|
instance_classes: typing.Optional[typing.Sequence[_InstanceClass_85a592e7]] = None,
|
|
18979
20005
|
instance_role: typing.Optional[_IRole_235f5d8e] = None,
|
|
18980
20006
|
instance_types: typing.Optional[typing.Sequence[_InstanceType_f64915b9]] = None,
|
|
18981
20007
|
launch_template: typing.Optional[_ILaunchTemplate_f32c0fd7] = None,
|
|
18982
20008
|
minv_cpus: typing.Optional[jsii.Number] = None,
|
|
18983
|
-
placement_group: typing.Optional[
|
|
20009
|
+
placement_group: typing.Optional[_IPlacementGroupRef_5d6e601f] = None,
|
|
18984
20010
|
spot_bid_percentage: typing.Optional[jsii.Number] = None,
|
|
18985
20011
|
spot_fleet_role: typing.Optional[_IRole_235f5d8e] = None,
|
|
18986
20012
|
use_optimal_instance_classes: typing.Optional[builtins.bool] = None,
|
|
@@ -19000,6 +20026,7 @@ class ManagedEc2EcsComputeEnvironmentProps(ManagedComputeEnvironmentProps):
|
|
|
19000
20026
|
:param update_to_latest_image_version: Whether or not the AMI is updated to the latest one supported by Batch when an infrastructure update occurs. If you specify a specific AMI, this property will be ignored. Note: the CDK will never set this value by default, ``false`` will set by CFN. This is to avoid a deployment failure that occurs when this value is set. Default: false
|
|
19001
20027
|
:param vpc_subnets: The VPC Subnets this Compute Environment will launch instances in. Default: new subnets will be created
|
|
19002
20028
|
:param allocation_strategy: The allocation strategy to use if not enough instances of the best fitting instance type can be allocated. Default: - ``BEST_FIT_PROGRESSIVE`` if not using Spot instances, ``SPOT_CAPACITY_OPTIMIZED`` if using Spot instances.
|
|
20029
|
+
:param default_instance_classes: Use batch's default instance types. A simpler way to choose up-to-date instance classes based on region instead of specifying exact instance classes. Default: - choose from instanceTypes and instanceClasses
|
|
19003
20030
|
:param images: Configure which AMIs this Compute Environment can launch. If you specify this property with only ``image`` specified, then the ``imageType`` will default to ``ECS_AL2``. *If your image needs GPU resources, specify ``ECS_AL2_NVIDIA``; otherwise, the instances will not be able to properly join the ComputeEnvironment*. Default: - ECS_AL2 for non-GPU instances, ECS_AL2_NVIDIA for GPU instances
|
|
19004
20031
|
:param instance_classes: The instance classes that this Compute Environment can launch. Which one is chosen depends on the ``AllocationStrategy`` used. Batch will automatically choose the instance size. Default: - the instances Batch considers will be used (currently C4, M4, and R4)
|
|
19005
20032
|
:param instance_role: The execution Role that instances launched by this Compute Environment will use. Default: - a role will be created
|
|
@@ -19009,7 +20036,7 @@ class ManagedEc2EcsComputeEnvironmentProps(ManagedComputeEnvironmentProps):
|
|
|
19009
20036
|
:param placement_group: The EC2 placement group to associate with your compute resources. If you intend to submit multi-node parallel jobs to this Compute Environment, you should consider creating a cluster placement group and associate it with your compute resources. This keeps your multi-node parallel job on a logical grouping of instances within a single Availability Zone with high network flow potential. Default: - no placement group
|
|
19010
20037
|
:param spot_bid_percentage: The maximum percentage that a Spot Instance price can be when compared with the On-Demand price for that instance type before instances are launched. For example, if your maximum percentage is 20%, the Spot price must be less than 20% of the current On-Demand price for that Instance. You always pay the lowest market price and never more than your maximum percentage. For most use cases, Batch recommends leaving this field empty. Implies ``spot == true`` if set Default: 100%
|
|
19011
20038
|
:param spot_fleet_role: The service-linked role that Spot Fleet needs to launch instances on your behalf. Default: - a new role will be created
|
|
19012
|
-
:param use_optimal_instance_classes: Whether or not to use batch's optimal instance type. The optimal instance type is equivalent to adding the C4, M4, and R4 instance classes. You can specify other instance classes (of the same architecture) in addition to the optimal instance classes. Default: true
|
|
20039
|
+
:param use_optimal_instance_classes: (deprecated) Whether or not to use batch's optimal instance type. The optimal instance type is equivalent to adding the C4, M4, and R4 instance classes. You can specify other instance classes (of the same architecture) in addition to the optimal instance classes. Default: true
|
|
19013
20040
|
|
|
19014
20041
|
:exampleMetadata: infused
|
|
19015
20042
|
|
|
@@ -19041,6 +20068,7 @@ class ManagedEc2EcsComputeEnvironmentProps(ManagedComputeEnvironmentProps):
|
|
|
19041
20068
|
check_type(argname="argument update_to_latest_image_version", value=update_to_latest_image_version, expected_type=type_hints["update_to_latest_image_version"])
|
|
19042
20069
|
check_type(argname="argument vpc_subnets", value=vpc_subnets, expected_type=type_hints["vpc_subnets"])
|
|
19043
20070
|
check_type(argname="argument allocation_strategy", value=allocation_strategy, expected_type=type_hints["allocation_strategy"])
|
|
20071
|
+
check_type(argname="argument default_instance_classes", value=default_instance_classes, expected_type=type_hints["default_instance_classes"])
|
|
19044
20072
|
check_type(argname="argument images", value=images, expected_type=type_hints["images"])
|
|
19045
20073
|
check_type(argname="argument instance_classes", value=instance_classes, expected_type=type_hints["instance_classes"])
|
|
19046
20074
|
check_type(argname="argument instance_role", value=instance_role, expected_type=type_hints["instance_role"])
|
|
@@ -19078,6 +20106,8 @@ class ManagedEc2EcsComputeEnvironmentProps(ManagedComputeEnvironmentProps):
|
|
|
19078
20106
|
self._values["vpc_subnets"] = vpc_subnets
|
|
19079
20107
|
if allocation_strategy is not None:
|
|
19080
20108
|
self._values["allocation_strategy"] = allocation_strategy
|
|
20109
|
+
if default_instance_classes is not None:
|
|
20110
|
+
self._values["default_instance_classes"] = default_instance_classes
|
|
19081
20111
|
if images is not None:
|
|
19082
20112
|
self._values["images"] = images
|
|
19083
20113
|
if instance_classes is not None:
|
|
@@ -19269,6 +20299,22 @@ class ManagedEc2EcsComputeEnvironmentProps(ManagedComputeEnvironmentProps):
|
|
|
19269
20299
|
result = self._values.get("allocation_strategy")
|
|
19270
20300
|
return typing.cast(typing.Optional[AllocationStrategy], result)
|
|
19271
20301
|
|
|
20302
|
+
@builtins.property
|
|
20303
|
+
def default_instance_classes(
|
|
20304
|
+
self,
|
|
20305
|
+
) -> typing.Optional[typing.List[DefaultInstanceClass]]:
|
|
20306
|
+
'''Use batch's default instance types.
|
|
20307
|
+
|
|
20308
|
+
A simpler way to choose up-to-date instance classes based on region
|
|
20309
|
+
instead of specifying exact instance classes.
|
|
20310
|
+
|
|
20311
|
+
:default: - choose from instanceTypes and instanceClasses
|
|
20312
|
+
|
|
20313
|
+
:see: https://docs.aws.amazon.com/batch/latest/userguide/instance-type-compute-table.html
|
|
20314
|
+
'''
|
|
20315
|
+
result = self._values.get("default_instance_classes")
|
|
20316
|
+
return typing.cast(typing.Optional[typing.List[DefaultInstanceClass]], result)
|
|
20317
|
+
|
|
19272
20318
|
@builtins.property
|
|
19273
20319
|
def images(self) -> typing.Optional[typing.List[EcsMachineImage]]:
|
|
19274
20320
|
'''Configure which AMIs this Compute Environment can launch.
|
|
@@ -19339,7 +20385,7 @@ class ManagedEc2EcsComputeEnvironmentProps(ManagedComputeEnvironmentProps):
|
|
|
19339
20385
|
return typing.cast(typing.Optional[jsii.Number], result)
|
|
19340
20386
|
|
|
19341
20387
|
@builtins.property
|
|
19342
|
-
def placement_group(self) -> typing.Optional[
|
|
20388
|
+
def placement_group(self) -> typing.Optional[_IPlacementGroupRef_5d6e601f]:
|
|
19343
20389
|
'''The EC2 placement group to associate with your compute resources.
|
|
19344
20390
|
|
|
19345
20391
|
If you intend to submit multi-node parallel jobs to this Compute Environment,
|
|
@@ -19352,7 +20398,7 @@ class ManagedEc2EcsComputeEnvironmentProps(ManagedComputeEnvironmentProps):
|
|
|
19352
20398
|
:see: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/placement-groups.html
|
|
19353
20399
|
'''
|
|
19354
20400
|
result = self._values.get("placement_group")
|
|
19355
|
-
return typing.cast(typing.Optional[
|
|
20401
|
+
return typing.cast(typing.Optional[_IPlacementGroupRef_5d6e601f], result)
|
|
19356
20402
|
|
|
19357
20403
|
@builtins.property
|
|
19358
20404
|
def spot_bid_percentage(self) -> typing.Optional[jsii.Number]:
|
|
@@ -19383,13 +20429,17 @@ class ManagedEc2EcsComputeEnvironmentProps(ManagedComputeEnvironmentProps):
|
|
|
19383
20429
|
|
|
19384
20430
|
@builtins.property
|
|
19385
20431
|
def use_optimal_instance_classes(self) -> typing.Optional[builtins.bool]:
|
|
19386
|
-
'''Whether or not to use batch's optimal instance type.
|
|
20432
|
+
'''(deprecated) Whether or not to use batch's optimal instance type.
|
|
19387
20433
|
|
|
19388
20434
|
The optimal instance type is equivalent to adding the
|
|
19389
20435
|
C4, M4, and R4 instance classes. You can specify other instance classes
|
|
19390
20436
|
(of the same architecture) in addition to the optimal instance classes.
|
|
19391
20437
|
|
|
19392
20438
|
:default: true
|
|
20439
|
+
|
|
20440
|
+
:deprecated: use defaultInstanceClasses instead
|
|
20441
|
+
|
|
20442
|
+
:stability: deprecated
|
|
19393
20443
|
'''
|
|
19394
20444
|
result = self._values.get("use_optimal_instance_classes")
|
|
19395
20445
|
return typing.cast(typing.Optional[builtins.bool], result)
|
|
@@ -19426,12 +20476,13 @@ class ManagedEc2EksComputeEnvironment(
|
|
|
19426
20476
|
from aws_cdk import aws_ec2 as ec2
|
|
19427
20477
|
from aws_cdk import aws_eks as eks
|
|
19428
20478
|
from aws_cdk import aws_iam as iam
|
|
20479
|
+
from aws_cdk.interfaces import aws_ec2 as interfaces_aws_ec2
|
|
19429
20480
|
|
|
19430
20481
|
# cluster: eks.Cluster
|
|
19431
20482
|
# instance_type: ec2.InstanceType
|
|
19432
20483
|
# launch_template: ec2.LaunchTemplate
|
|
19433
20484
|
# machine_image: ec2.IMachineImage
|
|
19434
|
-
#
|
|
20485
|
+
# placement_group_ref: interfaces_aws_ec2.IPlacementGroupRef
|
|
19435
20486
|
# role: iam.Role
|
|
19436
20487
|
# security_group: ec2.SecurityGroup
|
|
19437
20488
|
# subnet: ec2.Subnet
|
|
@@ -19446,6 +20497,7 @@ class ManagedEc2EksComputeEnvironment(
|
|
|
19446
20497
|
# the properties below are optional
|
|
19447
20498
|
allocation_strategy=batch.AllocationStrategy.BEST_FIT,
|
|
19448
20499
|
compute_environment_name="computeEnvironmentName",
|
|
20500
|
+
default_instance_classes=[batch.DefaultInstanceClass.X86_64],
|
|
19449
20501
|
enabled=False,
|
|
19450
20502
|
images=[batch.EksMachineImage(
|
|
19451
20503
|
image=machine_image,
|
|
@@ -19457,7 +20509,7 @@ class ManagedEc2EksComputeEnvironment(
|
|
|
19457
20509
|
launch_template=launch_template,
|
|
19458
20510
|
maxv_cpus=123,
|
|
19459
20511
|
minv_cpus=123,
|
|
19460
|
-
placement_group=
|
|
20512
|
+
placement_group=placement_group_ref,
|
|
19461
20513
|
replace_compute_environment=False,
|
|
19462
20514
|
security_groups=[security_group],
|
|
19463
20515
|
service_role=role,
|
|
@@ -19486,13 +20538,14 @@ class ManagedEc2EksComputeEnvironment(
|
|
|
19486
20538
|
eks_cluster: _ICluster_6b2b80df,
|
|
19487
20539
|
kubernetes_namespace: builtins.str,
|
|
19488
20540
|
allocation_strategy: typing.Optional[AllocationStrategy] = None,
|
|
20541
|
+
default_instance_classes: typing.Optional[typing.Sequence[DefaultInstanceClass]] = None,
|
|
19489
20542
|
images: typing.Optional[typing.Sequence[typing.Union[EksMachineImage, typing.Dict[builtins.str, typing.Any]]]] = None,
|
|
19490
20543
|
instance_classes: typing.Optional[typing.Sequence[_InstanceClass_85a592e7]] = None,
|
|
19491
20544
|
instance_role: typing.Optional[_IRole_235f5d8e] = None,
|
|
19492
20545
|
instance_types: typing.Optional[typing.Sequence[_InstanceType_f64915b9]] = None,
|
|
19493
20546
|
launch_template: typing.Optional[_ILaunchTemplate_f32c0fd7] = None,
|
|
19494
20547
|
minv_cpus: typing.Optional[jsii.Number] = None,
|
|
19495
|
-
placement_group: typing.Optional[
|
|
20548
|
+
placement_group: typing.Optional[_IPlacementGroupRef_5d6e601f] = None,
|
|
19496
20549
|
spot_bid_percentage: typing.Optional[jsii.Number] = None,
|
|
19497
20550
|
use_optimal_instance_classes: typing.Optional[builtins.bool] = None,
|
|
19498
20551
|
vpc: _IVpc_f30d5663,
|
|
@@ -19514,6 +20567,7 @@ class ManagedEc2EksComputeEnvironment(
|
|
|
19514
20567
|
:param eks_cluster: The cluster that backs this Compute Environment. Required for Compute Environments running Kubernetes jobs. Please ensure that you have followed the steps at https://docs.aws.amazon.com/batch/latest/userguide/getting-started-eks.html before attempting to deploy a ``ManagedEc2EksComputeEnvironment`` that uses this cluster. If you do not follow the steps in the link, the deployment fail with a message that the compute environment did not stabilize.
|
|
19515
20568
|
:param kubernetes_namespace: The namespace of the Cluster.
|
|
19516
20569
|
:param allocation_strategy: The allocation strategy to use if not enough instances of the best fitting instance type can be allocated. Default: - ``BEST_FIT_PROGRESSIVE`` if not using Spot instances, ``SPOT_CAPACITY_OPTIMIZED`` if using Spot instances.
|
|
20570
|
+
:param default_instance_classes: Use batch's default instance types. A simpler way to choose up-to-date instance classes based on region instead of specifying exact instance classes. Default: - choose from instanceTypes and instanceClasses
|
|
19517
20571
|
:param images: Configure which AMIs this Compute Environment can launch. Default: If ``imageKubernetesVersion`` is specified, - EKS_AL2 for non-GPU instances, EKS_AL2_NVIDIA for GPU instances, Otherwise, - ECS_AL2 for non-GPU instances, ECS_AL2_NVIDIA for GPU instances,
|
|
19518
20572
|
:param instance_classes: The instance types that this Compute Environment can launch. Which one is chosen depends on the ``AllocationStrategy`` used. Batch will automatically choose the instance size. Default: - the instances Batch considers will be used (currently C4, M4, and R4)
|
|
19519
20573
|
:param instance_role: The execution Role that instances launched by this Compute Environment will use. Default: - a role will be created
|
|
@@ -19522,7 +20576,7 @@ class ManagedEc2EksComputeEnvironment(
|
|
|
19522
20576
|
:param minv_cpus: The minimum vCPUs that an environment should maintain, even if the compute environment is DISABLED. Default: 0
|
|
19523
20577
|
:param placement_group: The EC2 placement group to associate with your compute resources. If you intend to submit multi-node parallel jobs to this Compute Environment, you should consider creating a cluster placement group and associate it with your compute resources. This keeps your multi-node parallel job on a logical grouping of instances within a single Availability Zone with high network flow potential. Default: - no placement group
|
|
19524
20578
|
:param spot_bid_percentage: The maximum percentage that a Spot Instance price can be when compared with the On-Demand price for that instance type before instances are launched. For example, if your maximum percentage is 20%, the Spot price must be less than 20% of the current On-Demand price for that Instance. You always pay the lowest market price and never more than your maximum percentage. For most use cases, Batch recommends leaving this field empty. Implies ``spot == true`` if set Default: - 100%
|
|
19525
|
-
:param use_optimal_instance_classes: Whether or not to use batch's optimal instance type. The optimal instance type is equivalent to adding the C4, M4, and R4 instance classes. You can specify other instance classes (of the same architecture) in addition to the optimal instance classes. Default: true
|
|
20579
|
+
:param use_optimal_instance_classes: (deprecated) Whether or not to use batch's optimal instance type. The optimal instance type is equivalent to adding the C4, M4, and R4 instance classes. You can specify other instance classes (of the same architecture) in addition to the optimal instance classes. Default: true
|
|
19526
20580
|
:param vpc: VPC in which this Compute Environment will launch Instances.
|
|
19527
20581
|
:param maxv_cpus: The maximum vCpus this ``ManagedComputeEnvironment`` can scale up to. Each vCPU is equivalent to 1024 CPU shares. *Note*: if this Compute Environment uses EC2 resources (not Fargate) with either ``AllocationStrategy.BEST_FIT_PROGRESSIVE`` or ``AllocationStrategy.SPOT_CAPACITY_OPTIMIZED``, or ``AllocationStrategy.BEST_FIT`` with Spot instances, The scheduler may exceed this number by at most one of the instances specified in ``instanceTypes`` or ``instanceClasses``. Default: 256
|
|
19528
20582
|
:param replace_compute_environment: Specifies whether this Compute Environment is replaced if an update is made that requires replacing its instances. To enable more properties to be updated, set this property to ``false``. When changing the value of this property to false, do not change any other properties at the same time. If other properties are changed at the same time, and the change needs to be rolled back but it can't, it's possible for the stack to go into the UPDATE_ROLLBACK_FAILED state. You can't update a stack that is in the UPDATE_ROLLBACK_FAILED state. However, if you can continue to roll it back, you can return the stack to its original settings and then try to update it again. The properties which require a replacement of the Compute Environment are: Default: false
|
|
@@ -19544,6 +20598,7 @@ class ManagedEc2EksComputeEnvironment(
|
|
|
19544
20598
|
eks_cluster=eks_cluster,
|
|
19545
20599
|
kubernetes_namespace=kubernetes_namespace,
|
|
19546
20600
|
allocation_strategy=allocation_strategy,
|
|
20601
|
+
default_instance_classes=default_instance_classes,
|
|
19547
20602
|
images=images,
|
|
19548
20603
|
instance_classes=instance_classes,
|
|
19549
20604
|
instance_role=instance_role,
|
|
@@ -19591,6 +20646,12 @@ class ManagedEc2EksComputeEnvironment(
|
|
|
19591
20646
|
check_type(argname="argument instance_type", value=instance_type, expected_type=type_hints["instance_type"])
|
|
19592
20647
|
return typing.cast(None, jsii.invoke(self, "addInstanceType", [instance_type]))
|
|
19593
20648
|
|
|
20649
|
+
@jsii.python.classproperty
|
|
20650
|
+
@jsii.member(jsii_name="PROPERTY_INJECTION_ID")
|
|
20651
|
+
def PROPERTY_INJECTION_ID(cls) -> builtins.str:
|
|
20652
|
+
'''Uniquely identifies this class.'''
|
|
20653
|
+
return typing.cast(builtins.str, jsii.sget(cls, "PROPERTY_INJECTION_ID"))
|
|
20654
|
+
|
|
19594
20655
|
@builtins.property
|
|
19595
20656
|
@jsii.member(jsii_name="computeEnvironmentArn")
|
|
19596
20657
|
def compute_environment_arn(self) -> builtins.str:
|
|
@@ -19844,6 +20905,7 @@ class ManagedEc2EksComputeEnvironment(
|
|
|
19844
20905
|
"eks_cluster": "eksCluster",
|
|
19845
20906
|
"kubernetes_namespace": "kubernetesNamespace",
|
|
19846
20907
|
"allocation_strategy": "allocationStrategy",
|
|
20908
|
+
"default_instance_classes": "defaultInstanceClasses",
|
|
19847
20909
|
"images": "images",
|
|
19848
20910
|
"instance_classes": "instanceClasses",
|
|
19849
20911
|
"instance_role": "instanceRole",
|
|
@@ -19874,13 +20936,14 @@ class ManagedEc2EksComputeEnvironmentProps(ManagedComputeEnvironmentProps):
|
|
|
19874
20936
|
eks_cluster: _ICluster_6b2b80df,
|
|
19875
20937
|
kubernetes_namespace: builtins.str,
|
|
19876
20938
|
allocation_strategy: typing.Optional[AllocationStrategy] = None,
|
|
20939
|
+
default_instance_classes: typing.Optional[typing.Sequence[DefaultInstanceClass]] = None,
|
|
19877
20940
|
images: typing.Optional[typing.Sequence[typing.Union[EksMachineImage, typing.Dict[builtins.str, typing.Any]]]] = None,
|
|
19878
20941
|
instance_classes: typing.Optional[typing.Sequence[_InstanceClass_85a592e7]] = None,
|
|
19879
20942
|
instance_role: typing.Optional[_IRole_235f5d8e] = None,
|
|
19880
20943
|
instance_types: typing.Optional[typing.Sequence[_InstanceType_f64915b9]] = None,
|
|
19881
20944
|
launch_template: typing.Optional[_ILaunchTemplate_f32c0fd7] = None,
|
|
19882
20945
|
minv_cpus: typing.Optional[jsii.Number] = None,
|
|
19883
|
-
placement_group: typing.Optional[
|
|
20946
|
+
placement_group: typing.Optional[_IPlacementGroupRef_5d6e601f] = None,
|
|
19884
20947
|
spot_bid_percentage: typing.Optional[jsii.Number] = None,
|
|
19885
20948
|
use_optimal_instance_classes: typing.Optional[builtins.bool] = None,
|
|
19886
20949
|
) -> None:
|
|
@@ -19901,6 +20964,7 @@ class ManagedEc2EksComputeEnvironmentProps(ManagedComputeEnvironmentProps):
|
|
|
19901
20964
|
:param eks_cluster: The cluster that backs this Compute Environment. Required for Compute Environments running Kubernetes jobs. Please ensure that you have followed the steps at https://docs.aws.amazon.com/batch/latest/userguide/getting-started-eks.html before attempting to deploy a ``ManagedEc2EksComputeEnvironment`` that uses this cluster. If you do not follow the steps in the link, the deployment fail with a message that the compute environment did not stabilize.
|
|
19902
20965
|
:param kubernetes_namespace: The namespace of the Cluster.
|
|
19903
20966
|
:param allocation_strategy: The allocation strategy to use if not enough instances of the best fitting instance type can be allocated. Default: - ``BEST_FIT_PROGRESSIVE`` if not using Spot instances, ``SPOT_CAPACITY_OPTIMIZED`` if using Spot instances.
|
|
20967
|
+
:param default_instance_classes: Use batch's default instance types. A simpler way to choose up-to-date instance classes based on region instead of specifying exact instance classes. Default: - choose from instanceTypes and instanceClasses
|
|
19904
20968
|
:param images: Configure which AMIs this Compute Environment can launch. Default: If ``imageKubernetesVersion`` is specified, - EKS_AL2 for non-GPU instances, EKS_AL2_NVIDIA for GPU instances, Otherwise, - ECS_AL2 for non-GPU instances, ECS_AL2_NVIDIA for GPU instances,
|
|
19905
20969
|
:param instance_classes: The instance types that this Compute Environment can launch. Which one is chosen depends on the ``AllocationStrategy`` used. Batch will automatically choose the instance size. Default: - the instances Batch considers will be used (currently C4, M4, and R4)
|
|
19906
20970
|
:param instance_role: The execution Role that instances launched by this Compute Environment will use. Default: - a role will be created
|
|
@@ -19909,7 +20973,7 @@ class ManagedEc2EksComputeEnvironmentProps(ManagedComputeEnvironmentProps):
|
|
|
19909
20973
|
:param minv_cpus: The minimum vCPUs that an environment should maintain, even if the compute environment is DISABLED. Default: 0
|
|
19910
20974
|
:param placement_group: The EC2 placement group to associate with your compute resources. If you intend to submit multi-node parallel jobs to this Compute Environment, you should consider creating a cluster placement group and associate it with your compute resources. This keeps your multi-node parallel job on a logical grouping of instances within a single Availability Zone with high network flow potential. Default: - no placement group
|
|
19911
20975
|
:param spot_bid_percentage: The maximum percentage that a Spot Instance price can be when compared with the On-Demand price for that instance type before instances are launched. For example, if your maximum percentage is 20%, the Spot price must be less than 20% of the current On-Demand price for that Instance. You always pay the lowest market price and never more than your maximum percentage. For most use cases, Batch recommends leaving this field empty. Implies ``spot == true`` if set Default: - 100%
|
|
19912
|
-
:param use_optimal_instance_classes: Whether or not to use batch's optimal instance type. The optimal instance type is equivalent to adding the C4, M4, and R4 instance classes. You can specify other instance classes (of the same architecture) in addition to the optimal instance classes. Default: true
|
|
20976
|
+
:param use_optimal_instance_classes: (deprecated) Whether or not to use batch's optimal instance type. The optimal instance type is equivalent to adding the C4, M4, and R4 instance classes. You can specify other instance classes (of the same architecture) in addition to the optimal instance classes. Default: true
|
|
19913
20977
|
|
|
19914
20978
|
:exampleMetadata: fixture=_generated
|
|
19915
20979
|
|
|
@@ -19922,12 +20986,13 @@ class ManagedEc2EksComputeEnvironmentProps(ManagedComputeEnvironmentProps):
|
|
|
19922
20986
|
from aws_cdk import aws_ec2 as ec2
|
|
19923
20987
|
from aws_cdk import aws_eks as eks
|
|
19924
20988
|
from aws_cdk import aws_iam as iam
|
|
20989
|
+
from aws_cdk.interfaces import aws_ec2 as interfaces_aws_ec2
|
|
19925
20990
|
|
|
19926
20991
|
# cluster: eks.Cluster
|
|
19927
20992
|
# instance_type: ec2.InstanceType
|
|
19928
20993
|
# launch_template: ec2.LaunchTemplate
|
|
19929
20994
|
# machine_image: ec2.IMachineImage
|
|
19930
|
-
#
|
|
20995
|
+
# placement_group_ref: interfaces_aws_ec2.IPlacementGroupRef
|
|
19931
20996
|
# role: iam.Role
|
|
19932
20997
|
# security_group: ec2.SecurityGroup
|
|
19933
20998
|
# subnet: ec2.Subnet
|
|
@@ -19942,6 +21007,7 @@ class ManagedEc2EksComputeEnvironmentProps(ManagedComputeEnvironmentProps):
|
|
|
19942
21007
|
# the properties below are optional
|
|
19943
21008
|
allocation_strategy=batch.AllocationStrategy.BEST_FIT,
|
|
19944
21009
|
compute_environment_name="computeEnvironmentName",
|
|
21010
|
+
default_instance_classes=[batch.DefaultInstanceClass.X86_64],
|
|
19945
21011
|
enabled=False,
|
|
19946
21012
|
images=[batch.EksMachineImage(
|
|
19947
21013
|
image=machine_image,
|
|
@@ -19953,7 +21019,7 @@ class ManagedEc2EksComputeEnvironmentProps(ManagedComputeEnvironmentProps):
|
|
|
19953
21019
|
launch_template=launch_template,
|
|
19954
21020
|
maxv_cpus=123,
|
|
19955
21021
|
minv_cpus=123,
|
|
19956
|
-
placement_group=
|
|
21022
|
+
placement_group=placement_group_ref,
|
|
19957
21023
|
replace_compute_environment=False,
|
|
19958
21024
|
security_groups=[security_group],
|
|
19959
21025
|
service_role=role,
|
|
@@ -19992,6 +21058,7 @@ class ManagedEc2EksComputeEnvironmentProps(ManagedComputeEnvironmentProps):
|
|
|
19992
21058
|
check_type(argname="argument eks_cluster", value=eks_cluster, expected_type=type_hints["eks_cluster"])
|
|
19993
21059
|
check_type(argname="argument kubernetes_namespace", value=kubernetes_namespace, expected_type=type_hints["kubernetes_namespace"])
|
|
19994
21060
|
check_type(argname="argument allocation_strategy", value=allocation_strategy, expected_type=type_hints["allocation_strategy"])
|
|
21061
|
+
check_type(argname="argument default_instance_classes", value=default_instance_classes, expected_type=type_hints["default_instance_classes"])
|
|
19995
21062
|
check_type(argname="argument images", value=images, expected_type=type_hints["images"])
|
|
19996
21063
|
check_type(argname="argument instance_classes", value=instance_classes, expected_type=type_hints["instance_classes"])
|
|
19997
21064
|
check_type(argname="argument instance_role", value=instance_role, expected_type=type_hints["instance_role"])
|
|
@@ -20030,6 +21097,8 @@ class ManagedEc2EksComputeEnvironmentProps(ManagedComputeEnvironmentProps):
|
|
|
20030
21097
|
self._values["vpc_subnets"] = vpc_subnets
|
|
20031
21098
|
if allocation_strategy is not None:
|
|
20032
21099
|
self._values["allocation_strategy"] = allocation_strategy
|
|
21100
|
+
if default_instance_classes is not None:
|
|
21101
|
+
self._values["default_instance_classes"] = default_instance_classes
|
|
20033
21102
|
if images is not None:
|
|
20034
21103
|
self._values["images"] = images
|
|
20035
21104
|
if instance_classes is not None:
|
|
@@ -20242,6 +21311,22 @@ class ManagedEc2EksComputeEnvironmentProps(ManagedComputeEnvironmentProps):
|
|
|
20242
21311
|
result = self._values.get("allocation_strategy")
|
|
20243
21312
|
return typing.cast(typing.Optional[AllocationStrategy], result)
|
|
20244
21313
|
|
|
21314
|
+
@builtins.property
|
|
21315
|
+
def default_instance_classes(
|
|
21316
|
+
self,
|
|
21317
|
+
) -> typing.Optional[typing.List[DefaultInstanceClass]]:
|
|
21318
|
+
'''Use batch's default instance types.
|
|
21319
|
+
|
|
21320
|
+
A simpler way to choose up-to-date instance classes based on region
|
|
21321
|
+
instead of specifying exact instance classes.
|
|
21322
|
+
|
|
21323
|
+
:default: - choose from instanceTypes and instanceClasses
|
|
21324
|
+
|
|
21325
|
+
:see: https://docs.aws.amazon.com/batch/latest/userguide/instance-type-compute-table.html
|
|
21326
|
+
'''
|
|
21327
|
+
result = self._values.get("default_instance_classes")
|
|
21328
|
+
return typing.cast(typing.Optional[typing.List[DefaultInstanceClass]], result)
|
|
21329
|
+
|
|
20245
21330
|
@builtins.property
|
|
20246
21331
|
def images(self) -> typing.Optional[typing.List[EksMachineImage]]:
|
|
20247
21332
|
'''Configure which AMIs this Compute Environment can launch.
|
|
@@ -20313,7 +21398,7 @@ class ManagedEc2EksComputeEnvironmentProps(ManagedComputeEnvironmentProps):
|
|
|
20313
21398
|
return typing.cast(typing.Optional[jsii.Number], result)
|
|
20314
21399
|
|
|
20315
21400
|
@builtins.property
|
|
20316
|
-
def placement_group(self) -> typing.Optional[
|
|
21401
|
+
def placement_group(self) -> typing.Optional[_IPlacementGroupRef_5d6e601f]:
|
|
20317
21402
|
'''The EC2 placement group to associate with your compute resources.
|
|
20318
21403
|
|
|
20319
21404
|
If you intend to submit multi-node parallel jobs to this Compute Environment,
|
|
@@ -20326,7 +21411,7 @@ class ManagedEc2EksComputeEnvironmentProps(ManagedComputeEnvironmentProps):
|
|
|
20326
21411
|
:see: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/placement-groups.html
|
|
20327
21412
|
'''
|
|
20328
21413
|
result = self._values.get("placement_group")
|
|
20329
|
-
return typing.cast(typing.Optional[
|
|
21414
|
+
return typing.cast(typing.Optional[_IPlacementGroupRef_5d6e601f], result)
|
|
20330
21415
|
|
|
20331
21416
|
@builtins.property
|
|
20332
21417
|
def spot_bid_percentage(self) -> typing.Optional[jsii.Number]:
|
|
@@ -20346,13 +21431,17 @@ class ManagedEc2EksComputeEnvironmentProps(ManagedComputeEnvironmentProps):
|
|
|
20346
21431
|
|
|
20347
21432
|
@builtins.property
|
|
20348
21433
|
def use_optimal_instance_classes(self) -> typing.Optional[builtins.bool]:
|
|
20349
|
-
'''Whether or not to use batch's optimal instance type.
|
|
21434
|
+
'''(deprecated) Whether or not to use batch's optimal instance type.
|
|
20350
21435
|
|
|
20351
21436
|
The optimal instance type is equivalent to adding the
|
|
20352
21437
|
C4, M4, and R4 instance classes. You can specify other instance classes
|
|
20353
21438
|
(of the same architecture) in addition to the optimal instance classes.
|
|
20354
21439
|
|
|
20355
21440
|
:default: true
|
|
21441
|
+
|
|
21442
|
+
:deprecated: use defaultInstanceClasses instead
|
|
21443
|
+
|
|
21444
|
+
:stability: deprecated
|
|
20356
21445
|
'''
|
|
20357
21446
|
result = self._values.get("use_optimal_instance_classes")
|
|
20358
21447
|
return typing.cast(typing.Optional[builtins.bool], result)
|
|
@@ -20607,6 +21696,12 @@ class MultiNodeJobDefinition(
|
|
|
20607
21696
|
check_type(argname="argument strategy", value=strategy, expected_type=type_hints["strategy"])
|
|
20608
21697
|
return typing.cast(None, jsii.invoke(self, "addRetryStrategy", [strategy]))
|
|
20609
21698
|
|
|
21699
|
+
@jsii.python.classproperty
|
|
21700
|
+
@jsii.member(jsii_name="PROPERTY_INJECTION_ID")
|
|
21701
|
+
def PROPERTY_INJECTION_ID(cls) -> builtins.str:
|
|
21702
|
+
'''Uniquely identifies this class.'''
|
|
21703
|
+
return typing.cast(builtins.str, jsii.sget(cls, "PROPERTY_INJECTION_ID"))
|
|
21704
|
+
|
|
20610
21705
|
@builtins.property
|
|
20611
21706
|
@jsii.member(jsii_name="containers")
|
|
20612
21707
|
def containers(self) -> typing.List[MultiNodeContainer]:
|
|
@@ -22014,6 +23109,12 @@ class UnmanagedComputeEnvironment(
|
|
|
22014
23109
|
check_type(argname="argument unmanaged_compute_environment_arn", value=unmanaged_compute_environment_arn, expected_type=type_hints["unmanaged_compute_environment_arn"])
|
|
22015
23110
|
return typing.cast(IUnmanagedComputeEnvironment, jsii.sinvoke(cls, "fromUnmanagedComputeEnvironmentArn", [scope, id, unmanaged_compute_environment_arn]))
|
|
22016
23111
|
|
|
23112
|
+
@jsii.python.classproperty
|
|
23113
|
+
@jsii.member(jsii_name="PROPERTY_INJECTION_ID")
|
|
23114
|
+
def PROPERTY_INJECTION_ID(cls) -> builtins.str:
|
|
23115
|
+
'''Uniquely identifies this class.'''
|
|
23116
|
+
return typing.cast(builtins.str, jsii.sget(cls, "PROPERTY_INJECTION_ID"))
|
|
23117
|
+
|
|
22017
23118
|
@builtins.property
|
|
22018
23119
|
@jsii.member(jsii_name="computeEnvironmentArn")
|
|
22019
23120
|
def compute_environment_arn(self) -> builtins.str:
|
|
@@ -22235,6 +23336,7 @@ class EcsEc2ContainerDefinition(
|
|
|
22235
23336
|
image: _ContainerImage_94af1b43,
|
|
22236
23337
|
memory: _Size_7b441c34,
|
|
22237
23338
|
command: typing.Optional[typing.Sequence[builtins.str]] = None,
|
|
23339
|
+
enable_execute_command: typing.Optional[builtins.bool] = None,
|
|
22238
23340
|
environment: typing.Optional[typing.Mapping[builtins.str, builtins.str]] = None,
|
|
22239
23341
|
execution_role: typing.Optional[_IRole_235f5d8e] = None,
|
|
22240
23342
|
job_role: typing.Optional[_IRole_235f5d8e] = None,
|
|
@@ -22255,6 +23357,7 @@ class EcsEc2ContainerDefinition(
|
|
|
22255
23357
|
:param image: The image that this container will run.
|
|
22256
23358
|
:param memory: The memory hard limit present to the container. If your container attempts to exceed the memory specified, the container is terminated. You must specify at least 4 MiB of memory for a job.
|
|
22257
23359
|
:param command: The command that's passed to the container. Default: - no command
|
|
23360
|
+
:param enable_execute_command: Determines whether execute command functionality is turned on for this task. If true, execute command functionality is turned on all the containers in the task. This allows you to use ECS Exec to access containers interactively. When enabled, a job role with required SSM permissions will be created automatically if no job role is provided. If a job role is alreadyprovided, the required permissions will be added to it. Default: undefined - AWS Batch default is false
|
|
22258
23361
|
:param environment: The environment variables to pass to a container. Cannot start with ``AWS_BATCH``. We don't recommend using plaintext environment variables for sensitive information, such as credential data. Default: - no environment variables
|
|
22259
23362
|
:param execution_role: The role used by Amazon ECS container and AWS Fargate agents to make AWS API calls on your behalf. Default: - a Role will be created
|
|
22260
23363
|
:param job_role: The role that the container can assume. Default: - no job role
|
|
@@ -22277,6 +23380,7 @@ class EcsEc2ContainerDefinition(
|
|
|
22277
23380
|
image=image,
|
|
22278
23381
|
memory=memory,
|
|
22279
23382
|
command=command,
|
|
23383
|
+
enable_execute_command=enable_execute_command,
|
|
22280
23384
|
environment=environment,
|
|
22281
23385
|
execution_role=execution_role,
|
|
22282
23386
|
job_role=job_role,
|
|
@@ -22319,6 +23423,12 @@ class EcsEc2ContainerDefinition(
|
|
|
22319
23423
|
check_type(argname="argument volume", value=volume, expected_type=type_hints["volume"])
|
|
22320
23424
|
return typing.cast(None, jsii.invoke(self, "addVolume", [volume]))
|
|
22321
23425
|
|
|
23426
|
+
@jsii.python.classproperty
|
|
23427
|
+
@jsii.member(jsii_name="PROPERTY_INJECTION_ID")
|
|
23428
|
+
def PROPERTY_INJECTION_ID(cls) -> builtins.str:
|
|
23429
|
+
'''Uniquely identifies this class.'''
|
|
23430
|
+
return typing.cast(builtins.str, jsii.sget(cls, "PROPERTY_INJECTION_ID"))
|
|
23431
|
+
|
|
22322
23432
|
@builtins.property
|
|
22323
23433
|
@jsii.member(jsii_name="cpu")
|
|
22324
23434
|
def cpu(self) -> jsii.Number:
|
|
@@ -22372,6 +23482,12 @@ class EcsEc2ContainerDefinition(
|
|
|
22372
23482
|
'''The command that's passed to the container.'''
|
|
22373
23483
|
return typing.cast(typing.Optional[typing.List[builtins.str]], jsii.get(self, "command"))
|
|
22374
23484
|
|
|
23485
|
+
@builtins.property
|
|
23486
|
+
@jsii.member(jsii_name="enableExecuteCommand")
|
|
23487
|
+
def enable_execute_command(self) -> typing.Optional[builtins.bool]:
|
|
23488
|
+
'''Whether to enable ecs exec for this container.'''
|
|
23489
|
+
return typing.cast(typing.Optional[builtins.bool], jsii.get(self, "enableExecuteCommand"))
|
|
23490
|
+
|
|
22375
23491
|
@builtins.property
|
|
22376
23492
|
@jsii.member(jsii_name="environment")
|
|
22377
23493
|
def environment(
|
|
@@ -22479,6 +23595,7 @@ class EcsFargateContainerDefinition(
|
|
|
22479
23595
|
image: _ContainerImage_94af1b43,
|
|
22480
23596
|
memory: _Size_7b441c34,
|
|
22481
23597
|
command: typing.Optional[typing.Sequence[builtins.str]] = None,
|
|
23598
|
+
enable_execute_command: typing.Optional[builtins.bool] = None,
|
|
22482
23599
|
environment: typing.Optional[typing.Mapping[builtins.str, builtins.str]] = None,
|
|
22483
23600
|
execution_role: typing.Optional[_IRole_235f5d8e] = None,
|
|
22484
23601
|
job_role: typing.Optional[_IRole_235f5d8e] = None,
|
|
@@ -22501,6 +23618,7 @@ class EcsFargateContainerDefinition(
|
|
|
22501
23618
|
:param image: The image that this container will run.
|
|
22502
23619
|
:param memory: The memory hard limit present to the container. If your container attempts to exceed the memory specified, the container is terminated. You must specify at least 4 MiB of memory for a job.
|
|
22503
23620
|
:param command: The command that's passed to the container. Default: - no command
|
|
23621
|
+
:param enable_execute_command: Determines whether execute command functionality is turned on for this task. If true, execute command functionality is turned on all the containers in the task. This allows you to use ECS Exec to access containers interactively. When enabled, a job role with required SSM permissions will be created automatically if no job role is provided. If a job role is alreadyprovided, the required permissions will be added to it. Default: undefined - AWS Batch default is false
|
|
22504
23622
|
:param environment: The environment variables to pass to a container. Cannot start with ``AWS_BATCH``. We don't recommend using plaintext environment variables for sensitive information, such as credential data. Default: - no environment variables
|
|
22505
23623
|
:param execution_role: The role used by Amazon ECS container and AWS Fargate agents to make AWS API calls on your behalf. Default: - a Role will be created
|
|
22506
23624
|
:param job_role: The role that the container can assume. Default: - no job role
|
|
@@ -22525,6 +23643,7 @@ class EcsFargateContainerDefinition(
|
|
|
22525
23643
|
image=image,
|
|
22526
23644
|
memory=memory,
|
|
22527
23645
|
command=command,
|
|
23646
|
+
enable_execute_command=enable_execute_command,
|
|
22528
23647
|
environment=environment,
|
|
22529
23648
|
execution_role=execution_role,
|
|
22530
23649
|
job_role=job_role,
|
|
@@ -22549,6 +23668,12 @@ class EcsFargateContainerDefinition(
|
|
|
22549
23668
|
check_type(argname="argument volume", value=volume, expected_type=type_hints["volume"])
|
|
22550
23669
|
return typing.cast(None, jsii.invoke(self, "addVolume", [volume]))
|
|
22551
23670
|
|
|
23671
|
+
@jsii.python.classproperty
|
|
23672
|
+
@jsii.member(jsii_name="PROPERTY_INJECTION_ID")
|
|
23673
|
+
def PROPERTY_INJECTION_ID(cls) -> builtins.str:
|
|
23674
|
+
'''Uniquely identifies this class.'''
|
|
23675
|
+
return typing.cast(builtins.str, jsii.sget(cls, "PROPERTY_INJECTION_ID"))
|
|
23676
|
+
|
|
22552
23677
|
@builtins.property
|
|
22553
23678
|
@jsii.member(jsii_name="cpu")
|
|
22554
23679
|
def cpu(self) -> jsii.Number:
|
|
@@ -22606,6 +23731,12 @@ class EcsFargateContainerDefinition(
|
|
|
22606
23731
|
'''The command that's passed to the container.'''
|
|
22607
23732
|
return typing.cast(typing.Optional[typing.List[builtins.str]], jsii.get(self, "command"))
|
|
22608
23733
|
|
|
23734
|
+
@builtins.property
|
|
23735
|
+
@jsii.member(jsii_name="enableExecuteCommand")
|
|
23736
|
+
def enable_execute_command(self) -> typing.Optional[builtins.bool]:
|
|
23737
|
+
'''Whether to enable ecs exec for this container.'''
|
|
23738
|
+
return typing.cast(typing.Optional[builtins.bool], jsii.get(self, "enableExecuteCommand"))
|
|
23739
|
+
|
|
22609
23740
|
@builtins.property
|
|
22610
23741
|
@jsii.member(jsii_name="environment")
|
|
22611
23742
|
def environment(
|
|
@@ -22700,29 +23831,25 @@ class EcsJobDefinition(
|
|
|
22700
23831
|
|
|
22701
23832
|
Example::
|
|
22702
23833
|
|
|
22703
|
-
#
|
|
23834
|
+
# my_file_system: efs.IFileSystem
|
|
23835
|
+
# my_job_role: iam.Role
|
|
22704
23836
|
|
|
23837
|
+
my_file_system.grant_read(my_job_role)
|
|
22705
23838
|
|
|
22706
|
-
|
|
23839
|
+
job_defn = batch.EcsJobDefinition(self, "JobDefn",
|
|
22707
23840
|
container=batch.EcsEc2ContainerDefinition(self, "containerDefn",
|
|
22708
23841
|
image=ecs.ContainerImage.from_registry("public.ecr.aws/amazonlinux/amazonlinux:latest"),
|
|
22709
23842
|
memory=cdk.Size.mebibytes(2048),
|
|
22710
|
-
cpu=256
|
|
23843
|
+
cpu=256,
|
|
23844
|
+
volumes=[batch.EcsVolume.efs(
|
|
23845
|
+
name="myVolume",
|
|
23846
|
+
file_system=my_file_system,
|
|
23847
|
+
container_path="/Volumes/myVolume",
|
|
23848
|
+
use_job_role=True
|
|
23849
|
+
)],
|
|
23850
|
+
job_role=my_job_role
|
|
22711
23851
|
)
|
|
22712
23852
|
)
|
|
22713
|
-
|
|
22714
|
-
queue = batch.JobQueue(self, "JobQueue",
|
|
22715
|
-
compute_environments=[batch.OrderedComputeEnvironment(
|
|
22716
|
-
compute_environment=batch.ManagedEc2EcsComputeEnvironment(self, "managedEc2CE",
|
|
22717
|
-
vpc=vpc
|
|
22718
|
-
),
|
|
22719
|
-
order=1
|
|
22720
|
-
)],
|
|
22721
|
-
priority=10
|
|
22722
|
-
)
|
|
22723
|
-
|
|
22724
|
-
user = iam.User(self, "MyUser")
|
|
22725
|
-
ecs_job.grant_submit_job(user, queue)
|
|
22726
23853
|
'''
|
|
22727
23854
|
|
|
22728
23855
|
def __init__(
|
|
@@ -22817,6 +23944,12 @@ class EcsJobDefinition(
|
|
|
22817
23944
|
check_type(argname="argument queue", value=queue, expected_type=type_hints["queue"])
|
|
22818
23945
|
return typing.cast(None, jsii.invoke(self, "grantSubmitJob", [identity, queue]))
|
|
22819
23946
|
|
|
23947
|
+
@jsii.python.classproperty
|
|
23948
|
+
@jsii.member(jsii_name="PROPERTY_INJECTION_ID")
|
|
23949
|
+
def PROPERTY_INJECTION_ID(cls) -> builtins.str:
|
|
23950
|
+
'''Uniquely identifies this class.'''
|
|
23951
|
+
return typing.cast(builtins.str, jsii.sget(cls, "PROPERTY_INJECTION_ID"))
|
|
23952
|
+
|
|
22820
23953
|
@builtins.property
|
|
22821
23954
|
@jsii.member(jsii_name="container")
|
|
22822
23955
|
def container(self) -> IEcsContainerDefinition:
|
|
@@ -22926,29 +24059,25 @@ class EcsJobDefinitionProps(JobDefinitionProps):
|
|
|
22926
24059
|
|
|
22927
24060
|
Example::
|
|
22928
24061
|
|
|
22929
|
-
#
|
|
24062
|
+
# my_file_system: efs.IFileSystem
|
|
24063
|
+
# my_job_role: iam.Role
|
|
22930
24064
|
|
|
24065
|
+
my_file_system.grant_read(my_job_role)
|
|
22931
24066
|
|
|
22932
|
-
|
|
24067
|
+
job_defn = batch.EcsJobDefinition(self, "JobDefn",
|
|
22933
24068
|
container=batch.EcsEc2ContainerDefinition(self, "containerDefn",
|
|
22934
24069
|
image=ecs.ContainerImage.from_registry("public.ecr.aws/amazonlinux/amazonlinux:latest"),
|
|
22935
24070
|
memory=cdk.Size.mebibytes(2048),
|
|
22936
|
-
cpu=256
|
|
24071
|
+
cpu=256,
|
|
24072
|
+
volumes=[batch.EcsVolume.efs(
|
|
24073
|
+
name="myVolume",
|
|
24074
|
+
file_system=my_file_system,
|
|
24075
|
+
container_path="/Volumes/myVolume",
|
|
24076
|
+
use_job_role=True
|
|
24077
|
+
)],
|
|
24078
|
+
job_role=my_job_role
|
|
22937
24079
|
)
|
|
22938
24080
|
)
|
|
22939
|
-
|
|
22940
|
-
queue = batch.JobQueue(self, "JobQueue",
|
|
22941
|
-
compute_environments=[batch.OrderedComputeEnvironment(
|
|
22942
|
-
compute_environment=batch.ManagedEc2EcsComputeEnvironment(self, "managedEc2CE",
|
|
22943
|
-
vpc=vpc
|
|
22944
|
-
),
|
|
22945
|
-
order=1
|
|
22946
|
-
)],
|
|
22947
|
-
priority=10
|
|
22948
|
-
)
|
|
22949
|
-
|
|
22950
|
-
user = iam.User(self, "MyUser")
|
|
22951
|
-
ecs_job.grant_submit_job(user, queue)
|
|
22952
24081
|
'''
|
|
22953
24082
|
if __debug__:
|
|
22954
24083
|
type_hints = typing.get_type_hints(_typecheckingstub__b8c494afeabc17e9b4e022255720a4708371545e981a1d166b385628fe681d4b)
|
|
@@ -23183,6 +24312,12 @@ class EksContainerDefinition(
|
|
|
23183
24312
|
check_type(argname="argument volume", value=volume, expected_type=type_hints["volume"])
|
|
23184
24313
|
return typing.cast(None, jsii.invoke(self, "addVolume", [volume]))
|
|
23185
24314
|
|
|
24315
|
+
@jsii.python.classproperty
|
|
24316
|
+
@jsii.member(jsii_name="PROPERTY_INJECTION_ID")
|
|
24317
|
+
def PROPERTY_INJECTION_ID(cls) -> builtins.str:
|
|
24318
|
+
'''Uniquely identifies this class.'''
|
|
24319
|
+
return typing.cast(builtins.str, jsii.sget(cls, "PROPERTY_INJECTION_ID"))
|
|
24320
|
+
|
|
23186
24321
|
@builtins.property
|
|
23187
24322
|
@jsii.member(jsii_name="image")
|
|
23188
24323
|
def image(self) -> _ContainerImage_94af1b43:
|
|
@@ -24256,6 +25391,12 @@ class EksJobDefinition(
|
|
|
24256
25391
|
check_type(argname="argument strategy", value=strategy, expected_type=type_hints["strategy"])
|
|
24257
25392
|
return typing.cast(None, jsii.invoke(self, "addRetryStrategy", [strategy]))
|
|
24258
25393
|
|
|
25394
|
+
@jsii.python.classproperty
|
|
25395
|
+
@jsii.member(jsii_name="PROPERTY_INJECTION_ID")
|
|
25396
|
+
def PROPERTY_INJECTION_ID(cls) -> builtins.str:
|
|
25397
|
+
'''Uniquely identifies this class.'''
|
|
25398
|
+
return typing.cast(builtins.str, jsii.sget(cls, "PROPERTY_INJECTION_ID"))
|
|
25399
|
+
|
|
24259
25400
|
@builtins.property
|
|
24260
25401
|
@jsii.member(jsii_name="container")
|
|
24261
25402
|
def container(self) -> EksContainerDefinition:
|
|
@@ -24445,6 +25586,12 @@ class FairshareSchedulingPolicy(
|
|
|
24445
25586
|
|
|
24446
25587
|
return typing.cast(None, jsii.invoke(self, "addShare", [share]))
|
|
24447
25588
|
|
|
25589
|
+
@jsii.python.classproperty
|
|
25590
|
+
@jsii.member(jsii_name="PROPERTY_INJECTION_ID")
|
|
25591
|
+
def PROPERTY_INJECTION_ID(cls) -> builtins.str:
|
|
25592
|
+
'''Uniquely identifies this class.'''
|
|
25593
|
+
return typing.cast(builtins.str, jsii.sget(cls, "PROPERTY_INJECTION_ID"))
|
|
25594
|
+
|
|
24448
25595
|
@builtins.property
|
|
24449
25596
|
@jsii.member(jsii_name="schedulingPolicyArn")
|
|
24450
25597
|
def scheduling_policy_arn(self) -> builtins.str:
|
|
@@ -24606,6 +25753,12 @@ class FargateComputeEnvironment(
|
|
|
24606
25753
|
check_type(argname="argument fargate_compute_environment_arn", value=fargate_compute_environment_arn, expected_type=type_hints["fargate_compute_environment_arn"])
|
|
24607
25754
|
return typing.cast(IFargateComputeEnvironment, jsii.sinvoke(cls, "fromFargateComputeEnvironmentArn", [scope, id, fargate_compute_environment_arn]))
|
|
24608
25755
|
|
|
25756
|
+
@jsii.python.classproperty
|
|
25757
|
+
@jsii.member(jsii_name="PROPERTY_INJECTION_ID")
|
|
25758
|
+
def PROPERTY_INJECTION_ID(cls) -> builtins.str:
|
|
25759
|
+
'''Uniquely identifies this class.'''
|
|
25760
|
+
return typing.cast(builtins.str, jsii.sget(cls, "PROPERTY_INJECTION_ID"))
|
|
25761
|
+
|
|
24609
25762
|
@builtins.property
|
|
24610
25763
|
@jsii.member(jsii_name="computeEnvironmentArn")
|
|
24611
25764
|
def compute_environment_arn(self) -> builtins.str:
|
|
@@ -24749,8 +25902,11 @@ __all__ = [
|
|
|
24749
25902
|
"CfnJobQueueProps",
|
|
24750
25903
|
"CfnSchedulingPolicy",
|
|
24751
25904
|
"CfnSchedulingPolicyProps",
|
|
25905
|
+
"CfnServiceEnvironment",
|
|
25906
|
+
"CfnServiceEnvironmentProps",
|
|
24752
25907
|
"ComputeEnvironmentProps",
|
|
24753
25908
|
"CustomReason",
|
|
25909
|
+
"DefaultInstanceClass",
|
|
24754
25910
|
"Device",
|
|
24755
25911
|
"DevicePermission",
|
|
24756
25912
|
"DnsPolicy",
|
|
@@ -24980,6 +26136,7 @@ def _typecheckingstub__4b5bc20e5d24e0d359d6430d6ef9cdce99590872d896d3e0d65372a69
|
|
|
24980
26136
|
launch_template_id: typing.Optional[builtins.str] = None,
|
|
24981
26137
|
launch_template_name: typing.Optional[builtins.str] = None,
|
|
24982
26138
|
target_instance_types: typing.Optional[typing.Sequence[builtins.str]] = None,
|
|
26139
|
+
userdata_type: typing.Optional[builtins.str] = None,
|
|
24983
26140
|
version: typing.Optional[builtins.str] = None,
|
|
24984
26141
|
) -> None:
|
|
24985
26142
|
"""Type checking stubs"""
|
|
@@ -24990,6 +26147,7 @@ def _typecheckingstub__e2a48b24f0297afff0df36a352af2f9856ad8fac713d1ecbc2161d0b9
|
|
|
24990
26147
|
launch_template_id: typing.Optional[builtins.str] = None,
|
|
24991
26148
|
launch_template_name: typing.Optional[builtins.str] = None,
|
|
24992
26149
|
overrides: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union[CfnComputeEnvironment.LaunchTemplateSpecificationOverrideProperty, typing.Dict[builtins.str, typing.Any]]]]]] = None,
|
|
26150
|
+
userdata_type: typing.Optional[builtins.str] = None,
|
|
24993
26151
|
version: typing.Optional[builtins.str] = None,
|
|
24994
26152
|
) -> None:
|
|
24995
26153
|
"""Type checking stubs"""
|
|
@@ -25092,6 +26250,7 @@ def _typecheckingstub__37959c68856ab28ea1a57515db976bc2215806d52c75f6166834df6ae
|
|
|
25092
26250
|
parameters: typing.Any = None,
|
|
25093
26251
|
platform_capabilities: typing.Optional[typing.Sequence[builtins.str]] = None,
|
|
25094
26252
|
propagate_tags: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]] = None,
|
|
26253
|
+
resource_retention_policy: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnJobDefinition.ResourceRetentionPolicyProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
|
|
25095
26254
|
retry_strategy: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnJobDefinition.RetryStrategyProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
|
|
25096
26255
|
scheduling_priority: typing.Optional[jsii.Number] = None,
|
|
25097
26256
|
tags: typing.Any = None,
|
|
@@ -25100,6 +26259,22 @@ def _typecheckingstub__37959c68856ab28ea1a57515db976bc2215806d52c75f6166834df6ae
|
|
|
25100
26259
|
"""Type checking stubs"""
|
|
25101
26260
|
pass
|
|
25102
26261
|
|
|
26262
|
+
def _typecheckingstub__9eb64c713801d4b9b5ffb80a279b71c78cb6317fd0c771df22f2646f9d957f0d(
|
|
26263
|
+
scope: _constructs_77d1e7e8.Construct,
|
|
26264
|
+
id: builtins.str,
|
|
26265
|
+
arn: builtins.str,
|
|
26266
|
+
) -> None:
|
|
26267
|
+
"""Type checking stubs"""
|
|
26268
|
+
pass
|
|
26269
|
+
|
|
26270
|
+
def _typecheckingstub__825692ecdcf61885a93251433de856e5a5f6a3a7d68b8673883d418e98bd1956(
|
|
26271
|
+
scope: _constructs_77d1e7e8.Construct,
|
|
26272
|
+
id: builtins.str,
|
|
26273
|
+
job_definition_name: builtins.str,
|
|
26274
|
+
) -> None:
|
|
26275
|
+
"""Type checking stubs"""
|
|
26276
|
+
pass
|
|
26277
|
+
|
|
25103
26278
|
def _typecheckingstub__84b6af858f7642dbc10029a34c2ed90c61a840b3c9d8a639fbe0690b4aa593d9(
|
|
25104
26279
|
inspector: _TreeInspector_488e0dd5,
|
|
25105
26280
|
) -> None:
|
|
@@ -25172,6 +26347,12 @@ def _typecheckingstub__269e7fe24ddc93928c4ed8726528871fc789de7275942860c547acd76
|
|
|
25172
26347
|
"""Type checking stubs"""
|
|
25173
26348
|
pass
|
|
25174
26349
|
|
|
26350
|
+
def _typecheckingstub__24d6c12e4e40e86cb18eef4cad19675ced395908001d3f74f425b06ab99bb085(
|
|
26351
|
+
value: typing.Optional[typing.Union[_IResolvable_da3f097b, CfnJobDefinition.ResourceRetentionPolicyProperty]],
|
|
26352
|
+
) -> None:
|
|
26353
|
+
"""Type checking stubs"""
|
|
26354
|
+
pass
|
|
26355
|
+
|
|
25175
26356
|
def _typecheckingstub__2ac615dba37cd2b5a6e9d6f8cdd4b6beef51ff826d65fe0b5cdc31685de03def(
|
|
25176
26357
|
value: typing.Optional[typing.Union[_IResolvable_da3f097b, CfnJobDefinition.RetryStrategyProperty]],
|
|
25177
26358
|
) -> None:
|
|
@@ -25553,6 +26734,13 @@ def _typecheckingstub__7384d4b3b97f8aebbaa3dfe7ec74991276f6b53d6e1885662f675369f
|
|
|
25553
26734
|
"""Type checking stubs"""
|
|
25554
26735
|
pass
|
|
25555
26736
|
|
|
26737
|
+
def _typecheckingstub__96a556bd9c16087d87c49ecc18104d825d1cd7dc2f678a8e272fcb8ad46b87ff(
|
|
26738
|
+
*,
|
|
26739
|
+
skip_deregister_on_update: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]] = None,
|
|
26740
|
+
) -> None:
|
|
26741
|
+
"""Type checking stubs"""
|
|
26742
|
+
pass
|
|
26743
|
+
|
|
25556
26744
|
def _typecheckingstub__634ef7ff057388be2736fb45bfab10d038183951137f893e49e433ed83008f6a(
|
|
25557
26745
|
*,
|
|
25558
26746
|
limits: typing.Any = None,
|
|
@@ -25681,6 +26869,7 @@ def _typecheckingstub__ed150d027b29486332c3fd2205a51f3c6f64c25946114fb86a6eba384
|
|
|
25681
26869
|
parameters: typing.Any = None,
|
|
25682
26870
|
platform_capabilities: typing.Optional[typing.Sequence[builtins.str]] = None,
|
|
25683
26871
|
propagate_tags: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]] = None,
|
|
26872
|
+
resource_retention_policy: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnJobDefinition.ResourceRetentionPolicyProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
|
|
25684
26873
|
retry_strategy: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnJobDefinition.RetryStrategyProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
|
|
25685
26874
|
scheduling_priority: typing.Optional[jsii.Number] = None,
|
|
25686
26875
|
tags: typing.Any = None,
|
|
@@ -25693,11 +26882,13 @@ def _typecheckingstub__6480ab252bc515b2cdb6dc0c833877438fd473fd39eadf6b8a064969a
|
|
|
25693
26882
|
scope: _constructs_77d1e7e8.Construct,
|
|
25694
26883
|
id: builtins.str,
|
|
25695
26884
|
*,
|
|
25696
|
-
compute_environment_order: typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union[CfnJobQueue.ComputeEnvironmentOrderProperty, typing.Dict[builtins.str, typing.Any]]]]],
|
|
25697
26885
|
priority: jsii.Number,
|
|
26886
|
+
compute_environment_order: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union[CfnJobQueue.ComputeEnvironmentOrderProperty, typing.Dict[builtins.str, typing.Any]]]]]] = None,
|
|
25698
26887
|
job_queue_name: typing.Optional[builtins.str] = None,
|
|
26888
|
+
job_queue_type: typing.Optional[builtins.str] = None,
|
|
25699
26889
|
job_state_time_limit_actions: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union[CfnJobQueue.JobStateTimeLimitActionProperty, typing.Dict[builtins.str, typing.Any]]]]]] = None,
|
|
25700
26890
|
scheduling_policy_arn: typing.Optional[builtins.str] = None,
|
|
26891
|
+
service_environment_order: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union[CfnJobQueue.ServiceEnvironmentOrderProperty, typing.Dict[builtins.str, typing.Any]]]]]] = None,
|
|
25701
26892
|
state: typing.Optional[builtins.str] = None,
|
|
25702
26893
|
tags: typing.Optional[typing.Mapping[builtins.str, builtins.str]] = None,
|
|
25703
26894
|
) -> None:
|
|
@@ -25716,14 +26907,14 @@ def _typecheckingstub__ce1fe922d9589f26998c2113a8a19530d98bfc01fe2462a8639a35935
|
|
|
25716
26907
|
"""Type checking stubs"""
|
|
25717
26908
|
pass
|
|
25718
26909
|
|
|
25719
|
-
def
|
|
25720
|
-
value:
|
|
26910
|
+
def _typecheckingstub__620331f74c116d31a6d43627e1a45e7041bc3c110194265f30dc193863c8ed94(
|
|
26911
|
+
value: jsii.Number,
|
|
25721
26912
|
) -> None:
|
|
25722
26913
|
"""Type checking stubs"""
|
|
25723
26914
|
pass
|
|
25724
26915
|
|
|
25725
|
-
def
|
|
25726
|
-
value:
|
|
26916
|
+
def _typecheckingstub__aa1c2f3f42165309672c3fdf8c286ff9dc5e99756ec1a5b3ffca9e719d4c7036(
|
|
26917
|
+
value: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, CfnJobQueue.ComputeEnvironmentOrderProperty]]]],
|
|
25727
26918
|
) -> None:
|
|
25728
26919
|
"""Type checking stubs"""
|
|
25729
26920
|
pass
|
|
@@ -25734,6 +26925,12 @@ def _typecheckingstub__3b88e27e62b46f1049263a61bb14f62674a8121083de64c2db32d5856
|
|
|
25734
26925
|
"""Type checking stubs"""
|
|
25735
26926
|
pass
|
|
25736
26927
|
|
|
26928
|
+
def _typecheckingstub__cf7ba788adc96e65e278a0278721e322a7b2c5ad42c7d2cafd707c74e58d6e65(
|
|
26929
|
+
value: typing.Optional[builtins.str],
|
|
26930
|
+
) -> None:
|
|
26931
|
+
"""Type checking stubs"""
|
|
26932
|
+
pass
|
|
26933
|
+
|
|
25737
26934
|
def _typecheckingstub__6e248d0029fc3043fabb974edf0f06b8f9f721a8f13ce794fd6c39b5ae3bb91e(
|
|
25738
26935
|
value: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, CfnJobQueue.JobStateTimeLimitActionProperty]]]],
|
|
25739
26936
|
) -> None:
|
|
@@ -25746,6 +26943,12 @@ def _typecheckingstub__48a6952b4a8d4426554895a52085bf8c88701735f3f94a3426e81e56a
|
|
|
25746
26943
|
"""Type checking stubs"""
|
|
25747
26944
|
pass
|
|
25748
26945
|
|
|
26946
|
+
def _typecheckingstub__59b5173dac1cdbe1bbc03df51cc226f4cddcdbdc7dd27fbfc1081cce50fc2d50(
|
|
26947
|
+
value: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, CfnJobQueue.ServiceEnvironmentOrderProperty]]]],
|
|
26948
|
+
) -> None:
|
|
26949
|
+
"""Type checking stubs"""
|
|
26950
|
+
pass
|
|
26951
|
+
|
|
25749
26952
|
def _typecheckingstub__e97106b05367d04f8f618f0b8edf4f7fdc4b88436890062ac6e344ede4e180b0(
|
|
25750
26953
|
value: typing.Optional[builtins.str],
|
|
25751
26954
|
) -> None:
|
|
@@ -25776,13 +26979,23 @@ def _typecheckingstub__78ff35092216cfb2ffd2106f7da574c86c17494e3404a6f2ccdc020cc
|
|
|
25776
26979
|
"""Type checking stubs"""
|
|
25777
26980
|
pass
|
|
25778
26981
|
|
|
26982
|
+
def _typecheckingstub__04c4b071542df93d5d7f1e7493b1bd821aaeae2008c337f58b1d399f309446bf(
|
|
26983
|
+
*,
|
|
26984
|
+
order: jsii.Number,
|
|
26985
|
+
service_environment: builtins.str,
|
|
26986
|
+
) -> None:
|
|
26987
|
+
"""Type checking stubs"""
|
|
26988
|
+
pass
|
|
26989
|
+
|
|
25779
26990
|
def _typecheckingstub__009d6d384b1b723169e64875095e05fe852ae3931adf5ba2004d22475a76caa9(
|
|
25780
26991
|
*,
|
|
25781
|
-
compute_environment_order: typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union[CfnJobQueue.ComputeEnvironmentOrderProperty, typing.Dict[builtins.str, typing.Any]]]]],
|
|
25782
26992
|
priority: jsii.Number,
|
|
26993
|
+
compute_environment_order: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union[CfnJobQueue.ComputeEnvironmentOrderProperty, typing.Dict[builtins.str, typing.Any]]]]]] = None,
|
|
25783
26994
|
job_queue_name: typing.Optional[builtins.str] = None,
|
|
26995
|
+
job_queue_type: typing.Optional[builtins.str] = None,
|
|
25784
26996
|
job_state_time_limit_actions: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union[CfnJobQueue.JobStateTimeLimitActionProperty, typing.Dict[builtins.str, typing.Any]]]]]] = None,
|
|
25785
26997
|
scheduling_policy_arn: typing.Optional[builtins.str] = None,
|
|
26998
|
+
service_environment_order: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union[CfnJobQueue.ServiceEnvironmentOrderProperty, typing.Dict[builtins.str, typing.Any]]]]]] = None,
|
|
25786
26999
|
state: typing.Optional[builtins.str] = None,
|
|
25787
27000
|
tags: typing.Optional[typing.Mapping[builtins.str, builtins.str]] = None,
|
|
25788
27001
|
) -> None:
|
|
@@ -25856,6 +27069,80 @@ def _typecheckingstub__baa72ee437297b58169f0020ba3178c321d8f72981fcd34857611be31
|
|
|
25856
27069
|
"""Type checking stubs"""
|
|
25857
27070
|
pass
|
|
25858
27071
|
|
|
27072
|
+
def _typecheckingstub__a6f9de8dd6d91e1ef3541444262c3bd9eba874d47c3dbe2b368127e55802962d(
|
|
27073
|
+
scope: _constructs_77d1e7e8.Construct,
|
|
27074
|
+
id: builtins.str,
|
|
27075
|
+
*,
|
|
27076
|
+
capacity_limits: typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union[CfnServiceEnvironment.CapacityLimitProperty, typing.Dict[builtins.str, typing.Any]]]]],
|
|
27077
|
+
service_environment_type: builtins.str,
|
|
27078
|
+
service_environment_name: typing.Optional[builtins.str] = None,
|
|
27079
|
+
state: typing.Optional[builtins.str] = None,
|
|
27080
|
+
tags: typing.Optional[typing.Mapping[builtins.str, builtins.str]] = None,
|
|
27081
|
+
) -> None:
|
|
27082
|
+
"""Type checking stubs"""
|
|
27083
|
+
pass
|
|
27084
|
+
|
|
27085
|
+
def _typecheckingstub__96e0974d2660553889a9af3a927bfad81828948853f01018235f809576a4c6b9(
|
|
27086
|
+
inspector: _TreeInspector_488e0dd5,
|
|
27087
|
+
) -> None:
|
|
27088
|
+
"""Type checking stubs"""
|
|
27089
|
+
pass
|
|
27090
|
+
|
|
27091
|
+
def _typecheckingstub__e6991ed0f2dc20fa74e5cde5971e4b3997019046ee7c1e1fc7eca96b677bc91b(
|
|
27092
|
+
props: typing.Mapping[builtins.str, typing.Any],
|
|
27093
|
+
) -> None:
|
|
27094
|
+
"""Type checking stubs"""
|
|
27095
|
+
pass
|
|
27096
|
+
|
|
27097
|
+
def _typecheckingstub__d996fbedbaec7f1ef9fada43375af4381f0a867d50517c77d6662e6e7d7d26ae(
|
|
27098
|
+
value: typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, CfnServiceEnvironment.CapacityLimitProperty]]],
|
|
27099
|
+
) -> None:
|
|
27100
|
+
"""Type checking stubs"""
|
|
27101
|
+
pass
|
|
27102
|
+
|
|
27103
|
+
def _typecheckingstub__555f27a186fb86df6655903dee02e46968e9230d8927d6c74bb13420e35fb703(
|
|
27104
|
+
value: builtins.str,
|
|
27105
|
+
) -> None:
|
|
27106
|
+
"""Type checking stubs"""
|
|
27107
|
+
pass
|
|
27108
|
+
|
|
27109
|
+
def _typecheckingstub__2f9d1cde60619bebd040c4ca1b04e45af9a3d96ad1c7d934c1fe4f4c102b0fde(
|
|
27110
|
+
value: typing.Optional[builtins.str],
|
|
27111
|
+
) -> None:
|
|
27112
|
+
"""Type checking stubs"""
|
|
27113
|
+
pass
|
|
27114
|
+
|
|
27115
|
+
def _typecheckingstub__eb9c6d092d73d302c59d162da7ef41f680de210ef8b625b0d6804765c19c16cf(
|
|
27116
|
+
value: typing.Optional[builtins.str],
|
|
27117
|
+
) -> None:
|
|
27118
|
+
"""Type checking stubs"""
|
|
27119
|
+
pass
|
|
27120
|
+
|
|
27121
|
+
def _typecheckingstub__07a3aaaa5bb4d6dbce1c225211ed2ba7848e8258ea1ae35767262fbfb6c68d93(
|
|
27122
|
+
value: typing.Optional[typing.Mapping[builtins.str, builtins.str]],
|
|
27123
|
+
) -> None:
|
|
27124
|
+
"""Type checking stubs"""
|
|
27125
|
+
pass
|
|
27126
|
+
|
|
27127
|
+
def _typecheckingstub__8d4366eeddf34eff3fc133ef72e4bd900563fba6b925f9d9524d8c92ac2f3e4a(
|
|
27128
|
+
*,
|
|
27129
|
+
capacity_unit: typing.Optional[builtins.str] = None,
|
|
27130
|
+
max_capacity: typing.Optional[jsii.Number] = None,
|
|
27131
|
+
) -> None:
|
|
27132
|
+
"""Type checking stubs"""
|
|
27133
|
+
pass
|
|
27134
|
+
|
|
27135
|
+
def _typecheckingstub__dfdb5cc25e8550eb4e42278bd3377213122f3560aa9c8e788955ad66e1ecad9a(
|
|
27136
|
+
*,
|
|
27137
|
+
capacity_limits: typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union[CfnServiceEnvironment.CapacityLimitProperty, typing.Dict[builtins.str, typing.Any]]]]],
|
|
27138
|
+
service_environment_type: builtins.str,
|
|
27139
|
+
service_environment_name: typing.Optional[builtins.str] = None,
|
|
27140
|
+
state: typing.Optional[builtins.str] = None,
|
|
27141
|
+
tags: typing.Optional[typing.Mapping[builtins.str, builtins.str]] = None,
|
|
27142
|
+
) -> None:
|
|
27143
|
+
"""Type checking stubs"""
|
|
27144
|
+
pass
|
|
27145
|
+
|
|
25859
27146
|
def _typecheckingstub__ed356ed6d550d61b3cd35694bb99d63fcbc2d06693243747eaf82004f05f9958(
|
|
25860
27147
|
*,
|
|
25861
27148
|
compute_environment_name: typing.Optional[builtins.str] = None,
|
|
@@ -25889,6 +27176,7 @@ def _typecheckingstub__be0d7a8daca28c8e38e4e8dc8b20bc2ac1814af7b5292ed57768ad6bb
|
|
|
25889
27176
|
image: _ContainerImage_94af1b43,
|
|
25890
27177
|
memory: _Size_7b441c34,
|
|
25891
27178
|
command: typing.Optional[typing.Sequence[builtins.str]] = None,
|
|
27179
|
+
enable_execute_command: typing.Optional[builtins.bool] = None,
|
|
25892
27180
|
environment: typing.Optional[typing.Mapping[builtins.str, builtins.str]] = None,
|
|
25893
27181
|
execution_role: typing.Optional[_IRole_235f5d8e] = None,
|
|
25894
27182
|
job_role: typing.Optional[_IRole_235f5d8e] = None,
|
|
@@ -25908,6 +27196,7 @@ def _typecheckingstub__397c7ba6003633e0c17fd25493d817d40262ed9fcf2688d3147876a33
|
|
|
25908
27196
|
image: _ContainerImage_94af1b43,
|
|
25909
27197
|
memory: _Size_7b441c34,
|
|
25910
27198
|
command: typing.Optional[typing.Sequence[builtins.str]] = None,
|
|
27199
|
+
enable_execute_command: typing.Optional[builtins.bool] = None,
|
|
25911
27200
|
environment: typing.Optional[typing.Mapping[builtins.str, builtins.str]] = None,
|
|
25912
27201
|
execution_role: typing.Optional[_IRole_235f5d8e] = None,
|
|
25913
27202
|
job_role: typing.Optional[_IRole_235f5d8e] = None,
|
|
@@ -25930,6 +27219,7 @@ def _typecheckingstub__e5c078c2a3d8816b92a00e4027344466064444955323dc2ff127e9c01
|
|
|
25930
27219
|
image: _ContainerImage_94af1b43,
|
|
25931
27220
|
memory: _Size_7b441c34,
|
|
25932
27221
|
command: typing.Optional[typing.Sequence[builtins.str]] = None,
|
|
27222
|
+
enable_execute_command: typing.Optional[builtins.bool] = None,
|
|
25933
27223
|
environment: typing.Optional[typing.Mapping[builtins.str, builtins.str]] = None,
|
|
25934
27224
|
execution_role: typing.Optional[_IRole_235f5d8e] = None,
|
|
25935
27225
|
job_role: typing.Optional[_IRole_235f5d8e] = None,
|
|
@@ -26243,13 +27533,14 @@ def _typecheckingstub__f512f54787789f74db02e15bede1080e7c35d142bce05240edb789cee
|
|
|
26243
27533
|
id: builtins.str,
|
|
26244
27534
|
*,
|
|
26245
27535
|
allocation_strategy: typing.Optional[AllocationStrategy] = None,
|
|
27536
|
+
default_instance_classes: typing.Optional[typing.Sequence[DefaultInstanceClass]] = None,
|
|
26246
27537
|
images: typing.Optional[typing.Sequence[typing.Union[EcsMachineImage, typing.Dict[builtins.str, typing.Any]]]] = None,
|
|
26247
27538
|
instance_classes: typing.Optional[typing.Sequence[_InstanceClass_85a592e7]] = None,
|
|
26248
27539
|
instance_role: typing.Optional[_IRole_235f5d8e] = None,
|
|
26249
27540
|
instance_types: typing.Optional[typing.Sequence[_InstanceType_f64915b9]] = None,
|
|
26250
27541
|
launch_template: typing.Optional[_ILaunchTemplate_f32c0fd7] = None,
|
|
26251
27542
|
minv_cpus: typing.Optional[jsii.Number] = None,
|
|
26252
|
-
placement_group: typing.Optional[
|
|
27543
|
+
placement_group: typing.Optional[_IPlacementGroupRef_5d6e601f] = None,
|
|
26253
27544
|
spot_bid_percentage: typing.Optional[jsii.Number] = None,
|
|
26254
27545
|
spot_fleet_role: typing.Optional[_IRole_235f5d8e] = None,
|
|
26255
27546
|
use_optimal_instance_classes: typing.Optional[builtins.bool] = None,
|
|
@@ -26304,13 +27595,14 @@ def _typecheckingstub__8eb858d67ed25e3f273cc247ebf45f3c3f60ddc697df4791d3298b29a
|
|
|
26304
27595
|
update_to_latest_image_version: typing.Optional[builtins.bool] = None,
|
|
26305
27596
|
vpc_subnets: typing.Optional[typing.Union[_SubnetSelection_e57d76df, typing.Dict[builtins.str, typing.Any]]] = None,
|
|
26306
27597
|
allocation_strategy: typing.Optional[AllocationStrategy] = None,
|
|
27598
|
+
default_instance_classes: typing.Optional[typing.Sequence[DefaultInstanceClass]] = None,
|
|
26307
27599
|
images: typing.Optional[typing.Sequence[typing.Union[EcsMachineImage, typing.Dict[builtins.str, typing.Any]]]] = None,
|
|
26308
27600
|
instance_classes: typing.Optional[typing.Sequence[_InstanceClass_85a592e7]] = None,
|
|
26309
27601
|
instance_role: typing.Optional[_IRole_235f5d8e] = None,
|
|
26310
27602
|
instance_types: typing.Optional[typing.Sequence[_InstanceType_f64915b9]] = None,
|
|
26311
27603
|
launch_template: typing.Optional[_ILaunchTemplate_f32c0fd7] = None,
|
|
26312
27604
|
minv_cpus: typing.Optional[jsii.Number] = None,
|
|
26313
|
-
placement_group: typing.Optional[
|
|
27605
|
+
placement_group: typing.Optional[_IPlacementGroupRef_5d6e601f] = None,
|
|
26314
27606
|
spot_bid_percentage: typing.Optional[jsii.Number] = None,
|
|
26315
27607
|
spot_fleet_role: typing.Optional[_IRole_235f5d8e] = None,
|
|
26316
27608
|
use_optimal_instance_classes: typing.Optional[builtins.bool] = None,
|
|
@@ -26325,13 +27617,14 @@ def _typecheckingstub__9d1d04f77f1ffdbbe37085b164b175a3e5f0615a7fcde154dcc7f2b64
|
|
|
26325
27617
|
eks_cluster: _ICluster_6b2b80df,
|
|
26326
27618
|
kubernetes_namespace: builtins.str,
|
|
26327
27619
|
allocation_strategy: typing.Optional[AllocationStrategy] = None,
|
|
27620
|
+
default_instance_classes: typing.Optional[typing.Sequence[DefaultInstanceClass]] = None,
|
|
26328
27621
|
images: typing.Optional[typing.Sequence[typing.Union[EksMachineImage, typing.Dict[builtins.str, typing.Any]]]] = None,
|
|
26329
27622
|
instance_classes: typing.Optional[typing.Sequence[_InstanceClass_85a592e7]] = None,
|
|
26330
27623
|
instance_role: typing.Optional[_IRole_235f5d8e] = None,
|
|
26331
27624
|
instance_types: typing.Optional[typing.Sequence[_InstanceType_f64915b9]] = None,
|
|
26332
27625
|
launch_template: typing.Optional[_ILaunchTemplate_f32c0fd7] = None,
|
|
26333
27626
|
minv_cpus: typing.Optional[jsii.Number] = None,
|
|
26334
|
-
placement_group: typing.Optional[
|
|
27627
|
+
placement_group: typing.Optional[_IPlacementGroupRef_5d6e601f] = None,
|
|
26335
27628
|
spot_bid_percentage: typing.Optional[jsii.Number] = None,
|
|
26336
27629
|
use_optimal_instance_classes: typing.Optional[builtins.bool] = None,
|
|
26337
27630
|
vpc: _IVpc_f30d5663,
|
|
@@ -26379,13 +27672,14 @@ def _typecheckingstub__0a94139ce5fac0f77a3f41888dd3906c6a6876b7e2df289a2bb742a8c
|
|
|
26379
27672
|
eks_cluster: _ICluster_6b2b80df,
|
|
26380
27673
|
kubernetes_namespace: builtins.str,
|
|
26381
27674
|
allocation_strategy: typing.Optional[AllocationStrategy] = None,
|
|
27675
|
+
default_instance_classes: typing.Optional[typing.Sequence[DefaultInstanceClass]] = None,
|
|
26382
27676
|
images: typing.Optional[typing.Sequence[typing.Union[EksMachineImage, typing.Dict[builtins.str, typing.Any]]]] = None,
|
|
26383
27677
|
instance_classes: typing.Optional[typing.Sequence[_InstanceClass_85a592e7]] = None,
|
|
26384
27678
|
instance_role: typing.Optional[_IRole_235f5d8e] = None,
|
|
26385
27679
|
instance_types: typing.Optional[typing.Sequence[_InstanceType_f64915b9]] = None,
|
|
26386
27680
|
launch_template: typing.Optional[_ILaunchTemplate_f32c0fd7] = None,
|
|
26387
27681
|
minv_cpus: typing.Optional[jsii.Number] = None,
|
|
26388
|
-
placement_group: typing.Optional[
|
|
27682
|
+
placement_group: typing.Optional[_IPlacementGroupRef_5d6e601f] = None,
|
|
26389
27683
|
spot_bid_percentage: typing.Optional[jsii.Number] = None,
|
|
26390
27684
|
use_optimal_instance_classes: typing.Optional[builtins.bool] = None,
|
|
26391
27685
|
) -> None:
|
|
@@ -26590,6 +27884,7 @@ def _typecheckingstub__e10b04cbfabc7b4f22d3019c7492dc27b542667400ab4e258b28839c7
|
|
|
26590
27884
|
image: _ContainerImage_94af1b43,
|
|
26591
27885
|
memory: _Size_7b441c34,
|
|
26592
27886
|
command: typing.Optional[typing.Sequence[builtins.str]] = None,
|
|
27887
|
+
enable_execute_command: typing.Optional[builtins.bool] = None,
|
|
26593
27888
|
environment: typing.Optional[typing.Mapping[builtins.str, builtins.str]] = None,
|
|
26594
27889
|
execution_role: typing.Optional[_IRole_235f5d8e] = None,
|
|
26595
27890
|
job_role: typing.Optional[_IRole_235f5d8e] = None,
|
|
@@ -26622,6 +27917,7 @@ def _typecheckingstub__b55710648e6c85d4781b971c282911ebf6e5f4b765f9f77bb61c7cb35
|
|
|
26622
27917
|
image: _ContainerImage_94af1b43,
|
|
26623
27918
|
memory: _Size_7b441c34,
|
|
26624
27919
|
command: typing.Optional[typing.Sequence[builtins.str]] = None,
|
|
27920
|
+
enable_execute_command: typing.Optional[builtins.bool] = None,
|
|
26625
27921
|
environment: typing.Optional[typing.Mapping[builtins.str, builtins.str]] = None,
|
|
26626
27922
|
execution_role: typing.Optional[_IRole_235f5d8e] = None,
|
|
26627
27923
|
job_role: typing.Optional[_IRole_235f5d8e] = None,
|
|
@@ -26837,3 +28133,6 @@ def _typecheckingstub__336ca5bcbe380ed2e934b92392f8548b45a77fa6056f7dbbf4741722d
|
|
|
26837
28133
|
) -> None:
|
|
26838
28134
|
"""Type checking stubs"""
|
|
26839
28135
|
pass
|
|
28136
|
+
|
|
28137
|
+
for cls in [IComputeEnvironment, IEcsContainerDefinition, IEcsEc2ContainerDefinition, IEcsFargateContainerDefinition, IEksContainerDefinition, IEksJobDefinition, IFairshareSchedulingPolicy, IFargateComputeEnvironment, IJobDefinition, IJobQueue, IManagedComputeEnvironment, IManagedEc2EcsComputeEnvironment, ISchedulingPolicy, IUnmanagedComputeEnvironment]:
|
|
28138
|
+
typing.cast(typing.Any, cls).__protocol_attrs__ = typing.cast(typing.Any, cls).__protocol_attrs__ - set(['__jsii_proxy_class__', '__jsii_type__'])
|