aws-cdk-lib 2.212.0__py3-none-any.whl → 2.214.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.

Files changed (65) hide show
  1. aws_cdk/__init__.py +23 -3
  2. aws_cdk/_jsii/__init__.py +1 -1
  3. aws_cdk/_jsii/{aws-cdk-lib@2.212.0.jsii.tgz → aws-cdk-lib@2.214.0.jsii.tgz} +0 -0
  4. aws_cdk/aws_appconfig/__init__.py +18 -6
  5. aws_cdk/aws_appintegrations/__init__.py +4 -4
  6. aws_cdk/aws_apprunner/__init__.py +5 -8
  7. aws_cdk/aws_aps/__init__.py +243 -10
  8. aws_cdk/aws_b2bi/__init__.py +1015 -128
  9. aws_cdk/aws_batch/__init__.py +33 -11
  10. aws_cdk/aws_bedrock/__init__.py +22 -216
  11. aws_cdk/aws_budgets/__init__.py +18 -0
  12. aws_cdk/aws_certificatemanager/__init__.py +96 -15
  13. aws_cdk/aws_cloudformation/__init__.py +3 -3
  14. aws_cdk/aws_cloudwatch/__init__.py +80 -49
  15. aws_cdk/aws_cognito/__init__.py +76 -5
  16. aws_cdk/aws_connect/__init__.py +188 -2
  17. aws_cdk/aws_datazone/__init__.py +2267 -0
  18. aws_cdk/aws_deadline/__init__.py +6 -5
  19. aws_cdk/aws_dynamodb/__init__.py +418 -56
  20. aws_cdk/aws_ec2/__init__.py +51 -10
  21. aws_cdk/aws_ecs/__init__.py +288 -25
  22. aws_cdk/aws_ecs_patterns/__init__.py +2 -0
  23. aws_cdk/aws_eks/__init__.py +124 -0
  24. aws_cdk/aws_elasticloadbalancingv2/__init__.py +6 -2
  25. aws_cdk/aws_entityresolution/__init__.py +107 -0
  26. aws_cdk/aws_events/__init__.py +153 -55
  27. aws_cdk/aws_events_targets/__init__.py +87 -36
  28. aws_cdk/aws_fsx/__init__.py +62 -0
  29. aws_cdk/aws_gameliftstreams/__init__.py +1 -1
  30. aws_cdk/aws_glue/__init__.py +205 -23
  31. aws_cdk/aws_guardduty/__init__.py +205 -100
  32. aws_cdk/aws_iam/__init__.py +18 -0
  33. aws_cdk/aws_inspectorv2/__init__.py +125 -80
  34. aws_cdk/aws_iot/__init__.py +37 -19
  35. aws_cdk/aws_iotsitewise/__init__.py +111 -75
  36. aws_cdk/aws_ivs/__init__.py +17 -17
  37. aws_cdk/aws_kinesisanalytics/__init__.py +122 -3
  38. aws_cdk/aws_kinesisanalyticsv2/__init__.py +122 -3
  39. aws_cdk/aws_lambda/__init__.py +23 -2
  40. aws_cdk/aws_logs/__init__.py +20 -15
  41. aws_cdk/aws_mediapackagev2/__init__.py +2 -2
  42. aws_cdk/aws_networkfirewall/__init__.py +6 -6
  43. aws_cdk/aws_omics/__init__.py +477 -2
  44. aws_cdk/aws_qbusiness/__init__.py +4 -2
  45. aws_cdk/aws_rds/__init__.py +132 -4
  46. aws_cdk/aws_route53/__init__.py +18 -11
  47. aws_cdk/aws_s3/__init__.py +4 -4
  48. aws_cdk/aws_s3_deployment/__init__.py +45 -0
  49. aws_cdk/aws_sagemaker/__init__.py +653 -0
  50. aws_cdk/aws_servicediscovery/__init__.py +22 -37
  51. aws_cdk/aws_sns/__init__.py +12 -2
  52. aws_cdk/aws_sns_subscriptions/__init__.py +3 -1
  53. aws_cdk/aws_sqs/__init__.py +5 -5
  54. aws_cdk/aws_ssm/__init__.py +8 -3
  55. aws_cdk/aws_ssmquicksetup/__init__.py +2 -2
  56. aws_cdk/aws_synthetics/__init__.py +222 -12
  57. aws_cdk/aws_transfer/__init__.py +15 -2
  58. aws_cdk/aws_vpclattice/__init__.py +41 -0
  59. aws_cdk/aws_workspacesweb/__init__.py +71 -41
  60. {aws_cdk_lib-2.212.0.dist-info → aws_cdk_lib-2.214.0.dist-info}/METADATA +2 -2
  61. {aws_cdk_lib-2.212.0.dist-info → aws_cdk_lib-2.214.0.dist-info}/RECORD +65 -65
  62. {aws_cdk_lib-2.212.0.dist-info → aws_cdk_lib-2.214.0.dist-info}/LICENSE +0 -0
  63. {aws_cdk_lib-2.212.0.dist-info → aws_cdk_lib-2.214.0.dist-info}/NOTICE +0 -0
  64. {aws_cdk_lib-2.212.0.dist-info → aws_cdk_lib-2.214.0.dist-info}/WHEEL +0 -0
  65. {aws_cdk_lib-2.212.0.dist-info → aws_cdk_lib-2.214.0.dist-info}/top_level.txt +0 -0
@@ -1606,6 +1606,29 @@ class CfnCluster(
1606
1606
  security_group_ids=["securityGroupIds"],
1607
1607
  subnets=["subnets"]
1608
1608
  ),
1609
+ scheduled_update_config=sagemaker.CfnCluster.ScheduledUpdateConfigProperty(
1610
+ schedule_expression="scheduleExpression",
1611
+
1612
+ # the properties below are optional
1613
+ deployment_config=sagemaker.CfnCluster.DeploymentConfigProperty(
1614
+ auto_rollback_configuration=[sagemaker.CfnCluster.AlarmDetailsProperty(
1615
+ alarm_name="alarmName"
1616
+ )],
1617
+ rolling_update_policy=sagemaker.CfnCluster.RollingUpdatePolicyProperty(
1618
+ maximum_batch_size=sagemaker.CfnCluster.CapacitySizeConfigProperty(
1619
+ type="type",
1620
+ value=123
1621
+ ),
1622
+
1623
+ # the properties below are optional
1624
+ rollback_maximum_batch_size=sagemaker.CfnCluster.CapacitySizeConfigProperty(
1625
+ type="type",
1626
+ value=123
1627
+ )
1628
+ ),
1629
+ wait_interval_in_seconds=123
1630
+ )
1631
+ ),
1609
1632
  threads_per_core=123,
1610
1633
  training_plan_arn="trainingPlanArn"
1611
1634
  )],
