aws-cdk-lib 2.190.0__py3-none-any.whl → 2.192.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 +18 -21
- aws_cdk/_jsii/__init__.py +1 -1
- aws_cdk/_jsii/{aws-cdk-lib@2.190.0.jsii.tgz → aws-cdk-lib@2.192.0.jsii.tgz} +0 -0
- aws_cdk/aws_apigateway/__init__.py +108 -20
- aws_cdk/aws_aps/__init__.py +383 -2
- aws_cdk/aws_batch/__init__.py +40 -18
- aws_cdk/aws_bedrock/__init__.py +676 -41
- aws_cdk/aws_codebuild/__init__.py +48 -0
- aws_cdk/aws_codepipeline/__init__.py +16 -0
- aws_cdk/aws_cognito_identitypool/__init__.py +9 -1
- aws_cdk/aws_datazone/__init__.py +23 -1
- aws_cdk/aws_ec2/__init__.py +39 -39
- aws_cdk/aws_ecs/__init__.py +230 -155
- aws_cdk/aws_events/__init__.py +77 -0
- aws_cdk/aws_iam/__init__.py +178 -0
- aws_cdk/aws_launchwizard/__init__.py +49 -49
- aws_cdk/aws_neptune/__init__.py +0 -16
- aws_cdk/aws_rds/__init__.py +48 -0
- aws_cdk/aws_s3tables/__init__.py +142 -1
- aws_cdk/aws_servicediscovery/__init__.py +66 -36
- aws_cdk/aws_ses/__init__.py +687 -18
- {aws_cdk_lib-2.190.0.dist-info → aws_cdk_lib-2.192.0.dist-info}/METADATA +1 -1
- {aws_cdk_lib-2.190.0.dist-info → aws_cdk_lib-2.192.0.dist-info}/RECORD +27 -27
- {aws_cdk_lib-2.190.0.dist-info → aws_cdk_lib-2.192.0.dist-info}/LICENSE +0 -0
- {aws_cdk_lib-2.190.0.dist-info → aws_cdk_lib-2.192.0.dist-info}/NOTICE +0 -0
- {aws_cdk_lib-2.190.0.dist-info → aws_cdk_lib-2.192.0.dist-info}/WHEEL +0 -0
- {aws_cdk_lib-2.190.0.dist-info → aws_cdk_lib-2.192.0.dist-info}/top_level.txt +0 -0
aws_cdk/__init__.py
CHANGED
|
@@ -22143,29 +22143,26 @@ class StackProps:
|
|
|
22143
22143
|
|
|
22144
22144
|
Example::
|
|
22145
22145
|
|
|
22146
|
-
|
|
22147
|
-
|
|
22148
|
-
region="us-east-1"
|
|
22149
|
-
),
|
|
22150
|
-
cross_region_references=True
|
|
22151
|
-
)
|
|
22152
|
-
cert = acm.Certificate(stack1, "Cert",
|
|
22153
|
-
domain_name="*.example.com",
|
|
22154
|
-
validation=acm.CertificateValidation.from_dns(route53.PublicHostedZone.from_hosted_zone_id(stack1, "Zone", "Z0329774B51CGXTDQV3X"))
|
|
22155
|
-
)
|
|
22146
|
+
import aws_cdk as cdk
|
|
22147
|
+
import aws_cdk.aws_cloudwatch as cloudwatch
|
|
22156
22148
|
|
|
22157
|
-
|
|
22158
|
-
|
|
22159
|
-
|
|
22160
|
-
|
|
22161
|
-
|
|
22149
|
+
|
|
22150
|
+
app = cdk.App()
|
|
22151
|
+
stack = cdk.Stack(app, "Stack", env=cdk.Environment(region="us-west-2"))
|
|
22152
|
+
|
|
22153
|
+
global_table = dynamodb.TableV2(stack, "GlobalTable",
|
|
22154
|
+
partition_key=dynamodb.Attribute(name="pk", type=dynamodb.AttributeType.STRING),
|
|
22155
|
+
replicas=[dynamodb.ReplicaTableProps(region="us-east-1"), dynamodb.ReplicaTableProps(region="us-east-2")
|
|
22156
|
+
]
|
|
22162
22157
|
)
|
|
22163
|
-
|
|
22164
|
-
|
|
22165
|
-
|
|
22166
|
-
|
|
22167
|
-
|
|
22168
|
-
|
|
22158
|
+
|
|
22159
|
+
# metric is only for the table in us-west-2
|
|
22160
|
+
metric = global_table.metric_consumed_read_capacity_units()
|
|
22161
|
+
|
|
22162
|
+
cloudwatch.Alarm(self, "Alarm",
|
|
22163
|
+
metric=metric,
|
|
22164
|
+
evaluation_periods=1,
|
|
22165
|
+
threshold=1
|
|
22169
22166
|
)
|
|
22170
22167
|
'''
|
|
22171
22168
|
if isinstance(env, dict):
|
aws_cdk/_jsii/__init__.py
CHANGED
|
@@ -34,7 +34,7 @@ import aws_cdk.cloud_assembly_schema._jsii
|
|
|
34
34
|
import constructs._jsii
|
|
35
35
|
|
|
36
36
|
__jsii_assembly__ = jsii.JSIIAssembly.load(
|
|
37
|
-
"aws-cdk-lib", "2.
|
|
37
|
+
"aws-cdk-lib", "2.192.0", __name__[0:-6], "aws-cdk-lib@2.192.0.jsii.tgz"
|
|
38
38
|
)
|
|
39
39
|
|
|
40
40
|
__all__ = [
|
|
Binary file
|
|
@@ -35,6 +35,11 @@ running on AWS Lambda, or any web application.
|
|
|
35
35
|
* [Mutual TLS (mTLS)](#mutual-tls-mtls)
|
|
36
36
|
* [Deployments](#deployments)
|
|
37
37
|
|
|
38
|
+
* [Deploying to an existing stage](#deploying-to-an-existing-stage)
|
|
39
|
+
|
|
40
|
+
* [Using RestApi](#using-restapi)
|
|
41
|
+
* [Using SpecRestApi](#using-specrestapi)
|
|
42
|
+
* [Controlled triggering of deployments](#controlled-triggering-of-deployments)
|
|
38
43
|
* [Deep dive: Invalidation of deployments](#deep-dive-invalidation-of-deployments)
|
|
39
44
|
* [Custom Domains](#custom-domains)
|
|
40
45
|
|
|
@@ -1806,6 +1811,26 @@ for more details.
|
|
|
1806
1811
|
properties that can be configured directly in the OpenAPI specification file. This is to prevent people duplication
|
|
1807
1812
|
of these properties and potential confusion.
|
|
1808
1813
|
|
|
1814
|
+
However, you can control how API Gateway handles resource updates using the `mode` property. Valid values are:
|
|
1815
|
+
|
|
1816
|
+
* `overwrite` - The new API definition replaces the existing one. The existing API identifier remains unchanged.
|
|
1817
|
+
* `merge` - The new API definition is merged with the existing API.
|
|
1818
|
+
|
|
1819
|
+
If you don't specify this property, a default value is chosen:
|
|
1820
|
+
|
|
1821
|
+
* For REST APIs created before March 29, 2021, the default is `overwrite`
|
|
1822
|
+
* For REST APIs created after March 29, 2021, the new API definition takes precedence, but any container types such as endpoint configurations and binary media types are merged with the existing API.
|
|
1823
|
+
|
|
1824
|
+
Use the default mode to define top-level RestApi properties in addition to using OpenAPI.
|
|
1825
|
+
Generally, it's preferred to use API Gateway's OpenAPI extensions to model these properties.
|
|
1826
|
+
|
|
1827
|
+
```python
|
|
1828
|
+
api = apigateway.SpecRestApi(self, "books-api",
|
|
1829
|
+
api_definition=apigateway.ApiDefinition.from_asset("path-to-file.json"),
|
|
1830
|
+
mode=apigateway.RestApiMode.MERGE
|
|
1831
|
+
)
|
|
1832
|
+
```
|
|
1833
|
+
|
|
1809
1834
|
### Endpoint configuration
|
|
1810
1835
|
|
|
1811
1836
|
By default, `SpecRestApi` will create an edge optimized endpoint.
|
|
@@ -8639,6 +8664,7 @@ class CfnDomainNameV2(
|
|
|
8639
8664
|
certificate_arn="certificateArn",
|
|
8640
8665
|
domain_name="domainName",
|
|
8641
8666
|
endpoint_configuration=apigateway.CfnDomainNameV2.EndpointConfigurationProperty(
|
|
8667
|
+
ip_address_type="ipAddressType",
|
|
8642
8668
|
types=["types"]
|
|
8643
8669
|
),
|
|
8644
8670
|
policy=policy,
|
|
@@ -8832,16 +8858,18 @@ class CfnDomainNameV2(
|
|
|
8832
8858
|
@jsii.data_type(
|
|
8833
8859
|
jsii_type="aws-cdk-lib.aws_apigateway.CfnDomainNameV2.EndpointConfigurationProperty",
|
|
8834
8860
|
jsii_struct_bases=[],
|
|
8835
|
-
name_mapping={"types": "types"},
|
|
8861
|
+
name_mapping={"ip_address_type": "ipAddressType", "types": "types"},
|
|
8836
8862
|
)
|
|
8837
8863
|
class EndpointConfigurationProperty:
|
|
8838
8864
|
def __init__(
|
|
8839
8865
|
self,
|
|
8840
8866
|
*,
|
|
8867
|
+
ip_address_type: typing.Optional[builtins.str] = None,
|
|
8841
8868
|
types: typing.Optional[typing.Sequence[builtins.str]] = None,
|
|
8842
8869
|
) -> None:
|
|
8843
8870
|
'''The endpoint configuration to indicate the types of endpoints an API (RestApi) or its custom domain name (DomainName) has and the IP address types that can invoke it.
|
|
8844
8871
|
|
|
8872
|
+
:param ip_address_type:
|
|
8845
8873
|
:param types: A list of endpoint types of an API (RestApi) or its custom domain name (DomainName). For an edge-optimized API and its custom domain name, the endpoint type is ``"EDGE"`` . For a regional API and its custom domain name, the endpoint type is ``REGIONAL`` . For a private API, the endpoint type is ``PRIVATE`` .
|
|
8846
8874
|
|
|
8847
8875
|
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-domainnamev2-endpointconfiguration.html
|
|
@@ -8854,16 +8882,28 @@ class CfnDomainNameV2(
|
|
|
8854
8882
|
from aws_cdk import aws_apigateway as apigateway
|
|
8855
8883
|
|
|
8856
8884
|
endpoint_configuration_property = apigateway.CfnDomainNameV2.EndpointConfigurationProperty(
|
|
8885
|
+
ip_address_type="ipAddressType",
|
|
8857
8886
|
types=["types"]
|
|
8858
8887
|
)
|
|
8859
8888
|
'''
|
|
8860
8889
|
if __debug__:
|
|
8861
8890
|
type_hints = typing.get_type_hints(_typecheckingstub__6b6f3002516ae2cfe5144f016260236185910ca3b84cc4dc018cc660b10716c4)
|
|
8891
|
+
check_type(argname="argument ip_address_type", value=ip_address_type, expected_type=type_hints["ip_address_type"])
|
|
8862
8892
|
check_type(argname="argument types", value=types, expected_type=type_hints["types"])
|
|
8863
8893
|
self._values: typing.Dict[builtins.str, typing.Any] = {}
|
|
8894
|
+
if ip_address_type is not None:
|
|
8895
|
+
self._values["ip_address_type"] = ip_address_type
|
|
8864
8896
|
if types is not None:
|
|
8865
8897
|
self._values["types"] = types
|
|
8866
8898
|
|
|
8899
|
+
@builtins.property
|
|
8900
|
+
def ip_address_type(self) -> typing.Optional[builtins.str]:
|
|
8901
|
+
'''
|
|
8902
|
+
:see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-apigateway-domainnamev2-endpointconfiguration.html#cfn-apigateway-domainnamev2-endpointconfiguration-ipaddresstype
|
|
8903
|
+
'''
|
|
8904
|
+
result = self._values.get("ip_address_type")
|
|
8905
|
+
return typing.cast(typing.Optional[builtins.str], result)
|
|
8906
|
+
|
|
8867
8907
|
@builtins.property
|
|
8868
8908
|
def types(self) -> typing.Optional[typing.List[builtins.str]]:
|
|
8869
8909
|
'''A list of endpoint types of an API (RestApi) or its custom domain name (DomainName).
|
|
@@ -8934,6 +8974,7 @@ class CfnDomainNameV2Props:
|
|
|
8934
8974
|
certificate_arn="certificateArn",
|
|
8935
8975
|
domain_name="domainName",
|
|
8936
8976
|
endpoint_configuration=apigateway.CfnDomainNameV2.EndpointConfigurationProperty(
|
|
8977
|
+
ip_address_type="ipAddressType",
|
|
8937
8978
|
types=["types"]
|
|
8938
8979
|
),
|
|
8939
8980
|
policy=policy,
|
|
@@ -24625,7 +24666,7 @@ class RestApiBaseProps:
|
|
|
24625
24666
|
) -> typing.Optional[_RemovalPolicy_9f93c814]:
|
|
24626
24667
|
'''The removal policy applied to the AWS CloudWatch role when this resource is removed from the application.
|
|
24627
24668
|
|
|
24628
|
-
Requires ``cloudWatchRole``
|
|
24669
|
+
Requires ``cloudWatchRole`` to be enabled.
|
|
24629
24670
|
|
|
24630
24671
|
:default: - RemovalPolicy.RETAIN
|
|
24631
24672
|
'''
|
|
@@ -24795,6 +24836,26 @@ class RestApiBaseProps:
|
|
|
24795
24836
|
)
|
|
24796
24837
|
|
|
24797
24838
|
|
|
24839
|
+
@jsii.enum(jsii_type="aws-cdk-lib.aws_apigateway.RestApiMode")
|
|
24840
|
+
class RestApiMode(enum.Enum):
|
|
24841
|
+
'''The Mode that determines how API Gateway handles resource updates when importing an OpenAPI definition.
|
|
24842
|
+
|
|
24843
|
+
:exampleMetadata: infused
|
|
24844
|
+
|
|
24845
|
+
Example::
|
|
24846
|
+
|
|
24847
|
+
api = apigateway.SpecRestApi(self, "books-api",
|
|
24848
|
+
api_definition=apigateway.ApiDefinition.from_asset("path-to-file.json"),
|
|
24849
|
+
mode=apigateway.RestApiMode.MERGE
|
|
24850
|
+
)
|
|
24851
|
+
'''
|
|
24852
|
+
|
|
24853
|
+
OVERWRITE = "OVERWRITE"
|
|
24854
|
+
'''The new API definition replaces the existing one.'''
|
|
24855
|
+
MERGE = "MERGE"
|
|
24856
|
+
'''The new API definition is merged with the existing API.'''
|
|
24857
|
+
|
|
24858
|
+
|
|
24798
24859
|
@jsii.data_type(
|
|
24799
24860
|
jsii_type="aws-cdk-lib.aws_apigateway.RestApiProps",
|
|
24800
24861
|
jsii_struct_bases=[ResourceOptions, RestApiBaseProps],
|
|
@@ -25019,7 +25080,7 @@ class RestApiProps(ResourceOptions, RestApiBaseProps):
|
|
|
25019
25080
|
) -> typing.Optional[_RemovalPolicy_9f93c814]:
|
|
25020
25081
|
'''The removal policy applied to the AWS CloudWatch role when this resource is removed from the application.
|
|
25021
25082
|
|
|
25022
|
-
Requires ``cloudWatchRole``
|
|
25083
|
+
Requires ``cloudWatchRole`` to be enabled.
|
|
25023
25084
|
|
|
25024
25085
|
:default: - RemovalPolicy.RETAIN
|
|
25025
25086
|
'''
|
|
@@ -25638,15 +25699,10 @@ class SpecRestApi(
|
|
|
25638
25699
|
|
|
25639
25700
|
Example::
|
|
25640
25701
|
|
|
25641
|
-
# integration: apigateway.Integration
|
|
25642
|
-
|
|
25643
|
-
|
|
25644
25702
|
api = apigateway.SpecRestApi(self, "books-api",
|
|
25645
|
-
api_definition=apigateway.ApiDefinition.from_asset("path-to-file.json")
|
|
25703
|
+
api_definition=apigateway.ApiDefinition.from_asset("path-to-file.json"),
|
|
25704
|
+
mode=apigateway.RestApiMode.MERGE
|
|
25646
25705
|
)
|
|
25647
|
-
|
|
25648
|
-
books_resource = api.root.add_resource("books")
|
|
25649
|
-
books_resource.add_method("GET", integration)
|
|
25650
25706
|
'''
|
|
25651
25707
|
|
|
25652
25708
|
def __init__(
|
|
@@ -25656,6 +25712,7 @@ class SpecRestApi(
|
|
|
25656
25712
|
*,
|
|
25657
25713
|
api_definition: ApiDefinition,
|
|
25658
25714
|
min_compression_size: typing.Optional[_Size_7b441c34] = None,
|
|
25715
|
+
mode: typing.Optional[RestApiMode] = None,
|
|
25659
25716
|
cloud_watch_role: typing.Optional[builtins.bool] = None,
|
|
25660
25717
|
cloud_watch_role_removal_policy: typing.Optional[_RemovalPolicy_9f93c814] = None,
|
|
25661
25718
|
deploy: typing.Optional[builtins.bool] = None,
|
|
@@ -25677,6 +25734,7 @@ class SpecRestApi(
|
|
|
25677
25734
|
:param id: -
|
|
25678
25735
|
:param api_definition: An OpenAPI definition compatible with API Gateway.
|
|
25679
25736
|
:param min_compression_size: A Size(in bytes, kibibytes, mebibytes etc) that is used to enable compression (with non-negative between 0 and 10485760 (10M) bytes, inclusive) or disable compression (when undefined) on an API. When compression is enabled, compression or decompression is not applied on the payload if the payload size is smaller than this value. Setting it to zero allows compression for any payload size. Default: - Compression is disabled.
|
|
25737
|
+
:param mode: The Mode that determines how API Gateway handles resource updates. Valid values are ``overwrite`` or ``merge``. For ``overwrite``, the new API definition replaces the existing one. The existing API identifier remains unchanged. For ``merge``, the new API definition is merged with the existing API. If you don't specify this property, a default value is chosen: - For REST APIs created before March 29, 2021, the default is ``overwrite`` - For REST APIs created after March 29, 2021, the new API definition takes precedence, but any container types such as endpoint configurations and binary media types are merged with the existing API. Use the default mode to define top-level RestApi properties in addition to using OpenAPI. Generally, it's preferred to use API Gateway's OpenAPI extensions to model these properties. Default: - ``merge`` for REST APIs created after March 29, 2021, otherwise ``overwrite``
|
|
25680
25738
|
:param cloud_watch_role: Automatically configure an AWS CloudWatch role for API Gateway. Default: - false if ``@aws-cdk/aws-apigateway:disableCloudWatchRole`` is enabled, true otherwise
|
|
25681
25739
|
:param cloud_watch_role_removal_policy: The removal policy applied to the AWS CloudWatch role when this resource is removed from the application. Requires ``cloudWatchRole`` to be enabled. Default: - RemovalPolicy.RETAIN
|
|
25682
25740
|
:param deploy: Indicates if a Deployment should be automatically created for this API, and recreated when the API model (resources, methods) changes. Since API Gateway deployments are immutable, When this option is enabled (by default), an AWS::ApiGateway::Deployment resource will automatically created with a logical ID that hashes the API model (methods, resources and options). This means that when the model changes, the logical ID of this CloudFormation resource will change, and a new deployment will be created. If this is set, ``latestDeployment`` will refer to the ``Deployment`` object and ``deploymentStage`` will refer to a ``Stage`` that points to this deployment. To customize the stage options, use the ``deployOptions`` property. A CloudFormation Output will also be defined with the root URL endpoint of this REST API. Default: true
|
|
@@ -25700,6 +25758,7 @@ class SpecRestApi(
|
|
|
25700
25758
|
props = SpecRestApiProps(
|
|
25701
25759
|
api_definition=api_definition,
|
|
25702
25760
|
min_compression_size=min_compression_size,
|
|
25761
|
+
mode=mode,
|
|
25703
25762
|
cloud_watch_role=cloud_watch_role,
|
|
25704
25763
|
cloud_watch_role_removal_policy=cloud_watch_role_removal_policy,
|
|
25705
25764
|
deploy=deploy,
|
|
@@ -25783,6 +25842,7 @@ class SpecRestApi(
|
|
|
25783
25842
|
"retain_deployments": "retainDeployments",
|
|
25784
25843
|
"api_definition": "apiDefinition",
|
|
25785
25844
|
"min_compression_size": "minCompressionSize",
|
|
25845
|
+
"mode": "mode",
|
|
25786
25846
|
},
|
|
25787
25847
|
)
|
|
25788
25848
|
class SpecRestApiProps(RestApiBaseProps):
|
|
@@ -25806,6 +25866,7 @@ class SpecRestApiProps(RestApiBaseProps):
|
|
|
25806
25866
|
retain_deployments: typing.Optional[builtins.bool] = None,
|
|
25807
25867
|
api_definition: ApiDefinition,
|
|
25808
25868
|
min_compression_size: typing.Optional[_Size_7b441c34] = None,
|
|
25869
|
+
mode: typing.Optional[RestApiMode] = None,
|
|
25809
25870
|
) -> None:
|
|
25810
25871
|
'''Props to instantiate a new SpecRestApi.
|
|
25811
25872
|
|
|
@@ -25826,20 +25887,16 @@ class SpecRestApiProps(RestApiBaseProps):
|
|
|
25826
25887
|
:param retain_deployments: Retains old deployment resources when the API changes. This allows manually reverting stages to point to old deployments via the AWS Console. Default: false
|
|
25827
25888
|
:param api_definition: An OpenAPI definition compatible with API Gateway.
|
|
25828
25889
|
:param min_compression_size: A Size(in bytes, kibibytes, mebibytes etc) that is used to enable compression (with non-negative between 0 and 10485760 (10M) bytes, inclusive) or disable compression (when undefined) on an API. When compression is enabled, compression or decompression is not applied on the payload if the payload size is smaller than this value. Setting it to zero allows compression for any payload size. Default: - Compression is disabled.
|
|
25890
|
+
:param mode: The Mode that determines how API Gateway handles resource updates. Valid values are ``overwrite`` or ``merge``. For ``overwrite``, the new API definition replaces the existing one. The existing API identifier remains unchanged. For ``merge``, the new API definition is merged with the existing API. If you don't specify this property, a default value is chosen: - For REST APIs created before March 29, 2021, the default is ``overwrite`` - For REST APIs created after March 29, 2021, the new API definition takes precedence, but any container types such as endpoint configurations and binary media types are merged with the existing API. Use the default mode to define top-level RestApi properties in addition to using OpenAPI. Generally, it's preferred to use API Gateway's OpenAPI extensions to model these properties. Default: - ``merge`` for REST APIs created after March 29, 2021, otherwise ``overwrite``
|
|
25829
25891
|
|
|
25830
25892
|
:exampleMetadata: infused
|
|
25831
25893
|
|
|
25832
25894
|
Example::
|
|
25833
25895
|
|
|
25834
|
-
# integration: apigateway.Integration
|
|
25835
|
-
|
|
25836
|
-
|
|
25837
25896
|
api = apigateway.SpecRestApi(self, "books-api",
|
|
25838
|
-
api_definition=apigateway.ApiDefinition.from_asset("path-to-file.json")
|
|
25897
|
+
api_definition=apigateway.ApiDefinition.from_asset("path-to-file.json"),
|
|
25898
|
+
mode=apigateway.RestApiMode.MERGE
|
|
25839
25899
|
)
|
|
25840
|
-
|
|
25841
|
-
books_resource = api.root.add_resource("books")
|
|
25842
|
-
books_resource.add_method("GET", integration)
|
|
25843
25900
|
'''
|
|
25844
25901
|
if isinstance(deploy_options, dict):
|
|
25845
25902
|
deploy_options = StageOptions(**deploy_options)
|
|
@@ -25866,6 +25923,7 @@ class SpecRestApiProps(RestApiBaseProps):
|
|
|
25866
25923
|
check_type(argname="argument retain_deployments", value=retain_deployments, expected_type=type_hints["retain_deployments"])
|
|
25867
25924
|
check_type(argname="argument api_definition", value=api_definition, expected_type=type_hints["api_definition"])
|
|
25868
25925
|
check_type(argname="argument min_compression_size", value=min_compression_size, expected_type=type_hints["min_compression_size"])
|
|
25926
|
+
check_type(argname="argument mode", value=mode, expected_type=type_hints["mode"])
|
|
25869
25927
|
self._values: typing.Dict[builtins.str, typing.Any] = {
|
|
25870
25928
|
"api_definition": api_definition,
|
|
25871
25929
|
}
|
|
@@ -25901,6 +25959,8 @@ class SpecRestApiProps(RestApiBaseProps):
|
|
|
25901
25959
|
self._values["retain_deployments"] = retain_deployments
|
|
25902
25960
|
if min_compression_size is not None:
|
|
25903
25961
|
self._values["min_compression_size"] = min_compression_size
|
|
25962
|
+
if mode is not None:
|
|
25963
|
+
self._values["mode"] = mode
|
|
25904
25964
|
|
|
25905
25965
|
@builtins.property
|
|
25906
25966
|
def cloud_watch_role(self) -> typing.Optional[builtins.bool]:
|
|
@@ -25917,7 +25977,7 @@ class SpecRestApiProps(RestApiBaseProps):
|
|
|
25917
25977
|
) -> typing.Optional[_RemovalPolicy_9f93c814]:
|
|
25918
25978
|
'''The removal policy applied to the AWS CloudWatch role when this resource is removed from the application.
|
|
25919
25979
|
|
|
25920
|
-
Requires ``cloudWatchRole``
|
|
25980
|
+
Requires ``cloudWatchRole`` to be enabled.
|
|
25921
25981
|
|
|
25922
25982
|
:default: - RemovalPolicy.RETAIN
|
|
25923
25983
|
'''
|
|
@@ -26099,6 +26159,30 @@ class SpecRestApiProps(RestApiBaseProps):
|
|
|
26099
26159
|
result = self._values.get("min_compression_size")
|
|
26100
26160
|
return typing.cast(typing.Optional[_Size_7b441c34], result)
|
|
26101
26161
|
|
|
26162
|
+
@builtins.property
|
|
26163
|
+
def mode(self) -> typing.Optional[RestApiMode]:
|
|
26164
|
+
'''The Mode that determines how API Gateway handles resource updates.
|
|
26165
|
+
|
|
26166
|
+
Valid values are ``overwrite`` or ``merge``.
|
|
26167
|
+
|
|
26168
|
+
For ``overwrite``, the new API definition replaces the existing one.
|
|
26169
|
+
The existing API identifier remains unchanged.
|
|
26170
|
+
|
|
26171
|
+
For ``merge``, the new API definition is merged with the existing API.
|
|
26172
|
+
|
|
26173
|
+
If you don't specify this property, a default value is chosen:
|
|
26174
|
+
|
|
26175
|
+
- For REST APIs created before March 29, 2021, the default is ``overwrite``
|
|
26176
|
+
- For REST APIs created after March 29, 2021, the new API definition takes precedence, but any container types such as endpoint configurations and binary media types are merged with the existing API.
|
|
26177
|
+
|
|
26178
|
+
Use the default mode to define top-level RestApi properties in addition to using OpenAPI.
|
|
26179
|
+
Generally, it's preferred to use API Gateway's OpenAPI extensions to model these properties.
|
|
26180
|
+
|
|
26181
|
+
:default: - ``merge`` for REST APIs created after March 29, 2021, otherwise ``overwrite``
|
|
26182
|
+
'''
|
|
26183
|
+
result = self._values.get("mode")
|
|
26184
|
+
return typing.cast(typing.Optional[RestApiMode], result)
|
|
26185
|
+
|
|
26102
26186
|
def __eq__(self, rhs: typing.Any) -> builtins.bool:
|
|
26103
26187
|
return isinstance(rhs, self.__class__) and rhs._values == self._values
|
|
26104
26188
|
|
|
@@ -28261,7 +28345,7 @@ class StepFunctionsRestApiProps(RestApiProps):
|
|
|
28261
28345
|
) -> typing.Optional[_RemovalPolicy_9f93c814]:
|
|
28262
28346
|
'''The removal policy applied to the AWS CloudWatch role when this resource is removed from the application.
|
|
28263
28347
|
|
|
28264
|
-
Requires ``cloudWatchRole``
|
|
28348
|
+
Requires ``cloudWatchRole`` to be enabled.
|
|
28265
28349
|
|
|
28266
28350
|
:default: - RemovalPolicy.RETAIN
|
|
28267
28351
|
'''
|
|
@@ -30977,7 +31061,7 @@ class LambdaRestApiProps(RestApiProps):
|
|
|
30977
31061
|
) -> typing.Optional[_RemovalPolicy_9f93c814]:
|
|
30978
31062
|
'''The removal policy applied to the AWS CloudWatch role when this resource is removed from the application.
|
|
30979
31063
|
|
|
30980
|
-
Requires ``cloudWatchRole``
|
|
31064
|
+
Requires ``cloudWatchRole`` to be enabled.
|
|
30981
31065
|
|
|
30982
31066
|
:default: - RemovalPolicy.RETAIN
|
|
30983
31067
|
'''
|
|
@@ -33240,6 +33324,7 @@ __all__ = [
|
|
|
33240
33324
|
"RestApiAttributes",
|
|
33241
33325
|
"RestApiBase",
|
|
33242
33326
|
"RestApiBaseProps",
|
|
33327
|
+
"RestApiMode",
|
|
33243
33328
|
"RestApiProps",
|
|
33244
33329
|
"S3ApiDefinition",
|
|
33245
33330
|
"SagemakerIntegration",
|
|
@@ -34347,6 +34432,7 @@ def _typecheckingstub__476074ac17a2d9034c89e6475b463dcb2b5ab63eb68064fdc492d43a9
|
|
|
34347
34432
|
|
|
34348
34433
|
def _typecheckingstub__6b6f3002516ae2cfe5144f016260236185910ca3b84cc4dc018cc660b10716c4(
|
|
34349
34434
|
*,
|
|
34435
|
+
ip_address_type: typing.Optional[builtins.str] = None,
|
|
34350
34436
|
types: typing.Optional[typing.Sequence[builtins.str]] = None,
|
|
34351
34437
|
) -> None:
|
|
34352
34438
|
"""Type checking stubs"""
|
|
@@ -36405,6 +36491,7 @@ def _typecheckingstub__4722b635be09e87466169ef31b6610061f0fa16d1cff99382f0584fde
|
|
|
36405
36491
|
*,
|
|
36406
36492
|
api_definition: ApiDefinition,
|
|
36407
36493
|
min_compression_size: typing.Optional[_Size_7b441c34] = None,
|
|
36494
|
+
mode: typing.Optional[RestApiMode] = None,
|
|
36408
36495
|
cloud_watch_role: typing.Optional[builtins.bool] = None,
|
|
36409
36496
|
cloud_watch_role_removal_policy: typing.Optional[_RemovalPolicy_9f93c814] = None,
|
|
36410
36497
|
deploy: typing.Optional[builtins.bool] = None,
|
|
@@ -36449,6 +36536,7 @@ def _typecheckingstub__4506705cb637aa3098ad358d76fa29dd7a218f7542020d2e9dbfe8182
|
|
|
36449
36536
|
retain_deployments: typing.Optional[builtins.bool] = None,
|
|
36450
36537
|
api_definition: ApiDefinition,
|
|
36451
36538
|
min_compression_size: typing.Optional[_Size_7b441c34] = None,
|
|
36539
|
+
mode: typing.Optional[RestApiMode] = None,
|
|
36452
36540
|
) -> None:
|
|
36453
36541
|
"""Type checking stubs"""
|
|
36454
36542
|
pass
|