aws-cdk-lib 2.148.1__py3-none-any.whl → 2.149.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/_jsii/__init__.py +1 -1
- aws_cdk/_jsii/{aws-cdk-lib@2.148.1.jsii.tgz → aws-cdk-lib@2.149.0.jsii.tgz} +0 -0
- aws_cdk/aws_applicationautoscaling/__init__.py +16 -12
- aws_cdk/aws_bedrock/__init__.py +30 -2
- aws_cdk/aws_codebuild/__init__.py +57 -5
- aws_cdk/aws_codecommit/__init__.py +103 -0
- aws_cdk/aws_codedeploy/__init__.py +251 -5
- aws_cdk/aws_codepipeline/__init__.py +69 -0
- aws_cdk/aws_codestarnotifications/__init__.py +90 -4
- aws_cdk/aws_deadline/__init__.py +9 -15
- aws_cdk/aws_dms/__init__.py +10 -10
- aws_cdk/aws_ec2/__init__.py +4 -0
- aws_cdk/aws_emr/__init__.py +8 -8
- aws_cdk/aws_events/__init__.py +1 -13
- aws_cdk/aws_kinesisanalytics/__init__.py +11 -11
- aws_cdk/aws_kinesisanalyticsv2/__init__.py +11 -11
- aws_cdk/aws_rds/__init__.py +3 -3
- aws_cdk/aws_rolesanywhere/__init__.py +22 -13
- aws_cdk/aws_route53profiles/__init__.py +4 -4
- aws_cdk/aws_s3/__init__.py +15 -117
- aws_cdk/aws_ses/__init__.py +119 -102
- aws_cdk/aws_stepfunctions_tasks/__init__.py +209 -16
- aws_cdk/aws_verifiedpermissions/__init__.py +7 -9
- aws_cdk/aws_wafv2/__init__.py +10 -16
- aws_cdk/aws_workspaces/__init__.py +86 -56
- {aws_cdk_lib-2.148.1.dist-info → aws_cdk_lib-2.149.0.dist-info}/METADATA +1 -1
- {aws_cdk_lib-2.148.1.dist-info → aws_cdk_lib-2.149.0.dist-info}/RECORD +31 -31
- {aws_cdk_lib-2.148.1.dist-info → aws_cdk_lib-2.149.0.dist-info}/LICENSE +0 -0
- {aws_cdk_lib-2.148.1.dist-info → aws_cdk_lib-2.149.0.dist-info}/NOTICE +0 -0
- {aws_cdk_lib-2.148.1.dist-info → aws_cdk_lib-2.149.0.dist-info}/WHEEL +0 -0
- {aws_cdk_lib-2.148.1.dist-info → aws_cdk_lib-2.149.0.dist-info}/top_level.txt +0 -0
|
@@ -204,6 +204,25 @@ Or import an existing one:
|
|
|
204
204
|
deployment_config = codedeploy.ServerDeploymentConfig.from_server_deployment_config_name(self, "ExistingDeploymentConfiguration", "MyExistingDeploymentConfiguration")
|
|
205
205
|
```
|
|
206
206
|
|
|
207
|
+
### Zonal Configuration
|
|
208
|
+
|
|
209
|
+
CodeDeploy can deploy your application to one Availability Zone at a time, within an AWS Region by configuring [zonal configuration](https://docs.aws.amazon.com/codedeploy/latest/userguide/deployment-configurations-create.html#zonal-config).
|
|
210
|
+
|
|
211
|
+
To create a new deployment configuration with zonal configuration:
|
|
212
|
+
|
|
213
|
+
```python
|
|
214
|
+
deployment_config = codedeploy.ServerDeploymentConfig(self, "DeploymentConfiguration",
|
|
215
|
+
minimum_healthy_hosts=codedeploy.MinimumHealthyHosts.count(2),
|
|
216
|
+
zonal_config=codedeploy.ZonalConfig(
|
|
217
|
+
monitor_duration=Duration.minutes(30),
|
|
218
|
+
first_zone_monitor_duration=Duration.minutes(60),
|
|
219
|
+
minimum_healthy_hosts_per_zone=codedeploy.MinimumHealthyHostsPerZone.count(1)
|
|
220
|
+
)
|
|
221
|
+
)
|
|
222
|
+
```
|
|
223
|
+
|
|
224
|
+
**Note**: Zonal configuration is only configurable for EC2/on-premise deployments.
|
|
225
|
+
|
|
207
226
|
## Lambda Applications
|
|
208
227
|
|
|
209
228
|
To create a new CodeDeploy Application that deploys to a Lambda function:
|
|
@@ -982,6 +1001,7 @@ class BaseDeploymentConfigOptions:
|
|
|
982
1001
|
"compute_platform": "computePlatform",
|
|
983
1002
|
"minimum_healthy_hosts": "minimumHealthyHosts",
|
|
984
1003
|
"traffic_routing": "trafficRouting",
|
|
1004
|
+
"zonal_config": "zonalConfig",
|
|
985
1005
|
},
|
|
986
1006
|
)
|
|
987
1007
|
class BaseDeploymentConfigProps(BaseDeploymentConfigOptions):
|
|
@@ -992,6 +1012,7 @@ class BaseDeploymentConfigProps(BaseDeploymentConfigOptions):
|
|
|
992
1012
|
compute_platform: typing.Optional["ComputePlatform"] = None,
|
|
993
1013
|
minimum_healthy_hosts: typing.Optional["MinimumHealthyHosts"] = None,
|
|
994
1014
|
traffic_routing: typing.Optional["TrafficRouting"] = None,
|
|
1015
|
+
zonal_config: typing.Optional[typing.Union["ZonalConfig", typing.Dict[builtins.str, typing.Any]]] = None,
|
|
995
1016
|
) -> None:
|
|
996
1017
|
'''Complete base deployment config properties that are required to be supplied by the implementation of the BaseDeploymentConfig class.
|
|
997
1018
|
|
|
@@ -999,6 +1020,7 @@ class BaseDeploymentConfigProps(BaseDeploymentConfigOptions):
|
|
|
999
1020
|
:param compute_platform: The destination compute platform for the deployment. Default: ComputePlatform.Server
|
|
1000
1021
|
:param minimum_healthy_hosts: Minimum number of healthy hosts. Default: None
|
|
1001
1022
|
:param traffic_routing: The configuration that specifies how traffic is shifted during a deployment. Only applicable to ECS and Lambda deployments, and must not be specified for Server deployments. Default: None
|
|
1023
|
+
:param zonal_config: Configure CodeDeploy to deploy your application to one Availability Zone at a time within an AWS Region. Default: - deploy your application to a random selection of hosts across a Region
|
|
1002
1024
|
|
|
1003
1025
|
:exampleMetadata: fixture=_generated
|
|
1004
1026
|
|
|
@@ -1006,24 +1028,34 @@ class BaseDeploymentConfigProps(BaseDeploymentConfigOptions):
|
|
|
1006
1028
|
|
|
1007
1029
|
# The code below shows an example of how to instantiate this type.
|
|
1008
1030
|
# The values are placeholders you should change.
|
|
1031
|
+
import aws_cdk as cdk
|
|
1009
1032
|
from aws_cdk import aws_codedeploy as codedeploy
|
|
1010
1033
|
|
|
1011
1034
|
# minimum_healthy_hosts: codedeploy.MinimumHealthyHosts
|
|
1035
|
+
# minimum_healthy_hosts_per_zone: codedeploy.MinimumHealthyHostsPerZone
|
|
1012
1036
|
# traffic_routing: codedeploy.TrafficRouting
|
|
1013
1037
|
|
|
1014
1038
|
base_deployment_config_props = codedeploy.BaseDeploymentConfigProps(
|
|
1015
1039
|
compute_platform=codedeploy.ComputePlatform.SERVER,
|
|
1016
1040
|
deployment_config_name="deploymentConfigName",
|
|
1017
1041
|
minimum_healthy_hosts=minimum_healthy_hosts,
|
|
1018
|
-
traffic_routing=traffic_routing
|
|
1042
|
+
traffic_routing=traffic_routing,
|
|
1043
|
+
zonal_config=codedeploy.ZonalConfig(
|
|
1044
|
+
first_zone_monitor_duration=cdk.Duration.minutes(30),
|
|
1045
|
+
minimum_healthy_hosts_per_zone=minimum_healthy_hosts_per_zone,
|
|
1046
|
+
monitor_duration=cdk.Duration.minutes(30)
|
|
1047
|
+
)
|
|
1019
1048
|
)
|
|
1020
1049
|
'''
|
|
1050
|
+
if isinstance(zonal_config, dict):
|
|
1051
|
+
zonal_config = ZonalConfig(**zonal_config)
|
|
1021
1052
|
if __debug__:
|
|
1022
1053
|
type_hints = typing.get_type_hints(_typecheckingstub__d482592e3c5f65fb9559b3e230fe81eab72a36fdd6c5a5b3cad1b4206b327f9f)
|
|
1023
1054
|
check_type(argname="argument deployment_config_name", value=deployment_config_name, expected_type=type_hints["deployment_config_name"])
|
|
1024
1055
|
check_type(argname="argument compute_platform", value=compute_platform, expected_type=type_hints["compute_platform"])
|
|
1025
1056
|
check_type(argname="argument minimum_healthy_hosts", value=minimum_healthy_hosts, expected_type=type_hints["minimum_healthy_hosts"])
|
|
1026
1057
|
check_type(argname="argument traffic_routing", value=traffic_routing, expected_type=type_hints["traffic_routing"])
|
|
1058
|
+
check_type(argname="argument zonal_config", value=zonal_config, expected_type=type_hints["zonal_config"])
|
|
1027
1059
|
self._values: typing.Dict[builtins.str, typing.Any] = {}
|
|
1028
1060
|
if deployment_config_name is not None:
|
|
1029
1061
|
self._values["deployment_config_name"] = deployment_config_name
|
|
@@ -1033,6 +1065,8 @@ class BaseDeploymentConfigProps(BaseDeploymentConfigOptions):
|
|
|
1033
1065
|
self._values["minimum_healthy_hosts"] = minimum_healthy_hosts
|
|
1034
1066
|
if traffic_routing is not None:
|
|
1035
1067
|
self._values["traffic_routing"] = traffic_routing
|
|
1068
|
+
if zonal_config is not None:
|
|
1069
|
+
self._values["zonal_config"] = zonal_config
|
|
1036
1070
|
|
|
1037
1071
|
@builtins.property
|
|
1038
1072
|
def deployment_config_name(self) -> typing.Optional[builtins.str]:
|
|
@@ -1072,6 +1106,17 @@ class BaseDeploymentConfigProps(BaseDeploymentConfigOptions):
|
|
|
1072
1106
|
result = self._values.get("traffic_routing")
|
|
1073
1107
|
return typing.cast(typing.Optional["TrafficRouting"], result)
|
|
1074
1108
|
|
|
1109
|
+
@builtins.property
|
|
1110
|
+
def zonal_config(self) -> typing.Optional["ZonalConfig"]:
|
|
1111
|
+
'''Configure CodeDeploy to deploy your application to one Availability Zone at a time within an AWS Region.
|
|
1112
|
+
|
|
1113
|
+
:default: - deploy your application to a random selection of hosts across a Region
|
|
1114
|
+
|
|
1115
|
+
:see: https://docs.aws.amazon.com/codedeploy/latest/userguide/deployment-configurations-create.html#zonal-config
|
|
1116
|
+
'''
|
|
1117
|
+
result = self._values.get("zonal_config")
|
|
1118
|
+
return typing.cast(typing.Optional["ZonalConfig"], result)
|
|
1119
|
+
|
|
1075
1120
|
def __eq__(self, rhs: typing.Any) -> builtins.bool:
|
|
1076
1121
|
return isinstance(rhs, self.__class__) and rhs._values == self._values
|
|
1077
1122
|
|
|
@@ -7990,7 +8035,7 @@ class MinimumHealthyHosts(
|
|
|
7990
8035
|
@jsii.member(jsii_name="count")
|
|
7991
8036
|
@builtins.classmethod
|
|
7992
8037
|
def count(cls, value: jsii.Number) -> "MinimumHealthyHosts":
|
|
7993
|
-
'''The minimum
|
|
8038
|
+
'''The minimum healthy hosts threshold expressed as an absolute number.
|
|
7994
8039
|
|
|
7995
8040
|
:param value: -
|
|
7996
8041
|
'''
|
|
@@ -8002,7 +8047,7 @@ class MinimumHealthyHosts(
|
|
|
8002
8047
|
@jsii.member(jsii_name="percentage")
|
|
8003
8048
|
@builtins.classmethod
|
|
8004
8049
|
def percentage(cls, value: jsii.Number) -> "MinimumHealthyHosts":
|
|
8005
|
-
'''The
|
|
8050
|
+
'''The minimum healthy hosts threshold expressed as a percentage of the fleet.
|
|
8006
8051
|
|
|
8007
8052
|
:param value: -
|
|
8008
8053
|
'''
|
|
@@ -8012,6 +8057,51 @@ class MinimumHealthyHosts(
|
|
|
8012
8057
|
return typing.cast("MinimumHealthyHosts", jsii.sinvoke(cls, "percentage", [value]))
|
|
8013
8058
|
|
|
8014
8059
|
|
|
8060
|
+
class MinimumHealthyHostsPerZone(
|
|
8061
|
+
metaclass=jsii.JSIIMeta,
|
|
8062
|
+
jsii_type="aws-cdk-lib.aws_codedeploy.MinimumHealthyHostsPerZone",
|
|
8063
|
+
):
|
|
8064
|
+
'''Minimum number of healthy hosts per availability zone for a server deployment.
|
|
8065
|
+
|
|
8066
|
+
:exampleMetadata: infused
|
|
8067
|
+
|
|
8068
|
+
Example::
|
|
8069
|
+
|
|
8070
|
+
deployment_config = codedeploy.ServerDeploymentConfig(self, "DeploymentConfiguration",
|
|
8071
|
+
minimum_healthy_hosts=codedeploy.MinimumHealthyHosts.count(2),
|
|
8072
|
+
zonal_config=codedeploy.ZonalConfig(
|
|
8073
|
+
monitor_duration=Duration.minutes(30),
|
|
8074
|
+
first_zone_monitor_duration=Duration.minutes(60),
|
|
8075
|
+
minimum_healthy_hosts_per_zone=codedeploy.MinimumHealthyHostsPerZone.count(1)
|
|
8076
|
+
)
|
|
8077
|
+
)
|
|
8078
|
+
'''
|
|
8079
|
+
|
|
8080
|
+
@jsii.member(jsii_name="count")
|
|
8081
|
+
@builtins.classmethod
|
|
8082
|
+
def count(cls, value: jsii.Number) -> "MinimumHealthyHostsPerZone":
|
|
8083
|
+
'''The minimum healthy hosts threshold expressed as an absolute number.
|
|
8084
|
+
|
|
8085
|
+
:param value: -
|
|
8086
|
+
'''
|
|
8087
|
+
if __debug__:
|
|
8088
|
+
type_hints = typing.get_type_hints(_typecheckingstub__eccc54cbc4cc48bc8d4e0d61ba6ab67a555a3dd8c67ba3c554298b4550ec6f59)
|
|
8089
|
+
check_type(argname="argument value", value=value, expected_type=type_hints["value"])
|
|
8090
|
+
return typing.cast("MinimumHealthyHostsPerZone", jsii.sinvoke(cls, "count", [value]))
|
|
8091
|
+
|
|
8092
|
+
@jsii.member(jsii_name="percentage")
|
|
8093
|
+
@builtins.classmethod
|
|
8094
|
+
def percentage(cls, value: jsii.Number) -> "MinimumHealthyHostsPerZone":
|
|
8095
|
+
'''The minimum healthy hosts threshold expressed as a percentage of the fleet.
|
|
8096
|
+
|
|
8097
|
+
:param value: -
|
|
8098
|
+
'''
|
|
8099
|
+
if __debug__:
|
|
8100
|
+
type_hints = typing.get_type_hints(_typecheckingstub__75bdd06c1ec9d52232bc0151dd7dbfd975c0fe0a98b66121298028c191aae9e1)
|
|
8101
|
+
check_type(argname="argument value", value=value, expected_type=type_hints["value"])
|
|
8102
|
+
return typing.cast("MinimumHealthyHostsPerZone", jsii.sinvoke(cls, "percentage", [value]))
|
|
8103
|
+
|
|
8104
|
+
|
|
8015
8105
|
@jsii.implements(IServerApplication)
|
|
8016
8106
|
class ServerApplication(
|
|
8017
8107
|
_Resource_45bc6135,
|
|
@@ -8167,6 +8257,7 @@ class ServerApplicationProps:
|
|
|
8167
8257
|
name_mapping={
|
|
8168
8258
|
"deployment_config_name": "deploymentConfigName",
|
|
8169
8259
|
"minimum_healthy_hosts": "minimumHealthyHosts",
|
|
8260
|
+
"zonal_config": "zonalConfig",
|
|
8170
8261
|
},
|
|
8171
8262
|
)
|
|
8172
8263
|
class ServerDeploymentConfigProps(BaseDeploymentConfigOptions):
|
|
@@ -8175,11 +8266,13 @@ class ServerDeploymentConfigProps(BaseDeploymentConfigOptions):
|
|
|
8175
8266
|
*,
|
|
8176
8267
|
deployment_config_name: typing.Optional[builtins.str] = None,
|
|
8177
8268
|
minimum_healthy_hosts: MinimumHealthyHosts,
|
|
8269
|
+
zonal_config: typing.Optional[typing.Union["ZonalConfig", typing.Dict[builtins.str, typing.Any]]] = None,
|
|
8178
8270
|
) -> None:
|
|
8179
8271
|
'''Construction properties of ``ServerDeploymentConfig``.
|
|
8180
8272
|
|
|
8181
8273
|
:param deployment_config_name: The physical, human-readable name of the Deployment Configuration. Default: - automatically generated name
|
|
8182
8274
|
:param minimum_healthy_hosts: Minimum number of healthy hosts.
|
|
8275
|
+
:param zonal_config: Configure CodeDeploy to deploy your application to one Availability Zone at a time within an AWS Region. Default: - deploy your application to a random selection of hosts across a Region
|
|
8183
8276
|
|
|
8184
8277
|
:exampleMetadata: infused
|
|
8185
8278
|
|
|
@@ -8191,15 +8284,20 @@ class ServerDeploymentConfigProps(BaseDeploymentConfigOptions):
|
|
|
8191
8284
|
minimum_healthy_hosts=codedeploy.MinimumHealthyHosts.count(2)
|
|
8192
8285
|
)
|
|
8193
8286
|
'''
|
|
8287
|
+
if isinstance(zonal_config, dict):
|
|
8288
|
+
zonal_config = ZonalConfig(**zonal_config)
|
|
8194
8289
|
if __debug__:
|
|
8195
8290
|
type_hints = typing.get_type_hints(_typecheckingstub__46be421d00313823efbbb0072b871dc311f7d9fca8dee4c13562ddd078f8cd37)
|
|
8196
8291
|
check_type(argname="argument deployment_config_name", value=deployment_config_name, expected_type=type_hints["deployment_config_name"])
|
|
8197
8292
|
check_type(argname="argument minimum_healthy_hosts", value=minimum_healthy_hosts, expected_type=type_hints["minimum_healthy_hosts"])
|
|
8293
|
+
check_type(argname="argument zonal_config", value=zonal_config, expected_type=type_hints["zonal_config"])
|
|
8198
8294
|
self._values: typing.Dict[builtins.str, typing.Any] = {
|
|
8199
8295
|
"minimum_healthy_hosts": minimum_healthy_hosts,
|
|
8200
8296
|
}
|
|
8201
8297
|
if deployment_config_name is not None:
|
|
8202
8298
|
self._values["deployment_config_name"] = deployment_config_name
|
|
8299
|
+
if zonal_config is not None:
|
|
8300
|
+
self._values["zonal_config"] = zonal_config
|
|
8203
8301
|
|
|
8204
8302
|
@builtins.property
|
|
8205
8303
|
def deployment_config_name(self) -> typing.Optional[builtins.str]:
|
|
@@ -8217,6 +8315,15 @@ class ServerDeploymentConfigProps(BaseDeploymentConfigOptions):
|
|
|
8217
8315
|
assert result is not None, "Required property 'minimum_healthy_hosts' is missing"
|
|
8218
8316
|
return typing.cast(MinimumHealthyHosts, result)
|
|
8219
8317
|
|
|
8318
|
+
@builtins.property
|
|
8319
|
+
def zonal_config(self) -> typing.Optional["ZonalConfig"]:
|
|
8320
|
+
'''Configure CodeDeploy to deploy your application to one Availability Zone at a time within an AWS Region.
|
|
8321
|
+
|
|
8322
|
+
:default: - deploy your application to a random selection of hosts across a Region
|
|
8323
|
+
'''
|
|
8324
|
+
result = self._values.get("zonal_config")
|
|
8325
|
+
return typing.cast(typing.Optional["ZonalConfig"], result)
|
|
8326
|
+
|
|
8220
8327
|
def __eq__(self, rhs: typing.Any) -> builtins.bool:
|
|
8221
8328
|
return isinstance(rhs, self.__class__) and rhs._values == self._values
|
|
8222
8329
|
|
|
@@ -9109,6 +9216,110 @@ class TrafficRoutingConfig:
|
|
|
9109
9216
|
)
|
|
9110
9217
|
|
|
9111
9218
|
|
|
9219
|
+
@jsii.data_type(
|
|
9220
|
+
jsii_type="aws-cdk-lib.aws_codedeploy.ZonalConfig",
|
|
9221
|
+
jsii_struct_bases=[],
|
|
9222
|
+
name_mapping={
|
|
9223
|
+
"first_zone_monitor_duration": "firstZoneMonitorDuration",
|
|
9224
|
+
"minimum_healthy_hosts_per_zone": "minimumHealthyHostsPerZone",
|
|
9225
|
+
"monitor_duration": "monitorDuration",
|
|
9226
|
+
},
|
|
9227
|
+
)
|
|
9228
|
+
class ZonalConfig:
|
|
9229
|
+
def __init__(
|
|
9230
|
+
self,
|
|
9231
|
+
*,
|
|
9232
|
+
first_zone_monitor_duration: typing.Optional[_Duration_4839e8c3] = None,
|
|
9233
|
+
minimum_healthy_hosts_per_zone: typing.Optional[MinimumHealthyHostsPerZone] = None,
|
|
9234
|
+
monitor_duration: typing.Optional[_Duration_4839e8c3] = None,
|
|
9235
|
+
) -> None:
|
|
9236
|
+
'''Configuration for CodeDeploy to deploy your application to one Availability Zone at a time within an AWS Region.
|
|
9237
|
+
|
|
9238
|
+
:param first_zone_monitor_duration: The period of time that CodeDeploy must wait after completing a deployment to the first Availability Zone. Accepted Values: - 0 - Greater than or equal to 1 Default: - the same value as ``monitorDuration``
|
|
9239
|
+
:param minimum_healthy_hosts_per_zone: The number or percentage of instances that must remain available per Availability Zone during a deployment. This option works in conjunction with the ``minimumHealthyHosts`` option. Default: - 0 percent
|
|
9240
|
+
:param monitor_duration: The period of time that CodeDeploy must wait after completing a deployment to an Availability Zone. Accepted Values: - 0 - Greater than or equal to 1 Default: - CodeDeploy starts deploying to the next Availability Zone immediately
|
|
9241
|
+
|
|
9242
|
+
:exampleMetadata: infused
|
|
9243
|
+
|
|
9244
|
+
Example::
|
|
9245
|
+
|
|
9246
|
+
deployment_config = codedeploy.ServerDeploymentConfig(self, "DeploymentConfiguration",
|
|
9247
|
+
minimum_healthy_hosts=codedeploy.MinimumHealthyHosts.count(2),
|
|
9248
|
+
zonal_config=codedeploy.ZonalConfig(
|
|
9249
|
+
monitor_duration=Duration.minutes(30),
|
|
9250
|
+
first_zone_monitor_duration=Duration.minutes(60),
|
|
9251
|
+
minimum_healthy_hosts_per_zone=codedeploy.MinimumHealthyHostsPerZone.count(1)
|
|
9252
|
+
)
|
|
9253
|
+
)
|
|
9254
|
+
'''
|
|
9255
|
+
if __debug__:
|
|
9256
|
+
type_hints = typing.get_type_hints(_typecheckingstub__4e3b953d8872e36c383f9e09cfb712143f81f7357675dc0a7a44b700b05d5168)
|
|
9257
|
+
check_type(argname="argument first_zone_monitor_duration", value=first_zone_monitor_duration, expected_type=type_hints["first_zone_monitor_duration"])
|
|
9258
|
+
check_type(argname="argument minimum_healthy_hosts_per_zone", value=minimum_healthy_hosts_per_zone, expected_type=type_hints["minimum_healthy_hosts_per_zone"])
|
|
9259
|
+
check_type(argname="argument monitor_duration", value=monitor_duration, expected_type=type_hints["monitor_duration"])
|
|
9260
|
+
self._values: typing.Dict[builtins.str, typing.Any] = {}
|
|
9261
|
+
if first_zone_monitor_duration is not None:
|
|
9262
|
+
self._values["first_zone_monitor_duration"] = first_zone_monitor_duration
|
|
9263
|
+
if minimum_healthy_hosts_per_zone is not None:
|
|
9264
|
+
self._values["minimum_healthy_hosts_per_zone"] = minimum_healthy_hosts_per_zone
|
|
9265
|
+
if monitor_duration is not None:
|
|
9266
|
+
self._values["monitor_duration"] = monitor_duration
|
|
9267
|
+
|
|
9268
|
+
@builtins.property
|
|
9269
|
+
def first_zone_monitor_duration(self) -> typing.Optional[_Duration_4839e8c3]:
|
|
9270
|
+
'''The period of time that CodeDeploy must wait after completing a deployment to the first Availability Zone.
|
|
9271
|
+
|
|
9272
|
+
Accepted Values:
|
|
9273
|
+
|
|
9274
|
+
- 0
|
|
9275
|
+
- Greater than or equal to 1
|
|
9276
|
+
|
|
9277
|
+
:default: - the same value as ``monitorDuration``
|
|
9278
|
+
'''
|
|
9279
|
+
result = self._values.get("first_zone_monitor_duration")
|
|
9280
|
+
return typing.cast(typing.Optional[_Duration_4839e8c3], result)
|
|
9281
|
+
|
|
9282
|
+
@builtins.property
|
|
9283
|
+
def minimum_healthy_hosts_per_zone(
|
|
9284
|
+
self,
|
|
9285
|
+
) -> typing.Optional[MinimumHealthyHostsPerZone]:
|
|
9286
|
+
'''The number or percentage of instances that must remain available per Availability Zone during a deployment.
|
|
9287
|
+
|
|
9288
|
+
This option works in conjunction with the ``minimumHealthyHosts`` option.
|
|
9289
|
+
|
|
9290
|
+
:default: - 0 percent
|
|
9291
|
+
|
|
9292
|
+
:see: https://docs.aws.amazon.com/codedeploy/latest/userguide/instances-health.html#minimum-healthy-hosts-az
|
|
9293
|
+
'''
|
|
9294
|
+
result = self._values.get("minimum_healthy_hosts_per_zone")
|
|
9295
|
+
return typing.cast(typing.Optional[MinimumHealthyHostsPerZone], result)
|
|
9296
|
+
|
|
9297
|
+
@builtins.property
|
|
9298
|
+
def monitor_duration(self) -> typing.Optional[_Duration_4839e8c3]:
|
|
9299
|
+
'''The period of time that CodeDeploy must wait after completing a deployment to an Availability Zone.
|
|
9300
|
+
|
|
9301
|
+
Accepted Values:
|
|
9302
|
+
|
|
9303
|
+
- 0
|
|
9304
|
+
- Greater than or equal to 1
|
|
9305
|
+
|
|
9306
|
+
:default: - CodeDeploy starts deploying to the next Availability Zone immediately
|
|
9307
|
+
'''
|
|
9308
|
+
result = self._values.get("monitor_duration")
|
|
9309
|
+
return typing.cast(typing.Optional[_Duration_4839e8c3], result)
|
|
9310
|
+
|
|
9311
|
+
def __eq__(self, rhs: typing.Any) -> builtins.bool:
|
|
9312
|
+
return isinstance(rhs, self.__class__) and rhs._values == self._values
|
|
9313
|
+
|
|
9314
|
+
def __ne__(self, rhs: typing.Any) -> builtins.bool:
|
|
9315
|
+
return not (rhs == self)
|
|
9316
|
+
|
|
9317
|
+
def __repr__(self) -> str:
|
|
9318
|
+
return "ZonalConfig(%s)" % ", ".join(
|
|
9319
|
+
k + "=" + repr(v) for k, v in self._values.items()
|
|
9320
|
+
)
|
|
9321
|
+
|
|
9322
|
+
|
|
9112
9323
|
class AllAtOnceTrafficRouting(
|
|
9113
9324
|
TrafficRouting,
|
|
9114
9325
|
metaclass=jsii.JSIIMeta,
|
|
@@ -9161,6 +9372,7 @@ class BaseDeploymentConfig(
|
|
|
9161
9372
|
compute_platform: typing.Optional[ComputePlatform] = None,
|
|
9162
9373
|
minimum_healthy_hosts: typing.Optional[MinimumHealthyHosts] = None,
|
|
9163
9374
|
traffic_routing: typing.Optional[TrafficRouting] = None,
|
|
9375
|
+
zonal_config: typing.Optional[typing.Union[ZonalConfig, typing.Dict[builtins.str, typing.Any]]] = None,
|
|
9164
9376
|
deployment_config_name: typing.Optional[builtins.str] = None,
|
|
9165
9377
|
) -> None:
|
|
9166
9378
|
'''
|
|
@@ -9169,6 +9381,7 @@ class BaseDeploymentConfig(
|
|
|
9169
9381
|
:param compute_platform: The destination compute platform for the deployment. Default: ComputePlatform.Server
|
|
9170
9382
|
:param minimum_healthy_hosts: Minimum number of healthy hosts. Default: None
|
|
9171
9383
|
:param traffic_routing: The configuration that specifies how traffic is shifted during a deployment. Only applicable to ECS and Lambda deployments, and must not be specified for Server deployments. Default: None
|
|
9384
|
+
:param zonal_config: Configure CodeDeploy to deploy your application to one Availability Zone at a time within an AWS Region. Default: - deploy your application to a random selection of hosts across a Region
|
|
9172
9385
|
:param deployment_config_name: The physical, human-readable name of the Deployment Configuration. Default: - automatically generated name
|
|
9173
9386
|
'''
|
|
9174
9387
|
if __debug__:
|
|
@@ -9179,6 +9392,7 @@ class BaseDeploymentConfig(
|
|
|
9179
9392
|
compute_platform=compute_platform,
|
|
9180
9393
|
minimum_healthy_hosts=minimum_healthy_hosts,
|
|
9181
9394
|
traffic_routing=traffic_routing,
|
|
9395
|
+
zonal_config=zonal_config,
|
|
9182
9396
|
deployment_config_name=deployment_config_name,
|
|
9183
9397
|
)
|
|
9184
9398
|
|
|
@@ -9899,8 +10113,10 @@ class ServerDeploymentConfig(
|
|
|
9899
10113
|
|
|
9900
10114
|
Example::
|
|
9901
10115
|
|
|
9902
|
-
|
|
9903
|
-
|
|
10116
|
+
deployment_config = codedeploy.ServerDeploymentConfig(self, "DeploymentConfiguration",
|
|
10117
|
+
deployment_config_name="MyDeploymentConfiguration", # optional property
|
|
10118
|
+
# one of these is required, but both cannot be specified at the same time
|
|
10119
|
+
minimum_healthy_hosts=codedeploy.MinimumHealthyHosts.count(2)
|
|
9904
10120
|
)
|
|
9905
10121
|
'''
|
|
9906
10122
|
|
|
@@ -9910,12 +10126,14 @@ class ServerDeploymentConfig(
|
|
|
9910
10126
|
id: builtins.str,
|
|
9911
10127
|
*,
|
|
9912
10128
|
minimum_healthy_hosts: MinimumHealthyHosts,
|
|
10129
|
+
zonal_config: typing.Optional[typing.Union[ZonalConfig, typing.Dict[builtins.str, typing.Any]]] = None,
|
|
9913
10130
|
deployment_config_name: typing.Optional[builtins.str] = None,
|
|
9914
10131
|
) -> None:
|
|
9915
10132
|
'''
|
|
9916
10133
|
:param scope: -
|
|
9917
10134
|
:param id: -
|
|
9918
10135
|
:param minimum_healthy_hosts: Minimum number of healthy hosts.
|
|
10136
|
+
:param zonal_config: Configure CodeDeploy to deploy your application to one Availability Zone at a time within an AWS Region. Default: - deploy your application to a random selection of hosts across a Region
|
|
9919
10137
|
:param deployment_config_name: The physical, human-readable name of the Deployment Configuration. Default: - automatically generated name
|
|
9920
10138
|
'''
|
|
9921
10139
|
if __debug__:
|
|
@@ -9924,6 +10142,7 @@ class ServerDeploymentConfig(
|
|
|
9924
10142
|
check_type(argname="argument id", value=id, expected_type=type_hints["id"])
|
|
9925
10143
|
props = ServerDeploymentConfigProps(
|
|
9926
10144
|
minimum_healthy_hosts=minimum_healthy_hosts,
|
|
10145
|
+
zonal_config=zonal_config,
|
|
9927
10146
|
deployment_config_name=deployment_config_name,
|
|
9928
10147
|
)
|
|
9929
10148
|
|
|
@@ -10147,6 +10366,7 @@ __all__ = [
|
|
|
10147
10366
|
"LoadBalancer",
|
|
10148
10367
|
"LoadBalancerGeneration",
|
|
10149
10368
|
"MinimumHealthyHosts",
|
|
10369
|
+
"MinimumHealthyHostsPerZone",
|
|
10150
10370
|
"ServerApplication",
|
|
10151
10371
|
"ServerApplicationProps",
|
|
10152
10372
|
"ServerDeploymentConfig",
|
|
@@ -10160,6 +10380,7 @@ __all__ = [
|
|
|
10160
10380
|
"TimeBasedLinearTrafficRoutingProps",
|
|
10161
10381
|
"TrafficRouting",
|
|
10162
10382
|
"TrafficRoutingConfig",
|
|
10383
|
+
"ZonalConfig",
|
|
10163
10384
|
]
|
|
10164
10385
|
|
|
10165
10386
|
publication.publish()
|
|
@@ -10186,6 +10407,7 @@ def _typecheckingstub__d482592e3c5f65fb9559b3e230fe81eab72a36fdd6c5a5b3cad1b4206
|
|
|
10186
10407
|
compute_platform: typing.Optional[ComputePlatform] = None,
|
|
10187
10408
|
minimum_healthy_hosts: typing.Optional[MinimumHealthyHosts] = None,
|
|
10188
10409
|
traffic_routing: typing.Optional[TrafficRouting] = None,
|
|
10410
|
+
zonal_config: typing.Optional[typing.Union[ZonalConfig, typing.Dict[builtins.str, typing.Any]]] = None,
|
|
10189
10411
|
) -> None:
|
|
10190
10412
|
"""Type checking stubs"""
|
|
10191
10413
|
pass
|
|
@@ -10994,6 +11216,18 @@ def _typecheckingstub__6c2a97036f753857be857236ee3fb97ddf235514bd9c31466fb2e5691
|
|
|
10994
11216
|
"""Type checking stubs"""
|
|
10995
11217
|
pass
|
|
10996
11218
|
|
|
11219
|
+
def _typecheckingstub__eccc54cbc4cc48bc8d4e0d61ba6ab67a555a3dd8c67ba3c554298b4550ec6f59(
|
|
11220
|
+
value: jsii.Number,
|
|
11221
|
+
) -> None:
|
|
11222
|
+
"""Type checking stubs"""
|
|
11223
|
+
pass
|
|
11224
|
+
|
|
11225
|
+
def _typecheckingstub__75bdd06c1ec9d52232bc0151dd7dbfd975c0fe0a98b66121298028c191aae9e1(
|
|
11226
|
+
value: jsii.Number,
|
|
11227
|
+
) -> None:
|
|
11228
|
+
"""Type checking stubs"""
|
|
11229
|
+
pass
|
|
11230
|
+
|
|
10997
11231
|
def _typecheckingstub__ff491d45a3da21d4d70991ac332ef8f240b72138a59519fcf6c3da3a3a9cb970(
|
|
10998
11232
|
scope: _constructs_77d1e7e8.Construct,
|
|
10999
11233
|
id: builtins.str,
|
|
@@ -11030,6 +11264,7 @@ def _typecheckingstub__46be421d00313823efbbb0072b871dc311f7d9fca8dee4c13562ddd07
|
|
|
11030
11264
|
*,
|
|
11031
11265
|
deployment_config_name: typing.Optional[builtins.str] = None,
|
|
11032
11266
|
minimum_healthy_hosts: MinimumHealthyHosts,
|
|
11267
|
+
zonal_config: typing.Optional[typing.Union[ZonalConfig, typing.Dict[builtins.str, typing.Any]]] = None,
|
|
11033
11268
|
) -> None:
|
|
11034
11269
|
"""Type checking stubs"""
|
|
11035
11270
|
pass
|
|
@@ -11141,6 +11376,15 @@ def _typecheckingstub__b845a8828051dc720d79c0332ea3470f754dd765be05c704a97b65823
|
|
|
11141
11376
|
"""Type checking stubs"""
|
|
11142
11377
|
pass
|
|
11143
11378
|
|
|
11379
|
+
def _typecheckingstub__4e3b953d8872e36c383f9e09cfb712143f81f7357675dc0a7a44b700b05d5168(
|
|
11380
|
+
*,
|
|
11381
|
+
first_zone_monitor_duration: typing.Optional[_Duration_4839e8c3] = None,
|
|
11382
|
+
minimum_healthy_hosts_per_zone: typing.Optional[MinimumHealthyHostsPerZone] = None,
|
|
11383
|
+
monitor_duration: typing.Optional[_Duration_4839e8c3] = None,
|
|
11384
|
+
) -> None:
|
|
11385
|
+
"""Type checking stubs"""
|
|
11386
|
+
pass
|
|
11387
|
+
|
|
11144
11388
|
def _typecheckingstub__f05ebc00e48366a13e2ad293e1822da6d979a050647a74d9f563aab403921d0d(
|
|
11145
11389
|
_scope: _constructs_77d1e7e8.Construct,
|
|
11146
11390
|
) -> None:
|
|
@@ -11154,6 +11398,7 @@ def _typecheckingstub__f7be4ac008b1dbe1f91bb986ac7bb32dd779f4962b7a7696d9064b17f
|
|
|
11154
11398
|
compute_platform: typing.Optional[ComputePlatform] = None,
|
|
11155
11399
|
minimum_healthy_hosts: typing.Optional[MinimumHealthyHosts] = None,
|
|
11156
11400
|
traffic_routing: typing.Optional[TrafficRouting] = None,
|
|
11401
|
+
zonal_config: typing.Optional[typing.Union[ZonalConfig, typing.Dict[builtins.str, typing.Any]]] = None,
|
|
11157
11402
|
deployment_config_name: typing.Optional[builtins.str] = None,
|
|
11158
11403
|
) -> None:
|
|
11159
11404
|
"""Type checking stubs"""
|
|
@@ -11289,6 +11534,7 @@ def _typecheckingstub__0188bedb6550f8f8ec5175aae5830d1c200a93e114c45fc9d6b3942b7
|
|
|
11289
11534
|
id: builtins.str,
|
|
11290
11535
|
*,
|
|
11291
11536
|
minimum_healthy_hosts: MinimumHealthyHosts,
|
|
11537
|
+
zonal_config: typing.Optional[typing.Union[ZonalConfig, typing.Dict[builtins.str, typing.Any]]] = None,
|
|
11292
11538
|
deployment_config_name: typing.Optional[builtins.str] = None,
|
|
11293
11539
|
) -> None:
|
|
11294
11540
|
"""Type checking stubs"""
|