@@ -1898,6 +1921,126 @@ class CfnCluster(
1898
1921
  check_type(argname="argument value", value=value, expected_type=type_hints["value"])
1899
1922
  jsii.set(self, "vpcConfig", value) # pyright: ignore[reportArgumentType]
1900
1923
 
1924
+ @jsii.data_type(
1925
+ jsii_type="aws-cdk-lib.aws_sagemaker.CfnCluster.AlarmDetailsProperty",
1926
+ jsii_struct_bases=[],
1927
+ name_mapping={"alarm_name": "alarmName"},
1928
+ )
1929
+ class AlarmDetailsProperty:
1930
+ def __init__(self, *, alarm_name: builtins.str) -> None:
1931
+ '''The details of the alarm to monitor during the AMI update.
1932
+
1933
+ :param alarm_name: The name of the alarm.
1934
+
1935
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-cluster-alarmdetails.html
1936
+ :exampleMetadata: fixture=_generated
1937
+
1938
+ Example::
1939
+
1940
+ # The code below shows an example of how to instantiate this type.
1941
+ # The values are placeholders you should change.
1942
+ from aws_cdk import aws_sagemaker as sagemaker
1943
+
1944
+ alarm_details_property = sagemaker.CfnCluster.AlarmDetailsProperty(
1945
+ alarm_name="alarmName"
1946
+ )
1947
+ '''
1948
+ if __debug__:
1949
+ type_hints = typing.get_type_hints(_typecheckingstub__7a8689483f1b57fd7208731fb78115535cc549c789e4cddd2cb4c380b1130461)
1950
+ check_type(argname="argument alarm_name", value=alarm_name, expected_type=type_hints["alarm_name"])
1951
+ self._values: typing.Dict[builtins.str, typing.Any] = {
1952
+ "alarm_name": alarm_name,
1953
+ }
1954
+
1955
+ @builtins.property
1956
+ def alarm_name(self) -> builtins.str:
1957
+ '''The name of the alarm.
1958
+
1959
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-cluster-alarmdetails.html#cfn-sagemaker-cluster-alarmdetails-alarmname
1960
+ '''
1961
+ result = self._values.get("alarm_name")
1962
+ assert result is not None, "Required property 'alarm_name' is missing"
1963
+ return typing.cast(builtins.str, result)
1964
+
1965
+ def __eq__(self, rhs: typing.Any) -> builtins.bool:
1966
+ return isinstance(rhs, self.__class__) and rhs._values == self._values
1967
+
1968
+ def __ne__(self, rhs: typing.Any) -> builtins.bool:
1969
+ return not (rhs == self)
1970
+
1971
+ def __repr__(self) -> str:
1972
+ return "AlarmDetailsProperty(%s)" % ", ".join(
1973
+ k + "=" + repr(v) for k, v in self._values.items()
1974
+ )
1975
+
1976
+ @jsii.data_type(
1977
+ jsii_type="aws-cdk-lib.aws_sagemaker.CfnCluster.CapacitySizeConfigProperty",
1978
+ jsii_struct_bases=[],
1979
+ name_mapping={"type": "type", "value": "value"},
1980
+ )
1981
+ class CapacitySizeConfigProperty:
1982
+ def __init__(self, *, type: builtins.str, value: jsii.Number) -> None:
1983
+ '''The configuration of the size measurements of the AMI update.
1984
+
1985
+ Using this configuration, you can specify whether SageMaker should update your instance group by an amount or percentage of instances.
1986
+
1987
+ :param type: Specifies whether SageMaker should process the update by amount or percentage of instances.
1988
+ :param value: Specifies the amount or percentage of instances SageMaker updates at a time.
1989
+
1990
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-cluster-capacitysizeconfig.html
1991
+ :exampleMetadata: fixture=_generated
1992
+
1993
+ Example::
1994
+
1995
+ # The code below shows an example of how to instantiate this type.
1996
+ # The values are placeholders you should change.
1997
+ from aws_cdk import aws_sagemaker as sagemaker
1998
+
1999
+ capacity_size_config_property = sagemaker.CfnCluster.CapacitySizeConfigProperty(
2000
+ type="type",
2001
+ value=123
2002
+ )
2003
+ '''
2004
+ if __debug__:
2005
+ type_hints = typing.get_type_hints(_typecheckingstub__037781baa9561e3f7cbaf9bb153526c9205251c5775d32248ba6db579b010bb2)
2006
+ check_type(argname="argument type", value=type, expected_type=type_hints["type"])
2007
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
2008
+ self._values: typing.Dict[builtins.str, typing.Any] = {
2009
+ "type": type,
2010
+ "value": value,
2011
+ }
2012
+
2013
+ @builtins.property
2014
+ def type(self) -> builtins.str:
2015
+ '''Specifies whether SageMaker should process the update by amount or percentage of instances.
2016
+
2017
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-cluster-capacitysizeconfig.html#cfn-sagemaker-cluster-capacitysizeconfig-type
2018
+ '''
2019
+ result = self._values.get("type")
2020
+ assert result is not None, "Required property 'type' is missing"
2021
+ return typing.cast(builtins.str, result)
2022
+
2023
+ @builtins.property
2024
+ def value(self) -> jsii.Number:
2025
+ '''Specifies the amount or percentage of instances SageMaker updates at a time.
2026
+
2027
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-cluster-capacitysizeconfig.html#cfn-sagemaker-cluster-capacitysizeconfig-value
2028
+ '''
2029
+ result = self._values.get("value")
2030
+ assert result is not None, "Required property 'value' is missing"
2031
+ return typing.cast(jsii.Number, result)
2032
+
2033
+ def __eq__(self, rhs: typing.Any) -> builtins.bool:
2034
+ return isinstance(rhs, self.__class__) and rhs._values == self._values
2035
+
2036
+ def __ne__(self, rhs: typing.Any) -> builtins.bool:
2037
+ return not (rhs == self)
2038
+
2039
+ def __repr__(self) -> str:
2040
+ return "CapacitySizeConfigProperty(%s)" % ", ".join(
2041
+ k + "=" + repr(v) for k, v in self._values.items()
2042
+ )
2043
+
1901
2044
  @jsii.data_type(
1902
2045
  jsii_type="aws-cdk-lib.aws_sagemaker.CfnCluster.ClusterEbsVolumeConfigProperty",
1903
2046
  jsii_struct_bases=[],
@@ -1971,6 +2114,7 @@ class CfnCluster(
1971
2114
  "instance_storage_configs": "instanceStorageConfigs",
1972
2115
  "on_start_deep_health_checks": "onStartDeepHealthChecks",
1973
2116
  "override_vpc_config": "overrideVpcConfig",
2117
+ "scheduled_update_config": "scheduledUpdateConfig",
1974
2118
  "threads_per_core": "threadsPerCore",
1975
2119
  "training_plan_arn": "trainingPlanArn",
1976
2120
  },
@@ -1989,6 +2133,7 @@ class CfnCluster(
1989
2133
  instance_storage_configs: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union["CfnCluster.ClusterInstanceStorageConfigProperty", typing.Dict[builtins.str, typing.Any]]]]]] = None,
1990
2134
  on_start_deep_health_checks: typing.Optional[typing.Sequence[builtins.str]] = None,
1991
2135
  override_vpc_config: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnCluster.VpcConfigProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
2136
+ scheduled_update_config: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnCluster.ScheduledUpdateConfigProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
1992
2137
  threads_per_core: typing.Optional[jsii.Number] = None,
