aws-cdk-lib 2.200.2__py3-none-any.whl → 2.224.0__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Potentially problematic release.
This version of aws-cdk-lib might be problematic. Click here for more details.
- aws_cdk/__init__.py +1349 -373
- aws_cdk/_jsii/__init__.py +1 -1
- aws_cdk/_jsii/{aws-cdk-lib@2.200.2.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 +1017 -155
- aws_cdk/aws_apigatewayv2/__init__.py +2796 -379
- aws_cdk/aws_apigatewayv2_integrations/__init__.py +94 -16
- aws_cdk/aws_appconfig/__init__.py +298 -43
- aws_cdk/aws_appflow/__init__.py +151 -6
- aws_cdk/aws_appintegrations/__init__.py +546 -6
- aws_cdk/aws_applicationautoscaling/__init__.py +29 -6
- aws_cdk/aws_applicationinsights/__init__.py +13 -2
- aws_cdk/aws_applicationsignals/__init__.py +374 -6
- aws_cdk/aws_appmesh/__init__.py +94 -26
- aws_cdk/aws_apprunner/__init__.py +66 -18
- aws_cdk/aws_appstream/__init__.py +309 -55
- aws_cdk/aws_appsync/__init__.py +227 -53
- aws_cdk/aws_apptest/__init__.py +71 -2
- aws_cdk/aws_aps/__init__.py +1875 -132
- 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 +135 -55
- 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 +317 -28
- aws_cdk/aws_backupgateway/__init__.py +13 -2
- aws_cdk/aws_batch/__init__.py +1405 -178
- aws_cdk/aws_bcmdataexports/__init__.py +21 -2
- aws_cdk/aws_bedrock/__init__.py +6747 -627
- aws_cdk/aws_bedrockagentcore/__init__.py +10425 -0
- aws_cdk/aws_billingconductor/__init__.py +197 -11
- aws_cdk/aws_budgets/__init__.py +42 -4
- aws_cdk/aws_cassandra/__init__.py +247 -6
- aws_cdk/aws_ce/__init__.py +35 -6
- aws_cdk/aws_certificatemanager/__init__.py +237 -32
- aws_cdk/aws_chatbot/__init__.py +70 -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 +345 -166
- aws_cdk/aws_cloudfront/__init__.py +2101 -680
- aws_cdk/aws_cloudfront/experimental/__init__.py +108 -16
- aws_cdk/aws_cloudfront_origins/__init__.py +614 -73
- aws_cdk/aws_cloudtrail/__init__.py +301 -17
- aws_cdk/aws_cloudwatch/__init__.py +1414 -153
- aws_cdk/aws_codeartifact/__init__.py +35 -6
- aws_cdk/aws_codebuild/__init__.py +1103 -118
- aws_cdk/aws_codecommit/__init__.py +23 -9
- aws_cdk/aws_codeconnections/__init__.py +13 -2
- aws_cdk/aws_codedeploy/__init__.py +67 -6
- aws_cdk/aws_codeguruprofiler/__init__.py +74 -2
- aws_cdk/aws_codegurureviewer/__init__.py +13 -2
- aws_cdk/aws_codepipeline/__init__.py +127 -64
- aws_cdk/aws_codepipeline_actions/__init__.py +749 -0
- aws_cdk/aws_codestar/__init__.py +13 -2
- aws_cdk/aws_codestarconnections/__init__.py +35 -6
- aws_cdk/aws_codestarnotifications/__init__.py +16 -2
- aws_cdk/aws_cognito/__init__.py +814 -80
- aws_cdk/aws_cognito_identitypool/__init__.py +17 -12
- aws_cdk/aws_comprehend/__init__.py +24 -4
- aws_cdk/aws_config/__init__.py +191 -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 +723 -203
- aws_cdk/aws_datazone/__init__.py +4425 -608
- aws_cdk/aws_dax/__init__.py +83 -6
- aws_cdk/aws_deadline/__init__.py +321 -32
- 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 +323 -46
- aws_cdk/aws_docdbelastic/__init__.py +13 -2
- aws_cdk/aws_dsql/__init__.py +340 -12
- aws_cdk/aws_dynamodb/__init__.py +1463 -166
- aws_cdk/aws_ec2/__init__.py +9636 -1120
- aws_cdk/aws_ecr/__init__.py +631 -43
- aws_cdk/aws_ecr_assets/__init__.py +4 -0
- aws_cdk/aws_ecs/__init__.py +6524 -497
- aws_cdk/aws_ecs_patterns/__init__.py +2 -0
- aws_cdk/aws_efs/__init__.py +264 -24
- aws_cdk/aws_eks/__init__.py +1050 -218
- aws_cdk/aws_elasticache/__init__.py +373 -20
- aws_cdk/aws_elasticbeanstalk/__init__.py +75 -8
- aws_cdk/aws_elasticloadbalancing/__init__.py +16 -2
- aws_cdk/aws_elasticloadbalancingv2/__init__.py +1670 -106
- aws_cdk/aws_elasticsearch/__init__.py +282 -9
- aws_cdk/aws_emr/__init__.py +187 -20
- 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 +969 -124
- aws_cdk/aws_events_targets/__init__.py +310 -54
- 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 +1236 -142
- aws_cdk/aws_gamelift/__init__.py +653 -78
- aws_cdk/aws_gameliftstreams/__init__.py +38 -16
- aws_cdk/aws_globalaccelerator/__init__.py +55 -14
- aws_cdk/aws_glue/__init__.py +1368 -320
- 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 +480 -140
- aws_cdk/aws_identitystore/__init__.py +24 -4
- aws_cdk/aws_imagebuilder/__init__.py +1433 -183
- aws_cdk/aws_inspector/__init__.py +38 -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 +1730 -86
- 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 +622 -22
- aws_cdk/aws_kinesisanalytics/__init__.py +467 -94
- aws_cdk/aws_kinesisanalyticsv2/__init__.py +201 -11
- aws_cdk/aws_kinesisfirehose/__init__.py +3077 -295
- aws_cdk/aws_kinesisvideo/__init__.py +24 -4
- aws_cdk/aws_kms/__init__.py +188 -41
- aws_cdk/aws_lakeformation/__init__.py +80 -15
- aws_cdk/aws_lambda/__init__.py +2101 -252
- 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 +871 -8
- aws_cdk/aws_licensemanager/__init__.py +24 -4
- aws_cdk/aws_lightsail/__init__.py +2159 -975
- aws_cdk/aws_location/__init__.py +618 -14
- aws_cdk/aws_logs/__init__.py +5904 -956
- 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 +1239 -35
- aws_cdk/aws_mediapackage/__init__.py +59 -12
- aws_cdk/aws_mediapackagev2/__init__.py +1607 -225
- 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 +104 -18
- 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 +1289 -273
- aws_cdk/aws_networkmanager/__init__.py +349 -33
- aws_cdk/aws_nimblestudio/__init__.py +75 -8
- 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 +2495 -529
- aws_cdk/aws_opensearchserverless/__init__.py +312 -37
- aws_cdk/aws_opensearchservice/__init__.py +495 -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 +151 -6
- 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 +387 -68
- 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 +3345 -512
- aws_cdk/aws_redshift/__init__.py +143 -20
- aws_cdk/aws_redshiftserverless/__init__.py +692 -4
- 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 +180 -6
- aws_cdk/aws_route53/__init__.py +3273 -1442
- 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 +226 -36
- aws_cdk/aws_rtbfabric/__init__.py +3498 -0
- aws_cdk/aws_rum/__init__.py +13 -2
- aws_cdk/aws_s3/__init__.py +1291 -158
- aws_cdk/aws_s3_assets/__init__.py +11 -11
- aws_cdk/aws_s3_deployment/__init__.py +147 -11
- aws_cdk/aws_s3_notifications/__init__.py +7 -7
- aws_cdk/aws_s3express/__init__.py +266 -8
- 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 +6617 -363
- aws_cdk/aws_sam/__init__.py +79 -14
- aws_cdk/aws_scheduler/__init__.py +237 -4
- aws_cdk/aws_sdb/__init__.py +12 -2
- aws_cdk/aws_secretsmanager/__init__.py +170 -14
- aws_cdk/aws_securityhub/__init__.py +3121 -176
- aws_cdk/aws_securitylake/__init__.py +46 -8
- aws_cdk/aws_servicecatalog/__init__.py +405 -246
- aws_cdk/aws_servicecatalogappregistry/__init__.py +164 -8
- aws_cdk/aws_servicediscovery/__init__.py +140 -47
- aws_cdk/aws_ses/__init__.py +1231 -140
- aws_cdk/aws_shield/__init__.py +46 -8
- aws_cdk/aws_signer/__init__.py +27 -4
- aws_cdk/aws_simspaceweaver/__init__.py +42 -2
- aws_cdk/aws_smsvoice/__init__.py +4716 -0
- aws_cdk/aws_sns/__init__.py +245 -29
- aws_cdk/aws_sns_subscriptions/__init__.py +3 -1
- aws_cdk/aws_sqs/__init__.py +211 -14
- aws_cdk/aws_ssm/__init__.py +401 -58
- aws_cdk/aws_ssmcontacts/__init__.py +46 -8
- aws_cdk/aws_ssmguiconnect/__init__.py +13 -2
- aws_cdk/aws_ssmincidents/__init__.py +24 -4
- aws_cdk/aws_ssmquicksetup/__init__.py +383 -6
- aws_cdk/aws_sso/__init__.py +70 -12
- aws_cdk/aws_stepfunctions/__init__.py +615 -70
- aws_cdk/aws_stepfunctions_tasks/__init__.py +781 -144
- aws_cdk/aws_supportapp/__init__.py +39 -6
- aws_cdk/aws_synthetics/__init__.py +861 -75
- 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 +145 -17
- aws_cdk/aws_voiceid/__init__.py +41 -2
- aws_cdk/aws_vpclattice/__init__.py +376 -30
- aws_cdk/aws_waf/__init__.py +79 -14
- aws_cdk/aws_wafregional/__init__.py +123 -22
- aws_cdk/aws_wafv2/__init__.py +1179 -60
- aws_cdk/aws_wisdom/__init__.py +1401 -90
- aws_cdk/aws_workspaces/__init__.py +93 -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 +231 -6
- aws_cdk/custom_resources/__init__.py +40 -12
- aws_cdk/cx_api/__init__.py +85 -14
- 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/pipelines/__init__.py +192 -42
- aws_cdk/region_info/__init__.py +3 -0
- aws_cdk/triggers/__init__.py +60 -18
- {aws_cdk_lib-2.200.2.dist-info → aws_cdk_lib-2.224.0.dist-info}/METADATA +338 -16
- aws_cdk_lib-2.224.0.dist-info/RECORD +584 -0
- aws_cdk_lib-2.200.2.dist-info/RECORD +0 -304
- {aws_cdk_lib-2.200.2.dist-info → aws_cdk_lib-2.224.0.dist-info}/LICENSE +0 -0
- {aws_cdk_lib-2.200.2.dist-info → aws_cdk_lib-2.224.0.dist-info}/NOTICE +0 -0
- {aws_cdk_lib-2.200.2.dist-info → aws_cdk_lib-2.224.0.dist-info}/WHEEL +0 -0
- {aws_cdk_lib-2.200.2.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
|
|
|
@@ -11518,36 +11995,455 @@ class CfnSchedulingPolicyProps:
|
|
|
11518
11995
|
self._values["tags"] = tags
|
|
11519
11996
|
|
|
11520
11997
|
@builtins.property
|
|
11521
|
-
def fairshare_policy(
|
|
11522
|
-
self,
|
|
11523
|
-
) -> typing.Optional[typing.Union[_IResolvable_da3f097b, CfnSchedulingPolicy.FairsharePolicyProperty]]:
|
|
11524
|
-
'''The fair-share scheduling policy details.
|
|
11998
|
+
def fairshare_policy(
|
|
11999
|
+
self,
|
|
12000
|
+
) -> typing.Optional[typing.Union[_IResolvable_da3f097b, CfnSchedulingPolicy.FairsharePolicyProperty]]:
|
|
12001
|
+
'''The fair-share scheduling policy details.
|
|
12002
|
+
|
|
12003
|
+
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-batch-schedulingpolicy.html#cfn-batch-schedulingpolicy-fairsharepolicy
|
|
12004
|
+
'''
|
|
12005
|
+
result = self._values.get("fairshare_policy")
|
|
12006
|
+
return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, CfnSchedulingPolicy.FairsharePolicyProperty]], result)
|
|
12007
|
+
|
|
12008
|
+
@builtins.property
|
|
12009
|
+
def name(self) -> typing.Optional[builtins.str]:
|
|
12010
|
+
'''The name of the fair-share scheduling policy.
|
|
12011
|
+
|
|
12012
|
+
It can be up to 128 letters long. It can contain uppercase and lowercase letters, numbers, hyphens (-), and underscores (_).
|
|
12013
|
+
|
|
12014
|
+
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-batch-schedulingpolicy.html#cfn-batch-schedulingpolicy-name
|
|
12015
|
+
'''
|
|
12016
|
+
result = self._values.get("name")
|
|
12017
|
+
return typing.cast(typing.Optional[builtins.str], result)
|
|
12018
|
+
|
|
12019
|
+
@builtins.property
|
|
12020
|
+
def tags(self) -> typing.Optional[typing.Mapping[builtins.str, builtins.str]]:
|
|
12021
|
+
'''The tags that you apply to the scheduling policy to help you categorize and organize your resources.
|
|
12022
|
+
|
|
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* .
|
|
12024
|
+
|
|
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.
|
|
11525
12411
|
|
|
11526
|
-
|
|
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
|
|
11527
12415
|
'''
|
|
11528
|
-
result = self._values.get("
|
|
11529
|
-
|
|
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)
|
|
11530
12419
|
|
|
11531
12420
|
@builtins.property
|
|
11532
|
-
def
|
|
11533
|
-
'''The name of the
|
|
12421
|
+
def service_environment_name(self) -> typing.Optional[builtins.str]:
|
|
12422
|
+
'''The name of the service environment.
|
|
11534
12423
|
|
|
11535
|
-
|
|
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)
|
|
11536
12428
|
|
|
11537
|
-
|
|
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
|
|
11538
12436
|
'''
|
|
11539
|
-
result = self._values.get("
|
|
12437
|
+
result = self._values.get("state")
|
|
11540
12438
|
return typing.cast(typing.Optional[builtins.str], result)
|
|
11541
12439
|
|
|
11542
12440
|
@builtins.property
|
|
11543
12441
|
def tags(self) -> typing.Optional[typing.Mapping[builtins.str, builtins.str]]:
|
|
11544
|
-
'''The tags
|
|
11545
|
-
|
|
11546
|
-
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* .
|
|
12442
|
+
'''The tags associated with the service environment.
|
|
11547
12443
|
|
|
11548
|
-
|
|
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(
|
|
@@ -17955,6 +18962,8 @@ class JobStateTimeLimitActionsAction(enum.Enum):
|
|
|
17955
18962
|
|
|
17956
18963
|
CANCEL = "CANCEL"
|
|
17957
18964
|
'''Cancel the job.'''
|
|
18965
|
+
TERMINATE = "TERMINATE"
|
|
18966
|
+
'''Terminate the job.'''
|
|
17958
18967
|
|
|
17959
18968
|
|
|
17960
18969
|
@jsii.enum(jsii_type="aws-cdk-lib.aws_batch.JobStateTimeLimitActionsReason")
|
|
@@ -18591,13 +19600,14 @@ class ManagedEc2EcsComputeEnvironment(
|
|
|
18591
19600
|
id: builtins.str,
|
|
18592
19601
|
*,
|
|
18593
19602
|
allocation_strategy: typing.Optional[AllocationStrategy] = None,
|
|
19603
|
+
default_instance_classes: typing.Optional[typing.Sequence[DefaultInstanceClass]] = None,
|
|
18594
19604
|
images: typing.Optional[typing.Sequence[typing.Union[EcsMachineImage, typing.Dict[builtins.str, typing.Any]]]] = None,
|
|
18595
19605
|
instance_classes: typing.Optional[typing.Sequence[_InstanceClass_85a592e7]] = None,
|
|
18596
19606
|
instance_role: typing.Optional[_IRole_235f5d8e] = None,
|
|
18597
19607
|
instance_types: typing.Optional[typing.Sequence[_InstanceType_f64915b9]] = None,
|
|
18598
19608
|
launch_template: typing.Optional[_ILaunchTemplate_f32c0fd7] = None,
|
|
18599
19609
|
minv_cpus: typing.Optional[jsii.Number] = None,
|
|
18600
|
-
placement_group: typing.Optional[
|
|
19610
|
+
placement_group: typing.Optional[_IPlacementGroupRef_5d6e601f] = None,
|
|
18601
19611
|
spot_bid_percentage: typing.Optional[jsii.Number] = None,
|
|
18602
19612
|
spot_fleet_role: typing.Optional[_IRole_235f5d8e] = None,
|
|
18603
19613
|
use_optimal_instance_classes: typing.Optional[builtins.bool] = None,
|
|
@@ -18618,6 +19628,7 @@ class ManagedEc2EcsComputeEnvironment(
|
|
|
18618
19628
|
:param scope: -
|
|
18619
19629
|
:param id: -
|
|
18620
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
|
|
18621
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
|
|
18622
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)
|
|
18623
19634
|
:param instance_role: The execution Role that instances launched by this Compute Environment will use. Default: - a role will be created
|
|
@@ -18627,7 +19638,7 @@ class ManagedEc2EcsComputeEnvironment(
|
|
|
18627
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
|
|
18628
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%
|
|
18629
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
|
|
18630
|
-
: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
|
|
18631
19642
|
:param vpc: VPC in which this Compute Environment will launch Instances.
|
|
18632
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
|
|
18633
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
|
|
@@ -18647,6 +19658,7 @@ class ManagedEc2EcsComputeEnvironment(
|
|
|
18647
19658
|
check_type(argname="argument id", value=id, expected_type=type_hints["id"])
|
|
18648
19659
|
props = ManagedEc2EcsComputeEnvironmentProps(
|
|
18649
19660
|
allocation_strategy=allocation_strategy,
|
|
19661
|
+
default_instance_classes=default_instance_classes,
|
|
18650
19662
|
images=images,
|
|
18651
19663
|
instance_classes=instance_classes,
|
|
18652
19664
|
instance_role=instance_role,
|
|
@@ -18957,6 +19969,7 @@ class ManagedEc2EcsComputeEnvironment(
|
|
|
18957
19969
|
"update_to_latest_image_version": "updateToLatestImageVersion",
|
|
18958
19970
|
"vpc_subnets": "vpcSubnets",
|
|
18959
19971
|
"allocation_strategy": "allocationStrategy",
|
|
19972
|
+
"default_instance_classes": "defaultInstanceClasses",
|
|
18960
19973
|
"images": "images",
|
|
18961
19974
|
"instance_classes": "instanceClasses",
|
|
18962
19975
|
"instance_role": "instanceRole",
|
|
@@ -18986,13 +19999,14 @@ class ManagedEc2EcsComputeEnvironmentProps(ManagedComputeEnvironmentProps):
|
|
|
18986
19999
|
update_to_latest_image_version: typing.Optional[builtins.bool] = None,
|
|
18987
20000
|
vpc_subnets: typing.Optional[typing.Union[_SubnetSelection_e57d76df, typing.Dict[builtins.str, typing.Any]]] = None,
|
|
18988
20001
|
allocation_strategy: typing.Optional[AllocationStrategy] = None,
|
|
20002
|
+
default_instance_classes: typing.Optional[typing.Sequence[DefaultInstanceClass]] = None,
|
|
18989
20003
|
images: typing.Optional[typing.Sequence[typing.Union[EcsMachineImage, typing.Dict[builtins.str, typing.Any]]]] = None,
|
|
18990
20004
|
instance_classes: typing.Optional[typing.Sequence[_InstanceClass_85a592e7]] = None,
|
|
18991
20005
|
instance_role: typing.Optional[_IRole_235f5d8e] = None,
|
|
18992
20006
|
instance_types: typing.Optional[typing.Sequence[_InstanceType_f64915b9]] = None,
|
|
18993
20007
|
launch_template: typing.Optional[_ILaunchTemplate_f32c0fd7] = None,
|
|
18994
20008
|
minv_cpus: typing.Optional[jsii.Number] = None,
|
|
18995
|
-
placement_group: typing.Optional[
|
|
20009
|
+
placement_group: typing.Optional[_IPlacementGroupRef_5d6e601f] = None,
|
|
18996
20010
|
spot_bid_percentage: typing.Optional[jsii.Number] = None,
|
|
18997
20011
|
spot_fleet_role: typing.Optional[_IRole_235f5d8e] = None,
|
|
18998
20012
|
use_optimal_instance_classes: typing.Optional[builtins.bool] = None,
|
|
@@ -19012,6 +20026,7 @@ class ManagedEc2EcsComputeEnvironmentProps(ManagedComputeEnvironmentProps):
|
|
|
19012
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
|
|
19013
20027
|
:param vpc_subnets: The VPC Subnets this Compute Environment will launch instances in. Default: new subnets will be created
|
|
19014
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
|
|
19015
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
|
|
19016
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)
|
|
19017
20032
|
:param instance_role: The execution Role that instances launched by this Compute Environment will use. Default: - a role will be created
|
|
@@ -19021,7 +20036,7 @@ class ManagedEc2EcsComputeEnvironmentProps(ManagedComputeEnvironmentProps):
|
|
|
19021
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
|
|
19022
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%
|
|
19023
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
|
|
19024
|
-
: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
|
|
19025
20040
|
|
|
19026
20041
|
:exampleMetadata: infused
|
|
19027
20042
|
|
|
@@ -19053,6 +20068,7 @@ class ManagedEc2EcsComputeEnvironmentProps(ManagedComputeEnvironmentProps):
|
|
|
19053
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"])
|
|
19054
20069
|
check_type(argname="argument vpc_subnets", value=vpc_subnets, expected_type=type_hints["vpc_subnets"])
|
|
19055
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"])
|
|
19056
20072
|
check_type(argname="argument images", value=images, expected_type=type_hints["images"])
|
|
19057
20073
|
check_type(argname="argument instance_classes", value=instance_classes, expected_type=type_hints["instance_classes"])
|
|
19058
20074
|
check_type(argname="argument instance_role", value=instance_role, expected_type=type_hints["instance_role"])
|
|
@@ -19090,6 +20106,8 @@ class ManagedEc2EcsComputeEnvironmentProps(ManagedComputeEnvironmentProps):
|
|
|
19090
20106
|
self._values["vpc_subnets"] = vpc_subnets
|
|
19091
20107
|
if allocation_strategy is not None:
|
|
19092
20108
|
self._values["allocation_strategy"] = allocation_strategy
|
|
20109
|
+
if default_instance_classes is not None:
|
|
20110
|
+
self._values["default_instance_classes"] = default_instance_classes
|
|
19093
20111
|
if images is not None:
|
|
19094
20112
|
self._values["images"] = images
|
|
19095
20113
|
if instance_classes is not None:
|
|
@@ -19281,6 +20299,22 @@ class ManagedEc2EcsComputeEnvironmentProps(ManagedComputeEnvironmentProps):
|
|
|
19281
20299
|
result = self._values.get("allocation_strategy")
|
|
19282
20300
|
return typing.cast(typing.Optional[AllocationStrategy], result)
|
|
19283
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
|
+
|
|
19284
20318
|
@builtins.property
|
|
19285
20319
|
def images(self) -> typing.Optional[typing.List[EcsMachineImage]]:
|
|
19286
20320
|
'''Configure which AMIs this Compute Environment can launch.
|
|
@@ -19351,7 +20385,7 @@ class ManagedEc2EcsComputeEnvironmentProps(ManagedComputeEnvironmentProps):
|
|
|
19351
20385
|
return typing.cast(typing.Optional[jsii.Number], result)
|
|
19352
20386
|
|
|
19353
20387
|
@builtins.property
|
|
19354
|
-
def placement_group(self) -> typing.Optional[
|
|
20388
|
+
def placement_group(self) -> typing.Optional[_IPlacementGroupRef_5d6e601f]:
|
|
19355
20389
|
'''The EC2 placement group to associate with your compute resources.
|
|
19356
20390
|
|
|
19357
20391
|
If you intend to submit multi-node parallel jobs to this Compute Environment,
|
|
@@ -19364,7 +20398,7 @@ class ManagedEc2EcsComputeEnvironmentProps(ManagedComputeEnvironmentProps):
|
|
|
19364
20398
|
:see: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/placement-groups.html
|
|
19365
20399
|
'''
|
|
19366
20400
|
result = self._values.get("placement_group")
|
|
19367
|
-
return typing.cast(typing.Optional[
|
|
20401
|
+
return typing.cast(typing.Optional[_IPlacementGroupRef_5d6e601f], result)
|
|
19368
20402
|
|
|
19369
20403
|
@builtins.property
|
|
19370
20404
|
def spot_bid_percentage(self) -> typing.Optional[jsii.Number]:
|
|
@@ -19395,13 +20429,17 @@ class ManagedEc2EcsComputeEnvironmentProps(ManagedComputeEnvironmentProps):
|
|
|
19395
20429
|
|
|
19396
20430
|
@builtins.property
|
|
19397
20431
|
def use_optimal_instance_classes(self) -> typing.Optional[builtins.bool]:
|
|
19398
|
-
'''Whether or not to use batch's optimal instance type.
|
|
20432
|
+
'''(deprecated) Whether or not to use batch's optimal instance type.
|
|
19399
20433
|
|
|
19400
20434
|
The optimal instance type is equivalent to adding the
|
|
19401
20435
|
C4, M4, and R4 instance classes. You can specify other instance classes
|
|
19402
20436
|
(of the same architecture) in addition to the optimal instance classes.
|
|
19403
20437
|
|
|
19404
20438
|
:default: true
|
|
20439
|
+
|
|
20440
|
+
:deprecated: use defaultInstanceClasses instead
|
|
20441
|
+
|
|
20442
|
+
:stability: deprecated
|
|
19405
20443
|
'''
|
|
19406
20444
|
result = self._values.get("use_optimal_instance_classes")
|
|
19407
20445
|
return typing.cast(typing.Optional[builtins.bool], result)
|
|
@@ -19438,12 +20476,13 @@ class ManagedEc2EksComputeEnvironment(
|
|
|
19438
20476
|
from aws_cdk import aws_ec2 as ec2
|
|
19439
20477
|
from aws_cdk import aws_eks as eks
|
|
19440
20478
|
from aws_cdk import aws_iam as iam
|
|
20479
|
+
from aws_cdk.interfaces import aws_ec2 as interfaces_aws_ec2
|
|
19441
20480
|
|
|
19442
20481
|
# cluster: eks.Cluster
|
|
19443
20482
|
# instance_type: ec2.InstanceType
|
|
19444
20483
|
# launch_template: ec2.LaunchTemplate
|
|
19445
20484
|
# machine_image: ec2.IMachineImage
|
|
19446
|
-
#
|
|
20485
|
+
# placement_group_ref: interfaces_aws_ec2.IPlacementGroupRef
|
|
19447
20486
|
# role: iam.Role
|
|
19448
20487
|
# security_group: ec2.SecurityGroup
|
|
19449
20488
|
# subnet: ec2.Subnet
|
|
@@ -19458,6 +20497,7 @@ class ManagedEc2EksComputeEnvironment(
|
|
|
19458
20497
|
# the properties below are optional
|
|
19459
20498
|
allocation_strategy=batch.AllocationStrategy.BEST_FIT,
|
|
19460
20499
|
compute_environment_name="computeEnvironmentName",
|
|
20500
|
+
default_instance_classes=[batch.DefaultInstanceClass.X86_64],
|
|
19461
20501
|
enabled=False,
|
|
19462
20502
|
images=[batch.EksMachineImage(
|
|
19463
20503
|
image=machine_image,
|
|
@@ -19469,7 +20509,7 @@ class ManagedEc2EksComputeEnvironment(
|
|
|
19469
20509
|
launch_template=launch_template,
|
|
19470
20510
|
maxv_cpus=123,
|
|
19471
20511
|
minv_cpus=123,
|
|
19472
|
-
placement_group=
|
|
20512
|
+
placement_group=placement_group_ref,
|
|
19473
20513
|
replace_compute_environment=False,
|
|
19474
20514
|
security_groups=[security_group],
|
|
19475
20515
|
service_role=role,
|
|
@@ -19498,13 +20538,14 @@ class ManagedEc2EksComputeEnvironment(
|
|
|
19498
20538
|
eks_cluster: _ICluster_6b2b80df,
|
|
19499
20539
|
kubernetes_namespace: builtins.str,
|
|
19500
20540
|
allocation_strategy: typing.Optional[AllocationStrategy] = None,
|
|
20541
|
+
default_instance_classes: typing.Optional[typing.Sequence[DefaultInstanceClass]] = None,
|
|
19501
20542
|
images: typing.Optional[typing.Sequence[typing.Union[EksMachineImage, typing.Dict[builtins.str, typing.Any]]]] = None,
|
|
19502
20543
|
instance_classes: typing.Optional[typing.Sequence[_InstanceClass_85a592e7]] = None,
|
|
19503
20544
|
instance_role: typing.Optional[_IRole_235f5d8e] = None,
|
|
19504
20545
|
instance_types: typing.Optional[typing.Sequence[_InstanceType_f64915b9]] = None,
|
|
19505
20546
|
launch_template: typing.Optional[_ILaunchTemplate_f32c0fd7] = None,
|
|
19506
20547
|
minv_cpus: typing.Optional[jsii.Number] = None,
|
|
19507
|
-
placement_group: typing.Optional[
|
|
20548
|
+
placement_group: typing.Optional[_IPlacementGroupRef_5d6e601f] = None,
|
|
19508
20549
|
spot_bid_percentage: typing.Optional[jsii.Number] = None,
|
|
19509
20550
|
use_optimal_instance_classes: typing.Optional[builtins.bool] = None,
|
|
19510
20551
|
vpc: _IVpc_f30d5663,
|
|
@@ -19526,6 +20567,7 @@ class ManagedEc2EksComputeEnvironment(
|
|
|
19526
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.
|
|
19527
20568
|
:param kubernetes_namespace: The namespace of the Cluster.
|
|
19528
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
|
|
19529
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,
|
|
19530
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)
|
|
19531
20573
|
:param instance_role: The execution Role that instances launched by this Compute Environment will use. Default: - a role will be created
|
|
@@ -19534,7 +20576,7 @@ class ManagedEc2EksComputeEnvironment(
|
|
|
19534
20576
|
:param minv_cpus: The minimum vCPUs that an environment should maintain, even if the compute environment is DISABLED. Default: 0
|
|
19535
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
|
|
19536
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%
|
|
19537
|
-
: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
|
|
19538
20580
|
:param vpc: VPC in which this Compute Environment will launch Instances.
|
|
19539
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
|
|
19540
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
|
|
@@ -19556,6 +20598,7 @@ class ManagedEc2EksComputeEnvironment(
|
|
|
19556
20598
|
eks_cluster=eks_cluster,
|
|
19557
20599
|
kubernetes_namespace=kubernetes_namespace,
|
|
19558
20600
|
allocation_strategy=allocation_strategy,
|
|
20601
|
+
default_instance_classes=default_instance_classes,
|
|
19559
20602
|
images=images,
|
|
19560
20603
|
instance_classes=instance_classes,
|
|
19561
20604
|
instance_role=instance_role,
|
|
@@ -19862,6 +20905,7 @@ class ManagedEc2EksComputeEnvironment(
|
|
|
19862
20905
|
"eks_cluster": "eksCluster",
|
|
19863
20906
|
"kubernetes_namespace": "kubernetesNamespace",
|
|
19864
20907
|
"allocation_strategy": "allocationStrategy",
|
|
20908
|
+
"default_instance_classes": "defaultInstanceClasses",
|
|
19865
20909
|
"images": "images",
|
|
19866
20910
|
"instance_classes": "instanceClasses",
|
|
19867
20911
|
"instance_role": "instanceRole",
|
|
@@ -19892,13 +20936,14 @@ class ManagedEc2EksComputeEnvironmentProps(ManagedComputeEnvironmentProps):
|
|
|
19892
20936
|
eks_cluster: _ICluster_6b2b80df,
|
|
19893
20937
|
kubernetes_namespace: builtins.str,
|
|
19894
20938
|
allocation_strategy: typing.Optional[AllocationStrategy] = None,
|
|
20939
|
+
default_instance_classes: typing.Optional[typing.Sequence[DefaultInstanceClass]] = None,
|
|
19895
20940
|
images: typing.Optional[typing.Sequence[typing.Union[EksMachineImage, typing.Dict[builtins.str, typing.Any]]]] = None,
|
|
19896
20941
|
instance_classes: typing.Optional[typing.Sequence[_InstanceClass_85a592e7]] = None,
|
|
19897
20942
|
instance_role: typing.Optional[_IRole_235f5d8e] = None,
|
|
19898
20943
|
instance_types: typing.Optional[typing.Sequence[_InstanceType_f64915b9]] = None,
|
|
19899
20944
|
launch_template: typing.Optional[_ILaunchTemplate_f32c0fd7] = None,
|
|
19900
20945
|
minv_cpus: typing.Optional[jsii.Number] = None,
|
|
19901
|
-
placement_group: typing.Optional[
|
|
20946
|
+
placement_group: typing.Optional[_IPlacementGroupRef_5d6e601f] = None,
|
|
19902
20947
|
spot_bid_percentage: typing.Optional[jsii.Number] = None,
|
|
19903
20948
|
use_optimal_instance_classes: typing.Optional[builtins.bool] = None,
|
|
19904
20949
|
) -> None:
|
|
@@ -19919,6 +20964,7 @@ class ManagedEc2EksComputeEnvironmentProps(ManagedComputeEnvironmentProps):
|
|
|
19919
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.
|
|
19920
20965
|
:param kubernetes_namespace: The namespace of the Cluster.
|
|
19921
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
|
|
19922
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,
|
|
19923
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)
|
|
19924
20970
|
:param instance_role: The execution Role that instances launched by this Compute Environment will use. Default: - a role will be created
|
|
@@ -19927,7 +20973,7 @@ class ManagedEc2EksComputeEnvironmentProps(ManagedComputeEnvironmentProps):
|
|
|
19927
20973
|
:param minv_cpus: The minimum vCPUs that an environment should maintain, even if the compute environment is DISABLED. Default: 0
|
|
19928
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
|
|
19929
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%
|
|
19930
|
-
: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
|
|
19931
20977
|
|
|
19932
20978
|
:exampleMetadata: fixture=_generated
|
|
19933
20979
|
|
|
@@ -19940,12 +20986,13 @@ class ManagedEc2EksComputeEnvironmentProps(ManagedComputeEnvironmentProps):
|
|
|
19940
20986
|
from aws_cdk import aws_ec2 as ec2
|
|
19941
20987
|
from aws_cdk import aws_eks as eks
|
|
19942
20988
|
from aws_cdk import aws_iam as iam
|
|
20989
|
+
from aws_cdk.interfaces import aws_ec2 as interfaces_aws_ec2
|
|
19943
20990
|
|
|
19944
20991
|
# cluster: eks.Cluster
|
|
19945
20992
|
# instance_type: ec2.InstanceType
|
|
19946
20993
|
# launch_template: ec2.LaunchTemplate
|
|
19947
20994
|
# machine_image: ec2.IMachineImage
|
|
19948
|
-
#
|
|
20995
|
+
# placement_group_ref: interfaces_aws_ec2.IPlacementGroupRef
|
|
19949
20996
|
# role: iam.Role
|
|
19950
20997
|
# security_group: ec2.SecurityGroup
|
|
19951
20998
|
# subnet: ec2.Subnet
|
|
@@ -19960,6 +21007,7 @@ class ManagedEc2EksComputeEnvironmentProps(ManagedComputeEnvironmentProps):
|
|
|
19960
21007
|
# the properties below are optional
|
|
19961
21008
|
allocation_strategy=batch.AllocationStrategy.BEST_FIT,
|
|
19962
21009
|
compute_environment_name="computeEnvironmentName",
|
|
21010
|
+
default_instance_classes=[batch.DefaultInstanceClass.X86_64],
|
|
19963
21011
|
enabled=False,
|
|
19964
21012
|
images=[batch.EksMachineImage(
|
|
19965
21013
|
image=machine_image,
|
|
@@ -19971,7 +21019,7 @@ class ManagedEc2EksComputeEnvironmentProps(ManagedComputeEnvironmentProps):
|
|
|
19971
21019
|
launch_template=launch_template,
|
|
19972
21020
|
maxv_cpus=123,
|
|
19973
21021
|
minv_cpus=123,
|
|
19974
|
-
placement_group=
|
|
21022
|
+
placement_group=placement_group_ref,
|
|
19975
21023
|
replace_compute_environment=False,
|
|
19976
21024
|
security_groups=[security_group],
|
|
19977
21025
|
service_role=role,
|
|
@@ -20010,6 +21058,7 @@ class ManagedEc2EksComputeEnvironmentProps(ManagedComputeEnvironmentProps):
|
|
|
20010
21058
|
check_type(argname="argument eks_cluster", value=eks_cluster, expected_type=type_hints["eks_cluster"])
|
|
20011
21059
|
check_type(argname="argument kubernetes_namespace", value=kubernetes_namespace, expected_type=type_hints["kubernetes_namespace"])
|
|
20012
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"])
|
|
20013
21062
|
check_type(argname="argument images", value=images, expected_type=type_hints["images"])
|
|
20014
21063
|
check_type(argname="argument instance_classes", value=instance_classes, expected_type=type_hints["instance_classes"])
|
|
20015
21064
|
check_type(argname="argument instance_role", value=instance_role, expected_type=type_hints["instance_role"])
|
|
@@ -20048,6 +21097,8 @@ class ManagedEc2EksComputeEnvironmentProps(ManagedComputeEnvironmentProps):
|
|
|
20048
21097
|
self._values["vpc_subnets"] = vpc_subnets
|
|
20049
21098
|
if allocation_strategy is not None:
|
|
20050
21099
|
self._values["allocation_strategy"] = allocation_strategy
|
|
21100
|
+
if default_instance_classes is not None:
|
|
21101
|
+
self._values["default_instance_classes"] = default_instance_classes
|
|
20051
21102
|
if images is not None:
|
|
20052
21103
|
self._values["images"] = images
|
|
20053
21104
|
if instance_classes is not None:
|
|
@@ -20260,6 +21311,22 @@ class ManagedEc2EksComputeEnvironmentProps(ManagedComputeEnvironmentProps):
|
|
|
20260
21311
|
result = self._values.get("allocation_strategy")
|
|
20261
21312
|
return typing.cast(typing.Optional[AllocationStrategy], result)
|
|
20262
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
|
+
|
|
20263
21330
|
@builtins.property
|
|
20264
21331
|
def images(self) -> typing.Optional[typing.List[EksMachineImage]]:
|
|
20265
21332
|
'''Configure which AMIs this Compute Environment can launch.
|
|
@@ -20331,7 +21398,7 @@ class ManagedEc2EksComputeEnvironmentProps(ManagedComputeEnvironmentProps):
|
|
|
20331
21398
|
return typing.cast(typing.Optional[jsii.Number], result)
|
|
20332
21399
|
|
|
20333
21400
|
@builtins.property
|
|
20334
|
-
def placement_group(self) -> typing.Optional[
|
|
21401
|
+
def placement_group(self) -> typing.Optional[_IPlacementGroupRef_5d6e601f]:
|
|
20335
21402
|
'''The EC2 placement group to associate with your compute resources.
|
|
20336
21403
|
|
|
20337
21404
|
If you intend to submit multi-node parallel jobs to this Compute Environment,
|
|
@@ -20344,7 +21411,7 @@ class ManagedEc2EksComputeEnvironmentProps(ManagedComputeEnvironmentProps):
|
|
|
20344
21411
|
:see: https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/placement-groups.html
|
|
20345
21412
|
'''
|
|
20346
21413
|
result = self._values.get("placement_group")
|
|
20347
|
-
return typing.cast(typing.Optional[
|
|
21414
|
+
return typing.cast(typing.Optional[_IPlacementGroupRef_5d6e601f], result)
|
|
20348
21415
|
|
|
20349
21416
|
@builtins.property
|
|
20350
21417
|
def spot_bid_percentage(self) -> typing.Optional[jsii.Number]:
|
|
@@ -20364,13 +21431,17 @@ class ManagedEc2EksComputeEnvironmentProps(ManagedComputeEnvironmentProps):
|
|
|
20364
21431
|
|
|
20365
21432
|
@builtins.property
|
|
20366
21433
|
def use_optimal_instance_classes(self) -> typing.Optional[builtins.bool]:
|
|
20367
|
-
'''Whether or not to use batch's optimal instance type.
|
|
21434
|
+
'''(deprecated) Whether or not to use batch's optimal instance type.
|
|
20368
21435
|
|
|
20369
21436
|
The optimal instance type is equivalent to adding the
|
|
20370
21437
|
C4, M4, and R4 instance classes. You can specify other instance classes
|
|
20371
21438
|
(of the same architecture) in addition to the optimal instance classes.
|
|
20372
21439
|
|
|
20373
21440
|
:default: true
|
|
21441
|
+
|
|
21442
|
+
:deprecated: use defaultInstanceClasses instead
|
|
21443
|
+
|
|
21444
|
+
:stability: deprecated
|
|
20374
21445
|
'''
|
|
20375
21446
|
result = self._values.get("use_optimal_instance_classes")
|
|
20376
21447
|
return typing.cast(typing.Optional[builtins.bool], result)
|
|
@@ -22265,6 +23336,7 @@ class EcsEc2ContainerDefinition(
|
|
|
22265
23336
|
image: _ContainerImage_94af1b43,
|
|
22266
23337
|
memory: _Size_7b441c34,
|
|
22267
23338
|
command: typing.Optional[typing.Sequence[builtins.str]] = None,
|
|
23339
|
+
enable_execute_command: typing.Optional[builtins.bool] = None,
|
|
22268
23340
|
environment: typing.Optional[typing.Mapping[builtins.str, builtins.str]] = None,
|
|
22269
23341
|
execution_role: typing.Optional[_IRole_235f5d8e] = None,
|
|
22270
23342
|
job_role: typing.Optional[_IRole_235f5d8e] = None,
|
|
@@ -22285,6 +23357,7 @@ class EcsEc2ContainerDefinition(
|
|
|
22285
23357
|
:param image: The image that this container will run.
|
|
22286
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.
|
|
22287
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
|
|
22288
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
|
|
22289
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
|
|
22290
23363
|
:param job_role: The role that the container can assume. Default: - no job role
|
|
@@ -22307,6 +23380,7 @@ class EcsEc2ContainerDefinition(
|
|
|
22307
23380
|
image=image,
|
|
22308
23381
|
memory=memory,
|
|
22309
23382
|
command=command,
|
|
23383
|
+
enable_execute_command=enable_execute_command,
|
|
22310
23384
|
environment=environment,
|
|
22311
23385
|
execution_role=execution_role,
|
|
22312
23386
|
job_role=job_role,
|
|
@@ -22408,6 +23482,12 @@ class EcsEc2ContainerDefinition(
|
|
|
22408
23482
|
'''The command that's passed to the container.'''
|
|
22409
23483
|
return typing.cast(typing.Optional[typing.List[builtins.str]], jsii.get(self, "command"))
|
|
22410
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
|
+
|
|
22411
23491
|
@builtins.property
|
|
22412
23492
|
@jsii.member(jsii_name="environment")
|
|
22413
23493
|
def environment(
|
|
@@ -22515,6 +23595,7 @@ class EcsFargateContainerDefinition(
|
|
|
22515
23595
|
image: _ContainerImage_94af1b43,
|
|
22516
23596
|
memory: _Size_7b441c34,
|
|
22517
23597
|
command: typing.Optional[typing.Sequence[builtins.str]] = None,
|
|
23598
|
+
enable_execute_command: typing.Optional[builtins.bool] = None,
|
|
22518
23599
|
environment: typing.Optional[typing.Mapping[builtins.str, builtins.str]] = None,
|
|
22519
23600
|
execution_role: typing.Optional[_IRole_235f5d8e] = None,
|
|
22520
23601
|
job_role: typing.Optional[_IRole_235f5d8e] = None,
|
|
@@ -22537,6 +23618,7 @@ class EcsFargateContainerDefinition(
|
|
|
22537
23618
|
:param image: The image that this container will run.
|
|
22538
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.
|
|
22539
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
|
|
22540
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
|
|
22541
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
|
|
22542
23624
|
:param job_role: The role that the container can assume. Default: - no job role
|
|
@@ -22561,6 +23643,7 @@ class EcsFargateContainerDefinition(
|
|
|
22561
23643
|
image=image,
|
|
22562
23644
|
memory=memory,
|
|
22563
23645
|
command=command,
|
|
23646
|
+
enable_execute_command=enable_execute_command,
|
|
22564
23647
|
environment=environment,
|
|
22565
23648
|
execution_role=execution_role,
|
|
22566
23649
|
job_role=job_role,
|
|
@@ -22648,6 +23731,12 @@ class EcsFargateContainerDefinition(
|
|
|
22648
23731
|
'''The command that's passed to the container.'''
|
|
22649
23732
|
return typing.cast(typing.Optional[typing.List[builtins.str]], jsii.get(self, "command"))
|
|
22650
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
|
+
|
|
22651
23740
|
@builtins.property
|
|
22652
23741
|
@jsii.member(jsii_name="environment")
|
|
22653
23742
|
def environment(
|
|
@@ -22742,29 +23831,25 @@ class EcsJobDefinition(
|
|
|
22742
23831
|
|
|
22743
23832
|
Example::
|
|
22744
23833
|
|
|
22745
|
-
#
|
|
23834
|
+
# my_file_system: efs.IFileSystem
|
|
23835
|
+
# my_job_role: iam.Role
|
|
22746
23836
|
|
|
23837
|
+
my_file_system.grant_read(my_job_role)
|
|
22747
23838
|
|
|
22748
|
-
|
|
23839
|
+
job_defn = batch.EcsJobDefinition(self, "JobDefn",
|
|
22749
23840
|
container=batch.EcsEc2ContainerDefinition(self, "containerDefn",
|
|
22750
23841
|
image=ecs.ContainerImage.from_registry("public.ecr.aws/amazonlinux/amazonlinux:latest"),
|
|
22751
23842
|
memory=cdk.Size.mebibytes(2048),
|
|
22752
|
-
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
|
|
22753
23851
|
)
|
|
22754
23852
|
)
|
|
22755
|
-
|
|
22756
|
-
queue = batch.JobQueue(self, "JobQueue",
|
|
22757
|
-
compute_environments=[batch.OrderedComputeEnvironment(
|
|
22758
|
-
compute_environment=batch.ManagedEc2EcsComputeEnvironment(self, "managedEc2CE",
|
|
22759
|
-
vpc=vpc
|
|
22760
|
-
),
|
|
22761
|
-
order=1
|
|
22762
|
-
)],
|
|
22763
|
-
priority=10
|
|
22764
|
-
)
|
|
22765
|
-
|
|
22766
|
-
user = iam.User(self, "MyUser")
|
|
22767
|
-
ecs_job.grant_submit_job(user, queue)
|
|
22768
23853
|
'''
|
|
22769
23854
|
|
|
22770
23855
|
def __init__(
|
|
@@ -22974,29 +24059,25 @@ class EcsJobDefinitionProps(JobDefinitionProps):
|
|
|
22974
24059
|
|
|
22975
24060
|
Example::
|
|
22976
24061
|
|
|
22977
|
-
#
|
|
24062
|
+
# my_file_system: efs.IFileSystem
|
|
24063
|
+
# my_job_role: iam.Role
|
|
22978
24064
|
|
|
24065
|
+
my_file_system.grant_read(my_job_role)
|
|
22979
24066
|
|
|
22980
|
-
|
|
24067
|
+
job_defn = batch.EcsJobDefinition(self, "JobDefn",
|
|
22981
24068
|
container=batch.EcsEc2ContainerDefinition(self, "containerDefn",
|
|
22982
24069
|
image=ecs.ContainerImage.from_registry("public.ecr.aws/amazonlinux/amazonlinux:latest"),
|
|
22983
24070
|
memory=cdk.Size.mebibytes(2048),
|
|
22984
|
-
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
|
|
22985
24079
|
)
|
|
22986
24080
|
)
|
|
22987
|
-
|
|
22988
|
-
queue = batch.JobQueue(self, "JobQueue",
|
|
22989
|
-
compute_environments=[batch.OrderedComputeEnvironment(
|
|
22990
|
-
compute_environment=batch.ManagedEc2EcsComputeEnvironment(self, "managedEc2CE",
|
|
22991
|
-
vpc=vpc
|
|
22992
|
-
),
|
|
22993
|
-
order=1
|
|
22994
|
-
)],
|
|
22995
|
-
priority=10
|
|
22996
|
-
)
|
|
22997
|
-
|
|
22998
|
-
user = iam.User(self, "MyUser")
|
|
22999
|
-
ecs_job.grant_submit_job(user, queue)
|
|
23000
24081
|
'''
|
|
23001
24082
|
if __debug__:
|
|
23002
24083
|
type_hints = typing.get_type_hints(_typecheckingstub__b8c494afeabc17e9b4e022255720a4708371545e981a1d166b385628fe681d4b)
|
|
@@ -24821,8 +25902,11 @@ __all__ = [
|
|
|
24821
25902
|
"CfnJobQueueProps",
|
|
24822
25903
|
"CfnSchedulingPolicy",
|
|
24823
25904
|
"CfnSchedulingPolicyProps",
|
|
25905
|
+
"CfnServiceEnvironment",
|
|
25906
|
+
"CfnServiceEnvironmentProps",
|
|
24824
25907
|
"ComputeEnvironmentProps",
|
|
24825
25908
|
"CustomReason",
|
|
25909
|
+
"DefaultInstanceClass",
|
|
24826
25910
|
"Device",
|
|
24827
25911
|
"DevicePermission",
|
|
24828
25912
|
"DnsPolicy",
|
|
@@ -25052,6 +26136,7 @@ def _typecheckingstub__4b5bc20e5d24e0d359d6430d6ef9cdce99590872d896d3e0d65372a69
|
|
|
25052
26136
|
launch_template_id: typing.Optional[builtins.str] = None,
|
|
25053
26137
|
launch_template_name: typing.Optional[builtins.str] = None,
|
|
25054
26138
|
target_instance_types: typing.Optional[typing.Sequence[builtins.str]] = None,
|
|
26139
|
+
userdata_type: typing.Optional[builtins.str] = None,
|
|
25055
26140
|
version: typing.Optional[builtins.str] = None,
|
|
25056
26141
|
) -> None:
|
|
25057
26142
|
"""Type checking stubs"""
|
|
@@ -25062,6 +26147,7 @@ def _typecheckingstub__e2a48b24f0297afff0df36a352af2f9856ad8fac713d1ecbc2161d0b9
|
|
|
25062
26147
|
launch_template_id: typing.Optional[builtins.str] = None,
|
|
25063
26148
|
launch_template_name: typing.Optional[builtins.str] = None,
|
|
25064
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,
|
|
25065
26151
|
version: typing.Optional[builtins.str] = None,
|
|
25066
26152
|
) -> None:
|
|
25067
26153
|
"""Type checking stubs"""
|
|
@@ -25164,6 +26250,7 @@ def _typecheckingstub__37959c68856ab28ea1a57515db976bc2215806d52c75f6166834df6ae
|
|
|
25164
26250
|
parameters: typing.Any = None,
|
|
25165
26251
|
platform_capabilities: typing.Optional[typing.Sequence[builtins.str]] = None,
|
|
25166
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,
|
|
25167
26254
|
retry_strategy: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnJobDefinition.RetryStrategyProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
|
|
25168
26255
|
scheduling_priority: typing.Optional[jsii.Number] = None,
|
|
25169
26256
|
tags: typing.Any = None,
|
|
@@ -25172,6 +26259,22 @@ def _typecheckingstub__37959c68856ab28ea1a57515db976bc2215806d52c75f6166834df6ae
|
|
|
25172
26259
|
"""Type checking stubs"""
|
|
25173
26260
|
pass
|
|
25174
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
|
+
|
|
25175
26278
|
def _typecheckingstub__84b6af858f7642dbc10029a34c2ed90c61a840b3c9d8a639fbe0690b4aa593d9(
|
|
25176
26279
|
inspector: _TreeInspector_488e0dd5,
|
|
25177
26280
|
) -> None:
|
|
@@ -25244,6 +26347,12 @@ def _typecheckingstub__269e7fe24ddc93928c4ed8726528871fc789de7275942860c547acd76
|
|
|
25244
26347
|
"""Type checking stubs"""
|
|
25245
26348
|
pass
|
|
25246
26349
|
|
|
26350
|
+
def _typecheckingstub__24d6c12e4e40e86cb18eef4cad19675ced395908001d3f74f425b06ab99bb085(
|
|
26351
|
+
value: typing.Optional[typing.Union[_IResolvable_da3f097b, CfnJobDefinition.ResourceRetentionPolicyProperty]],
|
|
26352
|
+
) -> None:
|
|
26353
|
+
"""Type checking stubs"""
|
|
26354
|
+
pass
|
|
26355
|
+
|
|
25247
26356
|
def _typecheckingstub__2ac615dba37cd2b5a6e9d6f8cdd4b6beef51ff826d65fe0b5cdc31685de03def(
|
|
25248
26357
|
value: typing.Optional[typing.Union[_IResolvable_da3f097b, CfnJobDefinition.RetryStrategyProperty]],
|
|
25249
26358
|
) -> None:
|
|
@@ -25625,6 +26734,13 @@ def _typecheckingstub__7384d4b3b97f8aebbaa3dfe7ec74991276f6b53d6e1885662f675369f
|
|
|
25625
26734
|
"""Type checking stubs"""
|
|
25626
26735
|
pass
|
|
25627
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
|
+
|
|
25628
26744
|
def _typecheckingstub__634ef7ff057388be2736fb45bfab10d038183951137f893e49e433ed83008f6a(
|
|
25629
26745
|
*,
|
|
25630
26746
|
limits: typing.Any = None,
|
|
@@ -25753,6 +26869,7 @@ def _typecheckingstub__ed150d027b29486332c3fd2205a51f3c6f64c25946114fb86a6eba384
|
|
|
25753
26869
|
parameters: typing.Any = None,
|
|
25754
26870
|
platform_capabilities: typing.Optional[typing.Sequence[builtins.str]] = None,
|
|
25755
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,
|
|
25756
26873
|
retry_strategy: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnJobDefinition.RetryStrategyProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
|
|
25757
26874
|
scheduling_priority: typing.Optional[jsii.Number] = None,
|
|
25758
26875
|
tags: typing.Any = None,
|
|
@@ -25765,11 +26882,13 @@ def _typecheckingstub__6480ab252bc515b2cdb6dc0c833877438fd473fd39eadf6b8a064969a
|
|
|
25765
26882
|
scope: _constructs_77d1e7e8.Construct,
|
|
25766
26883
|
id: builtins.str,
|
|
25767
26884
|
*,
|
|
25768
|
-
compute_environment_order: typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union[CfnJobQueue.ComputeEnvironmentOrderProperty, typing.Dict[builtins.str, typing.Any]]]]],
|
|
25769
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,
|
|
25770
26887
|
job_queue_name: typing.Optional[builtins.str] = None,
|
|
26888
|
+
job_queue_type: typing.Optional[builtins.str] = None,
|
|
25771
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,
|
|
25772
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,
|
|
25773
26892
|
state: typing.Optional[builtins.str] = None,
|
|
25774
26893
|
tags: typing.Optional[typing.Mapping[builtins.str, builtins.str]] = None,
|
|
25775
26894
|
) -> None:
|
|
@@ -25788,14 +26907,14 @@ def _typecheckingstub__ce1fe922d9589f26998c2113a8a19530d98bfc01fe2462a8639a35935
|
|
|
25788
26907
|
"""Type checking stubs"""
|
|
25789
26908
|
pass
|
|
25790
26909
|
|
|
25791
|
-
def
|
|
25792
|
-
value:
|
|
26910
|
+
def _typecheckingstub__620331f74c116d31a6d43627e1a45e7041bc3c110194265f30dc193863c8ed94(
|
|
26911
|
+
value: jsii.Number,
|
|
25793
26912
|
) -> None:
|
|
25794
26913
|
"""Type checking stubs"""
|
|
25795
26914
|
pass
|
|
25796
26915
|
|
|
25797
|
-
def
|
|
25798
|
-
value:
|
|
26916
|
+
def _typecheckingstub__aa1c2f3f42165309672c3fdf8c286ff9dc5e99756ec1a5b3ffca9e719d4c7036(
|
|
26917
|
+
value: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, CfnJobQueue.ComputeEnvironmentOrderProperty]]]],
|
|
25799
26918
|
) -> None:
|
|
25800
26919
|
"""Type checking stubs"""
|
|
25801
26920
|
pass
|
|
@@ -25806,6 +26925,12 @@ def _typecheckingstub__3b88e27e62b46f1049263a61bb14f62674a8121083de64c2db32d5856
|
|
|
25806
26925
|
"""Type checking stubs"""
|
|
25807
26926
|
pass
|
|
25808
26927
|
|
|
26928
|
+
def _typecheckingstub__cf7ba788adc96e65e278a0278721e322a7b2c5ad42c7d2cafd707c74e58d6e65(
|
|
26929
|
+
value: typing.Optional[builtins.str],
|
|
26930
|
+
) -> None:
|
|
26931
|
+
"""Type checking stubs"""
|
|
26932
|
+
pass
|
|
26933
|
+
|
|
25809
26934
|
def _typecheckingstub__6e248d0029fc3043fabb974edf0f06b8f9f721a8f13ce794fd6c39b5ae3bb91e(
|
|
25810
26935
|
value: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, CfnJobQueue.JobStateTimeLimitActionProperty]]]],
|
|
25811
26936
|
) -> None:
|
|
@@ -25818,6 +26943,12 @@ def _typecheckingstub__48a6952b4a8d4426554895a52085bf8c88701735f3f94a3426e81e56a
|
|
|
25818
26943
|
"""Type checking stubs"""
|
|
25819
26944
|
pass
|
|
25820
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
|
+
|
|
25821
26952
|
def _typecheckingstub__e97106b05367d04f8f618f0b8edf4f7fdc4b88436890062ac6e344ede4e180b0(
|
|
25822
26953
|
value: typing.Optional[builtins.str],
|
|
25823
26954
|
) -> None:
|
|
@@ -25848,13 +26979,23 @@ def _typecheckingstub__78ff35092216cfb2ffd2106f7da574c86c17494e3404a6f2ccdc020cc
|
|
|
25848
26979
|
"""Type checking stubs"""
|
|
25849
26980
|
pass
|
|
25850
26981
|
|
|
26982
|
+
def _typecheckingstub__04c4b071542df93d5d7f1e7493b1bd821aaeae2008c337f58b1d399f309446bf(
|
|
26983
|
+
*,
|
|
26984
|
+
order: jsii.Number,
|
|
26985
|
+
service_environment: builtins.str,
|
|
26986
|
+
) -> None:
|
|
26987
|
+
"""Type checking stubs"""
|
|
26988
|
+
pass
|
|
26989
|
+
|
|
25851
26990
|
def _typecheckingstub__009d6d384b1b723169e64875095e05fe852ae3931adf5ba2004d22475a76caa9(
|
|
25852
26991
|
*,
|
|
25853
|
-
compute_environment_order: typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union[CfnJobQueue.ComputeEnvironmentOrderProperty, typing.Dict[builtins.str, typing.Any]]]]],
|
|
25854
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,
|
|
25855
26994
|
job_queue_name: typing.Optional[builtins.str] = None,
|
|
26995
|
+
job_queue_type: typing.Optional[builtins.str] = None,
|
|
25856
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,
|
|
25857
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,
|
|
25858
26999
|
state: typing.Optional[builtins.str] = None,
|
|
25859
27000
|
tags: typing.Optional[typing.Mapping[builtins.str, builtins.str]] = None,
|
|
25860
27001
|
) -> None:
|
|
@@ -25928,6 +27069,80 @@ def _typecheckingstub__baa72ee437297b58169f0020ba3178c321d8f72981fcd34857611be31
|
|
|
25928
27069
|
"""Type checking stubs"""
|
|
25929
27070
|
pass
|
|
25930
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
|
+
|
|
25931
27146
|
def _typecheckingstub__ed356ed6d550d61b3cd35694bb99d63fcbc2d06693243747eaf82004f05f9958(
|
|
25932
27147
|
*,
|
|
25933
27148
|
compute_environment_name: typing.Optional[builtins.str] = None,
|
|
@@ -25961,6 +27176,7 @@ def _typecheckingstub__be0d7a8daca28c8e38e4e8dc8b20bc2ac1814af7b5292ed57768ad6bb
|
|
|
25961
27176
|
image: _ContainerImage_94af1b43,
|
|
25962
27177
|
memory: _Size_7b441c34,
|
|
25963
27178
|
command: typing.Optional[typing.Sequence[builtins.str]] = None,
|
|
27179
|
+
enable_execute_command: typing.Optional[builtins.bool] = None,
|
|
25964
27180
|
environment: typing.Optional[typing.Mapping[builtins.str, builtins.str]] = None,
|
|
25965
27181
|
execution_role: typing.Optional[_IRole_235f5d8e] = None,
|
|
25966
27182
|
job_role: typing.Optional[_IRole_235f5d8e] = None,
|
|
@@ -25980,6 +27196,7 @@ def _typecheckingstub__397c7ba6003633e0c17fd25493d817d40262ed9fcf2688d3147876a33
|
|
|
25980
27196
|
image: _ContainerImage_94af1b43,
|
|
25981
27197
|
memory: _Size_7b441c34,
|
|
25982
27198
|
command: typing.Optional[typing.Sequence[builtins.str]] = None,
|
|
27199
|
+
enable_execute_command: typing.Optional[builtins.bool] = None,
|
|
25983
27200
|
environment: typing.Optional[typing.Mapping[builtins.str, builtins.str]] = None,
|
|
25984
27201
|
execution_role: typing.Optional[_IRole_235f5d8e] = None,
|
|
25985
27202
|
job_role: typing.Optional[_IRole_235f5d8e] = None,
|
|
@@ -26002,6 +27219,7 @@ def _typecheckingstub__e5c078c2a3d8816b92a00e4027344466064444955323dc2ff127e9c01
|
|
|
26002
27219
|
image: _ContainerImage_94af1b43,
|
|
26003
27220
|
memory: _Size_7b441c34,
|
|
26004
27221
|
command: typing.Optional[typing.Sequence[builtins.str]] = None,
|
|
27222
|
+
enable_execute_command: typing.Optional[builtins.bool] = None,
|
|
26005
27223
|
environment: typing.Optional[typing.Mapping[builtins.str, builtins.str]] = None,
|
|
26006
27224
|
execution_role: typing.Optional[_IRole_235f5d8e] = None,
|
|
26007
27225
|
job_role: typing.Optional[_IRole_235f5d8e] = None,
|
|
@@ -26315,13 +27533,14 @@ def _typecheckingstub__f512f54787789f74db02e15bede1080e7c35d142bce05240edb789cee
|
|
|
26315
27533
|
id: builtins.str,
|
|
26316
27534
|
*,
|
|
26317
27535
|
allocation_strategy: typing.Optional[AllocationStrategy] = None,
|
|
27536
|
+
default_instance_classes: typing.Optional[typing.Sequence[DefaultInstanceClass]] = None,
|
|
26318
27537
|
images: typing.Optional[typing.Sequence[typing.Union[EcsMachineImage, typing.Dict[builtins.str, typing.Any]]]] = None,
|
|
26319
27538
|
instance_classes: typing.Optional[typing.Sequence[_InstanceClass_85a592e7]] = None,
|
|
26320
27539
|
instance_role: typing.Optional[_IRole_235f5d8e] = None,
|
|
26321
27540
|
instance_types: typing.Optional[typing.Sequence[_InstanceType_f64915b9]] = None,
|
|
26322
27541
|
launch_template: typing.Optional[_ILaunchTemplate_f32c0fd7] = None,
|
|
26323
27542
|
minv_cpus: typing.Optional[jsii.Number] = None,
|
|
26324
|
-
placement_group: typing.Optional[
|
|
27543
|
+
placement_group: typing.Optional[_IPlacementGroupRef_5d6e601f] = None,
|
|
26325
27544
|
spot_bid_percentage: typing.Optional[jsii.Number] = None,
|
|
26326
27545
|
spot_fleet_role: typing.Optional[_IRole_235f5d8e] = None,
|
|
26327
27546
|
use_optimal_instance_classes: typing.Optional[builtins.bool] = None,
|
|
@@ -26376,13 +27595,14 @@ def _typecheckingstub__8eb858d67ed25e3f273cc247ebf45f3c3f60ddc697df4791d3298b29a
|
|
|
26376
27595
|
update_to_latest_image_version: typing.Optional[builtins.bool] = None,
|
|
26377
27596
|
vpc_subnets: typing.Optional[typing.Union[_SubnetSelection_e57d76df, typing.Dict[builtins.str, typing.Any]]] = None,
|
|
26378
27597
|
allocation_strategy: typing.Optional[AllocationStrategy] = None,
|
|
27598
|
+
default_instance_classes: typing.Optional[typing.Sequence[DefaultInstanceClass]] = None,
|
|
26379
27599
|
images: typing.Optional[typing.Sequence[typing.Union[EcsMachineImage, typing.Dict[builtins.str, typing.Any]]]] = None,
|
|
26380
27600
|
instance_classes: typing.Optional[typing.Sequence[_InstanceClass_85a592e7]] = None,
|
|
26381
27601
|
instance_role: typing.Optional[_IRole_235f5d8e] = None,
|
|
26382
27602
|
instance_types: typing.Optional[typing.Sequence[_InstanceType_f64915b9]] = None,
|
|
26383
27603
|
launch_template: typing.Optional[_ILaunchTemplate_f32c0fd7] = None,
|
|
26384
27604
|
minv_cpus: typing.Optional[jsii.Number] = None,
|
|
26385
|
-
placement_group: typing.Optional[
|
|
27605
|
+
placement_group: typing.Optional[_IPlacementGroupRef_5d6e601f] = None,
|
|
26386
27606
|
spot_bid_percentage: typing.Optional[jsii.Number] = None,
|
|
26387
27607
|
spot_fleet_role: typing.Optional[_IRole_235f5d8e] = None,
|
|
26388
27608
|
use_optimal_instance_classes: typing.Optional[builtins.bool] = None,
|
|
@@ -26397,13 +27617,14 @@ def _typecheckingstub__9d1d04f77f1ffdbbe37085b164b175a3e5f0615a7fcde154dcc7f2b64
|
|
|
26397
27617
|
eks_cluster: _ICluster_6b2b80df,
|
|
26398
27618
|
kubernetes_namespace: builtins.str,
|
|
26399
27619
|
allocation_strategy: typing.Optional[AllocationStrategy] = None,
|
|
27620
|
+
default_instance_classes: typing.Optional[typing.Sequence[DefaultInstanceClass]] = None,
|
|
26400
27621
|
images: typing.Optional[typing.Sequence[typing.Union[EksMachineImage, typing.Dict[builtins.str, typing.Any]]]] = None,
|
|
26401
27622
|
instance_classes: typing.Optional[typing.Sequence[_InstanceClass_85a592e7]] = None,
|
|
26402
27623
|
instance_role: typing.Optional[_IRole_235f5d8e] = None,
|
|
26403
27624
|
instance_types: typing.Optional[typing.Sequence[_InstanceType_f64915b9]] = None,
|
|
26404
27625
|
launch_template: typing.Optional[_ILaunchTemplate_f32c0fd7] = None,
|
|
26405
27626
|
minv_cpus: typing.Optional[jsii.Number] = None,
|
|
26406
|
-
placement_group: typing.Optional[
|
|
27627
|
+
placement_group: typing.Optional[_IPlacementGroupRef_5d6e601f] = None,
|
|
26407
27628
|
spot_bid_percentage: typing.Optional[jsii.Number] = None,
|
|
26408
27629
|
use_optimal_instance_classes: typing.Optional[builtins.bool] = None,
|
|
26409
27630
|
vpc: _IVpc_f30d5663,
|
|
@@ -26451,13 +27672,14 @@ def _typecheckingstub__0a94139ce5fac0f77a3f41888dd3906c6a6876b7e2df289a2bb742a8c
|
|
|
26451
27672
|
eks_cluster: _ICluster_6b2b80df,
|
|
26452
27673
|
kubernetes_namespace: builtins.str,
|
|
26453
27674
|
allocation_strategy: typing.Optional[AllocationStrategy] = None,
|
|
27675
|
+
default_instance_classes: typing.Optional[typing.Sequence[DefaultInstanceClass]] = None,
|
|
26454
27676
|
images: typing.Optional[typing.Sequence[typing.Union[EksMachineImage, typing.Dict[builtins.str, typing.Any]]]] = None,
|
|
26455
27677
|
instance_classes: typing.Optional[typing.Sequence[_InstanceClass_85a592e7]] = None,
|
|
26456
27678
|
instance_role: typing.Optional[_IRole_235f5d8e] = None,
|
|
26457
27679
|
instance_types: typing.Optional[typing.Sequence[_InstanceType_f64915b9]] = None,
|
|
26458
27680
|
launch_template: typing.Optional[_ILaunchTemplate_f32c0fd7] = None,
|
|
26459
27681
|
minv_cpus: typing.Optional[jsii.Number] = None,
|
|
26460
|
-
placement_group: typing.Optional[
|
|
27682
|
+
placement_group: typing.Optional[_IPlacementGroupRef_5d6e601f] = None,
|
|
26461
27683
|
spot_bid_percentage: typing.Optional[jsii.Number] = None,
|
|
26462
27684
|
use_optimal_instance_classes: typing.Optional[builtins.bool] = None,
|
|
26463
27685
|
) -> None:
|
|
@@ -26662,6 +27884,7 @@ def _typecheckingstub__e10b04cbfabc7b4f22d3019c7492dc27b542667400ab4e258b28839c7
|
|
|
26662
27884
|
image: _ContainerImage_94af1b43,
|
|
26663
27885
|
memory: _Size_7b441c34,
|
|
26664
27886
|
command: typing.Optional[typing.Sequence[builtins.str]] = None,
|
|
27887
|
+
enable_execute_command: typing.Optional[builtins.bool] = None,
|
|
26665
27888
|
environment: typing.Optional[typing.Mapping[builtins.str, builtins.str]] = None,
|
|
26666
27889
|
execution_role: typing.Optional[_IRole_235f5d8e] = None,
|
|
26667
27890
|
job_role: typing.Optional[_IRole_235f5d8e] = None,
|
|
@@ -26694,6 +27917,7 @@ def _typecheckingstub__b55710648e6c85d4781b971c282911ebf6e5f4b765f9f77bb61c7cb35
|
|
|
26694
27917
|
image: _ContainerImage_94af1b43,
|
|
26695
27918
|
memory: _Size_7b441c34,
|
|
26696
27919
|
command: typing.Optional[typing.Sequence[builtins.str]] = None,
|
|
27920
|
+
enable_execute_command: typing.Optional[builtins.bool] = None,
|
|
26697
27921
|
environment: typing.Optional[typing.Mapping[builtins.str, builtins.str]] = None,
|
|
26698
27922
|
execution_role: typing.Optional[_IRole_235f5d8e] = None,
|
|
26699
27923
|
job_role: typing.Optional[_IRole_235f5d8e] = None,
|
|
@@ -26909,3 +28133,6 @@ def _typecheckingstub__336ca5bcbe380ed2e934b92392f8548b45a77fa6056f7dbbf4741722d
|
|
|
26909
28133
|
) -> None:
|
|
26910
28134
|
"""Type checking stubs"""
|
|
26911
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__'])
|