aws-cdk-lib 2.156.0__py3-none-any.whl → 2.158.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 +42 -23
- aws_cdk/_jsii/__init__.py +17 -2
- aws_cdk/_jsii/{aws-cdk-lib@2.156.0.jsii.tgz → aws-cdk-lib@2.158.0.jsii.tgz} +0 -0
- aws_cdk/alexa_ask/__init__.py +16 -1
- aws_cdk/assertions/__init__.py +16 -1
- aws_cdk/aws_accessanalyzer/__init__.py +16 -1
- aws_cdk/aws_acmpca/__init__.py +26 -76
- aws_cdk/aws_amazonmq/__init__.py +16 -1
- aws_cdk/aws_amplify/__init__.py +122 -1
- aws_cdk/aws_amplifyuibuilder/__init__.py +16 -1
- aws_cdk/aws_apigateway/__init__.py +16 -1
- aws_cdk/aws_apigatewayv2/__init__.py +97 -14
- aws_cdk/aws_apigatewayv2_authorizers/__init__.py +16 -1
- aws_cdk/aws_apigatewayv2_integrations/__init__.py +16 -1
- aws_cdk/aws_appconfig/__init__.py +16 -1
- aws_cdk/aws_appflow/__init__.py +16 -1
- aws_cdk/aws_appintegrations/__init__.py +30 -15
- aws_cdk/aws_applicationautoscaling/__init__.py +16 -1
- aws_cdk/aws_applicationinsights/__init__.py +16 -1
- aws_cdk/aws_applicationsignals/__init__.py +766 -2
- aws_cdk/aws_appmesh/__init__.py +16 -1
- aws_cdk/aws_apprunner/__init__.py +16 -1
- aws_cdk/aws_appstream/__init__.py +16 -1
- aws_cdk/aws_appsync/__init__.py +66 -19
- aws_cdk/aws_apptest/__init__.py +16 -1
- aws_cdk/aws_aps/__init__.py +16 -1
- aws_cdk/aws_arczonalshift/__init__.py +16 -1
- aws_cdk/aws_athena/__init__.py +16 -1
- aws_cdk/aws_auditmanager/__init__.py +16 -1
- aws_cdk/aws_autoscaling/__init__.py +22 -7
- aws_cdk/aws_autoscaling_common/__init__.py +16 -1
- aws_cdk/aws_autoscaling_hooktargets/__init__.py +16 -1
- aws_cdk/aws_autoscalingplans/__init__.py +16 -1
- aws_cdk/aws_b2bi/__init__.py +16 -1
- aws_cdk/aws_backup/__init__.py +55 -1
- aws_cdk/aws_backupgateway/__init__.py +16 -1
- aws_cdk/aws_batch/__init__.py +57 -1
- aws_cdk/aws_bcmdataexports/__init__.py +16 -1
- aws_cdk/aws_bedrock/__init__.py +1529 -95
- aws_cdk/aws_billingconductor/__init__.py +16 -1
- aws_cdk/aws_budgets/__init__.py +16 -1
- aws_cdk/aws_cassandra/__init__.py +16 -1
- aws_cdk/aws_ce/__init__.py +16 -1
- aws_cdk/aws_certificatemanager/__init__.py +16 -1
- aws_cdk/aws_chatbot/__init__.py +22 -7
- aws_cdk/aws_cleanrooms/__init__.py +16 -1
- aws_cdk/aws_cleanroomsml/__init__.py +16 -1
- aws_cdk/aws_cloud9/__init__.py +16 -1
- aws_cdk/aws_cloudformation/__init__.py +38 -23
- aws_cdk/aws_cloudfront/__init__.py +16 -1
- aws_cdk/aws_cloudfront/experimental/__init__.py +46 -4
- aws_cdk/aws_cloudfront_origins/__init__.py +16 -1
- aws_cdk/aws_cloudtrail/__init__.py +16 -1
- aws_cdk/aws_cloudwatch/__init__.py +16 -1
- aws_cdk/aws_cloudwatch_actions/__init__.py +16 -1
- aws_cdk/aws_codeartifact/__init__.py +16 -1
- aws_cdk/aws_codebuild/__init__.py +16 -1
- aws_cdk/aws_codecommit/__init__.py +16 -1
- aws_cdk/aws_codeconnections/__init__.py +16 -1
- aws_cdk/aws_codedeploy/__init__.py +16 -1
- aws_cdk/aws_codeguruprofiler/__init__.py +16 -1
- aws_cdk/aws_codegurureviewer/__init__.py +16 -1
- aws_cdk/aws_codepipeline/__init__.py +16 -1
- aws_cdk/aws_codepipeline_actions/__init__.py +16 -1
- aws_cdk/aws_codestar/__init__.py +16 -1
- aws_cdk/aws_codestarconnections/__init__.py +16 -1
- aws_cdk/aws_codestarnotifications/__init__.py +16 -1
- aws_cdk/aws_cognito/__init__.py +16 -1
- aws_cdk/aws_comprehend/__init__.py +16 -1
- aws_cdk/aws_config/__init__.py +16 -1
- aws_cdk/aws_connect/__init__.py +16 -1
- aws_cdk/aws_connectcampaigns/__init__.py +16 -1
- aws_cdk/aws_controltower/__init__.py +16 -1
- aws_cdk/aws_cur/__init__.py +16 -1
- aws_cdk/aws_customerprofiles/__init__.py +16 -1
- aws_cdk/aws_databrew/__init__.py +16 -1
- aws_cdk/aws_datapipeline/__init__.py +16 -1
- aws_cdk/aws_datasync/__init__.py +56 -30
- aws_cdk/aws_datazone/__init__.py +16 -1
- aws_cdk/aws_dax/__init__.py +16 -1
- aws_cdk/aws_deadline/__init__.py +16 -1
- aws_cdk/aws_detective/__init__.py +16 -1
- aws_cdk/aws_devicefarm/__init__.py +16 -1
- aws_cdk/aws_devopsguru/__init__.py +16 -1
- aws_cdk/aws_directoryservice/__init__.py +16 -1
- aws_cdk/aws_dlm/__init__.py +16 -1
- aws_cdk/aws_dms/__init__.py +16 -1
- aws_cdk/aws_docdb/__init__.py +16 -1
- aws_cdk/aws_docdbelastic/__init__.py +16 -1
- aws_cdk/aws_dynamodb/__init__.py +16 -1
- aws_cdk/aws_ec2/__init__.py +389 -50
- aws_cdk/aws_ecr/__init__.py +16 -1
- aws_cdk/aws_ecr_assets/__init__.py +16 -1
- aws_cdk/aws_ecs/__init__.py +269 -88
- aws_cdk/aws_ecs_patterns/__init__.py +16 -1
- aws_cdk/aws_efs/__init__.py +16 -1
- aws_cdk/aws_eks/__init__.py +16 -1
- aws_cdk/aws_elasticache/__init__.py +16 -1
- aws_cdk/aws_elasticbeanstalk/__init__.py +16 -1
- aws_cdk/aws_elasticloadbalancing/__init__.py +16 -1
- aws_cdk/aws_elasticloadbalancingv2/__init__.py +20 -5
- aws_cdk/aws_elasticloadbalancingv2_actions/__init__.py +16 -1
- aws_cdk/aws_elasticloadbalancingv2_targets/__init__.py +16 -1
- aws_cdk/aws_elasticsearch/__init__.py +16 -1
- aws_cdk/aws_emr/__init__.py +16 -1
- aws_cdk/aws_emrcontainers/__init__.py +16 -1
- aws_cdk/aws_emrserverless/__init__.py +16 -1
- aws_cdk/aws_entityresolution/__init__.py +133 -5
- aws_cdk/aws_events/__init__.py +16 -1
- aws_cdk/aws_events_targets/__init__.py +16 -1
- aws_cdk/aws_eventschemas/__init__.py +16 -1
- aws_cdk/aws_evidently/__init__.py +16 -1
- aws_cdk/aws_finspace/__init__.py +16 -1
- aws_cdk/aws_fis/__init__.py +16 -1
- aws_cdk/aws_fms/__init__.py +16 -1
- aws_cdk/aws_forecast/__init__.py +16 -1
- aws_cdk/aws_frauddetector/__init__.py +16 -1
- aws_cdk/aws_fsx/__init__.py +16 -1
- aws_cdk/aws_gamelift/__init__.py +16 -1
- aws_cdk/aws_globalaccelerator/__init__.py +16 -1
- aws_cdk/aws_globalaccelerator_endpoints/__init__.py +16 -1
- aws_cdk/aws_glue/__init__.py +16 -9
- aws_cdk/aws_grafana/__init__.py +16 -1
- aws_cdk/aws_greengrass/__init__.py +16 -1
- aws_cdk/aws_greengrassv2/__init__.py +16 -1
- aws_cdk/aws_groundstation/__init__.py +43 -17
- aws_cdk/aws_guardduty/__init__.py +42 -15
- aws_cdk/aws_healthimaging/__init__.py +16 -1
- aws_cdk/aws_healthlake/__init__.py +16 -1
- aws_cdk/aws_iam/__init__.py +16 -1
- aws_cdk/aws_identitystore/__init__.py +16 -1
- aws_cdk/aws_imagebuilder/__init__.py +16 -1
- aws_cdk/aws_inspector/__init__.py +16 -1
- aws_cdk/aws_inspectorv2/__init__.py +16 -1
- aws_cdk/aws_internetmonitor/__init__.py +16 -1
- aws_cdk/aws_iot/__init__.py +16 -1
- aws_cdk/aws_iot1click/__init__.py +16 -1
- aws_cdk/aws_iotanalytics/__init__.py +16 -1
- aws_cdk/aws_iotcoredeviceadvisor/__init__.py +16 -1
- aws_cdk/aws_iotevents/__init__.py +16 -1
- aws_cdk/aws_iotfleethub/__init__.py +16 -1
- aws_cdk/aws_iotfleetwise/__init__.py +124 -1
- aws_cdk/aws_iotsitewise/__init__.py +16 -1
- aws_cdk/aws_iotthingsgraph/__init__.py +16 -1
- aws_cdk/aws_iottwinmaker/__init__.py +16 -1
- aws_cdk/aws_iotwireless/__init__.py +16 -1
- aws_cdk/aws_ivs/__init__.py +16 -1
- aws_cdk/aws_ivschat/__init__.py +16 -1
- aws_cdk/aws_kafkaconnect/__init__.py +16 -1
- aws_cdk/aws_kendra/__init__.py +16 -1
- aws_cdk/aws_kendraranking/__init__.py +16 -1
- aws_cdk/aws_kinesis/__init__.py +16 -1
- aws_cdk/aws_kinesisanalytics/__init__.py +16 -1
- aws_cdk/aws_kinesisanalyticsv2/__init__.py +16 -1
- aws_cdk/aws_kinesisfirehose/__init__.py +16 -1
- aws_cdk/aws_kinesisvideo/__init__.py +16 -1
- aws_cdk/aws_kms/__init__.py +16 -1
- aws_cdk/aws_lakeformation/__init__.py +16 -1
- aws_cdk/aws_lambda/__init__.py +163 -18
- aws_cdk/aws_lambda_destinations/__init__.py +16 -1
- aws_cdk/aws_lambda_event_sources/__init__.py +16 -1
- aws_cdk/aws_lambda_nodejs/__init__.py +46 -4
- aws_cdk/aws_launchwizard/__init__.py +16 -1
- aws_cdk/aws_lex/__init__.py +16 -1
- aws_cdk/aws_licensemanager/__init__.py +16 -1
- aws_cdk/aws_lightsail/__init__.py +16 -1
- aws_cdk/aws_location/__init__.py +16 -1
- aws_cdk/aws_logs/__init__.py +16 -1
- aws_cdk/aws_logs_destinations/__init__.py +16 -1
- aws_cdk/aws_lookoutequipment/__init__.py +16 -1
- aws_cdk/aws_lookoutmetrics/__init__.py +16 -1
- aws_cdk/aws_lookoutvision/__init__.py +16 -1
- aws_cdk/aws_m2/__init__.py +16 -1
- aws_cdk/aws_macie/__init__.py +20 -5
- aws_cdk/aws_managedblockchain/__init__.py +16 -1
- aws_cdk/aws_mediaconnect/__init__.py +16 -1
- aws_cdk/aws_mediaconvert/__init__.py +16 -1
- aws_cdk/aws_medialive/__init__.py +364 -1
- aws_cdk/aws_mediapackage/__init__.py +16 -1
- aws_cdk/aws_mediapackagev2/__init__.py +54 -39
- aws_cdk/aws_mediastore/__init__.py +16 -1
- aws_cdk/aws_mediatailor/__init__.py +16 -1
- aws_cdk/aws_memorydb/__init__.py +16 -1
- aws_cdk/aws_msk/__init__.py +16 -1
- aws_cdk/aws_mwaa/__init__.py +16 -1
- aws_cdk/aws_neptune/__init__.py +30 -9
- aws_cdk/aws_neptunegraph/__init__.py +16 -1
- aws_cdk/aws_networkfirewall/__init__.py +16 -1
- aws_cdk/aws_networkmanager/__init__.py +16 -1
- aws_cdk/aws_nimblestudio/__init__.py +16 -1
- aws_cdk/aws_oam/__init__.py +16 -1
- aws_cdk/aws_omics/__init__.py +16 -1
- aws_cdk/aws_opensearchserverless/__init__.py +16 -1
- aws_cdk/aws_opensearchservice/__init__.py +210 -1
- aws_cdk/aws_opsworks/__init__.py +16 -1
- aws_cdk/aws_opsworkscm/__init__.py +16 -1
- aws_cdk/aws_organizations/__init__.py +16 -1
- aws_cdk/aws_osis/__init__.py +16 -1
- aws_cdk/aws_panorama/__init__.py +16 -1
- aws_cdk/aws_paymentcryptography/__init__.py +16 -1
- aws_cdk/aws_pcaconnectorad/__init__.py +16 -1
- aws_cdk/aws_pcaconnectorscep/__init__.py +899 -0
- aws_cdk/aws_personalize/__init__.py +18 -3
- aws_cdk/aws_pinpoint/__init__.py +16 -1
- aws_cdk/aws_pinpointemail/__init__.py +16 -1
- aws_cdk/aws_pipes/__init__.py +38 -23
- aws_cdk/aws_proton/__init__.py +16 -1
- aws_cdk/aws_qbusiness/__init__.py +691 -7
- aws_cdk/aws_qldb/__init__.py +16 -1
- aws_cdk/aws_quicksight/__init__.py +3301 -1
- aws_cdk/aws_ram/__init__.py +16 -1
- aws_cdk/aws_rds/__init__.py +58 -5
- aws_cdk/aws_redshift/__init__.py +16 -1
- aws_cdk/aws_redshiftserverless/__init__.py +16 -1
- aws_cdk/aws_refactorspaces/__init__.py +16 -1
- aws_cdk/aws_rekognition/__init__.py +16 -1
- aws_cdk/aws_resiliencehub/__init__.py +16 -1
- aws_cdk/aws_resourceexplorer2/__init__.py +16 -1
- aws_cdk/aws_resourcegroups/__init__.py +16 -1
- aws_cdk/aws_robomaker/__init__.py +16 -1
- aws_cdk/aws_rolesanywhere/__init__.py +16 -1
- aws_cdk/aws_route53/__init__.py +16 -1
- aws_cdk/aws_route53_patterns/__init__.py +16 -1
- aws_cdk/aws_route53_targets/__init__.py +16 -1
- aws_cdk/aws_route53profiles/__init__.py +16 -1
- aws_cdk/aws_route53recoverycontrol/__init__.py +16 -1
- aws_cdk/aws_route53recoveryreadiness/__init__.py +16 -1
- aws_cdk/aws_route53resolver/__init__.py +16 -1
- aws_cdk/aws_rum/__init__.py +16 -1
- aws_cdk/aws_s3/__init__.py +16 -1
- aws_cdk/aws_s3_assets/__init__.py +16 -1
- aws_cdk/aws_s3_deployment/__init__.py +16 -1
- aws_cdk/aws_s3_notifications/__init__.py +16 -1
- aws_cdk/aws_s3express/__init__.py +16 -1
- aws_cdk/aws_s3objectlambda/__init__.py +16 -1
- aws_cdk/aws_s3outposts/__init__.py +16 -1
- aws_cdk/aws_sagemaker/__init__.py +1183 -1
- aws_cdk/aws_sam/__init__.py +16 -1
- aws_cdk/aws_scheduler/__init__.py +16 -1
- aws_cdk/aws_sdb/__init__.py +16 -1
- aws_cdk/aws_secretsmanager/__init__.py +18 -4
- aws_cdk/aws_securityhub/__init__.py +124 -104
- aws_cdk/aws_securitylake/__init__.py +16 -1
- aws_cdk/aws_servicecatalog/__init__.py +16 -1
- aws_cdk/aws_servicecatalogappregistry/__init__.py +16 -1
- aws_cdk/aws_servicediscovery/__init__.py +16 -1
- aws_cdk/aws_ses/__init__.py +47 -1
- aws_cdk/aws_ses_actions/__init__.py +16 -1
- aws_cdk/aws_shield/__init__.py +16 -1
- aws_cdk/aws_signer/__init__.py +16 -1
- aws_cdk/aws_simspaceweaver/__init__.py +16 -1
- aws_cdk/aws_sns/__init__.py +35 -14
- aws_cdk/aws_sns_subscriptions/__init__.py +16 -1
- aws_cdk/aws_sqs/__init__.py +16 -1
- aws_cdk/aws_ssm/__init__.py +26 -7
- aws_cdk/aws_ssmcontacts/__init__.py +16 -1
- aws_cdk/aws_ssmincidents/__init__.py +16 -1
- aws_cdk/aws_ssmquicksetup/__init__.py +982 -0
- aws_cdk/aws_sso/__init__.py +16 -1
- aws_cdk/aws_stepfunctions/__init__.py +16 -1
- aws_cdk/aws_stepfunctions_tasks/__init__.py +20 -5
- aws_cdk/aws_supportapp/__init__.py +16 -1
- aws_cdk/aws_synthetics/__init__.py +16 -1
- aws_cdk/aws_systemsmanagersap/__init__.py +16 -1
- aws_cdk/aws_timestream/__init__.py +16 -1
- aws_cdk/aws_transfer/__init__.py +16 -1
- aws_cdk/aws_verifiedpermissions/__init__.py +16 -1
- aws_cdk/aws_voiceid/__init__.py +16 -1
- aws_cdk/aws_vpclattice/__init__.py +16 -1
- aws_cdk/aws_waf/__init__.py +16 -1
- aws_cdk/aws_wafregional/__init__.py +16 -1
- aws_cdk/aws_wafv2/__init__.py +16 -1
- aws_cdk/aws_wisdom/__init__.py +16 -1
- aws_cdk/aws_workspaces/__init__.py +16 -1
- aws_cdk/aws_workspacesthinclient/__init__.py +16 -1
- aws_cdk/aws_workspacesweb/__init__.py +16 -1
- aws_cdk/aws_xray/__init__.py +16 -1
- aws_cdk/cloud_assembly_schema/__init__.py +16 -1
- aws_cdk/cloudformation_include/__init__.py +16 -1
- aws_cdk/custom_resources/__init__.py +16 -1
- aws_cdk/cx_api/__init__.py +16 -1
- aws_cdk/lambda_layer_awscli/__init__.py +16 -1
- aws_cdk/lambda_layer_kubectl/__init__.py +16 -1
- aws_cdk/lambda_layer_node_proxy_agent/__init__.py +16 -1
- aws_cdk/pipelines/__init__.py +16 -1
- aws_cdk/region_info/__init__.py +16 -1
- aws_cdk/triggers/__init__.py +46 -4
- {aws_cdk_lib-2.156.0.dist-info → aws_cdk_lib-2.158.0.dist-info}/METADATA +5 -5
- {aws_cdk_lib-2.156.0.dist-info → aws_cdk_lib-2.158.0.dist-info}/NOTICE +27 -8
- aws_cdk_lib-2.158.0.dist-info/RECORD +294 -0
- aws_cdk_lib-2.156.0.dist-info/RECORD +0 -292
- {aws_cdk_lib-2.156.0.dist-info → aws_cdk_lib-2.158.0.dist-info}/LICENSE +0 -0
- {aws_cdk_lib-2.156.0.dist-info → aws_cdk_lib-2.158.0.dist-info}/WHEEL +0 -0
- {aws_cdk_lib-2.156.0.dist-info → aws_cdk_lib-2.158.0.dist-info}/top_level.txt +0 -0
aws_cdk/aws_ecs/__init__.py
CHANGED
|
@@ -1913,7 +1913,22 @@ import jsii
|
|
|
1913
1913
|
import publication
|
|
1914
1914
|
import typing_extensions
|
|
1915
1915
|
|
|
1916
|
-
|
|
1916
|
+
import typeguard
|
|
1917
|
+
from importlib.metadata import version as _metadata_package_version
|
|
1918
|
+
TYPEGUARD_MAJOR_VERSION = int(_metadata_package_version('typeguard').split('.')[0])
|
|
1919
|
+
|
|
1920
|
+
def check_type(argname: str, value: object, expected_type: typing.Any) -> typing.Any:
|
|
1921
|
+
if TYPEGUARD_MAJOR_VERSION <= 2:
|
|
1922
|
+
return typeguard.check_type(argname=argname, value=value, expected_type=expected_type) # type:ignore
|
|
1923
|
+
else:
|
|
1924
|
+
if isinstance(value, jsii._reference_map.InterfaceDynamicProxy): # pyright: ignore [reportAttributeAccessIssue]
|
|
1925
|
+
pass
|
|
1926
|
+
else:
|
|
1927
|
+
if TYPEGUARD_MAJOR_VERSION == 3:
|
|
1928
|
+
typeguard.config.collection_check_strategy = typeguard.CollectionCheckStrategy.ALL_ITEMS # type:ignore
|
|
1929
|
+
typeguard.check_type(value=value, expected_type=expected_type) # type:ignore
|
|
1930
|
+
else:
|
|
1931
|
+
typeguard.check_type(value=value, expected_type=expected_type, collection_check_strategy=typeguard.CollectionCheckStrategy.ALL_ITEMS) # type:ignore
|
|
1917
1932
|
|
|
1918
1933
|
from .._jsii import *
|
|
1919
1934
|
|
|
@@ -6152,7 +6167,7 @@ class CfnCapacityProvider(
|
|
|
6152
6167
|
'''The managed scaling settings for the Auto Scaling group capacity provider.
|
|
6153
6168
|
|
|
6154
6169
|
:param instance_warmup_period: The period of time, in seconds, after a newly launched Amazon EC2 instance can contribute to CloudWatch metrics for Auto Scaling group. If this parameter is omitted, the default value of ``300`` seconds is used.
|
|
6155
|
-
:param maximum_scaling_step_size: The maximum number of Amazon EC2 instances that Amazon ECS will scale out at one time.
|
|
6170
|
+
:param maximum_scaling_step_size: The maximum number of Amazon EC2 instances that Amazon ECS will scale out at one time. If this parameter is omitted, the default value of ``10000`` is used.
|
|
6156
6171
|
:param minimum_scaling_step_size: The minimum number of Amazon EC2 instances that Amazon ECS will scale out at one time. The scale in process is not affected by this parameter If this parameter is omitted, the default value of ``1`` is used. When additional capacity is required, Amazon ECS will scale up the minimum scaling step size even if the actual demand is less than the minimum scaling step size. If you use a capacity provider with an Auto Scaling group configured with more than one Amazon EC2 instance type or Availability Zone, Amazon ECS will scale up by the exact minimum scaling step size value and will ignore both the maximum scaling step size as well as the capacity demand.
|
|
6157
6172
|
:param status: Determines whether to use managed scaling for the capacity provider.
|
|
6158
6173
|
:param target_capacity: The target capacity utilization as a percentage for the capacity provider. The specified value must be greater than ``0`` and less than or equal to ``100`` . For example, if you want the capacity provider to maintain 10% spare capacity, then that means the utilization is 90%, so use a ``targetCapacity`` of ``90`` . The default value of ``100`` percent results in the Amazon EC2 instances in your Auto Scaling group being completely used.
|
|
@@ -6208,7 +6223,7 @@ class CfnCapacityProvider(
|
|
|
6208
6223
|
def maximum_scaling_step_size(self) -> typing.Optional[jsii.Number]:
|
|
6209
6224
|
'''The maximum number of Amazon EC2 instances that Amazon ECS will scale out at one time.
|
|
6210
6225
|
|
|
6211
|
-
|
|
6226
|
+
If this parameter is omitted, the default value of ``10000`` is used.
|
|
6212
6227
|
|
|
6213
6228
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-capacityprovider-managedscaling.html#cfn-ecs-capacityprovider-managedscaling-maximumscalingstepsize
|
|
6214
6229
|
'''
|
|
@@ -8782,8 +8797,8 @@ class CfnService(
|
|
|
8782
8797
|
For example ``awsVpcConfiguration={subnets=["subnet-12344321"],securityGroups=["sg-12344321"]}`` .
|
|
8783
8798
|
|
|
8784
8799
|
:param assign_public_ip: Whether the task's elastic network interface receives a public IP address. The default value is ``DISABLED`` .
|
|
8785
|
-
:param security_groups: The IDs of the security groups associated with the task or service. If you don't specify a security group, the default security group for the VPC is used. There's a limit of 5 security groups that can be specified per ``
|
|
8786
|
-
:param subnets: The IDs of the subnets associated with the task or service. There's a limit of 16 subnets that can be specified per ``
|
|
8800
|
+
:param security_groups: The IDs of the security groups associated with the task or service. If you don't specify a security group, the default security group for the VPC is used. There's a limit of 5 security groups that can be specified per ``awsvpcConfiguration`` . .. epigraph:: All specified security groups must be from the same VPC.
|
|
8801
|
+
:param subnets: The IDs of the subnets associated with the task or service. There's a limit of 16 subnets that can be specified per ``awsvpcConfiguration`` . .. epigraph:: All specified subnets must be from the same VPC.
|
|
8787
8802
|
|
|
8788
8803
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-service-awsvpcconfiguration.html
|
|
8789
8804
|
:exampleMetadata: fixture=_generated
|
|
@@ -8828,7 +8843,7 @@ class CfnService(
|
|
|
8828
8843
|
def security_groups(self) -> typing.Optional[typing.List[builtins.str]]:
|
|
8829
8844
|
'''The IDs of the security groups associated with the task or service.
|
|
8830
8845
|
|
|
8831
|
-
If you don't specify a security group, the default security group for the VPC is used. There's a limit of 5 security groups that can be specified per ``
|
|
8846
|
+
If you don't specify a security group, the default security group for the VPC is used. There's a limit of 5 security groups that can be specified per ``awsvpcConfiguration`` .
|
|
8832
8847
|
.. epigraph::
|
|
8833
8848
|
|
|
8834
8849
|
All specified security groups must be from the same VPC.
|
|
@@ -8842,7 +8857,7 @@ class CfnService(
|
|
|
8842
8857
|
def subnets(self) -> typing.Optional[typing.List[builtins.str]]:
|
|
8843
8858
|
'''The IDs of the subnets associated with the task or service.
|
|
8844
8859
|
|
|
8845
|
-
There's a limit of 16 subnets that can be specified per ``
|
|
8860
|
+
There's a limit of 16 subnets that can be specified per ``awsvpcConfiguration`` .
|
|
8846
8861
|
.. epigraph::
|
|
8847
8862
|
|
|
8848
8863
|
All specified subnets must be from the same VPC.
|
|
@@ -9170,8 +9185,8 @@ class CfnService(
|
|
|
9170
9185
|
|
|
9171
9186
|
:param alarms: Information about the CloudWatch alarms.
|
|
9172
9187
|
:param deployment_circuit_breaker: .. epigraph:: The deployment circuit breaker can only be used for services using the rolling update ( ``ECS`` ) deployment type. The *deployment circuit breaker* determines whether a service deployment will fail if the service can't reach a steady state. If you use the deployment circuit breaker, a service deployment will transition to a failed state and stop launching new tasks. If you use the rollback option, when a service deployment fails, the service is rolled back to the last deployment that completed successfully. For more information, see `Rolling update <https://docs.aws.amazon.com/AmazonECS/latest/developerguide/deployment-type-ecs.html>`_ in the *Amazon Elastic Container Service Developer Guide*
|
|
9173
|
-
:param maximum_percent: If a service is using the rolling update ( ``ECS`` ) deployment type, the ``maximumPercent`` parameter represents an upper limit on the number of your service's tasks that are allowed in the ``RUNNING`` or ``PENDING`` state during a deployment, as a percentage of the ``desiredCount`` (rounded down to the nearest integer). This parameter enables you to define the deployment batch size. For example, if your service is using the ``REPLICA`` service scheduler and has a ``desiredCount`` of four tasks and a ``maximumPercent`` value of 200%, the scheduler may start four new tasks before stopping the four older tasks (provided that the cluster resources required to do this are available). The default ``maximumPercent`` value for a service using the ``REPLICA`` service scheduler is 200%. If a service is using either the blue/green ( ``CODE_DEPLOY`` ) or ``EXTERNAL`` deployment types and tasks
|
|
9174
|
-
:param minimum_healthy_percent: If a service is using the rolling update ( ``ECS`` ) deployment type, the ``minimumHealthyPercent`` represents a lower limit on the number of your service's tasks that must remain in the ``RUNNING`` state during a deployment, as a percentage of the ``desiredCount`` (rounded up to the nearest integer). This parameter enables you to deploy without using additional cluster capacity. For example, if your service has a ``desiredCount`` of four tasks and a ``minimumHealthyPercent`` of 50%, the service scheduler may stop two existing tasks to free up cluster capacity before starting two new tasks. For services that *do not* use a load balancer, the following should be noted: - A service is considered healthy if all essential containers within the tasks in the service pass their health checks. - If a task has no essential containers with a health check defined, the service scheduler will wait for 40 seconds after a task reaches a ``RUNNING`` state before the task is counted towards the minimum healthy percent total. - If a task has one or more essential containers with a health check defined, the service scheduler will wait for the task to reach a healthy status before counting it towards the minimum healthy percent total. A task is considered healthy when all essential containers within the task have passed their health checks. The amount of time the service scheduler can wait for is determined by the container health check settings. For services that *do* use a load balancer, the following should be noted: - If a task has no essential containers with a health check defined, the service scheduler will wait for the load balancer target group health check to return a healthy status before counting the task towards the minimum healthy percent total. - If a task has an essential container with a health check defined, the service scheduler will wait for both the task to reach a healthy status and the load balancer target group health check to return a healthy status before counting the task towards the minimum healthy percent total. The default value for a replica service for ``minimumHealthyPercent`` is 100%. The default ``minimumHealthyPercent`` value for a service using the ``DAEMON`` service schedule is 0% for the AWS CLI , the AWS SDKs, and the APIs and 50% for the AWS Management Console. The minimum number of healthy tasks during a deployment is the ``desiredCount`` multiplied by the ``minimumHealthyPercent`` /100, rounded up to the nearest integer value. If a service is using either the blue/green ( ``CODE_DEPLOY`` ) or ``EXTERNAL`` deployment types and is running tasks that use the EC2 launch type, the *minimum healthy percent* value is set to the default value
|
|
9188
|
+
:param maximum_percent: If a service is using the rolling update ( ``ECS`` ) deployment type, the ``maximumPercent`` parameter represents an upper limit on the number of your service's tasks that are allowed in the ``RUNNING`` or ``PENDING`` state during a deployment, as a percentage of the ``desiredCount`` (rounded down to the nearest integer). This parameter enables you to define the deployment batch size. For example, if your service is using the ``REPLICA`` service scheduler and has a ``desiredCount`` of four tasks and a ``maximumPercent`` value of 200%, the scheduler may start four new tasks before stopping the four older tasks (provided that the cluster resources required to do this are available). The default ``maximumPercent`` value for a service using the ``REPLICA`` service scheduler is 200%. If a service is using either the blue/green ( ``CODE_DEPLOY`` ) or ``EXTERNAL`` deployment types, and tasks in the service use the EC2 launch type, the *maximum percent* value is set to the default value. The *maximum percent* value is used to define the upper limit on the number of the tasks in the service that remain in the ``RUNNING`` state while the container instances are in the ``DRAINING`` state. .. epigraph:: You can't specify a custom ``maximumPercent`` value for a service that uses either the blue/green ( ``CODE_DEPLOY`` ) or ``EXTERNAL`` deployment types and has tasks that use the EC2 launch type. If the tasks in the service use the Fargate launch type, the maximum percent value is not used, although it is returned when describing your service.
|
|
9189
|
+
:param minimum_healthy_percent: If a service is using the rolling update ( ``ECS`` ) deployment type, the ``minimumHealthyPercent`` represents a lower limit on the number of your service's tasks that must remain in the ``RUNNING`` state during a deployment, as a percentage of the ``desiredCount`` (rounded up to the nearest integer). This parameter enables you to deploy without using additional cluster capacity. For example, if your service has a ``desiredCount`` of four tasks and a ``minimumHealthyPercent`` of 50%, the service scheduler may stop two existing tasks to free up cluster capacity before starting two new tasks. For services that *do not* use a load balancer, the following should be noted: - A service is considered healthy if all essential containers within the tasks in the service pass their health checks. - If a task has no essential containers with a health check defined, the service scheduler will wait for 40 seconds after a task reaches a ``RUNNING`` state before the task is counted towards the minimum healthy percent total. - If a task has one or more essential containers with a health check defined, the service scheduler will wait for the task to reach a healthy status before counting it towards the minimum healthy percent total. A task is considered healthy when all essential containers within the task have passed their health checks. The amount of time the service scheduler can wait for is determined by the container health check settings. For services that *do* use a load balancer, the following should be noted: - If a task has no essential containers with a health check defined, the service scheduler will wait for the load balancer target group health check to return a healthy status before counting the task towards the minimum healthy percent total. - If a task has an essential container with a health check defined, the service scheduler will wait for both the task to reach a healthy status and the load balancer target group health check to return a healthy status before counting the task towards the minimum healthy percent total. The default value for a replica service for ``minimumHealthyPercent`` is 100%. The default ``minimumHealthyPercent`` value for a service using the ``DAEMON`` service schedule is 0% for the AWS CLI , the AWS SDKs, and the APIs and 50% for the AWS Management Console. The minimum number of healthy tasks during a deployment is the ``desiredCount`` multiplied by the ``minimumHealthyPercent`` /100, rounded up to the nearest integer value. If a service is using either the blue/green ( ``CODE_DEPLOY`` ) or ``EXTERNAL`` deployment types and is running tasks that use the EC2 launch type, the *minimum healthy percent* value is set to the default value. The *minimum healthy percent* value is used to define the lower limit on the number of the tasks in the service that remain in the ``RUNNING`` state while the container instances are in the ``DRAINING`` state. .. epigraph:: You can't specify a custom ``minimumHealthyPercent`` value for a service that uses either the blue/green ( ``CODE_DEPLOY`` ) or ``EXTERNAL`` deployment types and has tasks that use the EC2 launch type. If a service is using either the blue/green ( ``CODE_DEPLOY`` ) or ``EXTERNAL`` deployment types and is running tasks that use the Fargate launch type, the minimum healthy percent value is not used, although it is returned when describing your service.
|
|
9175
9190
|
|
|
9176
9191
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-service-deploymentconfiguration.html
|
|
9177
9192
|
:exampleMetadata: fixture=_generated
|
|
@@ -9244,7 +9259,12 @@ class CfnService(
|
|
|
9244
9259
|
|
|
9245
9260
|
This parameter enables you to define the deployment batch size. For example, if your service is using the ``REPLICA`` service scheduler and has a ``desiredCount`` of four tasks and a ``maximumPercent`` value of 200%, the scheduler may start four new tasks before stopping the four older tasks (provided that the cluster resources required to do this are available). The default ``maximumPercent`` value for a service using the ``REPLICA`` service scheduler is 200%.
|
|
9246
9261
|
|
|
9247
|
-
If a service is using either the blue/green ( ``CODE_DEPLOY`` ) or ``EXTERNAL`` deployment types and tasks
|
|
9262
|
+
If a service is using either the blue/green ( ``CODE_DEPLOY`` ) or ``EXTERNAL`` deployment types, and tasks in the service use the EC2 launch type, the *maximum percent* value is set to the default value. The *maximum percent* value is used to define the upper limit on the number of the tasks in the service that remain in the ``RUNNING`` state while the container instances are in the ``DRAINING`` state.
|
|
9263
|
+
.. epigraph::
|
|
9264
|
+
|
|
9265
|
+
You can't specify a custom ``maximumPercent`` value for a service that uses either the blue/green ( ``CODE_DEPLOY`` ) or ``EXTERNAL`` deployment types and has tasks that use the EC2 launch type.
|
|
9266
|
+
|
|
9267
|
+
If the tasks in the service use the Fargate launch type, the maximum percent value is not used, although it is returned when describing your service.
|
|
9248
9268
|
|
|
9249
9269
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-service-deploymentconfiguration.html#cfn-ecs-service-deploymentconfiguration-maximumpercent
|
|
9250
9270
|
'''
|
|
@@ -9272,7 +9292,12 @@ class CfnService(
|
|
|
9272
9292
|
|
|
9273
9293
|
The minimum number of healthy tasks during a deployment is the ``desiredCount`` multiplied by the ``minimumHealthyPercent`` /100, rounded up to the nearest integer value.
|
|
9274
9294
|
|
|
9275
|
-
If a service is using either the blue/green ( ``CODE_DEPLOY`` ) or ``EXTERNAL`` deployment types and is running tasks that use the EC2 launch type, the *minimum healthy percent* value is set to the default value
|
|
9295
|
+
If a service is using either the blue/green ( ``CODE_DEPLOY`` ) or ``EXTERNAL`` deployment types and is running tasks that use the EC2 launch type, the *minimum healthy percent* value is set to the default value. The *minimum healthy percent* value is used to define the lower limit on the number of the tasks in the service that remain in the ``RUNNING`` state while the container instances are in the ``DRAINING`` state.
|
|
9296
|
+
.. epigraph::
|
|
9297
|
+
|
|
9298
|
+
You can't specify a custom ``minimumHealthyPercent`` value for a service that uses either the blue/green ( ``CODE_DEPLOY`` ) or ``EXTERNAL`` deployment types and has tasks that use the EC2 launch type.
|
|
9299
|
+
|
|
9300
|
+
If a service is using either the blue/green ( ``CODE_DEPLOY`` ) or ``EXTERNAL`` deployment types and is running tasks that use the Fargate launch type, the minimum healthy percent value is not used, although it is returned when describing your service.
|
|
9276
9301
|
|
|
9277
9302
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-service-deploymentconfiguration.html#cfn-ecs-service-deploymentconfiguration-minimumhealthypercent
|
|
9278
9303
|
'''
|
|
@@ -9589,7 +9614,7 @@ class CfnService(
|
|
|
9589
9614
|
) -> None:
|
|
9590
9615
|
'''The log configuration for the container.
|
|
9591
9616
|
|
|
9592
|
-
This parameter maps to ``LogConfig`` in the docker
|
|
9617
|
+
This parameter maps to ``LogConfig`` in the docker container create command and the ``--log-driver`` option to docker run.
|
|
9593
9618
|
|
|
9594
9619
|
By default, containers use the same logging driver that the Docker daemon uses. However, the container might use a different logging driver than the Docker daemon by specifying a log driver configuration in the container definition.
|
|
9595
9620
|
|
|
@@ -10118,7 +10143,7 @@ class CfnService(
|
|
|
10118
10143
|
Tasks that run in a namespace can use short names to connect to services in the namespace. Tasks can connect to services across all of the clusters in the namespace. Tasks connect through a managed proxy container that collects logs and metrics for increased visibility. Only the tasks that Amazon ECS services create are supported with Service Connect. For more information, see `Service Connect <https://docs.aws.amazon.com/AmazonECS/latest/developerguide/service-connect.html>`_ in the *Amazon Elastic Container Service Developer Guide* .
|
|
10119
10144
|
|
|
10120
10145
|
:param enabled: Specifies whether to use Service Connect with this service.
|
|
10121
|
-
:param log_configuration: The log configuration for the container. This parameter maps to ``LogConfig`` in the docker
|
|
10146
|
+
:param log_configuration: The log configuration for the container. This parameter maps to ``LogConfig`` in the docker container create command and the ``--log-driver`` option to docker run. By default, containers use the same logging driver that the Docker daemon uses. However, the container might use a different logging driver than the Docker daemon by specifying a log driver configuration in the container definition. Understand the following when specifying a log configuration for your containers. - Amazon ECS currently supports a subset of the logging drivers available to the Docker daemon. Additional log drivers may be available in future releases of the Amazon ECS container agent. For tasks on AWS Fargate , the supported log drivers are ``awslogs`` , ``splunk`` , and ``awsfirelens`` . For tasks hosted on Amazon EC2 instances, the supported log drivers are ``awslogs`` , ``fluentd`` , ``gelf`` , ``json-file`` , ``journald`` , ``syslog`` , ``splunk`` , and ``awsfirelens`` . - This parameter requires version 1.18 of the Docker Remote API or greater on your container instance. - For tasks that are hosted on Amazon EC2 instances, the Amazon ECS container agent must register the available logging drivers with the ``ECS_AVAILABLE_LOGGING_DRIVERS`` environment variable before containers placed on that instance can use these log configuration options. For more information, see `Amazon ECS container agent configuration <https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ecs-agent-config.html>`_ in the *Amazon Elastic Container Service Developer Guide* . - For tasks that are on AWS Fargate , because you don't have access to the underlying infrastructure your tasks are hosted on, any additional software needed must be installed outside of the task. For example, the Fluentd output aggregators or a remote host running Logstash to send Gelf logs to.
|
|
10122
10147
|
:param namespace: The namespace name or full Amazon Resource Name (ARN) of the AWS Cloud Map namespace for use with Service Connect. The namespace must be in the same AWS Region as the Amazon ECS service and cluster. The type of namespace doesn't affect Service Connect. For more information about AWS Cloud Map , see `Working with Services <https://docs.aws.amazon.com/cloud-map/latest/dg/working-with-services.html>`_ in the *AWS Cloud Map Developer Guide* .
|
|
10123
10148
|
:param services: The list of Service Connect service objects. These are names and aliases (also known as endpoints) that are used by other Amazon ECS services to connect to this service. This field is not required for a "client" Amazon ECS service that's a member of a namespace only to connect to other services within the namespace. An example of this would be a frontend application that accepts incoming requests from either a load balancer that's attached to the service or by other means. An object selects a port from the task definition, assigns a name for the AWS Cloud Map service, and a list of aliases (endpoints) and ports for client applications to refer to this service.
|
|
10124
10149
|
|
|
@@ -10206,7 +10231,7 @@ class CfnService(
|
|
|
10206
10231
|
) -> typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnService.LogConfigurationProperty"]]:
|
|
10207
10232
|
'''The log configuration for the container.
|
|
10208
10233
|
|
|
10209
|
-
This parameter maps to ``LogConfig`` in the docker
|
|
10234
|
+
This parameter maps to ``LogConfig`` in the docker container create command and the ``--log-driver`` option to docker run.
|
|
10210
10235
|
|
|
10211
10236
|
By default, containers use the same logging driver that the Docker daemon uses. However, the container might use a different logging driver than the Docker daemon by specifying a log driver configuration in the container definition.
|
|
10212
10237
|
|
|
@@ -11958,6 +11983,11 @@ class CfnTaskDefinition(
|
|
|
11958
11983
|
type="type",
|
|
11959
11984
|
value="value"
|
|
11960
11985
|
)],
|
|
11986
|
+
restart_policy=ecs.CfnTaskDefinition.RestartPolicyProperty(
|
|
11987
|
+
enabled=False,
|
|
11988
|
+
ignored_exit_codes=[123],
|
|
11989
|
+
restart_attempt_period=123
|
|
11990
|
+
),
|
|
11961
11991
|
secrets=[ecs.CfnTaskDefinition.SecretProperty(
|
|
11962
11992
|
name="name",
|
|
11963
11993
|
value_from="valueFrom"
|
|
@@ -12552,6 +12582,7 @@ class CfnTaskDefinition(
|
|
|
12552
12582
|
"readonly_root_filesystem": "readonlyRootFilesystem",
|
|
12553
12583
|
"repository_credentials": "repositoryCredentials",
|
|
12554
12584
|
"resource_requirements": "resourceRequirements",
|
|
12585
|
+
"restart_policy": "restartPolicy",
|
|
12555
12586
|
"secrets": "secrets",
|
|
12556
12587
|
"start_timeout": "startTimeout",
|
|
12557
12588
|
"stop_timeout": "stopTimeout",
|
|
@@ -12598,6 +12629,7 @@ class CfnTaskDefinition(
|
|
|
12598
12629
|
readonly_root_filesystem: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]] = None,
|
|
12599
12630
|
repository_credentials: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnTaskDefinition.RepositoryCredentialsProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
|
|
12600
12631
|
resource_requirements: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union["CfnTaskDefinition.ResourceRequirementProperty", typing.Dict[builtins.str, typing.Any]]]]]] = None,
|
|
12632
|
+
restart_policy: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnTaskDefinition.RestartPolicyProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
|
|
12601
12633
|
secrets: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union["CfnTaskDefinition.SecretProperty", typing.Dict[builtins.str, typing.Any]]]]]] = None,
|
|
12602
12634
|
start_timeout: typing.Optional[jsii.Number] = None,
|
|
12603
12635
|
stop_timeout: typing.Optional[jsii.Number] = None,
|
|
@@ -12611,46 +12643,47 @@ class CfnTaskDefinition(
|
|
|
12611
12643
|
|
|
12612
12644
|
Container definitions are used in task definitions to describe the different containers that are launched as part of a task.
|
|
12613
12645
|
|
|
12614
|
-
:param image: The image used to start a container. This string is passed directly to the Docker daemon. By default, images in the Docker Hub registry are available. Other repositories are specified with either ``*repository-url* / *image* : *tag*`` or ``*repository-url* / *image* @ *digest*`` . Up to 255 letters (uppercase and lowercase), numbers, hyphens, underscores, colons, periods, forward slashes, and number signs are allowed. This parameter maps to ``Image`` in the docker
|
|
12615
|
-
:param name: The name of a container. If you're linking multiple containers together in a task definition, the ``name`` of one container can be entered in the ``links`` of another container to connect the containers. Up to 255 letters (uppercase and lowercase), numbers, underscores, and hyphens are allowed. This parameter maps to ``name`` in tthe docker
|
|
12616
|
-
:param command: The command that's passed to the container. This parameter maps to ``Cmd`` in the docker
|
|
12617
|
-
:param cpu: The number of ``cpu`` units reserved for the container. This parameter maps to ``CpuShares`` in the docker
|
|
12646
|
+
:param image: The image used to start a container. This string is passed directly to the Docker daemon. By default, images in the Docker Hub registry are available. Other repositories are specified with either ``*repository-url* / *image* : *tag*`` or ``*repository-url* / *image* @ *digest*`` . Up to 255 letters (uppercase and lowercase), numbers, hyphens, underscores, colons, periods, forward slashes, and number signs are allowed. This parameter maps to ``Image`` in the docker container create command and the ``IMAGE`` parameter of docker run. - When a new task starts, the Amazon ECS container agent pulls the latest version of the specified image and tag for the container to use. However, subsequent updates to a repository image aren't propagated to already running tasks. - Images in Amazon ECR repositories can be specified by either using the full ``registry/repository:tag`` or ``registry/repository@digest`` . For example, ``012345678910.dkr.ecr.<region-name>.amazonaws.com/<repository-name>:latest`` or ``012345678910.dkr.ecr.<region-name>.amazonaws.com/<repository-name>@sha256:94afd1f2e64d908bc90dbca0035a5b567EXAMPLE`` . - Images in official repositories on Docker Hub use a single name (for example, ``ubuntu`` or ``mongo`` ). - Images in other repositories on Docker Hub are qualified with an organization name (for example, ``amazon/amazon-ecs-agent`` ). - Images in other online repositories are qualified further by a domain name (for example, ``quay.io/assemblyline/ubuntu`` ).
|
|
12647
|
+
:param name: The name of a container. If you're linking multiple containers together in a task definition, the ``name`` of one container can be entered in the ``links`` of another container to connect the containers. Up to 255 letters (uppercase and lowercase), numbers, underscores, and hyphens are allowed. This parameter maps to ``name`` in tthe docker container create command and the ``--name`` option to docker run.
|
|
12648
|
+
:param command: The command that's passed to the container. This parameter maps to ``Cmd`` in the docker container create command and the ``COMMAND`` parameter to docker run. If there are multiple arguments, each argument is a separated string in the array.
|
|
12649
|
+
:param cpu: The number of ``cpu`` units reserved for the container. This parameter maps to ``CpuShares`` in the docker container create commandand the ``--cpu-shares`` option to docker run. This field is optional for tasks using the Fargate launch type, and the only requirement is that the total amount of CPU reserved for all containers within a task be lower than the task-level ``cpu`` value. .. epigraph:: You can determine the number of CPU units that are available per EC2 instance type by multiplying the vCPUs listed for that instance type on the `Amazon EC2 Instances <https://docs.aws.amazon.com/ec2/instance-types/>`_ detail page by 1,024. Linux containers share unallocated CPU units with other containers on the container instance with the same ratio as their allocated amount. For example, if you run a single-container task on a single-core instance type with 512 CPU units specified for that container, and that's the only task running on the container instance, that container could use the full 1,024 CPU unit share at any given time. However, if you launched another copy of the same task on that container instance, each task is guaranteed a minimum of 512 CPU units when needed. Moreover, each container could float to higher CPU usage if the other container was not using it. If both tasks were 100% active all of the time, they would be limited to 512 CPU units. On Linux container instances, the Docker daemon on the container instance uses the CPU value to calculate the relative CPU share ratios for running containers. The minimum valid CPU share value that the Linux kernel allows is 2, and the maximum valid CPU share value that the Linux kernel allows is 262144. However, the CPU parameter isn't required, and you can use CPU values below 2 or above 262144 in your container definitions. For CPU values below 2 (including null) or above 262144, the behavior varies based on your Amazon ECS container agent version: - *Agent versions less than or equal to 1.1.0:* Null and zero CPU values are passed to Docker as 0, which Docker then converts to 1,024 CPU shares. CPU values of 1 are passed to Docker as 1, which the Linux kernel converts to two CPU shares. - *Agent versions greater than or equal to 1.2.0:* Null, zero, and CPU values of 1 are passed to Docker as 2. - *Agent versions greater than or equal to 1.84.0:* CPU values greater than 256 vCPU are passed to Docker as 256, which is equivalent to 262144 CPU shares. On Windows container instances, the CPU limit is enforced as an absolute limit, or a quota. Windows containers only have access to the specified amount of CPU that's described in the task definition. A null or zero CPU value is passed to Docker as ``0`` , which Windows interprets as 1% of one CPU.
|
|
12618
12650
|
:param credential_specs: A list of ARNs in SSM or Amazon S3 to a credential spec ( ``CredSpec`` ) file that configures the container for Active Directory authentication. We recommend that you use this parameter instead of the ``dockerSecurityOptions`` . The maximum number of ARNs is 1. There are two formats for each ARN. - **credentialspecdomainless:MyARN** - You use ``credentialspecdomainless:MyARN`` to provide a ``CredSpec`` with an additional section for a secret in AWS Secrets Manager . You provide the login credentials to the domain in the secret. Each task that runs on any container instance can join different domains. You can use this format without joining the container instance to a domain. - **credentialspec:MyARN** - You use ``credentialspec:MyARN`` to provide a ``CredSpec`` for a single domain. You must join the container instance to the domain before you start any tasks that use this task definition. In both formats, replace ``MyARN`` with the ARN in SSM or Amazon S3. If you provide a ``credentialspecdomainless:MyARN`` , the ``credspec`` must provide a ARN in AWS Secrets Manager for a secret containing the username, password, and the domain to connect to. For better security, the instance isn't joined to the domain for domainless authentication. Other applications on the instance can't use the domainless credentials. You can use this parameter to run tasks on the same instance, even it the tasks need to join different domains. For more information, see `Using gMSAs for Windows Containers <https://docs.aws.amazon.com/AmazonECS/latest/developerguide/windows-gmsa.html>`_ and `Using gMSAs for Linux Containers <https://docs.aws.amazon.com/AmazonECS/latest/developerguide/linux-gmsa.html>`_ .
|
|
12619
12651
|
:param depends_on: The dependencies defined for container startup and shutdown. A container can contain multiple dependencies. When a dependency is defined for container startup, for container shutdown it is reversed. For tasks using the EC2 launch type, the container instances require at least version 1.26.0 of the container agent to turn on container dependencies. However, we recommend using the latest container agent version. For information about checking your agent version and updating to the latest version, see `Updating the Amazon ECS Container Agent <https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ecs-agent-update.html>`_ in the *Amazon Elastic Container Service Developer Guide* . If you're using an Amazon ECS-optimized Linux AMI, your instance needs at least version 1.26.0-1 of the ``ecs-init`` package. If your container instances are launched from version ``20190301`` or later, then they contain the required versions of the container agent and ``ecs-init`` . For more information, see `Amazon ECS-optimized Linux AMI <https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ecs-optimized_AMI.html>`_ in the *Amazon Elastic Container Service Developer Guide* . For tasks using the Fargate launch type, the task or service requires the following platforms: - Linux platform version ``1.3.0`` or later. - Windows platform version ``1.0.0`` or later. If the task definition is used in a blue/green deployment that uses `AWS::CodeDeploy::DeploymentGroup BlueGreenDeploymentConfiguration <https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-codedeploy-deploymentgroup-bluegreendeploymentconfiguration.html>`_ , the ``dependsOn`` parameter is not supported. For more information see `Issue #680 <https://docs.aws.amazon.com/https://github.com/aws-cloudformation/cloudformation-coverage-roadmap/issues/680>`_ on the on the GitHub website.
|
|
12620
|
-
:param disable_networking: When this parameter is true, networking is off within the container. This parameter maps to ``NetworkDisabled`` in the docker
|
|
12621
|
-
:param dns_search_domains: A list of DNS search domains that are presented to the container. This parameter maps to ``DnsSearch`` in the docker
|
|
12622
|
-
:param dns_servers: A list of DNS servers that are presented to the container. This parameter maps to ``Dns`` in the
|
|
12623
|
-
:param docker_labels: A key/value map of labels to add to the container. This parameter maps to ``Labels`` in the docker
|
|
12624
|
-
:param docker_security_options: A list of strings to provide custom configuration for multiple security systems. This field isn't valid for containers in tasks using the Fargate launch type. For Linux tasks on EC2, this parameter can be used to reference custom labels for SELinux and AppArmor multi-level security systems. For any tasks on EC2, this parameter can be used to reference a credential spec file that configures a container for Active Directory authentication. For more information, see `Using gMSAs for Windows Containers <https://docs.aws.amazon.com/AmazonECS/latest/developerguide/windows-gmsa.html>`_ and `Using gMSAs for Linux Containers <https://docs.aws.amazon.com/AmazonECS/latest/developerguide/linux-gmsa.html>`_ in the *Amazon Elastic Container Service Developer Guide* . This parameter maps to ``SecurityOpt`` in the docker
|
|
12625
|
-
:param entry_point: .. epigraph:: Early versions of the Amazon ECS container agent don't properly handle ``entryPoint`` parameters. If you have problems using ``entryPoint`` , update your container agent or enter your commands and arguments as ``command`` array items instead. The entry point that's passed to the container. This parameter maps to ``Entrypoint`` in tthe docker
|
|
12626
|
-
:param environment: The environment variables to pass to a container. This parameter maps to ``Env`` in the docker
|
|
12652
|
+
:param disable_networking: When this parameter is true, networking is off within the container. This parameter maps to ``NetworkDisabled`` in the docker container create command. .. epigraph:: This parameter is not supported for Windows containers.
|
|
12653
|
+
:param dns_search_domains: A list of DNS search domains that are presented to the container. This parameter maps to ``DnsSearch`` in the docker container create command and the ``--dns-search`` option to docker run. .. epigraph:: This parameter is not supported for Windows containers.
|
|
12654
|
+
:param dns_servers: A list of DNS servers that are presented to the container. This parameter maps to ``Dns`` in the docker container create command and the ``--dns`` option to docker run. .. epigraph:: This parameter is not supported for Windows containers.
|
|
12655
|
+
:param docker_labels: A key/value map of labels to add to the container. This parameter maps to ``Labels`` in the docker container create command and the ``--label`` option to docker run. 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 --format '{{.Server.APIVersion}}'``
|
|
12656
|
+
:param docker_security_options: A list of strings to provide custom configuration for multiple security systems. This field isn't valid for containers in tasks using the Fargate launch type. For Linux tasks on EC2, this parameter can be used to reference custom labels for SELinux and AppArmor multi-level security systems. For any tasks on EC2, this parameter can be used to reference a credential spec file that configures a container for Active Directory authentication. For more information, see `Using gMSAs for Windows Containers <https://docs.aws.amazon.com/AmazonECS/latest/developerguide/windows-gmsa.html>`_ and `Using gMSAs for Linux Containers <https://docs.aws.amazon.com/AmazonECS/latest/developerguide/linux-gmsa.html>`_ in the *Amazon Elastic Container Service Developer Guide* . This parameter maps to ``SecurityOpt`` in the docker container create command and the ``--security-opt`` option to docker run. .. epigraph:: The Amazon ECS container agent running on a container instance must register with the ``ECS_SELINUX_CAPABLE=true`` or ``ECS_APPARMOR_CAPABLE=true`` environment variables before containers placed on that instance can use these security options. For more information, see `Amazon ECS Container Agent Configuration <https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ecs-agent-config.html>`_ in the *Amazon Elastic Container Service Developer Guide* . Valid values: "no-new-privileges" | "apparmor:PROFILE" | "label:value" | "credentialspec:CredentialSpecFilePath"
|
|
12657
|
+
:param entry_point: .. epigraph:: Early versions of the Amazon ECS container agent don't properly handle ``entryPoint`` parameters. If you have problems using ``entryPoint`` , update your container agent or enter your commands and arguments as ``command`` array items instead. The entry point that's passed to the container. This parameter maps to ``Entrypoint`` in tthe docker container create command and the ``--entrypoint`` option to docker run.
|
|
12658
|
+
:param environment: The environment variables to pass to a container. This parameter maps to ``Env`` in the docker container create command and the ``--env`` option to docker run. .. epigraph:: We don't recommend that you use plaintext environment variables for sensitive information, such as credential data.
|
|
12627
12659
|
:param environment_files: A list of files containing the environment variables to pass to a container. This parameter maps to the ``--env-file`` option to docker run. You can specify up to ten environment files. The file must have a ``.env`` file extension. Each line in an environment file contains an environment variable in ``VARIABLE=VALUE`` format. Lines beginning with ``#`` are treated as comments and are ignored. If there are environment variables specified using the ``environment`` parameter in a container definition, they take precedence over the variables contained within an environment file. If multiple environment files are specified that contain the same variable, they're processed from the top down. We recommend that you use unique variable names. For more information, see `Specifying Environment Variables <https://docs.aws.amazon.com/AmazonECS/latest/developerguide/taskdef-envfiles.html>`_ in the *Amazon Elastic Container Service Developer Guide* .
|
|
12628
12660
|
:param essential: If the ``essential`` parameter of a container is marked as ``true`` , and that container fails or stops for any reason, all other containers that are part of the task are stopped. If the ``essential`` parameter of a container is marked as ``false`` , its failure doesn't affect the rest of the containers in a task. If this parameter is omitted, a container is assumed to be essential. All tasks must have at least one essential container. If you have an application that's composed of multiple containers, group containers that are used for a common purpose into components, and separate the different components into multiple task definitions. For more information, see `Application Architecture <https://docs.aws.amazon.com/AmazonECS/latest/developerguide/application_architecture.html>`_ in the *Amazon Elastic Container Service Developer Guide* .
|
|
12629
|
-
:param extra_hosts: A list of hostnames and IP address mappings to append to the ``/etc/hosts`` file on the container. This parameter maps to ``ExtraHosts`` in the docker
|
|
12661
|
+
:param extra_hosts: A list of hostnames and IP address mappings to append to the ``/etc/hosts`` file on the container. This parameter maps to ``ExtraHosts`` in the docker container create command and the ``--add-host`` option to docker run. .. epigraph:: This parameter isn't supported for Windows containers or tasks that use the ``awsvpc`` network mode.
|
|
12630
12662
|
:param firelens_configuration: The FireLens configuration for the container. This is used to specify and configure a log router for container logs. For more information, see `Custom Log Routing <https://docs.aws.amazon.com/AmazonECS/latest/developerguide/using_firelens.html>`_ in the *Amazon Elastic Container Service Developer Guide* .
|
|
12631
|
-
:param health_check: The container health check command and associated configuration parameters for the container. This parameter maps to ``HealthCheck`` in the docker
|
|
12632
|
-
:param hostname: The hostname to use for your container. This parameter maps to ``Hostname`` in thethe docker
|
|
12633
|
-
:param interactive: When this parameter is ``true`` , you can deploy containerized applications that require ``stdin`` or a ``tty`` to be allocated. This parameter maps to ``OpenStdin`` in the docker
|
|
12634
|
-
:param links: The ``links`` parameter allows containers to communicate with each other without the need for port mappings. This parameter is only supported if the network mode of a task definition is ``bridge`` . The ``name:internalName`` construct is analogous to ``name:alias`` in Docker links. Up to 255 letters (uppercase and lowercase), numbers, underscores, and hyphens are allowed.. This parameter maps to ``Links`` in the docker
|
|
12663
|
+
:param health_check: The container health check command and associated configuration parameters for the container. This parameter maps to ``HealthCheck`` in the docker container create command and the ``HEALTHCHECK`` parameter of docker run.
|
|
12664
|
+
:param hostname: The hostname to use for your container. This parameter maps to ``Hostname`` in thethe docker container create command and the ``--hostname`` option to docker run. .. epigraph:: The ``hostname`` parameter is not supported if you're using the ``awsvpc`` network mode.
|
|
12665
|
+
:param interactive: When this parameter is ``true`` , you can deploy containerized applications that require ``stdin`` or a ``tty`` to be allocated. This parameter maps to ``OpenStdin`` in the docker container create command and the ``--interactive`` option to docker run.
|
|
12666
|
+
:param links: The ``links`` parameter allows containers to communicate with each other without the need for port mappings. This parameter is only supported if the network mode of a task definition is ``bridge`` . The ``name:internalName`` construct is analogous to ``name:alias`` in Docker links. Up to 255 letters (uppercase and lowercase), numbers, underscores, and hyphens are allowed.. This parameter maps to ``Links`` in the docker container create command and the ``--link`` option to docker run. .. epigraph:: This parameter is not supported for Windows containers. > Containers that are collocated on a single container instance may be able to communicate with each other without requiring links or host port mappings. Network isolation is achieved on the container instance using security groups and VPC settings.
|
|
12635
12667
|
:param linux_parameters: Linux-specific modifications that are applied to the container, such as Linux kernel capabilities. For more information see `KernelCapabilities <https://docs.aws.amazon.com/AmazonECS/latest/APIReference/API_KernelCapabilities.html>`_ . .. epigraph:: This parameter is not supported for Windows containers.
|
|
12636
12668
|
:param log_configuration: The log configuration specification for the container. This parameter maps to ``LogConfig`` in the docker Create a container command and the ``--log-driver`` option to docker run. By default, containers use the same logging driver that the Docker daemon uses. However, the container may use a different logging driver than the Docker daemon by specifying a log driver with this parameter in the container definition. To use a different logging driver for a container, the log system must be configured properly on the container instance (or on a different log server for remote logging options). For more information on the options for different supported log drivers, see `Configure logging drivers <https://docs.aws.amazon.com/https://docs.docker.com/engine/admin/logging/overview/>`_ in the Docker documentation. .. epigraph:: Amazon ECS currently supports a subset of the logging drivers available to the Docker daemon (shown in the `LogConfiguration <https://docs.aws.amazon.com/AmazonECS/latest/APIReference/API_LogConfiguration.html>`_ data type). Additional log drivers may be available in future releases of the Amazon ECS container agent. 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 --format '{{.Server.APIVersion}}'`` .. epigraph:: The Amazon ECS container agent running on a container instance must register the logging drivers available on that instance with the ``ECS_AVAILABLE_LOGGING_DRIVERS`` environment variable before containers placed on that instance can use these log configuration options. For more information, see `Amazon ECS Container Agent Configuration <https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ecs-agent-config.html>`_ in the *Amazon Elastic Container Service Developer Guide* .
|
|
12637
12669
|
:param memory: The amount (in MiB) of memory to present to the container. If your container attempts to exceed the memory specified here, the container is killed. The total amount of memory reserved for all containers within a task must be lower than the task ``memory`` value, if one is specified. This parameter maps to ``Memory`` in the `Create a container <https://docs.aws.amazon.com/https://docs.docker.com/engine/api/v1.35/#operation/ContainerCreate>`_ section of the `Docker Remote API <https://docs.aws.amazon.com/https://docs.docker.com/engine/api/v1.35/>`_ and the ``--memory`` option to `docker run <https://docs.aws.amazon.com/https://docs.docker.com/engine/reference/run/#security-configuration>`_ . If using the Fargate launch type, this parameter is optional. If using the EC2 launch type, you must specify either a task-level memory value or a container-level memory value. If you specify both a container-level ``memory`` and ``memoryReservation`` value, ``memory`` must be greater than ``memoryReservation`` . If you specify ``memoryReservation`` , then that value is subtracted from the available memory resources for the container instance where the container is placed. Otherwise, the value of ``memory`` is used. The Docker 20.10.0 or later daemon reserves a minimum of 6 MiB of memory for a container, so you should not specify fewer than 6 MiB of memory for your containers. The Docker 19.03.13-ce or earlier daemon reserves a minimum of 4 MiB of memory for a container, so you should not specify fewer than 4 MiB of memory for your containers.
|
|
12638
|
-
:param memory_reservation: The soft limit (in MiB) of memory to reserve for the container. When system memory is under heavy contention, Docker attempts to keep the container memory to this soft limit. However, your container can consume more memory when it needs to, up to either the hard limit specified with the ``memory`` parameter (if applicable), or all of the available memory on the container instance, whichever comes first. This parameter maps to ``MemoryReservation`` in the
|
|
12639
|
-
:param mount_points: The mount points for data volumes in your container. This parameter maps to ``Volumes`` in the
|
|
12670
|
+
:param memory_reservation: The soft limit (in MiB) of memory to reserve for the container. When system memory is under heavy contention, Docker attempts to keep the container memory to this soft limit. However, your container can consume more memory when it needs to, up to either the hard limit specified with the ``memory`` parameter (if applicable), or all of the available memory on the container instance, whichever comes first. This parameter maps to ``MemoryReservation`` in the docker container create command and the ``--memory-reservation`` option to docker run. If a task-level memory value is not specified, you must specify a non-zero integer for one or both of ``memory`` or ``memoryReservation`` in a container definition. If you specify both, ``memory`` must be greater than ``memoryReservation`` . If you specify ``memoryReservation`` , then that value is subtracted from the available memory resources for the container instance where the container is placed. Otherwise, the value of ``memory`` is used. For example, if your container normally uses 128 MiB of memory, but occasionally bursts to 256 MiB of memory for short periods of time, you can set a ``memoryReservation`` of 128 MiB, and a ``memory`` hard limit of 300 MiB. This configuration would allow the container to only reserve 128 MiB of memory from the remaining resources on the container instance, but also allow the container to consume more memory resources when needed. The Docker 20.10.0 or later daemon reserves a minimum of 6 MiB of memory for a container. So, don't specify less than 6 MiB of memory for your containers. The Docker 19.03.13-ce or earlier daemon reserves a minimum of 4 MiB of memory for a container. So, don't specify less than 4 MiB of memory for your containers.
|
|
12671
|
+
:param mount_points: The mount points for data volumes in your container. This parameter maps to ``Volumes`` in the docker container create command and the ``--volume`` option to docker run. Windows containers can mount whole directories on the same drive as ``$env:ProgramData`` . Windows containers can't mount directories on a different drive, and mount point can't be across drives.
|
|
12640
12672
|
:param port_mappings: The list of port mappings for the container. Port mappings allow containers to access ports on the host container instance to send or receive traffic. For task definitions that use the ``awsvpc`` network mode, you should only specify the ``containerPort`` . The ``hostPort`` can be left blank or it must be the same value as the ``containerPort`` . Port mappings on Windows use the ``NetNAT`` gateway address rather than ``localhost`` . There is no loopback for port mappings on Windows, so you cannot access a container's mapped port from the host itself. This parameter maps to ``PortBindings`` in the `Create a container <https://docs.aws.amazon.com/https://docs.docker.com/engine/api/v1.35/#operation/ContainerCreate>`_ section of the `Docker Remote API <https://docs.aws.amazon.com/https://docs.docker.com/engine/api/v1.35/>`_ and the ``--publish`` option to `docker run <https://docs.aws.amazon.com/https://docs.docker.com/engine/reference/run/>`_ . If the network mode of a task definition is set to ``none`` , then you can't specify port mappings. If the network mode of a task definition is set to ``host`` , then host ports must either be undefined or they must match the container port in the port mapping. .. epigraph:: After a task reaches the ``RUNNING`` status, manual and automatic host and container port assignments are visible in the *Network Bindings* section of a container description for a selected task in the Amazon ECS console. The assignments are also visible in the ``networkBindings`` section `DescribeTasks <https://docs.aws.amazon.com/AmazonECS/latest/APIReference/API_DescribeTasks.html>`_ responses.
|
|
12641
|
-
:param privileged: When this parameter is true, the container is given elevated privileges on the host container instance (similar to the ``root`` user). This parameter maps to ``Privileged`` in the
|
|
12642
|
-
:param pseudo_terminal: When this parameter is ``true`` , a TTY is allocated. This parameter maps to ``Tty`` in tthe docker
|
|
12643
|
-
:param readonly_root_filesystem: When this parameter is true, the container is given read-only access to its root file system. This parameter maps to ``ReadonlyRootfs`` in the docker
|
|
12673
|
+
:param privileged: When this parameter is true, the container is given elevated privileges on the host container instance (similar to the ``root`` user). This parameter maps to ``Privileged`` in the docker container create command and the ``--privileged`` option to docker run .. epigraph:: This parameter is not supported for Windows containers or tasks run on AWS Fargate .
|
|
12674
|
+
:param pseudo_terminal: When this parameter is ``true`` , a TTY is allocated. This parameter maps to ``Tty`` in tthe docker container create command and the ``--tty`` option to docker run.
|
|
12675
|
+
:param readonly_root_filesystem: When this parameter is true, the container is given read-only access to its root file system. This parameter maps to ``ReadonlyRootfs`` in the docker container create command and the ``--read-only`` option to docker run. .. epigraph:: This parameter is not supported for Windows containers.
|
|
12644
12676
|
:param repository_credentials: The private repository authentication credentials to use.
|
|
12645
12677
|
:param resource_requirements: The type and amount of a resource to assign to a container. The only supported resource is a GPU.
|
|
12678
|
+
:param restart_policy: The restart policy for a container. When you set up a restart policy, Amazon ECS can restart the container without needing to replace the task. For more information, see `Restart individual containers in Amazon ECS tasks with container restart policies <https://docs.aws.amazon.com/AmazonECS/latest/developerguide/container-restart-policy.html>`_ in the *Amazon Elastic Container Service Developer Guide* .
|
|
12646
12679
|
:param secrets: The secrets to pass to the container. For more information, see `Specifying Sensitive Data <https://docs.aws.amazon.com/AmazonECS/latest/developerguide/specifying-sensitive-data.html>`_ in the *Amazon Elastic Container Service Developer Guide* .
|
|
12647
12680
|
:param start_timeout: Time duration (in seconds) to wait before giving up on resolving dependencies for a container. For example, you specify two containers in a task definition with containerA having a dependency on containerB reaching a ``COMPLETE`` , ``SUCCESS`` , or ``HEALTHY`` status. If a ``startTimeout`` value is specified for containerB and it doesn't reach the desired status within that time then containerA gives up and not start. This results in the task transitioning to a ``STOPPED`` state. .. epigraph:: When the ``ECS_CONTAINER_START_TIMEOUT`` container agent configuration variable is used, it's enforced independently from this start timeout value. For tasks using the Fargate launch type, the task or service requires the following platforms: - Linux platform version ``1.3.0`` or later. - Windows platform version ``1.0.0`` or later. For tasks using the EC2 launch type, your container instances require at least version ``1.26.0`` of the container agent to use a container start timeout value. However, we recommend using the latest container agent version. For information about checking your agent version and updating to the latest version, see `Updating the Amazon ECS Container Agent <https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ecs-agent-update.html>`_ in the *Amazon Elastic Container Service Developer Guide* . If you're using an Amazon ECS-optimized Linux AMI, your instance needs at least version ``1.26.0-1`` of the ``ecs-init`` package. If your container instances are launched from version ``20190301`` or later, then they contain the required versions of the container agent and ``ecs-init`` . For more information, see `Amazon ECS-optimized Linux AMI <https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ecs-optimized_AMI.html>`_ in the *Amazon Elastic Container Service Developer Guide* . The valid values for Fargate are 2-120 seconds.
|
|
12648
12681
|
:param stop_timeout: Time duration (in seconds) to wait before the container is forcefully killed if it doesn't exit normally on its own. For tasks using the Fargate launch type, the task or service requires the following platforms: - Linux platform version ``1.3.0`` or later. - Windows platform version ``1.0.0`` or later. The max stop timeout value is 120 seconds and if the parameter is not specified, the default value of 30 seconds is used. For tasks that use the EC2 launch type, if the ``stopTimeout`` parameter isn't specified, the value set for the Amazon ECS container agent configuration variable ``ECS_CONTAINER_STOP_TIMEOUT`` is used. If neither the ``stopTimeout`` parameter or the ``ECS_CONTAINER_STOP_TIMEOUT`` agent configuration variable are set, then the default values of 30 seconds for Linux containers and 30 seconds on Windows containers are used. Your container instances require at least version 1.26.0 of the container agent to use a container stop timeout value. However, we recommend using the latest container agent version. For information about checking your agent version and updating to the latest version, see `Updating the Amazon ECS Container Agent <https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ecs-agent-update.html>`_ in the *Amazon Elastic Container Service Developer Guide* . If you're using an Amazon ECS-optimized Linux AMI, your instance needs at least version 1.26.0-1 of the ``ecs-init`` package. If your container instances are launched from version ``20190301`` or later, then they contain the required versions of the container agent and ``ecs-init`` . For more information, see `Amazon ECS-optimized Linux AMI <https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ecs-optimized_AMI.html>`_ in the *Amazon Elastic Container Service Developer Guide* . The valid values are 2-120 seconds.
|
|
12649
|
-
:param system_controls: A list of namespaced kernel parameters to set in the container. This parameter maps to ``Sysctls`` in tthe docker
|
|
12682
|
+
:param system_controls: A list of namespaced kernel parameters to set in the container. This parameter maps to ``Sysctls`` in tthe docker container create command and the ``--sysctl`` option to docker run. For example, you can configure ``net.ipv4.tcp_keepalive_time`` setting to maintain longer lived connections.
|
|
12650
12683
|
:param ulimits: A list of ``ulimits`` to set in the container. This parameter maps to ``Ulimits`` in the `Create a container <https://docs.aws.amazon.com/https://docs.docker.com/engine/api/v1.35/#operation/ContainerCreate>`_ section of the `Docker Remote API <https://docs.aws.amazon.com/https://docs.docker.com/engine/api/v1.35/>`_ and the ``--ulimit`` option to `docker run <https://docs.aws.amazon.com/https://docs.docker.com/engine/reference/run/>`_ . Valid naming values are displayed in the `Ulimit <https://docs.aws.amazon.com/AmazonECS/latest/APIReference/API_Ulimit.html>`_ data type. 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 --format '{{.Server.APIVersion}}'`` .. epigraph:: This parameter is not supported for Windows containers.
|
|
12651
|
-
:param user: The user to use inside the container. This parameter maps to ``User`` in the docker
|
|
12652
|
-
:param volumes_from: Data volumes to mount from another container. This parameter maps to ``VolumesFrom`` in tthe docker
|
|
12653
|
-
:param working_directory: The working directory to run commands inside the container in. This parameter maps to ``WorkingDir`` in the docker
|
|
12684
|
+
:param user: The user to use inside the container. This parameter maps to ``User`` in the docker container create command and the ``--user`` option to docker run. .. epigraph:: When running tasks using the ``host`` network mode, don't run containers using the root user (UID 0). We recommend using a non-root user for better security. You can specify the ``user`` using the following formats. If specifying a UID or GID, you must specify it as a positive integer. - ``user`` - ``user:group`` - ``uid`` - ``uid:gid`` - ``user:gid`` - ``uid:group`` .. epigraph:: This parameter is not supported for Windows containers.
|
|
12685
|
+
:param volumes_from: Data volumes to mount from another container. This parameter maps to ``VolumesFrom`` in tthe docker container create command and the ``--volumes-from`` option to docker run.
|
|
12686
|
+
:param working_directory: The working directory to run commands inside the container in. This parameter maps to ``WorkingDir`` in the docker container create command and the ``--workdir`` option to docker run.
|
|
12654
12687
|
|
|
12655
12688
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinition.html
|
|
12656
12689
|
:exampleMetadata: fixture=_generated
|
|
@@ -12769,6 +12802,11 @@ class CfnTaskDefinition(
|
|
|
12769
12802
|
type="type",
|
|
12770
12803
|
value="value"
|
|
12771
12804
|
)],
|
|
12805
|
+
restart_policy=ecs.CfnTaskDefinition.RestartPolicyProperty(
|
|
12806
|
+
enabled=False,
|
|
12807
|
+
ignored_exit_codes=[123],
|
|
12808
|
+
restart_attempt_period=123
|
|
12809
|
+
),
|
|
12772
12810
|
secrets=[ecs.CfnTaskDefinition.SecretProperty(
|
|
12773
12811
|
name="name",
|
|
12774
12812
|
value_from="valueFrom"
|
|
@@ -12826,6 +12864,7 @@ class CfnTaskDefinition(
|
|
|
12826
12864
|
check_type(argname="argument readonly_root_filesystem", value=readonly_root_filesystem, expected_type=type_hints["readonly_root_filesystem"])
|
|
12827
12865
|
check_type(argname="argument repository_credentials", value=repository_credentials, expected_type=type_hints["repository_credentials"])
|
|
12828
12866
|
check_type(argname="argument resource_requirements", value=resource_requirements, expected_type=type_hints["resource_requirements"])
|
|
12867
|
+
check_type(argname="argument restart_policy", value=restart_policy, expected_type=type_hints["restart_policy"])
|
|
12829
12868
|
check_type(argname="argument secrets", value=secrets, expected_type=type_hints["secrets"])
|
|
12830
12869
|
check_type(argname="argument start_timeout", value=start_timeout, expected_type=type_hints["start_timeout"])
|
|
12831
12870
|
check_type(argname="argument stop_timeout", value=stop_timeout, expected_type=type_hints["stop_timeout"])
|
|
@@ -12898,6 +12937,8 @@ class CfnTaskDefinition(
|
|
|
12898
12937
|
self._values["repository_credentials"] = repository_credentials
|
|
12899
12938
|
if resource_requirements is not None:
|
|
12900
12939
|
self._values["resource_requirements"] = resource_requirements
|
|
12940
|
+
if restart_policy is not None:
|
|
12941
|
+
self._values["restart_policy"] = restart_policy
|
|
12901
12942
|
if secrets is not None:
|
|
12902
12943
|
self._values["secrets"] = secrets
|
|
12903
12944
|
if start_timeout is not None:
|
|
@@ -12919,7 +12960,7 @@ class CfnTaskDefinition(
|
|
|
12919
12960
|
def image(self) -> builtins.str:
|
|
12920
12961
|
'''The image used to start a container.
|
|
12921
12962
|
|
|
12922
|
-
This string is passed directly to the Docker daemon. By default, images in the Docker Hub registry are available. Other repositories are specified with either ``*repository-url* / *image* : *tag*`` or ``*repository-url* / *image* @ *digest*`` . Up to 255 letters (uppercase and lowercase), numbers, hyphens, underscores, colons, periods, forward slashes, and number signs are allowed. This parameter maps to ``Image`` in the docker
|
|
12963
|
+
This string is passed directly to the Docker daemon. By default, images in the Docker Hub registry are available. Other repositories are specified with either ``*repository-url* / *image* : *tag*`` or ``*repository-url* / *image* @ *digest*`` . Up to 255 letters (uppercase and lowercase), numbers, hyphens, underscores, colons, periods, forward slashes, and number signs are allowed. This parameter maps to ``Image`` in the docker container create command and the ``IMAGE`` parameter of docker run.
|
|
12923
12964
|
|
|
12924
12965
|
- When a new task starts, the Amazon ECS container agent pulls the latest version of the specified image and tag for the container to use. However, subsequent updates to a repository image aren't propagated to already running tasks.
|
|
12925
12966
|
- Images in Amazon ECR repositories can be specified by either using the full ``registry/repository:tag`` or ``registry/repository@digest`` . For example, ``012345678910.dkr.ecr.<region-name>.amazonaws.com/<repository-name>:latest`` or ``012345678910.dkr.ecr.<region-name>.amazonaws.com/<repository-name>@sha256:94afd1f2e64d908bc90dbca0035a5b567EXAMPLE`` .
|
|
@@ -12937,7 +12978,7 @@ class CfnTaskDefinition(
|
|
|
12937
12978
|
def name(self) -> builtins.str:
|
|
12938
12979
|
'''The name of a container.
|
|
12939
12980
|
|
|
12940
|
-
If you're linking multiple containers together in a task definition, the ``name`` of one container can be entered in the ``links`` of another container to connect the containers. Up to 255 letters (uppercase and lowercase), numbers, underscores, and hyphens are allowed. This parameter maps to ``name`` in tthe docker
|
|
12981
|
+
If you're linking multiple containers together in a task definition, the ``name`` of one container can be entered in the ``links`` of another container to connect the containers. Up to 255 letters (uppercase and lowercase), numbers, underscores, and hyphens are allowed. This parameter maps to ``name`` in tthe docker container create command and the ``--name`` option to docker run.
|
|
12941
12982
|
|
|
12942
12983
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinition.html#cfn-ecs-taskdefinition-containerdefinition-name
|
|
12943
12984
|
'''
|
|
@@ -12949,7 +12990,7 @@ class CfnTaskDefinition(
|
|
|
12949
12990
|
def command(self) -> typing.Optional[typing.List[builtins.str]]:
|
|
12950
12991
|
'''The command that's passed to the container.
|
|
12951
12992
|
|
|
12952
|
-
This parameter maps to ``Cmd`` in the docker
|
|
12993
|
+
This parameter maps to ``Cmd`` in the docker container create command and the ``COMMAND`` parameter to docker run. If there are multiple arguments, each argument is a separated string in the array.
|
|
12953
12994
|
|
|
12954
12995
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinition.html#cfn-ecs-taskdefinition-containerdefinition-command
|
|
12955
12996
|
'''
|
|
@@ -12960,7 +13001,7 @@ class CfnTaskDefinition(
|
|
|
12960
13001
|
def cpu(self) -> typing.Optional[jsii.Number]:
|
|
12961
13002
|
'''The number of ``cpu`` units reserved for the container.
|
|
12962
13003
|
|
|
12963
|
-
This parameter maps to ``CpuShares`` in the docker
|
|
13004
|
+
This parameter maps to ``CpuShares`` in the docker container create commandand the ``--cpu-shares`` option to docker run.
|
|
12964
13005
|
|
|
12965
13006
|
This field is optional for tasks using the Fargate launch type, and the only requirement is that the total amount of CPU reserved for all containers within a task be lower than the task-level ``cpu`` value.
|
|
12966
13007
|
.. epigraph::
|
|
@@ -13037,7 +13078,7 @@ class CfnTaskDefinition(
|
|
|
13037
13078
|
) -> typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]]:
|
|
13038
13079
|
'''When this parameter is true, networking is off within the container.
|
|
13039
13080
|
|
|
13040
|
-
This parameter maps to ``NetworkDisabled`` in the docker
|
|
13081
|
+
This parameter maps to ``NetworkDisabled`` in the docker container create command.
|
|
13041
13082
|
.. epigraph::
|
|
13042
13083
|
|
|
13043
13084
|
This parameter is not supported for Windows containers.
|
|
@@ -13051,7 +13092,7 @@ class CfnTaskDefinition(
|
|
|
13051
13092
|
def dns_search_domains(self) -> typing.Optional[typing.List[builtins.str]]:
|
|
13052
13093
|
'''A list of DNS search domains that are presented to the container.
|
|
13053
13094
|
|
|
13054
|
-
This parameter maps to ``DnsSearch`` in the docker
|
|
13095
|
+
This parameter maps to ``DnsSearch`` in the docker container create command and the ``--dns-search`` option to docker run.
|
|
13055
13096
|
.. epigraph::
|
|
13056
13097
|
|
|
13057
13098
|
This parameter is not supported for Windows containers.
|
|
@@ -13065,7 +13106,7 @@ class CfnTaskDefinition(
|
|
|
13065
13106
|
def dns_servers(self) -> typing.Optional[typing.List[builtins.str]]:
|
|
13066
13107
|
'''A list of DNS servers that are presented to the container.
|
|
13067
13108
|
|
|
13068
|
-
This parameter maps to ``Dns`` in the
|
|
13109
|
+
This parameter maps to ``Dns`` in the docker container create command and the ``--dns`` option to docker run.
|
|
13069
13110
|
.. epigraph::
|
|
13070
13111
|
|
|
13071
13112
|
This parameter is not supported for Windows containers.
|
|
@@ -13081,7 +13122,7 @@ class CfnTaskDefinition(
|
|
|
13081
13122
|
) -> typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Mapping[builtins.str, builtins.str]]]:
|
|
13082
13123
|
'''A key/value map of labels to add to the container.
|
|
13083
13124
|
|
|
13084
|
-
This parameter maps to ``Labels`` in the docker
|
|
13125
|
+
This parameter maps to ``Labels`` in the docker container create command and the ``--label`` option to docker run. 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 --format '{{.Server.APIVersion}}'``
|
|
13085
13126
|
|
|
13086
13127
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinition.html#cfn-ecs-taskdefinition-containerdefinition-dockerlabels
|
|
13087
13128
|
'''
|
|
@@ -13098,7 +13139,7 @@ class CfnTaskDefinition(
|
|
|
13098
13139
|
|
|
13099
13140
|
For any tasks on EC2, this parameter can be used to reference a credential spec file that configures a container for Active Directory authentication. For more information, see `Using gMSAs for Windows Containers <https://docs.aws.amazon.com/AmazonECS/latest/developerguide/windows-gmsa.html>`_ and `Using gMSAs for Linux Containers <https://docs.aws.amazon.com/AmazonECS/latest/developerguide/linux-gmsa.html>`_ in the *Amazon Elastic Container Service Developer Guide* .
|
|
13100
13141
|
|
|
13101
|
-
This parameter maps to ``SecurityOpt`` in the docker
|
|
13142
|
+
This parameter maps to ``SecurityOpt`` in the docker container create command and the ``--security-opt`` option to docker run.
|
|
13102
13143
|
.. epigraph::
|
|
13103
13144
|
|
|
13104
13145
|
The Amazon ECS container agent running on a container instance must register with the ``ECS_SELINUX_CAPABLE=true`` or ``ECS_APPARMOR_CAPABLE=true`` environment variables before containers placed on that instance can use these security options. For more information, see `Amazon ECS Container Agent Configuration <https://docs.aws.amazon.com/AmazonECS/latest/developerguide/ecs-agent-config.html>`_ in the *Amazon Elastic Container Service Developer Guide* .
|
|
@@ -13118,7 +13159,7 @@ class CfnTaskDefinition(
|
|
|
13118
13159
|
|
|
13119
13160
|
If you have problems using ``entryPoint`` , update your container agent or enter your commands and arguments as ``command`` array items instead.
|
|
13120
13161
|
|
|
13121
|
-
The entry point that's passed to the container. This parameter maps to ``Entrypoint`` in tthe docker
|
|
13162
|
+
The entry point that's passed to the container. This parameter maps to ``Entrypoint`` in tthe docker container create command and the ``--entrypoint`` option to docker run.
|
|
13122
13163
|
|
|
13123
13164
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinition.html#cfn-ecs-taskdefinition-containerdefinition-entrypoint
|
|
13124
13165
|
'''
|
|
@@ -13131,7 +13172,7 @@ class CfnTaskDefinition(
|
|
|
13131
13172
|
) -> typing.Optional[typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, "CfnTaskDefinition.KeyValuePairProperty"]]]]:
|
|
13132
13173
|
'''The environment variables to pass to a container.
|
|
13133
13174
|
|
|
13134
|
-
This parameter maps to ``Env`` in the docker
|
|
13175
|
+
This parameter maps to ``Env`` in the docker container create command and the ``--env`` option to docker run.
|
|
13135
13176
|
.. epigraph::
|
|
13136
13177
|
|
|
13137
13178
|
We don't recommend that you use plaintext environment variables for sensitive information, such as credential data.
|
|
@@ -13179,7 +13220,7 @@ class CfnTaskDefinition(
|
|
|
13179
13220
|
) -> typing.Optional[typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, "CfnTaskDefinition.HostEntryProperty"]]]]:
|
|
13180
13221
|
'''A list of hostnames and IP address mappings to append to the ``/etc/hosts`` file on the container.
|
|
13181
13222
|
|
|
13182
|
-
This parameter maps to ``ExtraHosts`` in the docker
|
|
13223
|
+
This parameter maps to ``ExtraHosts`` in the docker container create command and the ``--add-host`` option to docker run.
|
|
13183
13224
|
.. epigraph::
|
|
13184
13225
|
|
|
13185
13226
|
This parameter isn't supported for Windows containers or tasks that use the ``awsvpc`` network mode.
|
|
@@ -13208,7 +13249,7 @@ class CfnTaskDefinition(
|
|
|
13208
13249
|
) -> typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnTaskDefinition.HealthCheckProperty"]]:
|
|
13209
13250
|
'''The container health check command and associated configuration parameters for the container.
|
|
13210
13251
|
|
|
13211
|
-
This parameter maps to ``HealthCheck`` in the docker
|
|
13252
|
+
This parameter maps to ``HealthCheck`` in the docker container create command and the ``HEALTHCHECK`` parameter of docker run.
|
|
13212
13253
|
|
|
13213
13254
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinition.html#cfn-ecs-taskdefinition-containerdefinition-healthcheck
|
|
13214
13255
|
'''
|
|
@@ -13219,7 +13260,7 @@ class CfnTaskDefinition(
|
|
|
13219
13260
|
def hostname(self) -> typing.Optional[builtins.str]:
|
|
13220
13261
|
'''The hostname to use for your container.
|
|
13221
13262
|
|
|
13222
|
-
This parameter maps to ``Hostname`` in thethe docker
|
|
13263
|
+
This parameter maps to ``Hostname`` in thethe docker container create command and the ``--hostname`` option to docker run.
|
|
13223
13264
|
.. epigraph::
|
|
13224
13265
|
|
|
13225
13266
|
The ``hostname`` parameter is not supported if you're using the ``awsvpc`` network mode.
|
|
@@ -13235,7 +13276,7 @@ class CfnTaskDefinition(
|
|
|
13235
13276
|
) -> typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]]:
|
|
13236
13277
|
'''When this parameter is ``true`` , you can deploy containerized applications that require ``stdin`` or a ``tty`` to be allocated.
|
|
13237
13278
|
|
|
13238
|
-
This parameter maps to ``OpenStdin`` in the docker
|
|
13279
|
+
This parameter maps to ``OpenStdin`` in the docker container create command and the ``--interactive`` option to docker run.
|
|
13239
13280
|
|
|
13240
13281
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinition.html#cfn-ecs-taskdefinition-containerdefinition-interactive
|
|
13241
13282
|
'''
|
|
@@ -13246,7 +13287,7 @@ class CfnTaskDefinition(
|
|
|
13246
13287
|
def links(self) -> typing.Optional[typing.List[builtins.str]]:
|
|
13247
13288
|
'''The ``links`` parameter allows containers to communicate with each other without the need for port mappings.
|
|
13248
13289
|
|
|
13249
|
-
This parameter is only supported if the network mode of a task definition is ``bridge`` . The ``name:internalName`` construct is analogous to ``name:alias`` in Docker links. Up to 255 letters (uppercase and lowercase), numbers, underscores, and hyphens are allowed.. This parameter maps to ``Links`` in the docker
|
|
13290
|
+
This parameter is only supported if the network mode of a task definition is ``bridge`` . The ``name:internalName`` construct is analogous to ``name:alias`` in Docker links. Up to 255 letters (uppercase and lowercase), numbers, underscores, and hyphens are allowed.. This parameter maps to ``Links`` in the docker container create command and the ``--link`` option to docker run.
|
|
13250
13291
|
.. epigraph::
|
|
13251
13292
|
|
|
13252
13293
|
This parameter is not supported for Windows containers. > Containers that are collocated on a single container instance may be able to communicate with each other without requiring links or host port mappings. Network isolation is achieved on the container instance using security groups and VPC settings.
|
|
@@ -13315,7 +13356,7 @@ class CfnTaskDefinition(
|
|
|
13315
13356
|
def memory_reservation(self) -> typing.Optional[jsii.Number]:
|
|
13316
13357
|
'''The soft limit (in MiB) of memory to reserve for the container.
|
|
13317
13358
|
|
|
13318
|
-
When system memory is under heavy contention, Docker attempts to keep the container memory to this soft limit. However, your container can consume more memory when it needs to, up to either the hard limit specified with the ``memory`` parameter (if applicable), or all of the available memory on the container instance, whichever comes first. This parameter maps to ``MemoryReservation`` in the
|
|
13359
|
+
When system memory is under heavy contention, Docker attempts to keep the container memory to this soft limit. However, your container can consume more memory when it needs to, up to either the hard limit specified with the ``memory`` parameter (if applicable), or all of the available memory on the container instance, whichever comes first. This parameter maps to ``MemoryReservation`` in the docker container create command and the ``--memory-reservation`` option to docker run.
|
|
13319
13360
|
|
|
13320
13361
|
If a task-level memory value is not specified, you must specify a non-zero integer for one or both of ``memory`` or ``memoryReservation`` in a container definition. If you specify both, ``memory`` must be greater than ``memoryReservation`` . If you specify ``memoryReservation`` , then that value is subtracted from the available memory resources for the container instance where the container is placed. Otherwise, the value of ``memory`` is used.
|
|
13321
13362
|
|
|
@@ -13336,7 +13377,7 @@ class CfnTaskDefinition(
|
|
|
13336
13377
|
) -> typing.Optional[typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, "CfnTaskDefinition.MountPointProperty"]]]]:
|
|
13337
13378
|
'''The mount points for data volumes in your container.
|
|
13338
13379
|
|
|
13339
|
-
This parameter maps to ``Volumes`` in the
|
|
13380
|
+
This parameter maps to ``Volumes`` in the docker container create command and the ``--volume`` option to docker run.
|
|
13340
13381
|
|
|
13341
13382
|
Windows containers can mount whole directories on the same drive as ``$env:ProgramData`` . Windows containers can't mount directories on a different drive, and mount point can't be across drives.
|
|
13342
13383
|
|
|
@@ -13373,7 +13414,7 @@ class CfnTaskDefinition(
|
|
|
13373
13414
|
) -> typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]]:
|
|
13374
13415
|
'''When this parameter is true, the container is given elevated privileges on the host container instance (similar to the ``root`` user).
|
|
13375
13416
|
|
|
13376
|
-
This parameter maps to ``Privileged`` in the
|
|
13417
|
+
This parameter maps to ``Privileged`` in the docker container create command and the ``--privileged`` option to docker run
|
|
13377
13418
|
.. epigraph::
|
|
13378
13419
|
|
|
13379
13420
|
This parameter is not supported for Windows containers or tasks run on AWS Fargate .
|
|
@@ -13389,7 +13430,7 @@ class CfnTaskDefinition(
|
|
|
13389
13430
|
) -> typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]]:
|
|
13390
13431
|
'''When this parameter is ``true`` , a TTY is allocated.
|
|
13391
13432
|
|
|
13392
|
-
This parameter maps to ``Tty`` in tthe docker
|
|
13433
|
+
This parameter maps to ``Tty`` in tthe docker container create command and the ``--tty`` option to docker run.
|
|
13393
13434
|
|
|
13394
13435
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinition.html#cfn-ecs-taskdefinition-containerdefinition-pseudoterminal
|
|
13395
13436
|
'''
|
|
@@ -13402,7 +13443,7 @@ class CfnTaskDefinition(
|
|
|
13402
13443
|
) -> typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]]:
|
|
13403
13444
|
'''When this parameter is true, the container is given read-only access to its root file system.
|
|
13404
13445
|
|
|
13405
|
-
This parameter maps to ``ReadonlyRootfs`` in the docker
|
|
13446
|
+
This parameter maps to ``ReadonlyRootfs`` in the docker container create command and the ``--read-only`` option to docker run.
|
|
13406
13447
|
.. epigraph::
|
|
13407
13448
|
|
|
13408
13449
|
This parameter is not supported for Windows containers.
|
|
@@ -13436,6 +13477,19 @@ class CfnTaskDefinition(
|
|
|
13436
13477
|
result = self._values.get("resource_requirements")
|
|
13437
13478
|
return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, "CfnTaskDefinition.ResourceRequirementProperty"]]]], result)
|
|
13438
13479
|
|
|
13480
|
+
@builtins.property
|
|
13481
|
+
def restart_policy(
|
|
13482
|
+
self,
|
|
13483
|
+
) -> typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnTaskDefinition.RestartPolicyProperty"]]:
|
|
13484
|
+
'''The restart policy for a container.
|
|
13485
|
+
|
|
13486
|
+
When you set up a restart policy, Amazon ECS can restart the container without needing to replace the task. For more information, see `Restart individual containers in Amazon ECS tasks with container restart policies <https://docs.aws.amazon.com/AmazonECS/latest/developerguide/container-restart-policy.html>`_ in the *Amazon Elastic Container Service Developer Guide* .
|
|
13487
|
+
|
|
13488
|
+
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinition.html#cfn-ecs-taskdefinition-containerdefinition-restartpolicy
|
|
13489
|
+
'''
|
|
13490
|
+
result = self._values.get("restart_policy")
|
|
13491
|
+
return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnTaskDefinition.RestartPolicyProperty"]], result)
|
|
13492
|
+
|
|
13439
13493
|
@builtins.property
|
|
13440
13494
|
def secrets(
|
|
13441
13495
|
self,
|
|
@@ -13498,7 +13552,7 @@ class CfnTaskDefinition(
|
|
|
13498
13552
|
) -> typing.Optional[typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, "CfnTaskDefinition.SystemControlProperty"]]]]:
|
|
13499
13553
|
'''A list of namespaced kernel parameters to set in the container.
|
|
13500
13554
|
|
|
13501
|
-
This parameter maps to ``Sysctls`` in tthe docker
|
|
13555
|
+
This parameter maps to ``Sysctls`` in tthe docker container create command and the ``--sysctl`` option to docker run. For example, you can configure ``net.ipv4.tcp_keepalive_time`` setting to maintain longer lived connections.
|
|
13502
13556
|
|
|
13503
13557
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinition.html#cfn-ecs-taskdefinition-containerdefinition-systemcontrols
|
|
13504
13558
|
'''
|
|
@@ -13525,7 +13579,7 @@ class CfnTaskDefinition(
|
|
|
13525
13579
|
def user(self) -> typing.Optional[builtins.str]:
|
|
13526
13580
|
'''The user to use inside the container.
|
|
13527
13581
|
|
|
13528
|
-
This parameter maps to ``User`` in the docker
|
|
13582
|
+
This parameter maps to ``User`` in the docker container create command and the ``--user`` option to docker run.
|
|
13529
13583
|
.. epigraph::
|
|
13530
13584
|
|
|
13531
13585
|
When running tasks using the ``host`` network mode, don't run containers using the root user (UID 0). We recommend using a non-root user for better security.
|
|
@@ -13554,7 +13608,7 @@ class CfnTaskDefinition(
|
|
|
13554
13608
|
) -> typing.Optional[typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, "CfnTaskDefinition.VolumeFromProperty"]]]]:
|
|
13555
13609
|
'''Data volumes to mount from another container.
|
|
13556
13610
|
|
|
13557
|
-
This parameter maps to ``VolumesFrom`` in tthe docker
|
|
13611
|
+
This parameter maps to ``VolumesFrom`` in tthe docker container create command and the ``--volumes-from`` option to docker run.
|
|
13558
13612
|
|
|
13559
13613
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinition.html#cfn-ecs-taskdefinition-containerdefinition-volumesfrom
|
|
13560
13614
|
'''
|
|
@@ -13565,7 +13619,7 @@ class CfnTaskDefinition(
|
|
|
13565
13619
|
def working_directory(self) -> typing.Optional[builtins.str]:
|
|
13566
13620
|
'''The working directory to run commands inside the container in.
|
|
13567
13621
|
|
|
13568
|
-
This parameter maps to ``WorkingDir`` in the docker
|
|
13622
|
+
This parameter maps to ``WorkingDir`` in the docker container create command and the ``--workdir`` option to docker run.
|
|
13569
13623
|
|
|
13570
13624
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-containerdefinition.html#cfn-ecs-taskdefinition-containerdefinition-workingdirectory
|
|
13571
13625
|
'''
|
|
@@ -13782,9 +13836,9 @@ class CfnTaskDefinition(
|
|
|
13782
13836
|
Docker volumes are only supported when you are using the EC2 launch type. Windows containers only support the use of the ``local`` driver. To use bind mounts, specify a ``host`` instead.
|
|
13783
13837
|
|
|
13784
13838
|
:param autoprovision: If this value is ``true`` , the Docker volume is created if it doesn't already exist. .. epigraph:: This field is only used if the ``scope`` is ``shared`` .
|
|
13785
|
-
:param driver: The Docker volume driver to use. The driver value must match the driver name provided by Docker because it is used for task placement. If the driver was installed using the Docker plugin CLI, use ``docker plugin ls`` to retrieve the driver name from your container instance. If the driver was installed using another method, use Docker plugin discovery to retrieve the driver name. This parameter maps to ``Driver`` in the docker
|
|
13839
|
+
:param driver: The Docker volume driver to use. The driver value must match the driver name provided by Docker because it is used for task placement. If the driver was installed using the Docker plugin CLI, use ``docker plugin ls`` to retrieve the driver name from your container instance. If the driver was installed using another method, use Docker plugin discovery to retrieve the driver name. This parameter maps to ``Driver`` in the docker container create command and the ``xxdriver`` option to docker volume create.
|
|
13786
13840
|
:param driver_opts: A map of Docker driver-specific options passed through. This parameter maps to ``DriverOpts`` in the docker create-volume command and the ``xxopt`` option to docker volume create.
|
|
13787
|
-
:param labels: Custom metadata to add to your Docker volume. This parameter maps to ``Labels`` in the docker
|
|
13841
|
+
:param labels: Custom metadata to add to your Docker volume. This parameter maps to ``Labels`` in the docker container create command and the ``xxlabel`` option to docker volume create.
|
|
13788
13842
|
:param scope: The scope for the Docker volume that determines its lifecycle. Docker volumes that are scoped to a ``task`` are automatically provisioned when the task starts and destroyed when the task stops. Docker volumes that are scoped as ``shared`` persist after the task stops.
|
|
13789
13843
|
|
|
13790
13844
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-dockervolumeconfiguration.html
|
|
@@ -13846,7 +13900,7 @@ class CfnTaskDefinition(
|
|
|
13846
13900
|
def driver(self) -> typing.Optional[builtins.str]:
|
|
13847
13901
|
'''The Docker volume driver to use.
|
|
13848
13902
|
|
|
13849
|
-
The driver value must match the driver name provided by Docker because it is used for task placement. If the driver was installed using the Docker plugin CLI, use ``docker plugin ls`` to retrieve the driver name from your container instance. If the driver was installed using another method, use Docker plugin discovery to retrieve the driver name. This parameter maps to ``Driver`` in the docker
|
|
13903
|
+
The driver value must match the driver name provided by Docker because it is used for task placement. If the driver was installed using the Docker plugin CLI, use ``docker plugin ls`` to retrieve the driver name from your container instance. If the driver was installed using another method, use Docker plugin discovery to retrieve the driver name. This parameter maps to ``Driver`` in the docker container create command and the ``xxdriver`` option to docker volume create.
|
|
13850
13904
|
|
|
13851
13905
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-dockervolumeconfiguration.html#cfn-ecs-taskdefinition-dockervolumeconfiguration-driver
|
|
13852
13906
|
'''
|
|
@@ -13872,7 +13926,7 @@ class CfnTaskDefinition(
|
|
|
13872
13926
|
) -> typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Mapping[builtins.str, builtins.str]]]:
|
|
13873
13927
|
'''Custom metadata to add to your Docker volume.
|
|
13874
13928
|
|
|
13875
|
-
This parameter maps to ``Labels`` in the docker
|
|
13929
|
+
This parameter maps to ``Labels`` in the docker container create command and the ``xxlabel`` option to docker volume create.
|
|
13876
13930
|
|
|
13877
13931
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-dockervolumeconfiguration.html#cfn-ecs-taskdefinition-dockervolumeconfiguration-labels
|
|
13878
13932
|
'''
|
|
@@ -14206,9 +14260,14 @@ class CfnTaskDefinition(
|
|
|
14206
14260
|
credentials_parameter: builtins.str,
|
|
14207
14261
|
domain: builtins.str,
|
|
14208
14262
|
) -> None:
|
|
14209
|
-
'''
|
|
14210
|
-
|
|
14211
|
-
|
|
14263
|
+
'''The authorization configuration details for Amazon FSx for Windows File Server file system.
|
|
14264
|
+
|
|
14265
|
+
See `FSxWindowsFileServerVolumeConfiguration <https://docs.aws.amazon.com/AmazonECS/latest/APIReference/API_FSxWindowsFileServerVolumeConfiguration.html>`_ in the *Amazon ECS API Reference* .
|
|
14266
|
+
|
|
14267
|
+
For more information and the input format, see `Amazon FSx for Windows File Server Volumes <https://docs.aws.amazon.com/AmazonECS/latest/developerguide/wfsx-volumes.html>`_ in the *Amazon Elastic Container Service Developer Guide* .
|
|
14268
|
+
|
|
14269
|
+
:param credentials_parameter: The authorization credential option to use. The authorization credential options can be provided using either the Amazon Resource Name (ARN) of an AWS Secrets Manager secret or SSM Parameter Store parameter. The ARN refers to the stored credentials.
|
|
14270
|
+
:param domain: A fully qualified domain name hosted by an `AWS Directory Service <https://docs.aws.amazon.com/directoryservice/latest/admin-guide/directory_microsoft_ad.html>`_ Managed Microsoft AD (Active Directory) or self-hosted AD on Amazon EC2.
|
|
14212
14271
|
|
|
14213
14272
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-fsxauthorizationconfig.html
|
|
14214
14273
|
:exampleMetadata: fixture=_generated
|
|
@@ -14235,7 +14294,10 @@ class CfnTaskDefinition(
|
|
|
14235
14294
|
|
|
14236
14295
|
@builtins.property
|
|
14237
14296
|
def credentials_parameter(self) -> builtins.str:
|
|
14238
|
-
'''
|
|
14297
|
+
'''The authorization credential option to use.
|
|
14298
|
+
|
|
14299
|
+
The authorization credential options can be provided using either the Amazon Resource Name (ARN) of an AWS Secrets Manager secret or SSM Parameter Store parameter. The ARN refers to the stored credentials.
|
|
14300
|
+
|
|
14239
14301
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-fsxauthorizationconfig.html#cfn-ecs-taskdefinition-fsxauthorizationconfig-credentialsparameter
|
|
14240
14302
|
'''
|
|
14241
14303
|
result = self._values.get("credentials_parameter")
|
|
@@ -14244,7 +14306,8 @@ class CfnTaskDefinition(
|
|
|
14244
14306
|
|
|
14245
14307
|
@builtins.property
|
|
14246
14308
|
def domain(self) -> builtins.str:
|
|
14247
|
-
'''
|
|
14309
|
+
'''A fully qualified domain name hosted by an `AWS Directory Service <https://docs.aws.amazon.com/directoryservice/latest/admin-guide/directory_microsoft_ad.html>`_ Managed Microsoft AD (Active Directory) or self-hosted AD on Amazon EC2.
|
|
14310
|
+
|
|
14248
14311
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-fsxauthorizationconfig.html#cfn-ecs-taskdefinition-fsxauthorizationconfig-domain
|
|
14249
14312
|
'''
|
|
14250
14313
|
result = self._values.get("domain")
|
|
@@ -14483,7 +14546,7 @@ class CfnTaskDefinition(
|
|
|
14483
14546
|
- Container health checks are supported for Fargate tasks if you are using platform version 1.1.0 or greater. For more information, see `AWS Fargate Platform Versions <https://docs.aws.amazon.com/AmazonECS/latest/developerguide/platform_versions.html>`_ .
|
|
14484
14547
|
- Container health checks are not supported for tasks that are part of a service that is configured to use a Classic Load Balancer.
|
|
14485
14548
|
|
|
14486
|
-
:param command: A string array representing the command that the container runs to determine if it is healthy. The string array must start with ``CMD`` to run the command arguments directly, or ``CMD-SHELL`` to run the command with the container's default shell. When you use the AWS Management Console JSON panel, the AWS Command Line Interface , or the APIs, enclose the list of commands in double quotes and brackets. ``[ "CMD-SHELL", "curl -f http://localhost/ || exit 1" ]`` You don't include the double quotes and brackets when you use the AWS Management Console. ``CMD-SHELL, curl -f http://localhost/ || exit 1`` An exit code of 0 indicates success, and non-zero exit code indicates failure. For more information, see ``HealthCheck`` in tthe docker
|
|
14549
|
+
:param command: A string array representing the command that the container runs to determine if it is healthy. The string array must start with ``CMD`` to run the command arguments directly, or ``CMD-SHELL`` to run the command with the container's default shell. When you use the AWS Management Console JSON panel, the AWS Command Line Interface , or the APIs, enclose the list of commands in double quotes and brackets. ``[ "CMD-SHELL", "curl -f http://localhost/ || exit 1" ]`` You don't include the double quotes and brackets when you use the AWS Management Console. ``CMD-SHELL, curl -f http://localhost/ || exit 1`` An exit code of 0 indicates success, and non-zero exit code indicates failure. For more information, see ``HealthCheck`` in tthe docker container create command
|
|
14487
14550
|
:param interval: The time period in seconds between each health check execution. You may specify between 5 and 300 seconds. The default value is 30 seconds.
|
|
14488
14551
|
:param retries: The number of times to retry a failed health check before the container is considered unhealthy. You may specify between 1 and 10 retries. The default value is 3.
|
|
14489
14552
|
:param start_period: The optional grace period to provide containers time to bootstrap before failed health checks count towards the maximum number of retries. You can specify between 0 and 300 seconds. By default, the ``startPeriod`` is off. .. epigraph:: If a health check succeeds within the ``startPeriod`` , then the container is considered healthy and any subsequent failures count toward the maximum number of retries.
|
|
@@ -14539,7 +14602,7 @@ class CfnTaskDefinition(
|
|
|
14539
14602
|
|
|
14540
14603
|
``CMD-SHELL, curl -f http://localhost/ || exit 1``
|
|
14541
14604
|
|
|
14542
|
-
An exit code of 0 indicates success, and non-zero exit code indicates failure. For more information, see ``HealthCheck`` in tthe docker
|
|
14605
|
+
An exit code of 0 indicates success, and non-zero exit code indicates failure. For more information, see ``HealthCheck`` in tthe docker container create command
|
|
14543
14606
|
|
|
14544
14607
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-healthcheck.html#cfn-ecs-taskdefinition-healthcheck-command
|
|
14545
14608
|
'''
|
|
@@ -14823,8 +14886,8 @@ class CfnTaskDefinition(
|
|
|
14823
14886
|
|
|
14824
14887
|
For more detailed information about these Linux capabilities, see the `capabilities(7) <https://docs.aws.amazon.com/http://man7.org/linux/man-pages/man7/capabilities.7.html>`_ Linux manual page.
|
|
14825
14888
|
|
|
14826
|
-
:param add: The Linux capabilities for the container that have been added to the default configuration provided by Docker. This parameter maps to ``CapAdd`` in the docker
|
|
14827
|
-
:param drop: The Linux capabilities for the container that have been removed from the default configuration provided by Docker. This parameter maps to ``CapDrop`` in the docker
|
|
14889
|
+
:param add: The Linux capabilities for the container that have been added to the default configuration provided by Docker. This parameter maps to ``CapAdd`` in the docker container create command and the ``--cap-add`` option to docker run. .. epigraph:: Tasks launched on AWS Fargate only support adding the ``SYS_PTRACE`` kernel capability. Valid values: ``"ALL" | "AUDIT_CONTROL" | "AUDIT_WRITE" | "BLOCK_SUSPEND" | "CHOWN" | "DAC_OVERRIDE" | "DAC_READ_SEARCH" | "FOWNER" | "FSETID" | "IPC_LOCK" | "IPC_OWNER" | "KILL" | "LEASE" | "LINUX_IMMUTABLE" | "MAC_ADMIN" | "MAC_OVERRIDE" | "MKNOD" | "NET_ADMIN" | "NET_BIND_SERVICE" | "NET_BROADCAST" | "NET_RAW" | "SETFCAP" | "SETGID" | "SETPCAP" | "SETUID" | "SYS_ADMIN" | "SYS_BOOT" | "SYS_CHROOT" | "SYS_MODULE" | "SYS_NICE" | "SYS_PACCT" | "SYS_PTRACE" | "SYS_RAWIO" | "SYS_RESOURCE" | "SYS_TIME" | "SYS_TTY_CONFIG" | "SYSLOG" | "WAKE_ALARM"``
|
|
14890
|
+
:param drop: The Linux capabilities for the container that have been removed from the default configuration provided by Docker. This parameter maps to ``CapDrop`` in the docker container create command and the ``--cap-drop`` option to docker run. Valid values: ``"ALL" | "AUDIT_CONTROL" | "AUDIT_WRITE" | "BLOCK_SUSPEND" | "CHOWN" | "DAC_OVERRIDE" | "DAC_READ_SEARCH" | "FOWNER" | "FSETID" | "IPC_LOCK" | "IPC_OWNER" | "KILL" | "LEASE" | "LINUX_IMMUTABLE" | "MAC_ADMIN" | "MAC_OVERRIDE" | "MKNOD" | "NET_ADMIN" | "NET_BIND_SERVICE" | "NET_BROADCAST" | "NET_RAW" | "SETFCAP" | "SETGID" | "SETPCAP" | "SETUID" | "SYS_ADMIN" | "SYS_BOOT" | "SYS_CHROOT" | "SYS_MODULE" | "SYS_NICE" | "SYS_PACCT" | "SYS_PTRACE" | "SYS_RAWIO" | "SYS_RESOURCE" | "SYS_TIME" | "SYS_TTY_CONFIG" | "SYSLOG" | "WAKE_ALARM"``
|
|
14828
14891
|
|
|
14829
14892
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-kernelcapabilities.html
|
|
14830
14893
|
:exampleMetadata: fixture=_generated
|
|
@@ -14854,7 +14917,7 @@ class CfnTaskDefinition(
|
|
|
14854
14917
|
def add(self) -> typing.Optional[typing.List[builtins.str]]:
|
|
14855
14918
|
'''The Linux capabilities for the container that have been added to the default configuration provided by Docker.
|
|
14856
14919
|
|
|
14857
|
-
This parameter maps to ``CapAdd`` in the docker
|
|
14920
|
+
This parameter maps to ``CapAdd`` in the docker container create command and the ``--cap-add`` option to docker run.
|
|
14858
14921
|
.. epigraph::
|
|
14859
14922
|
|
|
14860
14923
|
Tasks launched on AWS Fargate only support adding the ``SYS_PTRACE`` kernel capability.
|
|
@@ -14870,7 +14933,7 @@ class CfnTaskDefinition(
|
|
|
14870
14933
|
def drop(self) -> typing.Optional[typing.List[builtins.str]]:
|
|
14871
14934
|
'''The Linux capabilities for the container that have been removed from the default configuration provided by Docker.
|
|
14872
14935
|
|
|
14873
|
-
This parameter maps to ``CapDrop`` in the docker
|
|
14936
|
+
This parameter maps to ``CapDrop`` in the docker container create command and the ``--cap-drop`` option to docker run.
|
|
14874
14937
|
|
|
14875
14938
|
Valid values: ``"ALL" | "AUDIT_CONTROL" | "AUDIT_WRITE" | "BLOCK_SUSPEND" | "CHOWN" | "DAC_OVERRIDE" | "DAC_READ_SEARCH" | "FOWNER" | "FSETID" | "IPC_LOCK" | "IPC_OWNER" | "KILL" | "LEASE" | "LINUX_IMMUTABLE" | "MAC_ADMIN" | "MAC_OVERRIDE" | "MKNOD" | "NET_ADMIN" | "NET_BIND_SERVICE" | "NET_BROADCAST" | "NET_RAW" | "SETFCAP" | "SETGID" | "SETPCAP" | "SETUID" | "SYS_ADMIN" | "SYS_BOOT" | "SYS_CHROOT" | "SYS_MODULE" | "SYS_NICE" | "SYS_PACCT" | "SYS_PTRACE" | "SYS_RAWIO" | "SYS_RESOURCE" | "SYS_TIME" | "SYS_TTY_CONFIG" | "SYSLOG" | "WAKE_ALARM"``
|
|
14876
14939
|
|
|
@@ -14992,7 +15055,7 @@ class CfnTaskDefinition(
|
|
|
14992
15055
|
'''The Linux-specific options that are applied to the container, such as Linux `KernelCapabilities <https://docs.aws.amazon.com/AmazonECS/latest/APIReference/API_KernelCapabilities.html>`_ .
|
|
14993
15056
|
|
|
14994
15057
|
:param capabilities: The Linux capabilities for the container that are added to or dropped from the default configuration provided by Docker. .. epigraph:: For tasks that use the Fargate launch type, ``capabilities`` is supported for all platform versions but the ``add`` parameter is only supported if using platform version 1.4.0 or later.
|
|
14995
|
-
:param devices: Any host devices to expose to the container. This parameter maps to ``Devices`` in tthe docker
|
|
15058
|
+
:param devices: Any host devices to expose to the container. This parameter maps to ``Devices`` in tthe docker container create command and the ``--device`` option to docker run. .. epigraph:: If you're using tasks that use the Fargate launch type, the ``devices`` parameter isn't supported.
|
|
14996
15059
|
:param init_process_enabled: Run an ``init`` process inside the container that forwards signals and reaps processes. This parameter maps to the ``--init`` option to docker run. This parameter requires version 1.25 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 --format '{{.Server.APIVersion}}'``
|
|
14997
15060
|
:param max_swap: The total amount of swap memory (in MiB) a container can use. This parameter will be translated to the ``--memory-swap`` option to docker run where the value would be the sum of the container memory plus the ``maxSwap`` value. If a ``maxSwap`` value of ``0`` is specified, the container will not use swap. Accepted values are ``0`` or any positive integer. If the ``maxSwap`` parameter is omitted, the container will use the swap configuration for the container instance it is running on. A ``maxSwap`` value must be set for the ``swappiness`` parameter to be used. .. epigraph:: If you're using tasks that use the Fargate launch type, the ``maxSwap`` parameter isn't supported. If you're using tasks on Amazon Linux 2023 the ``swappiness`` parameter isn't supported.
|
|
14998
15061
|
:param shared_memory_size: The value for the size (in MiB) of the ``/dev/shm`` volume. This parameter maps to the ``--shm-size`` option to docker run. .. epigraph:: If you are using tasks that use the Fargate launch type, the ``sharedMemorySize`` parameter is not supported.
|
|
@@ -15077,7 +15140,7 @@ class CfnTaskDefinition(
|
|
|
15077
15140
|
) -> typing.Optional[typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, "CfnTaskDefinition.DeviceProperty"]]]]:
|
|
15078
15141
|
'''Any host devices to expose to the container.
|
|
15079
15142
|
|
|
15080
|
-
This parameter maps to ``Devices`` in tthe docker
|
|
15143
|
+
This parameter maps to ``Devices`` in tthe docker container create command and the ``--device`` option to docker run.
|
|
15081
15144
|
.. epigraph::
|
|
15082
15145
|
|
|
15083
15146
|
If you're using tasks that use the Fargate launch type, the ``devices`` parameter isn't supported.
|
|
@@ -15822,6 +15885,105 @@ class CfnTaskDefinition(
|
|
|
15822
15885
|
k + "=" + repr(v) for k, v in self._values.items()
|
|
15823
15886
|
)
|
|
15824
15887
|
|
|
15888
|
+
@jsii.data_type(
|
|
15889
|
+
jsii_type="aws-cdk-lib.aws_ecs.CfnTaskDefinition.RestartPolicyProperty",
|
|
15890
|
+
jsii_struct_bases=[],
|
|
15891
|
+
name_mapping={
|
|
15892
|
+
"enabled": "enabled",
|
|
15893
|
+
"ignored_exit_codes": "ignoredExitCodes",
|
|
15894
|
+
"restart_attempt_period": "restartAttemptPeriod",
|
|
15895
|
+
},
|
|
15896
|
+
)
|
|
15897
|
+
class RestartPolicyProperty:
|
|
15898
|
+
def __init__(
|
|
15899
|
+
self,
|
|
15900
|
+
*,
|
|
15901
|
+
enabled: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]] = None,
|
|
15902
|
+
ignored_exit_codes: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Sequence[jsii.Number]]] = None,
|
|
15903
|
+
restart_attempt_period: typing.Optional[jsii.Number] = None,
|
|
15904
|
+
) -> None:
|
|
15905
|
+
'''You can enable a restart policy for each container defined in your task definition, to overcome transient failures faster and maintain task availability.
|
|
15906
|
+
|
|
15907
|
+
When you enable a restart policy for a container, Amazon ECS can restart the container if it exits, without needing to replace the task. For more information, see `Restart individual containers in Amazon ECS tasks with container restart policies <https://docs.aws.amazon.com/AmazonECS/latest/developerguide/container-restart-policy.html>`_ in the *Amazon Elastic Container Service Developer Guide* .
|
|
15908
|
+
|
|
15909
|
+
:param enabled: Specifies whether a restart policy is enabled for the container.
|
|
15910
|
+
:param ignored_exit_codes: A list of exit codes that Amazon ECS will ignore and not attempt a restart on. You can specify a maximum of 50 container exit codes. By default, Amazon ECS does not ignore any exit codes.
|
|
15911
|
+
:param restart_attempt_period: A period of time (in seconds) that the container must run for before a restart can be attempted. A container can be restarted only once every ``restartAttemptPeriod`` seconds. If a container isn't able to run for this time period and exits early, it will not be restarted. You can set a minimum ``restartAttemptPeriod`` of 60 seconds and a maximum ``restartAttemptPeriod`` of 1800 seconds. By default, a container must run for 300 seconds before it can be restarted.
|
|
15912
|
+
|
|
15913
|
+
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-restartpolicy.html
|
|
15914
|
+
:exampleMetadata: fixture=_generated
|
|
15915
|
+
|
|
15916
|
+
Example::
|
|
15917
|
+
|
|
15918
|
+
# The code below shows an example of how to instantiate this type.
|
|
15919
|
+
# The values are placeholders you should change.
|
|
15920
|
+
from aws_cdk import aws_ecs as ecs
|
|
15921
|
+
|
|
15922
|
+
restart_policy_property = ecs.CfnTaskDefinition.RestartPolicyProperty(
|
|
15923
|
+
enabled=False,
|
|
15924
|
+
ignored_exit_codes=[123],
|
|
15925
|
+
restart_attempt_period=123
|
|
15926
|
+
)
|
|
15927
|
+
'''
|
|
15928
|
+
if __debug__:
|
|
15929
|
+
type_hints = typing.get_type_hints(_typecheckingstub__8ff4a086a815b10fb977e9150a7c099378c03c3a8fe78638f9abfeeaa1b6dad0)
|
|
15930
|
+
check_type(argname="argument enabled", value=enabled, expected_type=type_hints["enabled"])
|
|
15931
|
+
check_type(argname="argument ignored_exit_codes", value=ignored_exit_codes, expected_type=type_hints["ignored_exit_codes"])
|
|
15932
|
+
check_type(argname="argument restart_attempt_period", value=restart_attempt_period, expected_type=type_hints["restart_attempt_period"])
|
|
15933
|
+
self._values: typing.Dict[builtins.str, typing.Any] = {}
|
|
15934
|
+
if enabled is not None:
|
|
15935
|
+
self._values["enabled"] = enabled
|
|
15936
|
+
if ignored_exit_codes is not None:
|
|
15937
|
+
self._values["ignored_exit_codes"] = ignored_exit_codes
|
|
15938
|
+
if restart_attempt_period is not None:
|
|
15939
|
+
self._values["restart_attempt_period"] = restart_attempt_period
|
|
15940
|
+
|
|
15941
|
+
@builtins.property
|
|
15942
|
+
def enabled(
|
|
15943
|
+
self,
|
|
15944
|
+
) -> typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]]:
|
|
15945
|
+
'''Specifies whether a restart policy is enabled for the container.
|
|
15946
|
+
|
|
15947
|
+
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-restartpolicy.html#cfn-ecs-taskdefinition-restartpolicy-enabled
|
|
15948
|
+
'''
|
|
15949
|
+
result = self._values.get("enabled")
|
|
15950
|
+
return typing.cast(typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]], result)
|
|
15951
|
+
|
|
15952
|
+
@builtins.property
|
|
15953
|
+
def ignored_exit_codes(
|
|
15954
|
+
self,
|
|
15955
|
+
) -> typing.Optional[typing.Union[_IResolvable_da3f097b, typing.List[jsii.Number]]]:
|
|
15956
|
+
'''A list of exit codes that Amazon ECS will ignore and not attempt a restart on.
|
|
15957
|
+
|
|
15958
|
+
You can specify a maximum of 50 container exit codes. By default, Amazon ECS does not ignore any exit codes.
|
|
15959
|
+
|
|
15960
|
+
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-restartpolicy.html#cfn-ecs-taskdefinition-restartpolicy-ignoredexitcodes
|
|
15961
|
+
'''
|
|
15962
|
+
result = self._values.get("ignored_exit_codes")
|
|
15963
|
+
return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, typing.List[jsii.Number]]], result)
|
|
15964
|
+
|
|
15965
|
+
@builtins.property
|
|
15966
|
+
def restart_attempt_period(self) -> typing.Optional[jsii.Number]:
|
|
15967
|
+
'''A period of time (in seconds) that the container must run for before a restart can be attempted.
|
|
15968
|
+
|
|
15969
|
+
A container can be restarted only once every ``restartAttemptPeriod`` seconds. If a container isn't able to run for this time period and exits early, it will not be restarted. You can set a minimum ``restartAttemptPeriod`` of 60 seconds and a maximum ``restartAttemptPeriod`` of 1800 seconds. By default, a container must run for 300 seconds before it can be restarted.
|
|
15970
|
+
|
|
15971
|
+
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-restartpolicy.html#cfn-ecs-taskdefinition-restartpolicy-restartattemptperiod
|
|
15972
|
+
'''
|
|
15973
|
+
result = self._values.get("restart_attempt_period")
|
|
15974
|
+
return typing.cast(typing.Optional[jsii.Number], result)
|
|
15975
|
+
|
|
15976
|
+
def __eq__(self, rhs: typing.Any) -> builtins.bool:
|
|
15977
|
+
return isinstance(rhs, self.__class__) and rhs._values == self._values
|
|
15978
|
+
|
|
15979
|
+
def __ne__(self, rhs: typing.Any) -> builtins.bool:
|
|
15980
|
+
return not (rhs == self)
|
|
15981
|
+
|
|
15982
|
+
def __repr__(self) -> str:
|
|
15983
|
+
return "RestartPolicyProperty(%s)" % ", ".join(
|
|
15984
|
+
k + "=" + repr(v) for k, v in self._values.items()
|
|
15985
|
+
)
|
|
15986
|
+
|
|
15825
15987
|
@jsii.data_type(
|
|
15826
15988
|
jsii_type="aws-cdk-lib.aws_ecs.CfnTaskDefinition.RuntimePlatformProperty",
|
|
15827
15989
|
jsii_struct_bases=[],
|
|
@@ -15993,7 +16155,7 @@ class CfnTaskDefinition(
|
|
|
15993
16155
|
) -> None:
|
|
15994
16156
|
'''A list of namespaced kernel parameters to set in the container.
|
|
15995
16157
|
|
|
15996
|
-
This parameter maps to ``Sysctls`` in tthe docker
|
|
16158
|
+
This parameter maps to ``Sysctls`` in tthe docker container create command and the ``--sysctl`` option to docker run. For example, you can configure ``net.ipv4.tcp_keepalive_time`` setting to maintain longer lived connections.
|
|
15997
16159
|
|
|
15998
16160
|
We don't recommend that you specify network-related ``systemControls`` parameters for multiple containers in a single task that also uses either the ``awsvpc`` or ``host`` network mode. Doing this has the following disadvantages:
|
|
15999
16161
|
|
|
@@ -16270,9 +16432,9 @@ class CfnTaskDefinition(
|
|
|
16270
16432
|
|
|
16271
16433
|
You can specify the ``ulimit`` settings for a container in a task definition.
|
|
16272
16434
|
|
|
16273
|
-
:param hard_limit: The hard limit for the ``ulimit`` type.
|
|
16435
|
+
:param hard_limit: The hard limit for the ``ulimit`` type. The value can be specified in bytes, seconds, or as a count, depending on the ``type`` of the ``ulimit`` .
|
|
16274
16436
|
:param name: The ``type`` of the ``ulimit`` .
|
|
16275
|
-
:param soft_limit: The soft limit for the ``ulimit`` type.
|
|
16437
|
+
:param soft_limit: The soft limit for the ``ulimit`` type. The value can be specified in bytes, seconds, or as a count, depending on the ``type`` of the ``ulimit`` .
|
|
16276
16438
|
|
|
16277
16439
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-ulimit.html
|
|
16278
16440
|
:exampleMetadata: fixture=_generated
|
|
@@ -16304,6 +16466,8 @@ class CfnTaskDefinition(
|
|
|
16304
16466
|
def hard_limit(self) -> jsii.Number:
|
|
16305
16467
|
'''The hard limit for the ``ulimit`` type.
|
|
16306
16468
|
|
|
16469
|
+
The value can be specified in bytes, seconds, or as a count, depending on the ``type`` of the ``ulimit`` .
|
|
16470
|
+
|
|
16307
16471
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-ulimit.html#cfn-ecs-taskdefinition-ulimit-hardlimit
|
|
16308
16472
|
'''
|
|
16309
16473
|
result = self._values.get("hard_limit")
|
|
@@ -16324,6 +16488,8 @@ class CfnTaskDefinition(
|
|
|
16324
16488
|
def soft_limit(self) -> jsii.Number:
|
|
16325
16489
|
'''The soft limit for the ``ulimit`` type.
|
|
16326
16490
|
|
|
16491
|
+
The value can be specified in bytes, seconds, or as a count, depending on the ``type`` of the ``ulimit`` .
|
|
16492
|
+
|
|
16327
16493
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskdefinition-ulimit.html#cfn-ecs-taskdefinition-ulimit-softlimit
|
|
16328
16494
|
'''
|
|
16329
16495
|
result = self._values.get("soft_limit")
|
|
@@ -16799,6 +16965,11 @@ class CfnTaskDefinitionProps:
|
|
|
16799
16965
|
type="type",
|
|
16800
16966
|
value="value"
|
|
16801
16967
|
)],
|
|
16968
|
+
restart_policy=ecs.CfnTaskDefinition.RestartPolicyProperty(
|
|
16969
|
+
enabled=False,
|
|
16970
|
+
ignored_exit_codes=[123],
|
|
16971
|
+
restart_attempt_period=123
|
|
16972
|
+
),
|
|
16802
16973
|
secrets=[ecs.CfnTaskDefinition.SecretProperty(
|
|
16803
16974
|
name="name",
|
|
16804
16975
|
value_from="valueFrom"
|
|
@@ -17612,9 +17783,9 @@ class CfnTaskSet(
|
|
|
17612
17783
|
|
|
17613
17784
|
For example ``awsVpcConfiguration={subnets=["subnet-12344321"],securityGroups=["sg-12344321"]}`` .
|
|
17614
17785
|
|
|
17615
|
-
:param subnets: The IDs of the subnets associated with the task or service. There's a limit of 16 subnets that can be specified per ``
|
|
17786
|
+
:param subnets: The IDs of the subnets associated with the task or service. There's a limit of 16 subnets that can be specified per ``awsvpcConfiguration`` . .. epigraph:: All specified subnets must be from the same VPC.
|
|
17616
17787
|
:param assign_public_ip: Whether the task's elastic network interface receives a public IP address. The default value is ``DISABLED`` .
|
|
17617
|
-
:param security_groups: The IDs of the security groups associated with the task or service. If you don't specify a security group, the default security group for the VPC is used. There's a limit of 5 security groups that can be specified per ``
|
|
17788
|
+
:param security_groups: The IDs of the security groups associated with the task or service. If you don't specify a security group, the default security group for the VPC is used. There's a limit of 5 security groups that can be specified per ``awsvpcConfiguration`` . .. epigraph:: All specified security groups must be from the same VPC.
|
|
17618
17789
|
|
|
17619
17790
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-ecs-taskset-awsvpcconfiguration.html
|
|
17620
17791
|
:exampleMetadata: fixture=_generated
|
|
@@ -17650,7 +17821,7 @@ class CfnTaskSet(
|
|
|
17650
17821
|
def subnets(self) -> typing.List[builtins.str]:
|
|
17651
17822
|
'''The IDs of the subnets associated with the task or service.
|
|
17652
17823
|
|
|
17653
|
-
There's a limit of 16 subnets that can be specified per ``
|
|
17824
|
+
There's a limit of 16 subnets that can be specified per ``awsvpcConfiguration`` .
|
|
17654
17825
|
.. epigraph::
|
|
17655
17826
|
|
|
17656
17827
|
All specified subnets must be from the same VPC.
|
|
@@ -17676,7 +17847,7 @@ class CfnTaskSet(
|
|
|
17676
17847
|
def security_groups(self) -> typing.Optional[typing.List[builtins.str]]:
|
|
17677
17848
|
'''The IDs of the security groups associated with the task or service.
|
|
17678
17849
|
|
|
17679
|
-
If you don't specify a security group, the default security group for the VPC is used. There's a limit of 5 security groups that can be specified per ``
|
|
17850
|
+
If you don't specify a security group, the default security group for the VPC is used. There's a limit of 5 security groups that can be specified per ``awsvpcConfiguration`` .
|
|
17680
17851
|
.. epigraph::
|
|
17681
17852
|
|
|
17682
17853
|
All specified security groups must be from the same VPC.
|
|
@@ -42164,6 +42335,7 @@ def _typecheckingstub__d367f5be98d90056ca7f199c577c5744b20417ce5d1c8ad339824ec9d
|
|
|
42164
42335
|
readonly_root_filesystem: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]] = None,
|
|
42165
42336
|
repository_credentials: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnTaskDefinition.RepositoryCredentialsProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
|
|
42166
42337
|
resource_requirements: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union[CfnTaskDefinition.ResourceRequirementProperty, typing.Dict[builtins.str, typing.Any]]]]]] = None,
|
|
42338
|
+
restart_policy: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnTaskDefinition.RestartPolicyProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
|
|
42167
42339
|
secrets: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union[CfnTaskDefinition.SecretProperty, typing.Dict[builtins.str, typing.Any]]]]]] = None,
|
|
42168
42340
|
start_timeout: typing.Optional[jsii.Number] = None,
|
|
42169
42341
|
stop_timeout: typing.Optional[jsii.Number] = None,
|
|
@@ -42372,6 +42544,15 @@ def _typecheckingstub__9f0e59715edb889cdb53a1111c692d2fcadb558bf86158ff87dec568d
|
|
|
42372
42544
|
"""Type checking stubs"""
|
|
42373
42545
|
pass
|
|
42374
42546
|
|
|
42547
|
+
def _typecheckingstub__8ff4a086a815b10fb977e9150a7c099378c03c3a8fe78638f9abfeeaa1b6dad0(
|
|
42548
|
+
*,
|
|
42549
|
+
enabled: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]] = None,
|
|
42550
|
+
ignored_exit_codes: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Sequence[jsii.Number]]] = None,
|
|
42551
|
+
restart_attempt_period: typing.Optional[jsii.Number] = None,
|
|
42552
|
+
) -> None:
|
|
42553
|
+
"""Type checking stubs"""
|
|
42554
|
+
pass
|
|
42555
|
+
|
|
42375
42556
|
def _typecheckingstub__13b8fed83205e8f8c805885892fec108a4cc1b8e74b0e647c14e5b5235ba8e7c(
|
|
42376
42557
|
*,
|
|
42377
42558
|
cpu_architecture: typing.Optional[builtins.str] = None,
|