1993
2138
  training_plan_arn: typing.Optional[builtins.str] = None,
1994
2139
  ) -> None:
@@ -2004,6 +2149,7 @@ class CfnCluster(
2004
2149
  :param instance_storage_configs: The configurations of additional storage specified to the instance group where the instance (node) is launched.
2005
2150
  :param on_start_deep_health_checks: A flag indicating whether deep health checks should be performed when the HyperPod cluster instance group is created or updated. Deep health checks are comprehensive, invasive tests that validate the health of the underlying hardware and infrastructure components.
2006
2151
  :param override_vpc_config: The customized Amazon VPC configuration at the instance group level that overrides the default Amazon VPC configuration of the SageMaker HyperPod cluster.
2152
+ :param scheduled_update_config: The configuration object of the schedule that SageMaker follows when updating the AMI.
2007
2153
  :param threads_per_core: The number of threads per CPU core you specified under ``CreateCluster`` .
2008
2154
  :param training_plan_arn: The Amazon Resource Name (ARN) of the training plan to use for this cluster instance group. For more information about how to reserve GPU capacity for your SageMaker HyperPod clusters using Amazon SageMaker Training Plan, see CreateTrainingPlan.
2009
2155
 
@@ -2039,6 +2185,29 @@ class CfnCluster(
2039
2185
  security_group_ids=["securityGroupIds"],
2040
2186
  subnets=["subnets"]
2041
2187
  ),
2188
+ scheduled_update_config=sagemaker.CfnCluster.ScheduledUpdateConfigProperty(
2189
+ schedule_expression="scheduleExpression",
2190
+
2191
+ # the properties below are optional
2192
+ deployment_config=sagemaker.CfnCluster.DeploymentConfigProperty(
2193
+ auto_rollback_configuration=[sagemaker.CfnCluster.AlarmDetailsProperty(
2194
+ alarm_name="alarmName"
2195
+ )],
2196
+ rolling_update_policy=sagemaker.CfnCluster.RollingUpdatePolicyProperty(
2197
+ maximum_batch_size=sagemaker.CfnCluster.CapacitySizeConfigProperty(
2198
+ type="type",
2199
+ value=123
2200
+ ),
2201
+
2202
+ # the properties below are optional
2203
+ rollback_maximum_batch_size=sagemaker.CfnCluster.CapacitySizeConfigProperty(
2204
+ type="type",
2205
+ value=123
2206
+ )
2207
+ ),
2208
+ wait_interval_in_seconds=123
2209
+ )
2210
+ ),
2042
2211
  threads_per_core=123,
2043
2212
  training_plan_arn="trainingPlanArn"
2044
2213
  )
@@ -2055,6 +2224,7 @@ class CfnCluster(
2055
2224
  check_type(argname="argument instance_storage_configs", value=instance_storage_configs, expected_type=type_hints["instance_storage_configs"])
2056
2225
  check_type(argname="argument on_start_deep_health_checks", value=on_start_deep_health_checks, expected_type=type_hints["on_start_deep_health_checks"])
2057
2226
  check_type(argname="argument override_vpc_config", value=override_vpc_config, expected_type=type_hints["override_vpc_config"])
2227
+ check_type(argname="argument scheduled_update_config", value=scheduled_update_config, expected_type=type_hints["scheduled_update_config"])
2058
2228
  check_type(argname="argument threads_per_core", value=threads_per_core, expected_type=type_hints["threads_per_core"])
2059
2229
  check_type(argname="argument training_plan_arn", value=training_plan_arn, expected_type=type_hints["training_plan_arn"])
2060
2230
  self._values: typing.Dict[builtins.str, typing.Any] = {
@@ -2074,6 +2244,8 @@ class CfnCluster(
2074
2244
  self._values["on_start_deep_health_checks"] = on_start_deep_health_checks
2075
2245
  if override_vpc_config is not None:
2076
2246
  self._values["override_vpc_config"] = override_vpc_config
2247
+ if scheduled_update_config is not None:
2248
+ self._values["scheduled_update_config"] = scheduled_update_config
2077
2249
  if threads_per_core is not None:
2078
2250
  self._values["threads_per_core"] = threads_per_core
2079
2251
  if training_plan_arn is not None:
@@ -2184,6 +2356,17 @@ class CfnCluster(
2184
2356
  result = self._values.get("override_vpc_config")
2185
2357
  return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnCluster.VpcConfigProperty"]], result)
2186
2358
 
2359
+ @builtins.property
2360
+ def scheduled_update_config(
2361
+ self,
2362
+ ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnCluster.ScheduledUpdateConfigProperty"]]:
2363
+ '''The configuration object of the schedule that SageMaker follows when updating the AMI.
2364
+
2365
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-cluster-clusterinstancegroup.html#cfn-sagemaker-cluster-clusterinstancegroup-scheduledupdateconfig
2366
+ '''
2367
+ result = self._values.get("scheduled_update_config")
2368
+ return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnCluster.ScheduledUpdateConfigProperty"]], result)
2369
+
2187
2370
  @builtins.property
2188
2371
  def threads_per_core(self) -> typing.Optional[jsii.Number]:
2189
2372
  '''The number of threads per CPU core you specified under ``CreateCluster`` .
@@ -2655,6 +2838,112 @@ class CfnCluster(
2655
2838
  k + "=" + repr(v) for k, v in self._values.items()
2656
2839
  )
2657
2840
 
2841
+ @jsii.data_type(
2842
+ jsii_type="aws-cdk-lib.aws_sagemaker.CfnCluster.DeploymentConfigProperty",
2843
+ jsii_struct_bases=[],
2844
+ name_mapping={
2845
+ "auto_rollback_configuration": "autoRollbackConfiguration",
2846
+ "rolling_update_policy": "rollingUpdatePolicy",
2847
+ "wait_interval_in_seconds": "waitIntervalInSeconds",
2848
+ },
2849
+ )
2850
+ class DeploymentConfigProperty:
2851
+ def __init__(
2852
+ self,
2853
+ *,
2854
+ auto_rollback_configuration: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union["CfnCluster.AlarmDetailsProperty", typing.Dict[builtins.str, typing.Any]]]]]] = None,
2855
+ rolling_update_policy: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnCluster.RollingUpdatePolicyProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
2856
+ wait_interval_in_seconds: typing.Optional[jsii.Number] = None,
2857
+ ) -> None:
2858
+ '''The deployment configuration for an endpoint, which contains the desired deployment strategy and rollback configurations.
2859
+
2860
+ :param auto_rollback_configuration: Automatic rollback configuration for handling endpoint deployment failures and recovery.
2861
+ :param rolling_update_policy: Specifies a rolling deployment strategy for updating a SageMaker endpoint.
2862
+ :param wait_interval_in_seconds: The duration in seconds that SageMaker waits before updating more instances in the cluster.
2863
+
2864
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-cluster-deploymentconfig.html
2865
+ :exampleMetadata: fixture=_generated
2866
+
2867
+ Example::
2868
+
2869
+ # The code below shows an example of how to instantiate this type.
2870
+ # The values are placeholders you should change.
2871
+ from aws_cdk import aws_sagemaker as sagemaker
2872
+
2873
+ deployment_config_property = sagemaker.CfnCluster.DeploymentConfigProperty(
2874
+ auto_rollback_configuration=[sagemaker.CfnCluster.AlarmDetailsProperty(
2875
+ alarm_name="alarmName"
2876
+ )],
2877
+ rolling_update_policy=sagemaker.CfnCluster.RollingUpdatePolicyProperty(
2878
+ maximum_batch_size=sagemaker.CfnCluster.CapacitySizeConfigProperty(
2879
+ type="type",
2880
+ value=123
2881
+ ),
2882
+
2883
+ # the properties below are optional
2884
+ rollback_maximum_batch_size=sagemaker.CfnCluster.CapacitySizeConfigProperty(
2885
+ type="type",
2886
+ value=123
2887
+ )
2888
+ ),
2889
+ wait_interval_in_seconds=123
2890
+ )
2891
+ '''
2892
+ if __debug__:
2893
+ type_hints = typing.get_type_hints(_typecheckingstub__823c22be7218dd1757ac713e9fc5c4758d319489b01bb6a9d4994ed7254be00f)
2894
+ check_type(argname="argument auto_rollback_configuration", value=auto_rollback_configuration, expected_type=type_hints["auto_rollback_configuration"])
2895
+ check_type(argname="argument rolling_update_policy", value=rolling_update_policy, expected_type=type_hints["rolling_update_policy"])
2896
+ check_type(argname="argument wait_interval_in_seconds", value=wait_interval_in_seconds, expected_type=type_hints["wait_interval_in_seconds"])
2897
+ self._values: typing.Dict[builtins.str, typing.Any] = {}
2898
+ if auto_rollback_configuration is not None:
2899
+ self._values["auto_rollback_configuration"] = auto_rollback_configuration
2900
+ if rolling_update_policy is not None:
2901
+ self._values["rolling_update_policy"] = rolling_update_policy
2902
+ if wait_interval_in_seconds is not None:
2903
+ self._values["wait_interval_in_seconds"] = wait_interval_in_seconds
2904
+
2905
+ @builtins.property
2906
+ def auto_rollback_configuration(
2907
+ self,
2908
+ ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, "CfnCluster.AlarmDetailsProperty"]]]]:
2909
+ '''Automatic rollback configuration for handling endpoint deployment failures and recovery.
2910
+
2911
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-cluster-deploymentconfig.html#cfn-sagemaker-cluster-deploymentconfig-autorollbackconfiguration
2912
+ '''
2913
+ result = self._values.get("auto_rollback_configuration")
2914
+ return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, "CfnCluster.AlarmDetailsProperty"]]]], result)
2915
+
2916
+ @builtins.property
2917
+ def rolling_update_policy(
2918
+ self,
2919
+ ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnCluster.RollingUpdatePolicyProperty"]]:
2920
+ '''Specifies a rolling deployment strategy for updating a SageMaker endpoint.
2921
+
2922
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-cluster-deploymentconfig.html#cfn-sagemaker-cluster-deploymentconfig-rollingupdatepolicy
2923
+ '''
2924
+ result = self._values.get("rolling_update_policy")
2925
+ return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnCluster.RollingUpdatePolicyProperty"]], result)
2926
+
2927
+ @builtins.property
2928
+ def wait_interval_in_seconds(self) -> typing.Optional[jsii.Number]:
2929
+ '''The duration in seconds that SageMaker waits before updating more instances in the cluster.
2930
+
2931
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-cluster-deploymentconfig.html#cfn-sagemaker-cluster-deploymentconfig-waitintervalinseconds
2932
+ '''
2933
+ result = self._values.get("wait_interval_in_seconds")
2934
+ return typing.cast(typing.Optional[jsii.Number], result)
2935
+
2936
+ def __eq__(self, rhs: typing.Any) -> builtins.bool:
2937
+ return isinstance(rhs, self.__class__) and rhs._values == self._values
2938
+
2939
+ def __ne__(self, rhs: typing.Any) -> builtins.bool:
2940
+ return not (rhs == self)
2941
+
2942
+ def __repr__(self) -> str:
2943
+ return "DeploymentConfigProperty(%s)" % ", ".join(
2944
+ k + "=" + repr(v) for k, v in self._values.items()
2945
+ )
2946
+
2658
2947
  @jsii.data_type(
2659
2948
  jsii_type="aws-cdk-lib.aws_sagemaker.CfnCluster.EnvironmentConfigProperty",
2660
2949
  jsii_struct_bases=[],
@@ -2849,6 +3138,191 @@ class CfnCluster(
2849
3138
  k + "=" + repr(v) for k, v in self._values.items()
2850
3139
  )
2851
3140
 
3141
+ @jsii.data_type(
3142
+ jsii_type="aws-cdk-lib.aws_sagemaker.CfnCluster.RollingUpdatePolicyProperty",
3143
+ jsii_struct_bases=[],
3144
+ name_mapping={
3145
+ "maximum_batch_size": "maximumBatchSize",
3146
+ "rollback_maximum_batch_size": "rollbackMaximumBatchSize",
3147
+ },
3148
+ )
3149
+ class RollingUpdatePolicyProperty:
3150
+ def __init__(
3151
+ self,
3152
+ *,
3153
+ maximum_batch_size: typing.Union[_IResolvable_da3f097b, typing.Union["CfnCluster.CapacitySizeConfigProperty", typing.Dict[builtins.str, typing.Any]]],
3154
+ rollback_maximum_batch_size: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnCluster.CapacitySizeConfigProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
3155
+ ) -> None:
3156
+ '''Specifies a rolling deployment strategy for updating a SageMaker endpoint.
3157
+
3158
+ :param maximum_batch_size: Batch size for each rolling step to provision capacity and turn on traffic on the new endpoint fleet, and terminate capacity on the old endpoint fleet. Value must be between 5% to 50% of the variant's total instance count.
3159
+ :param rollback_maximum_batch_size: Batch size for rollback to the old endpoint fleet. Each rolling step to provision capacity and turn on traffic on the old endpoint fleet, and terminate capacity on the new endpoint fleet. If this field is absent, the default value will be set to 100% of total capacity which means to bring up the whole capacity of the old fleet at once during rollback.
3160
+
3161
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-cluster-rollingupdatepolicy.html
3162
+ :exampleMetadata: fixture=_generated
3163
+
3164
+ Example::
3165
+
3166
+ # The code below shows an example of how to instantiate this type.
3167
+ # The values are placeholders you should change.
3168
+ from aws_cdk import aws_sagemaker as sagemaker
3169
+
3170
+ rolling_update_policy_property = sagemaker.CfnCluster.RollingUpdatePolicyProperty(
3171
+ maximum_batch_size=sagemaker.CfnCluster.CapacitySizeConfigProperty(
3172
+ type="type",
3173
+ value=123
3174
+ ),
3175
+
3176
+ # the properties below are optional
3177
+ rollback_maximum_batch_size=sagemaker.CfnCluster.CapacitySizeConfigProperty(
3178
+ type="type",
3179
+ value=123
3180
+ )
3181
+ )
3182
+ '''
3183
+ if __debug__:
3184
+ type_hints = typing.get_type_hints(_typecheckingstub__009b52494cdfca8c8c772675b8315c71bd7b7eba9c48e4dc433f6d571074d1ad)
3185
+ check_type(argname="argument maximum_batch_size", value=maximum_batch_size, expected_type=type_hints["maximum_batch_size"])
3186
+ check_type(argname="argument rollback_maximum_batch_size", value=rollback_maximum_batch_size, expected_type=type_hints["rollback_maximum_batch_size"])
3187
+ self._values: typing.Dict[builtins.str, typing.Any] = {
3188
+ "maximum_batch_size": maximum_batch_size,
3189
+ }
3190
+ if rollback_maximum_batch_size is not None:
3191
+ self._values["rollback_maximum_batch_size"] = rollback_maximum_batch_size
3192
+
3193
+ @builtins.property
3194
+ def maximum_batch_size(
3195
+ self,
3196
+ ) -> typing.Union[_IResolvable_da3f097b, "CfnCluster.CapacitySizeConfigProperty"]:
3197
+ '''Batch size for each rolling step to provision capacity and turn on traffic on the new endpoint fleet, and terminate capacity on the old endpoint fleet.
3198
+
3199
+ Value must be between 5% to 50% of the variant's total instance count.
3200
+
3201
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-cluster-rollingupdatepolicy.html#cfn-sagemaker-cluster-rollingupdatepolicy-maximumbatchsize
3202
+ '''
3203
+ result = self._values.get("maximum_batch_size")
3204
+ assert result is not None, "Required property 'maximum_batch_size' is missing"
3205
+ return typing.cast(typing.Union[_IResolvable_da3f097b, "CfnCluster.CapacitySizeConfigProperty"], result)
3206
+
3207
+ @builtins.property
3208
+ def rollback_maximum_batch_size(
3209
+ self,
3210
+ ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnCluster.CapacitySizeConfigProperty"]]:
3211
+ '''Batch size for rollback to the old endpoint fleet.
3212
+
3213
+ Each rolling step to provision capacity and turn on traffic on the old endpoint fleet, and terminate capacity on the new endpoint fleet. If this field is absent, the default value will be set to 100% of total capacity which means to bring up the whole capacity of the old fleet at once during rollback.
3214
+
3215
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-cluster-rollingupdatepolicy.html#cfn-sagemaker-cluster-rollingupdatepolicy-rollbackmaximumbatchsize
3216
+ '''
3217
+ result = self._values.get("rollback_maximum_batch_size")
3218
+ return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnCluster.CapacitySizeConfigProperty"]], result)
3219
+
3220
+ def __eq__(self, rhs: typing.Any) -> builtins.bool:
3221
+ return isinstance(rhs, self.__class__) and rhs._values == self._values
3222
+
3223
+ def __ne__(self, rhs: typing.Any) -> builtins.bool:
3224
+ return not (rhs == self)
3225
+
3226
+ def __repr__(self) -> str:
3227
+ return "RollingUpdatePolicyProperty(%s)" % ", ".join(
3228
+ k + "=" + repr(v) for k, v in self._values.items()
3229
+ )
3230
+
3231
+ @jsii.data_type(
3232
+ jsii_type="aws-cdk-lib.aws_sagemaker.CfnCluster.ScheduledUpdateConfigProperty",
3233
+ jsii_struct_bases=[],
3234
+ name_mapping={
3235
+ "schedule_expression": "scheduleExpression",
3236
+ "deployment_config": "deploymentConfig",
3237
+ },
3238
+ )
3239
+ class ScheduledUpdateConfigProperty:
3240
+ def __init__(
3241
+ self,
3242
+ *,
3243
+ schedule_expression: builtins.str,
3244
+ deployment_config: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnCluster.DeploymentConfigProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
3245
+ ) -> None:
3246
+ '''The configuration object of the schedule that SageMaker follows when updating the AMI.
3247
+
3248
+ :param schedule_expression: A cron expression that specifies the schedule that SageMaker follows when updating the AMI.
3249
+ :param deployment_config: The configuration to use when updating the AMI versions.
3250
+
3251
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-cluster-scheduledupdateconfig.html
3252
+ :exampleMetadata: fixture=_generated
3253
+
3254
+ Example::
3255
+
3256
+ # The code below shows an example of how to instantiate this type.
3257
+ # The values are placeholders you should change.
3258
+ from aws_cdk import aws_sagemaker as sagemaker
3259
+
3260
+ scheduled_update_config_property = sagemaker.CfnCluster.ScheduledUpdateConfigProperty(
3261
+ schedule_expression="scheduleExpression",
3262
+
3263
+ # the properties below are optional
3264
+ deployment_config=sagemaker.CfnCluster.DeploymentConfigProperty(
3265
+ auto_rollback_configuration=[sagemaker.CfnCluster.AlarmDetailsProperty(
3266
+ alarm_name="alarmName"
3267
+ )],
3268
+ rolling_update_policy=sagemaker.CfnCluster.RollingUpdatePolicyProperty(
3269
+ maximum_batch_size=sagemaker.CfnCluster.CapacitySizeConfigProperty(
3270
+ type="type",
3271
+ value=123
3272
+ ),
3273
+
3274
+ # the properties below are optional
3275
+ rollback_maximum_batch_size=sagemaker.CfnCluster.CapacitySizeConfigProperty(
3276
+ type="type",
3277
+ value=123
3278
+ )
3279
+ ),
3280
+ wait_interval_in_seconds=123
3281
+ )
3282
+ )
3283
+ '''
3284
+ if __debug__:
3285
+ type_hints = typing.get_type_hints(_typecheckingstub__81dc9ecbde9bb4b8c0eba924792ecc3f847c8f654d60156a7fde757af5d3a40c)
3286
+ check_type(argname="argument schedule_expression", value=schedule_expression, expected_type=type_hints["schedule_expression"])
3287
+ check_type(argname="argument deployment_config", value=deployment_config, expected_type=type_hints["deployment_config"])
3288
+ self._values: typing.Dict[builtins.str, typing.Any] = {
3289
+ "schedule_expression": schedule_expression,
3290
+ }
3291
+ if deployment_config is not None:
3292
+ self._values["deployment_config"] = deployment_config
3293
+
3294
+ @builtins.property
3295
+ def schedule_expression(self) -> builtins.str:
3296
+ '''A cron expression that specifies the schedule that SageMaker follows when updating the AMI.
3297
+
3298
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-cluster-scheduledupdateconfig.html#cfn-sagemaker-cluster-scheduledupdateconfig-scheduleexpression
3299
+ '''
3300
+ result = self._values.get("schedule_expression")
3301
+ assert result is not None, "Required property 'schedule_expression' is missing"
3302
+ return typing.cast(builtins.str, result)
3303
+
3304
+ @builtins.property
3305
+ def deployment_config(
3306
+ self,
3307
+ ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnCluster.DeploymentConfigProperty"]]:
3308
+ '''The configuration to use when updating the AMI versions.
3309
+
3310
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-cluster-scheduledupdateconfig.html#cfn-sagemaker-cluster-scheduledupdateconfig-deploymentconfig
3311
+ '''
3312
+ result = self._values.get("deployment_config")
3313
+ return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnCluster.DeploymentConfigProperty"]], result)
3314
+
3315
+ def __eq__(self, rhs: typing.Any) -> builtins.bool:
3316
+ return isinstance(rhs, self.__class__) and rhs._values == self._values
3317
+
3318
+ def __ne__(self, rhs: typing.Any) -> builtins.bool:
3319
+ return not (rhs == self)
3320
+
3321
+ def __repr__(self) -> str:
3322
+ return "ScheduledUpdateConfigProperty(%s)" % ", ".join(
3323
+ k + "=" + repr(v) for k, v in self._values.items()
3324
+ )
3325
+
2852
3326
  @jsii.data_type(
2853
3327
  jsii_type="aws-cdk-lib.aws_sagemaker.CfnCluster.VpcConfigProperty",
2854
3328
  jsii_struct_bases=[],
@@ -2999,6 +3473,29 @@ class CfnClusterProps:
2999
3473
  security_group_ids=["securityGroupIds"],
3000
3474
  subnets=["subnets"]
3001
3475
  ),
3476
+ scheduled_update_config=sagemaker.CfnCluster.ScheduledUpdateConfigProperty(
3477
+ schedule_expression="scheduleExpression",
3478
+
3479
+ # the properties below are optional
3480
+ deployment_config=sagemaker.CfnCluster.DeploymentConfigProperty(
3481
+ auto_rollback_configuration=[sagemaker.CfnCluster.AlarmDetailsProperty(
3482
+ alarm_name="alarmName"
3483
+ )],
3484
+ rolling_update_policy=sagemaker.CfnCluster.RollingUpdatePolicyProperty(
3485
+ maximum_batch_size=sagemaker.CfnCluster.CapacitySizeConfigProperty(
3486
+ type="type",
3487
+ value=123
3488
+ ),
3489
+
3490
+ # the properties below are optional
3491
+ rollback_maximum_batch_size=sagemaker.CfnCluster.CapacitySizeConfigProperty(
3492
+ type="type",
3493
+ value=123
3494
+ )
3495
+ ),
3496
+ wait_interval_in_seconds=123
3497
+ )
3498
+ ),
3002
3499
  threads_per_core=123,
3003
3500
  training_plan_arn="trainingPlanArn"
3004
3501
  )],
@@ -12096,6 +12593,10 @@ class CfnEndpointConfig(
12096
12593
 
12097
12594
  # the properties below are optional
12098
12595
  accelerator_type="acceleratorType",
12596
+ capacity_reservation_config=sagemaker.CfnEndpointConfig.CapacityReservationConfigProperty(
12597
+ capacity_reservation_preference="capacityReservationPreference",
12598
+ ml_reservation_arn="mlReservationArn"
12599
+ ),
12099
12600
  container_startup_health_check_timeout_in_seconds=123,
12100
12601
  enable_ssm_access=False,
12101
12602
  inference_ami_version="inferenceAmiVersion",
@@ -12200,6 +12701,10 @@ class CfnEndpointConfig(
12200
12701
 
12201
12702
  # the properties below are optional
12202
12703
  accelerator_type="acceleratorType",
12704
+ capacity_reservation_config=sagemaker.CfnEndpointConfig.CapacityReservationConfigProperty(
12705
+ capacity_reservation_preference="capacityReservationPreference",
12706
+ ml_reservation_arn="mlReservationArn"
12707
+ ),
12203
12708
  container_startup_health_check_timeout_in_seconds=123,
12204
12709
  enable_ssm_access=False,
12205
12710
  inference_ami_version="inferenceAmiVersion",
@@ -12883,6 +13388,76 @@ class CfnEndpointConfig(
12883
13388
  k + "=" + repr(v) for k, v in self._values.items()
12884
13389
  )
12885
13390
 
13391
+ @jsii.data_type(
13392
+ jsii_type="aws-cdk-lib.aws_sagemaker.CfnEndpointConfig.CapacityReservationConfigProperty",
13393
+ jsii_struct_bases=[],
13394
+ name_mapping={
13395
+ "capacity_reservation_preference": "capacityReservationPreference",
13396
+ "ml_reservation_arn": "mlReservationArn",
13397
+ },
13398
+ )
13399
+ class CapacityReservationConfigProperty:
13400
+ def __init__(
13401
+ self,
13402
+ *,
13403
+ capacity_reservation_preference: typing.Optional[builtins.str] = None,
13404
+ ml_reservation_arn: typing.Optional[builtins.str] = None,
13405
+ ) -> None:
13406
+ '''
13407
+ :param capacity_reservation_preference:
13408
+ :param ml_reservation_arn:
13409
+
13410
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-endpointconfig-capacityreservationconfig.html
13411
+ :exampleMetadata: fixture=_generated
13412
+
13413
+ Example::
13414
+
13415
+ # The code below shows an example of how to instantiate this type.
13416
+ # The values are placeholders you should change.
13417
+ from aws_cdk import aws_sagemaker as sagemaker
13418
+
13419
+ capacity_reservation_config_property = sagemaker.CfnEndpointConfig.CapacityReservationConfigProperty(
13420
+ capacity_reservation_preference="capacityReservationPreference",
13421
+ ml_reservation_arn="mlReservationArn"
13422
+ )
13423
+ '''
13424
+ if __debug__:
13425
+ type_hints = typing.get_type_hints(_typecheckingstub__2a2151d095fa930826bf09398cce21c64a2f6afc1dd93e43831ab27acfc0791c)
13426
+ check_type(argname="argument capacity_reservation_preference", value=capacity_reservation_preference, expected_type=type_hints["capacity_reservation_preference"])
13427
+ check_type(argname="argument ml_reservation_arn", value=ml_reservation_arn, expected_type=type_hints["ml_reservation_arn"])
13428
+ self._values: typing.Dict[builtins.str, typing.Any] = {}
13429
+ if capacity_reservation_preference is not None:
13430
+ self._values["capacity_reservation_preference"] = capacity_reservation_preference
13431
+ if ml_reservation_arn is not None:
13432
+ self._values["ml_reservation_arn"] = ml_reservation_arn
13433
+
13434
+ @builtins.property
13435
+ def capacity_reservation_preference(self) -> typing.Optional[builtins.str]:
13436
+ '''
13437
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-endpointconfig-capacityreservationconfig.html#cfn-sagemaker-endpointconfig-capacityreservationconfig-capacityreservationpreference
13438
+ '''
13439
+ result = self._values.get("capacity_reservation_preference")
13440
+ return typing.cast(typing.Optional[builtins.str], result)
13441
+
13442
+ @builtins.property
13443
+ def ml_reservation_arn(self) -> typing.Optional[builtins.str]:
13444
+ '''
13445
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-endpointconfig-capacityreservationconfig.html#cfn-sagemaker-endpointconfig-capacityreservationconfig-mlreservationarn
13446
+ '''
13447
+ result = self._values.get("ml_reservation_arn")
13448
+ return typing.cast(typing.Optional[builtins.str], result)
13449
+
13450
+ def __eq__(self, rhs: typing.Any) -> builtins.bool:
13451
+ return isinstance(rhs, self.__class__) and rhs._values == self._values
13452
+
13453
+ def __ne__(self, rhs: typing.Any) -> builtins.bool:
13454
+ return not (rhs == self)
13455
+
13456
+ def __repr__(self) -> str:
13457
+ return "CapacityReservationConfigProperty(%s)" % ", ".join(
13458
+ k + "=" + repr(v) for k, v in self._values.items()
13459
+ )
13460
+
12886
13461
  @jsii.data_type(
12887
13462
  jsii_type="aws-cdk-lib.aws_sagemaker.CfnEndpointConfig.CaptureContentTypeHeaderProperty",
12888
13463
  jsii_struct_bases=[],
@@ -14038,6 +14613,7 @@ class CfnEndpointConfig(
14038
14613
  name_mapping={
14039
14614
  "variant_name": "variantName",
14040
14615
  "accelerator_type": "acceleratorType",
14616
+ "capacity_reservation_config": "capacityReservationConfig",
14041
14617
  "container_startup_health_check_timeout_in_seconds": "containerStartupHealthCheckTimeoutInSeconds",
14042
14618
  "enable_ssm_access": "enableSsmAccess",
14043
14619
  "inference_ami_version": "inferenceAmiVersion",
@@ -14058,6 +14634,7 @@ class CfnEndpointConfig(
14058
14634
  *,
14059
14635
  variant_name: builtins.str,
14060
14636
  accelerator_type: typing.Optional[builtins.str] = None,
14637
+ capacity_reservation_config: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnEndpointConfig.CapacityReservationConfigProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
14061
14638
  container_startup_health_check_timeout_in_seconds: typing.Optional[jsii.Number] = None,
14062
14639
  enable_ssm_access: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]] = None,
14063
14640
  inference_ami_version: typing.Optional[builtins.str] = None,
@@ -14077,6 +14654,7 @@ class CfnEndpointConfig(
14077
14654
 
14078
14655
  :param variant_name: The name of the production variant.
14079
14656
  :param accelerator_type: The size of the Elastic Inference (EI) instance to use for the production variant. EI instances provide on-demand GPU computing for inference. For more information, see `Using Elastic Inference in Amazon SageMaker <https://docs.aws.amazon.com/sagemaker/latest/dg/ei.html>`_ . For more information, see `Using Elastic Inference in Amazon SageMaker <https://docs.aws.amazon.com/sagemaker/latest/dg/ei.html>`_ .
14657
+ :param capacity_reservation_config:
14080
14658
  :param container_startup_health_check_timeout_in_seconds: The timeout value, in seconds, for your inference container to pass health check by SageMaker Hosting. For more information about health check, see `How Your Container Should Respond to Health Check (Ping) Requests <https://docs.aws.amazon.com/sagemaker/latest/dg/your-algorithms-inference-code.html#your-algorithms-inference-algo-ping-requests>`_ .
14081
14659
  :param enable_ssm_access: You can use this parameter to turn on native AWS Systems Manager (SSM) access for a production variant behind an endpoint. By default, SSM access is disabled for all production variants behind an endpoint. You can turn on or turn off SSM access for a production variant behind an existing endpoint by creating a new endpoint configuration and calling ``UpdateEndpoint`` .
14082
14660
  :param inference_ami_version:
@@ -14104,6 +14682,10 @@ class CfnEndpointConfig(
14104
14682
 
14105
14683
  # the properties below are optional
14106
14684
  accelerator_type="acceleratorType",
14685
+ capacity_reservation_config=sagemaker.CfnEndpointConfig.CapacityReservationConfigProperty(
14686
+ capacity_reservation_preference="capacityReservationPreference",
14687
+ ml_reservation_arn="mlReservationArn"
14688
+ ),
14107
14689
  container_startup_health_check_timeout_in_seconds=123,
14108
14690
  enable_ssm_access=False,
14109
14691
  inference_ami_version="inferenceAmiVersion",
@@ -14134,6 +14716,7 @@ class CfnEndpointConfig(
14134
14716
  type_hints = typing.get_type_hints(_typecheckingstub__685c22aefe4bd12e237f4e6f239c6de7809e228c81d2604127d6824fa36dee01)
14135
14717
  check_type(argname="argument variant_name", value=variant_name, expected_type=type_hints["variant_name"])
14136
14718
  check_type(argname="argument accelerator_type", value=accelerator_type, expected_type=type_hints["accelerator_type"])
14719
+ check_type(argname="argument capacity_reservation_config", value=capacity_reservation_config, expected_type=type_hints["capacity_reservation_config"])
14137
14720
  check_type(argname="argument container_startup_health_check_timeout_in_seconds", value=container_startup_health_check_timeout_in_seconds, expected_type=type_hints["container_startup_health_check_timeout_in_seconds"])
14138
14721
  check_type(argname="argument enable_ssm_access", value=enable_ssm_access, expected_type=type_hints["enable_ssm_access"])
14139
14722
  check_type(argname="argument inference_ami_version", value=inference_ami_version, expected_type=type_hints["inference_ami_version"])
@@ -14151,6 +14734,8 @@ class CfnEndpointConfig(
14151
14734
  }
14152
14735
  if accelerator_type is not None:
14153
14736
  self._values["accelerator_type"] = accelerator_type
14737
+ if capacity_reservation_config is not None:
14738
+ self._values["capacity_reservation_config"] = capacity_reservation_config
14154
14739
  if container_startup_health_check_timeout_in_seconds is not None:
14155
14740
  self._values["container_startup_health_check_timeout_in_seconds"] = container_startup_health_check_timeout_in_seconds
14156
14741
  if enable_ssm_access is not None:
@@ -14197,6 +14782,16 @@ class CfnEndpointConfig(
14197
14782
  result = self._values.get("accelerator_type")
14198
14783
  return typing.cast(typing.Optional[builtins.str], result)
14199
14784
 
14785
+ @builtins.property
14786
+ def capacity_reservation_config(
14787
+ self,
14788
+ ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnEndpointConfig.CapacityReservationConfigProperty"]]:
14789
+ '''
14790
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-sagemaker-endpointconfig-productionvariant.html#cfn-sagemaker-endpointconfig-productionvariant-capacityreservationconfig
14791
+ '''
14792
+ result = self._values.get("capacity_reservation_config")
14793
+ return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnEndpointConfig.CapacityReservationConfigProperty"]], result)
14794
+
14200
14795
  @builtins.property
14201
14796
  def container_startup_health_check_timeout_in_seconds(
14202
14797
  self,
@@ -14620,6 +15215,10 @@ class CfnEndpointConfigProps:
14620
15215
 
14621
15216
  # the properties below are optional
14622
15217
  accelerator_type="acceleratorType",
15218
+ capacity_reservation_config=sagemaker.CfnEndpointConfig.CapacityReservationConfigProperty(
15219
+ capacity_reservation_preference="capacityReservationPreference",
15220
+ ml_reservation_arn="mlReservationArn"
15221
+ ),
14623
15222
  container_startup_health_check_timeout_in_seconds=123,
14624
15223
  enable_ssm_access=False,
14625
15224
  inference_ami_version="inferenceAmiVersion",
@@ -14724,6 +15323,10 @@ class CfnEndpointConfigProps:
14724
15323
 
14725
15324
  # the properties below are optional
14726
15325
  accelerator_type="acceleratorType",
15326
+ capacity_reservation_config=sagemaker.CfnEndpointConfig.CapacityReservationConfigProperty(
15327
+ capacity_reservation_preference="capacityReservationPreference",
15328
+ ml_reservation_arn="mlReservationArn"
15329
+ ),
14727
15330
  container_startup_health_check_timeout_in_seconds=123,
14728
15331
  enable_ssm_access=False,
14729
15332
  inference_ami_version="inferenceAmiVersion",
@@ -54559,6 +55162,21 @@ def _typecheckingstub__429f3349777c49353a90fb2e147d893a183eb1e53971ad423f88736af
54559
55162
  """Type checking stubs"""
54560
55163
  pass
54561
55164
 
55165
+ def _typecheckingstub__7a8689483f1b57fd7208731fb78115535cc549c789e4cddd2cb4c380b1130461(
55166
+ *,
55167
+ alarm_name: builtins.str,
55168
+ ) -> None:
55169
+ """Type checking stubs"""
55170
+ pass
55171
+
55172
+ def _typecheckingstub__037781baa9561e3f7cbaf9bb153526c9205251c5775d32248ba6db579b010bb2(
55173
+ *,
55174
+ type: builtins.str,
55175
+ value: jsii.Number,
55176
+ ) -> None:
55177
+ """Type checking stubs"""
55178
+ pass
55179
+
54562
55180
  def _typecheckingstub__9c3cafd59fbc880606685f87e0e67d5a5ce5428cfebf3db8838122cd54c4a361(
54563
55181
  *,
54564
55182
  volume_size_in_gb: typing.Optional[jsii.Number] = None,
@@ -54578,6 +55196,7 @@ def _typecheckingstub__3a19719ba9f3f785eebfbcc6ee996f6178944dfe9cbd5d5cdf73341bd
54578
55196
  instance_storage_configs: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union[CfnCluster.ClusterInstanceStorageConfigProperty, typing.Dict[builtins.str, typing.Any]]]]]] = None,
54579
55197
  on_start_deep_health_checks: typing.Optional[typing.Sequence[builtins.str]] = None,
54580
55198
  override_vpc_config: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnCluster.VpcConfigProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
55199
+ scheduled_update_config: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnCluster.ScheduledUpdateConfigProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
54581
55200
  threads_per_core: typing.Optional[jsii.Number] = None,
54582
55201
  training_plan_arn: typing.Optional[builtins.str] = None,
54583
55202
  ) -> None:
@@ -54623,6 +55242,15 @@ def _typecheckingstub__b93ff4f69c672c7cfa634445653e3f5eacc520b4a55f74e9e45bbbb13
54623
55242
  """Type checking stubs"""
54624
55243
  pass
54625
55244
 
55245
+ def _typecheckingstub__823c22be7218dd1757ac713e9fc5c4758d319489b01bb6a9d4994ed7254be00f(
55246
+ *,
55247
+ auto_rollback_configuration: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union[CfnCluster.AlarmDetailsProperty, typing.Dict[builtins.str, typing.Any]]]]]] = None,
55248
+ rolling_update_policy: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnCluster.RollingUpdatePolicyProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
55249
+ wait_interval_in_seconds: typing.Optional[jsii.Number] = None,
55250
+ ) -> None:
55251
+ """Type checking stubs"""
55252
+ pass
55253
+
54626
55254
  def _typecheckingstub__cc27d48d9ce12a3a8b77600174f3c178fb77c02533f3f57c2bb456bb3ae5b159(
54627
55255
  *,
54628
55256
  f_sx_lustre_config: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnCluster.FSxLustreConfigProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
@@ -54645,6 +55273,22 @@ def _typecheckingstub__bd76c8323d4b86bae18d24faa04bdbae1945db1d8ba5ca351b2ce27ff
54645
55273
  """Type checking stubs"""
54646
55274
  pass
54647
55275
 
55276
+ def _typecheckingstub__009b52494cdfca8c8c772675b8315c71bd7b7eba9c48e4dc433f6d571074d1ad(
55277
+ *,
55278
+ maximum_batch_size: typing.Union[_IResolvable_da3f097b, typing.Union[CfnCluster.CapacitySizeConfigProperty, typing.Dict[builtins.str, typing.Any]]],
55279
+ rollback_maximum_batch_size: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnCluster.CapacitySizeConfigProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
55280
+ ) -> None:
55281
+ """Type checking stubs"""
55282
+ pass
55283
+
55284
+ def _typecheckingstub__81dc9ecbde9bb4b8c0eba924792ecc3f847c8f654d60156a7fde757af5d3a40c(
55285
+ *,
55286
+ schedule_expression: builtins.str,
55287
+ deployment_config: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnCluster.DeploymentConfigProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
55288
+ ) -> None:
55289
+ """Type checking stubs"""
55290
+ pass
55291
+
54648
55292
  def _typecheckingstub__c25c63e6108b86a8b4d868c1bea98ca33c486d394309500187dda4d53e294a1a(
54649
55293
  *,
54650
55294
  security_group_ids: typing.Sequence[builtins.str],
@@ -55776,6 +56420,14 @@ def _typecheckingstub__c3ae80c64de4a57385622840864bf472efd012f72363c8a905b70c436
55776
56420
  """Type checking stubs"""
55777
56421
  pass
55778
56422
 
56423
+ def _typecheckingstub__2a2151d095fa930826bf09398cce21c64a2f6afc1dd93e43831ab27acfc0791c(
56424
+ *,
56425
+ capacity_reservation_preference: typing.Optional[builtins.str] = None,
56426
+ ml_reservation_arn: typing.Optional[builtins.str] = None,
56427
+ ) -> None:
56428
+ """Type checking stubs"""
56429
+ pass
56430
+
55779
56431
  def _typecheckingstub__8f365f85e452b00846d8dd4987370795343fee0c95178a92e6cb69c5d32bba4e(
55780
56432
  *,
55781
56433
  csv_content_types: typing.Optional[typing.Sequence[builtins.str]] = None,
@@ -55877,6 +56529,7 @@ def _typecheckingstub__685c22aefe4bd12e237f4e6f239c6de7809e228c81d2604127d6824fa
55877
56529
  *,
55878
56530
  variant_name: builtins.str,
55879
56531
  accelerator_type: typing.Optional[builtins.str] = None,
56532
+ capacity_reservation_config: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnEndpointConfig.CapacityReservationConfigProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
55880
56533
  container_startup_health_check_timeout_in_seconds: typing.Optional[jsii.Number] = None,
55881
56534
  enable_ssm_access: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]] = None,
55882
56535
  inference_ami_version: typing.Optional[builtins.str] = None,