localstack-core 4.10.1.dev42__py3-none-any.whl → 4.12.1.dev18__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.
- localstack/aws/api/apigateway/__init__.py +42 -0
- localstack/aws/api/cloudformation/__init__.py +161 -0
- localstack/aws/api/ec2/__init__.py +1178 -12
- localstack/aws/api/iam/__init__.py +228 -0
- localstack/aws/api/kms/__init__.py +1 -0
- localstack/aws/api/lambda_/__init__.py +1034 -66
- localstack/aws/api/logs/__init__.py +500 -0
- localstack/aws/api/opensearch/__init__.py +100 -0
- localstack/aws/api/redshift/__init__.py +69 -0
- localstack/aws/api/resourcegroupstaggingapi/__init__.py +36 -0
- localstack/aws/api/route53/__init__.py +45 -0
- localstack/aws/api/route53resolver/__init__.py +1 -0
- localstack/aws/api/s3/__init__.py +64 -0
- localstack/aws/api/s3control/__init__.py +19 -0
- localstack/aws/api/secretsmanager/__init__.py +37 -23
- localstack/aws/api/stepfunctions/__init__.py +52 -10
- localstack/aws/api/sts/__init__.py +52 -0
- localstack/aws/connect.py +35 -15
- localstack/aws/handlers/logging.py +8 -4
- localstack/aws/handlers/service.py +11 -2
- localstack/aws/protocol/serializer.py +1 -1
- localstack/config.py +8 -0
- localstack/constants.py +3 -0
- localstack/deprecations.py +0 -6
- localstack/dev/kubernetes/__main__.py +39 -14
- localstack/runtime/analytics.py +11 -0
- localstack/services/acm/provider.py +17 -1
- localstack/services/apigateway/legacy/provider.py +28 -15
- localstack/services/cloudformation/engine/template_preparer.py +6 -2
- localstack/services/cloudformation/engine/v2/change_set_model.py +9 -0
- localstack/services/cloudformation/engine/v2/change_set_model_preproc.py +15 -1
- localstack/services/cloudformation/engine/v2/change_set_resource_support_checker.py +114 -0
- localstack/services/cloudformation/provider.py +26 -1
- localstack/services/cloudformation/provider_utils.py +20 -0
- localstack/services/cloudformation/resource_provider.py +5 -4
- localstack/services/cloudformation/scaffolding/__main__.py +94 -22
- localstack/services/cloudformation/v2/provider.py +41 -0
- localstack/services/cloudwatch/provider.py +10 -3
- localstack/services/cloudwatch/provider_v2.py +6 -3
- localstack/services/configservice/provider.py +5 -1
- localstack/services/dynamodb/provider.py +1 -0
- localstack/services/dynamodb/v2/provider.py +1 -0
- localstack/services/dynamodbstreams/provider.py +6 -0
- localstack/services/dynamodbstreams/v2/provider.py +6 -0
- localstack/services/ec2/provider.py +6 -0
- localstack/services/es/provider.py +6 -0
- localstack/services/events/provider.py +4 -0
- localstack/services/events/v1/provider.py +9 -0
- localstack/services/firehose/provider.py +5 -0
- localstack/services/iam/provider.py +4 -0
- localstack/services/kinesis/packages.py +1 -1
- localstack/services/kms/models.py +16 -22
- localstack/services/kms/provider.py +4 -0
- localstack/services/lambda_/analytics.py +11 -2
- localstack/services/lambda_/api_utils.py +37 -20
- localstack/services/lambda_/event_source_mapping/pollers/stream_poller.py +1 -1
- localstack/services/lambda_/invocation/assignment.py +4 -1
- localstack/services/lambda_/invocation/event_manager.py +15 -11
- localstack/services/lambda_/invocation/execution_environment.py +21 -2
- localstack/services/lambda_/invocation/lambda_models.py +31 -2
- localstack/services/lambda_/invocation/lambda_service.py +62 -3
- localstack/services/lambda_/invocation/models.py +9 -1
- localstack/services/lambda_/invocation/version_manager.py +18 -3
- localstack/services/lambda_/provider.py +307 -106
- localstack/services/lambda_/resource_providers/aws_lambda_function.py +33 -1
- localstack/services/lambda_/runtimes.py +3 -1
- localstack/services/logs/provider.py +9 -0
- localstack/services/opensearch/packages.py +34 -20
- localstack/services/opensearch/provider.py +53 -3
- localstack/services/resource_groups/provider.py +5 -1
- localstack/services/resourcegroupstaggingapi/provider.py +6 -1
- localstack/services/route53/provider.py +7 -0
- localstack/services/route53resolver/provider.py +5 -0
- localstack/services/s3/constants.py +5 -0
- localstack/services/s3/exceptions.py +9 -0
- localstack/services/s3/models.py +9 -1
- localstack/services/s3/provider.py +51 -43
- localstack/services/s3/utils.py +81 -15
- localstack/services/s3control/provider.py +107 -2
- localstack/services/s3control/validation.py +50 -0
- localstack/services/scheduler/provider.py +4 -2
- localstack/services/secretsmanager/provider.py +4 -0
- localstack/services/ses/provider.py +4 -0
- localstack/services/sns/constants.py +16 -1
- localstack/services/sns/provider.py +5 -0
- localstack/services/sns/publisher.py +15 -6
- localstack/services/sns/v2/models.py +9 -0
- localstack/services/sns/v2/provider.py +750 -19
- localstack/services/sns/v2/utils.py +12 -0
- localstack/services/sqs/constants.py +6 -0
- localstack/services/sqs/provider.py +9 -1
- localstack/services/sqs/resource_providers/aws_sqs_queue.py +61 -46
- localstack/services/ssm/provider.py +6 -0
- localstack/services/stepfunctions/asl/component/common/path/result_path.py +1 -1
- localstack/services/stepfunctions/asl/component/state/state_execution/execute_state.py +0 -1
- localstack/services/stepfunctions/asl/component/state/state_execution/state_map/state_map.py +0 -1
- localstack/services/stepfunctions/asl/component/state/state_execution/state_task/lambda_eval_utils.py +8 -8
- localstack/services/stepfunctions/asl/component/state/state_execution/state_task/{mock_eval_utils.py → local_mock_eval_utils.py} +13 -9
- localstack/services/stepfunctions/asl/component/state/state_execution/state_task/service/state_task_service.py +6 -6
- localstack/services/stepfunctions/asl/component/state/state_execution/state_task/service/state_task_service_callback.py +1 -1
- localstack/services/stepfunctions/asl/component/state/state_fail/state_fail.py +4 -0
- localstack/services/stepfunctions/asl/component/test_state/state/base_mock.py +118 -0
- localstack/services/stepfunctions/asl/component/test_state/state/common.py +82 -0
- localstack/services/stepfunctions/asl/component/test_state/state/execution.py +139 -0
- localstack/services/stepfunctions/asl/component/test_state/state/map.py +77 -0
- localstack/services/stepfunctions/asl/component/test_state/state/task.py +44 -0
- localstack/services/stepfunctions/asl/eval/environment.py +30 -22
- localstack/services/stepfunctions/asl/eval/states.py +1 -1
- localstack/services/stepfunctions/asl/eval/test_state/environment.py +49 -9
- localstack/services/stepfunctions/asl/eval/test_state/program_state.py +22 -0
- localstack/services/stepfunctions/asl/jsonata/jsonata.py +5 -1
- localstack/services/stepfunctions/asl/parse/preprocessor.py +67 -24
- localstack/services/stepfunctions/asl/parse/test_state/asl_parser.py +5 -4
- localstack/services/stepfunctions/asl/parse/test_state/preprocessor.py +222 -31
- localstack/services/stepfunctions/asl/static_analyser/test_state/test_state_analyser.py +256 -22
- localstack/services/stepfunctions/backend/execution.py +10 -11
- localstack/services/stepfunctions/backend/execution_worker.py +5 -5
- localstack/services/stepfunctions/backend/test_state/execution.py +36 -0
- localstack/services/stepfunctions/backend/test_state/execution_worker.py +33 -1
- localstack/services/stepfunctions/backend/test_state/test_state_mock.py +127 -0
- localstack/services/stepfunctions/local_mocking/__init__.py +9 -0
- localstack/services/stepfunctions/{mocking → local_mocking}/mock_config.py +24 -17
- localstack/services/stepfunctions/provider.py +83 -25
- localstack/services/stepfunctions/test_state/mock_config.py +47 -0
- localstack/services/sts/provider.py +7 -0
- localstack/services/support/provider.py +5 -1
- localstack/services/swf/provider.py +5 -1
- localstack/services/transcribe/provider.py +7 -0
- localstack/testing/aws/lambda_utils.py +1 -1
- localstack/testing/aws/util.py +2 -1
- localstack/testing/config.py +1 -0
- localstack/testing/pytest/fixtures.py +28 -0
- localstack/testing/snapshots/transformer_utility.py +5 -0
- localstack/utils/analytics/publisher.py +37 -155
- localstack/utils/analytics/service_request_aggregator.py +6 -4
- localstack/utils/aws/arns.py +7 -0
- localstack/utils/aws/client_types.py +2 -4
- localstack/utils/batching.py +258 -0
- localstack/utils/bootstrap.py +2 -2
- localstack/utils/catalog/catalog.py +3 -2
- localstack/utils/collections.py +23 -11
- localstack/utils/container_utils/container_client.py +22 -13
- localstack/utils/container_utils/docker_cmd_client.py +6 -6
- localstack/version.py +2 -2
- {localstack_core-4.10.1.dev42.dist-info → localstack_core-4.12.1.dev18.dist-info}/METADATA +7 -7
- {localstack_core-4.10.1.dev42.dist-info → localstack_core-4.12.1.dev18.dist-info}/RECORD +155 -146
- localstack_core-4.12.1.dev18.dist-info/plux.json +1 -0
- localstack/services/stepfunctions/mocking/__init__.py +0 -0
- localstack/utils/batch_policy.py +0 -124
- localstack_core-4.10.1.dev42.dist-info/plux.json +0 -1
- /localstack/services/stepfunctions/{mocking → local_mocking}/mock_config_file.py +0 -0
- {localstack_core-4.10.1.dev42.data → localstack_core-4.12.1.dev18.data}/scripts/localstack +0 -0
- {localstack_core-4.10.1.dev42.data → localstack_core-4.12.1.dev18.data}/scripts/localstack-supervisor +0 -0
- {localstack_core-4.10.1.dev42.data → localstack_core-4.12.1.dev18.data}/scripts/localstack.bat +0 -0
- {localstack_core-4.10.1.dev42.dist-info → localstack_core-4.12.1.dev18.dist-info}/WHEEL +0 -0
- {localstack_core-4.10.1.dev42.dist-info → localstack_core-4.12.1.dev18.dist-info}/entry_points.txt +0 -0
- {localstack_core-4.10.1.dev42.dist-info → localstack_core-4.12.1.dev18.dist-info}/licenses/LICENSE.txt +0 -0
- {localstack_core-4.10.1.dev42.dist-info → localstack_core-4.12.1.dev18.dist-info}/top_level.txt +0 -0
|
@@ -46,12 +46,14 @@ IdentityCenterApplicationARN = str
|
|
|
46
46
|
IdentityCenterInstanceARN = str
|
|
47
47
|
IdentityPoolId = str
|
|
48
48
|
IdentityStoreId = str
|
|
49
|
+
IndexName = str
|
|
49
50
|
InstanceCount = int
|
|
50
51
|
InstanceRole = str
|
|
51
52
|
InstanceTypeString = str
|
|
52
53
|
Integer = int
|
|
53
54
|
IntegerClass = int
|
|
54
55
|
Issue = str
|
|
56
|
+
KmsKeyArn = str
|
|
55
57
|
KmsKeyId = str
|
|
56
58
|
LicenseFilepath = str
|
|
57
59
|
LimitName = str
|
|
@@ -262,6 +264,12 @@ class InboundConnectionStatusCode(StrEnum):
|
|
|
262
264
|
DELETED = "DELETED"
|
|
263
265
|
|
|
264
266
|
|
|
267
|
+
class IndexStatus(StrEnum):
|
|
268
|
+
CREATED = "CREATED"
|
|
269
|
+
UPDATED = "UPDATED"
|
|
270
|
+
DELETED = "DELETED"
|
|
271
|
+
|
|
272
|
+
|
|
265
273
|
class InitiatedBy(StrEnum):
|
|
266
274
|
CUSTOMER = "CUSTOMER"
|
|
267
275
|
SERVICE = "SERVICE"
|
|
@@ -679,12 +687,22 @@ class SlotNotAvailableException(ServiceException):
|
|
|
679
687
|
SlotSuggestions: SlotList | None
|
|
680
688
|
|
|
681
689
|
|
|
690
|
+
class ThrottlingException(ServiceException):
|
|
691
|
+
code: str = "ThrottlingException"
|
|
692
|
+
sender_fault: bool = False
|
|
693
|
+
status_code: int = 429
|
|
694
|
+
|
|
695
|
+
|
|
682
696
|
class ValidationException(ServiceException):
|
|
683
697
|
code: str = "ValidationException"
|
|
684
698
|
sender_fault: bool = False
|
|
685
699
|
status_code: int = 400
|
|
686
700
|
|
|
687
701
|
|
|
702
|
+
class ServerlessVectorAcceleration(TypedDict, total=False):
|
|
703
|
+
Enabled: Boolean | None
|
|
704
|
+
|
|
705
|
+
|
|
688
706
|
class S3VectorsEngine(TypedDict, total=False):
|
|
689
707
|
Enabled: Boolean | None
|
|
690
708
|
|
|
@@ -696,6 +714,7 @@ class NaturalLanguageQueryGenerationOptionsInput(TypedDict, total=False):
|
|
|
696
714
|
class AIMLOptionsInput(TypedDict, total=False):
|
|
697
715
|
NaturalLanguageQueryGenerationOptions: NaturalLanguageQueryGenerationOptionsInput | None
|
|
698
716
|
S3VectorsEngine: S3VectorsEngine | None
|
|
717
|
+
ServerlessVectorAcceleration: ServerlessVectorAcceleration | None
|
|
699
718
|
|
|
700
719
|
|
|
701
720
|
class NaturalLanguageQueryGenerationOptionsOutput(TypedDict, total=False):
|
|
@@ -706,6 +725,7 @@ class NaturalLanguageQueryGenerationOptionsOutput(TypedDict, total=False):
|
|
|
706
725
|
class AIMLOptionsOutput(TypedDict, total=False):
|
|
707
726
|
NaturalLanguageQueryGenerationOptions: NaturalLanguageQueryGenerationOptionsOutput | None
|
|
708
727
|
S3VectorsEngine: S3VectorsEngine | None
|
|
728
|
+
ServerlessVectorAcceleration: ServerlessVectorAcceleration | None
|
|
709
729
|
|
|
710
730
|
|
|
711
731
|
UpdateTimestamp = datetime
|
|
@@ -1281,6 +1301,7 @@ class CreateApplicationRequest(ServiceRequest):
|
|
|
1281
1301
|
iamIdentityCenterOptions: IamIdentityCenterOptionsInput | None
|
|
1282
1302
|
appConfigs: AppConfigs | None
|
|
1283
1303
|
tagList: TagList | None
|
|
1304
|
+
kmsKeyArn: KmsKeyArn | None
|
|
1284
1305
|
|
|
1285
1306
|
|
|
1286
1307
|
class IamIdentityCenterOptions(TypedDict, total=False):
|
|
@@ -1299,6 +1320,7 @@ class CreateApplicationResponse(TypedDict, total=False):
|
|
|
1299
1320
|
appConfigs: AppConfigs | None
|
|
1300
1321
|
tagList: TagList | None
|
|
1301
1322
|
createdAt: Timestamp | None
|
|
1323
|
+
kmsKeyArn: KmsKeyArn | None
|
|
1302
1324
|
|
|
1303
1325
|
|
|
1304
1326
|
class SoftwareUpdateOptions(TypedDict, total=False):
|
|
@@ -1466,6 +1488,20 @@ class CreateDomainResponse(TypedDict, total=False):
|
|
|
1466
1488
|
DomainStatus: DomainStatus | None
|
|
1467
1489
|
|
|
1468
1490
|
|
|
1491
|
+
class IndexSchema(TypedDict, total=False):
|
|
1492
|
+
pass
|
|
1493
|
+
|
|
1494
|
+
|
|
1495
|
+
class CreateIndexRequest(ServiceRequest):
|
|
1496
|
+
DomainName: DomainName
|
|
1497
|
+
IndexName: IndexName
|
|
1498
|
+
IndexSchema: IndexSchema
|
|
1499
|
+
|
|
1500
|
+
|
|
1501
|
+
class CreateIndexResponse(TypedDict, total=False):
|
|
1502
|
+
Status: IndexStatus
|
|
1503
|
+
|
|
1504
|
+
|
|
1469
1505
|
class CreateOutboundConnectionRequest(ServiceRequest):
|
|
1470
1506
|
LocalDomainInfo: DomainInformationContainer
|
|
1471
1507
|
RemoteDomainInfo: DomainInformationContainer
|
|
@@ -1625,6 +1661,15 @@ class DeleteInboundConnectionResponse(TypedDict, total=False):
|
|
|
1625
1661
|
Connection: InboundConnection | None
|
|
1626
1662
|
|
|
1627
1663
|
|
|
1664
|
+
class DeleteIndexRequest(ServiceRequest):
|
|
1665
|
+
DomainName: DomainName
|
|
1666
|
+
IndexName: IndexName
|
|
1667
|
+
|
|
1668
|
+
|
|
1669
|
+
class DeleteIndexResponse(TypedDict, total=False):
|
|
1670
|
+
Status: IndexStatus
|
|
1671
|
+
|
|
1672
|
+
|
|
1628
1673
|
class DeleteOutboundConnectionRequest(ServiceRequest):
|
|
1629
1674
|
ConnectionId: ConnectionId
|
|
1630
1675
|
|
|
@@ -2144,6 +2189,7 @@ class GetApplicationResponse(TypedDict, total=False):
|
|
|
2144
2189
|
appConfigs: AppConfigs | None
|
|
2145
2190
|
createdAt: Timestamp | None
|
|
2146
2191
|
lastUpdatedAt: Timestamp | None
|
|
2192
|
+
kmsKeyArn: KmsKeyArn | None
|
|
2147
2193
|
|
|
2148
2194
|
|
|
2149
2195
|
class GetCompatibleVersionsRequest(ServiceRequest):
|
|
@@ -2200,6 +2246,15 @@ class GetDomainMaintenanceStatusResponse(TypedDict, total=False):
|
|
|
2200
2246
|
UpdatedAt: UpdateTimestamp | None
|
|
2201
2247
|
|
|
2202
2248
|
|
|
2249
|
+
class GetIndexRequest(ServiceRequest):
|
|
2250
|
+
DomainName: DomainName
|
|
2251
|
+
IndexName: IndexName
|
|
2252
|
+
|
|
2253
|
+
|
|
2254
|
+
class GetIndexResponse(TypedDict, total=False):
|
|
2255
|
+
IndexSchema: IndexSchema
|
|
2256
|
+
|
|
2257
|
+
|
|
2203
2258
|
class GetPackageVersionHistoryRequest(ServiceRequest):
|
|
2204
2259
|
PackageID: PackageID
|
|
2205
2260
|
MaxResults: MaxResults | None
|
|
@@ -2579,6 +2634,16 @@ class UpdateDomainConfigResponse(TypedDict, total=False):
|
|
|
2579
2634
|
DryRunProgressStatus: DryRunProgressStatus | None
|
|
2580
2635
|
|
|
2581
2636
|
|
|
2637
|
+
class UpdateIndexRequest(ServiceRequest):
|
|
2638
|
+
DomainName: DomainName
|
|
2639
|
+
IndexName: IndexName
|
|
2640
|
+
IndexSchema: IndexSchema
|
|
2641
|
+
|
|
2642
|
+
|
|
2643
|
+
class UpdateIndexResponse(TypedDict, total=False):
|
|
2644
|
+
Status: IndexStatus
|
|
2645
|
+
|
|
2646
|
+
|
|
2582
2647
|
class UpdatePackageRequest(ServiceRequest):
|
|
2583
2648
|
PackageID: PackageID
|
|
2584
2649
|
PackageSource: PackageSource
|
|
@@ -2739,6 +2804,7 @@ class OpensearchApi:
|
|
|
2739
2804
|
iam_identity_center_options: IamIdentityCenterOptionsInput | None = None,
|
|
2740
2805
|
app_configs: AppConfigs | None = None,
|
|
2741
2806
|
tag_list: TagList | None = None,
|
|
2807
|
+
kms_key_arn: KmsKeyArn | None = None,
|
|
2742
2808
|
**kwargs,
|
|
2743
2809
|
) -> CreateApplicationResponse:
|
|
2744
2810
|
raise NotImplementedError
|
|
@@ -2772,6 +2838,17 @@ class OpensearchApi:
|
|
|
2772
2838
|
) -> CreateDomainResponse:
|
|
2773
2839
|
raise NotImplementedError
|
|
2774
2840
|
|
|
2841
|
+
@handler("CreateIndex")
|
|
2842
|
+
def create_index(
|
|
2843
|
+
self,
|
|
2844
|
+
context: RequestContext,
|
|
2845
|
+
domain_name: DomainName,
|
|
2846
|
+
index_name: IndexName,
|
|
2847
|
+
index_schema: IndexSchema,
|
|
2848
|
+
**kwargs,
|
|
2849
|
+
) -> CreateIndexResponse:
|
|
2850
|
+
raise NotImplementedError
|
|
2851
|
+
|
|
2775
2852
|
@handler("CreateOutboundConnection")
|
|
2776
2853
|
def create_outbound_connection(
|
|
2777
2854
|
self,
|
|
@@ -2842,6 +2919,12 @@ class OpensearchApi:
|
|
|
2842
2919
|
) -> DeleteInboundConnectionResponse:
|
|
2843
2920
|
raise NotImplementedError
|
|
2844
2921
|
|
|
2922
|
+
@handler("DeleteIndex")
|
|
2923
|
+
def delete_index(
|
|
2924
|
+
self, context: RequestContext, domain_name: DomainName, index_name: IndexName, **kwargs
|
|
2925
|
+
) -> DeleteIndexResponse:
|
|
2926
|
+
raise NotImplementedError
|
|
2927
|
+
|
|
2845
2928
|
@handler("DeleteOutboundConnection")
|
|
2846
2929
|
def delete_outbound_connection(
|
|
2847
2930
|
self, context: RequestContext, connection_id: ConnectionId, **kwargs
|
|
@@ -3044,6 +3127,12 @@ class OpensearchApi:
|
|
|
3044
3127
|
) -> GetDomainMaintenanceStatusResponse:
|
|
3045
3128
|
raise NotImplementedError
|
|
3046
3129
|
|
|
3130
|
+
@handler("GetIndex")
|
|
3131
|
+
def get_index(
|
|
3132
|
+
self, context: RequestContext, domain_name: DomainName, index_name: IndexName, **kwargs
|
|
3133
|
+
) -> GetIndexResponse:
|
|
3134
|
+
raise NotImplementedError
|
|
3135
|
+
|
|
3047
3136
|
@handler("GetPackageVersionHistory")
|
|
3048
3137
|
def get_package_version_history(
|
|
3049
3138
|
self,
|
|
@@ -3328,6 +3417,17 @@ class OpensearchApi:
|
|
|
3328
3417
|
) -> UpdateDomainConfigResponse:
|
|
3329
3418
|
raise NotImplementedError
|
|
3330
3419
|
|
|
3420
|
+
@handler("UpdateIndex")
|
|
3421
|
+
def update_index(
|
|
3422
|
+
self,
|
|
3423
|
+
context: RequestContext,
|
|
3424
|
+
domain_name: DomainName,
|
|
3425
|
+
index_name: IndexName,
|
|
3426
|
+
index_schema: IndexSchema,
|
|
3427
|
+
**kwargs,
|
|
3428
|
+
) -> UpdateIndexResponse:
|
|
3429
|
+
raise NotImplementedError
|
|
3430
|
+
|
|
3331
3431
|
@handler("UpdatePackage")
|
|
3332
3432
|
def update_package(
|
|
3333
3433
|
self,
|
|
@@ -7,6 +7,7 @@ from localstack.aws.api import RequestContext, ServiceException, ServiceRequest,
|
|
|
7
7
|
AuthenticationProfileNameString = str
|
|
8
8
|
Boolean = bool
|
|
9
9
|
BooleanOptional = bool
|
|
10
|
+
CatalogNameString = str
|
|
10
11
|
CustomDomainCertificateArnString = str
|
|
11
12
|
CustomDomainNameString = str
|
|
12
13
|
Description = str
|
|
@@ -39,6 +40,11 @@ class ActionType(StrEnum):
|
|
|
39
40
|
resize_cluster = "resize-cluster"
|
|
40
41
|
|
|
41
42
|
|
|
43
|
+
class ApplicationType(StrEnum):
|
|
44
|
+
None_ = "None"
|
|
45
|
+
Lakehouse = "Lakehouse"
|
|
46
|
+
|
|
47
|
+
|
|
42
48
|
class AquaConfigurationStatus(StrEnum):
|
|
43
49
|
enabled = "enabled"
|
|
44
50
|
disabled = "disabled"
|
|
@@ -95,6 +101,16 @@ class ImpactRankingType(StrEnum):
|
|
|
95
101
|
LOW = "LOW"
|
|
96
102
|
|
|
97
103
|
|
|
104
|
+
class LakehouseIdcRegistration(StrEnum):
|
|
105
|
+
Associate = "Associate"
|
|
106
|
+
Disassociate = "Disassociate"
|
|
107
|
+
|
|
108
|
+
|
|
109
|
+
class LakehouseRegistration(StrEnum):
|
|
110
|
+
Register = "Register"
|
|
111
|
+
Deregister = "Deregister"
|
|
112
|
+
|
|
113
|
+
|
|
98
114
|
class LogDestinationType(StrEnum):
|
|
99
115
|
s3 = "s3"
|
|
100
116
|
cloudwatch = "cloudwatch"
|
|
@@ -1627,6 +1643,8 @@ class Cluster(TypedDict, total=False):
|
|
|
1627
1643
|
IpAddressType: String | None
|
|
1628
1644
|
MultiAZ: String | None
|
|
1629
1645
|
MultiAZSecondary: SecondaryClusterInfo | None
|
|
1646
|
+
LakehouseRegistrationStatus: String | None
|
|
1647
|
+
CatalogArn: String | None
|
|
1630
1648
|
|
|
1631
1649
|
|
|
1632
1650
|
class ClusterCredentials(TypedDict, total=False):
|
|
@@ -1768,6 +1786,10 @@ class ClustersMessage(TypedDict, total=False):
|
|
|
1768
1786
|
Clusters: ClusterList | None
|
|
1769
1787
|
|
|
1770
1788
|
|
|
1789
|
+
class Connect(TypedDict, total=False):
|
|
1790
|
+
Authorization: ServiceAuthorization
|
|
1791
|
+
|
|
1792
|
+
|
|
1771
1793
|
ConsumerIdentifierList = list[String]
|
|
1772
1794
|
|
|
1773
1795
|
|
|
@@ -1836,6 +1858,7 @@ class CreateClusterMessage(ServiceRequest):
|
|
|
1836
1858
|
IpAddressType: String | None
|
|
1837
1859
|
MultiAZ: BooleanOptional | None
|
|
1838
1860
|
RedshiftIdcApplicationArn: String | None
|
|
1861
|
+
CatalogName: CatalogNameString | None
|
|
1839
1862
|
|
|
1840
1863
|
|
|
1841
1864
|
class CreateClusterParameterGroupMessage(ServiceRequest):
|
|
@@ -1995,6 +2018,13 @@ class CreateIntegrationMessage(ServiceRequest):
|
|
|
1995
2018
|
TagKeyList = list[String]
|
|
1996
2019
|
|
|
1997
2020
|
|
|
2021
|
+
class RedshiftScopeUnion(TypedDict, total=False):
|
|
2022
|
+
Connect: Connect | None
|
|
2023
|
+
|
|
2024
|
+
|
|
2025
|
+
RedshiftServiceIntegrations = list[RedshiftScopeUnion]
|
|
2026
|
+
|
|
2027
|
+
|
|
1998
2028
|
class ReadWriteAccess(TypedDict, total=False):
|
|
1999
2029
|
Authorization: ServiceAuthorization
|
|
2000
2030
|
|
|
@@ -2020,6 +2050,7 @@ LakeFormationServiceIntegrations = list[LakeFormationScopeUnion]
|
|
|
2020
2050
|
class ServiceIntegrationsUnion(TypedDict, total=False):
|
|
2021
2051
|
LakeFormation: LakeFormationServiceIntegrations | None
|
|
2022
2052
|
S3AccessGrants: S3AccessGrantsServiceIntegrations | None
|
|
2053
|
+
Redshift: RedshiftServiceIntegrations | None
|
|
2023
2054
|
|
|
2024
2055
|
|
|
2025
2056
|
ServiceIntegrationList = list[ServiceIntegrationsUnion]
|
|
@@ -2033,6 +2064,7 @@ class CreateRedshiftIdcApplicationMessage(ServiceRequest):
|
|
|
2033
2064
|
IamRoleArn: String
|
|
2034
2065
|
AuthorizedTokenIssuerList: AuthorizedTokenIssuerList | None
|
|
2035
2066
|
ServiceIntegrations: ServiceIntegrationList | None
|
|
2067
|
+
ApplicationType: ApplicationType | None
|
|
2036
2068
|
Tags: TagList | None
|
|
2037
2069
|
SsoTagKeys: TagKeyList | None
|
|
2038
2070
|
|
|
@@ -2048,6 +2080,7 @@ class RedshiftIdcApplication(TypedDict, total=False):
|
|
|
2048
2080
|
IdcOnboardStatus: String | None
|
|
2049
2081
|
AuthorizedTokenIssuerList: AuthorizedTokenIssuerList | None
|
|
2050
2082
|
ServiceIntegrations: ServiceIntegrationList | None
|
|
2083
|
+
ApplicationType: ApplicationType | None
|
|
2051
2084
|
Tags: TagList | None
|
|
2052
2085
|
SsoTagKeys: TagKeyList | None
|
|
2053
2086
|
|
|
@@ -3010,6 +3043,13 @@ class IntegrationsMessage(TypedDict, total=False):
|
|
|
3010
3043
|
Integrations: IntegrationList | None
|
|
3011
3044
|
|
|
3012
3045
|
|
|
3046
|
+
class LakehouseConfiguration(TypedDict, total=False):
|
|
3047
|
+
ClusterIdentifier: String | None
|
|
3048
|
+
LakehouseIdcApplicationArn: String | None
|
|
3049
|
+
LakehouseRegistrationStatus: String | None
|
|
3050
|
+
CatalogArn: String | None
|
|
3051
|
+
|
|
3052
|
+
|
|
3013
3053
|
class ListRecommendationsMessage(ServiceRequest):
|
|
3014
3054
|
ClusterIdentifier: String | None
|
|
3015
3055
|
NamespaceArn: String | None
|
|
@@ -3232,6 +3272,15 @@ class ModifyIntegrationMessage(ServiceRequest):
|
|
|
3232
3272
|
IntegrationName: IntegrationName | None
|
|
3233
3273
|
|
|
3234
3274
|
|
|
3275
|
+
class ModifyLakehouseConfigurationMessage(ServiceRequest):
|
|
3276
|
+
ClusterIdentifier: String
|
|
3277
|
+
LakehouseRegistration: LakehouseRegistration | None
|
|
3278
|
+
CatalogName: CatalogNameString | None
|
|
3279
|
+
LakehouseIdcRegistration: LakehouseIdcRegistration | None
|
|
3280
|
+
LakehouseIdcApplicationArn: String | None
|
|
3281
|
+
DryRun: BooleanOptional | None
|
|
3282
|
+
|
|
3283
|
+
|
|
3235
3284
|
class ModifyRedshiftIdcApplicationMessage(ServiceRequest):
|
|
3236
3285
|
RedshiftIdcApplicationArn: String
|
|
3237
3286
|
IdentityNamespace: IdentityNamespaceString | None
|
|
@@ -3442,6 +3491,8 @@ class RestoreFromClusterSnapshotMessage(ServiceRequest):
|
|
|
3442
3491
|
MasterPasswordSecretKmsKeyId: String | None
|
|
3443
3492
|
IpAddressType: String | None
|
|
3444
3493
|
MultiAZ: BooleanOptional | None
|
|
3494
|
+
CatalogName: CatalogNameString | None
|
|
3495
|
+
RedshiftIdcApplicationArn: String | None
|
|
3445
3496
|
|
|
3446
3497
|
|
|
3447
3498
|
class RestoreFromClusterSnapshotResult(TypedDict, total=False):
|
|
@@ -3792,6 +3843,7 @@ class RedshiftApi:
|
|
|
3792
3843
|
ip_address_type: String | None = None,
|
|
3793
3844
|
multi_az: BooleanOptional | None = None,
|
|
3794
3845
|
redshift_idc_application_arn: String | None = None,
|
|
3846
|
+
catalog_name: CatalogNameString | None = None,
|
|
3795
3847
|
**kwargs,
|
|
3796
3848
|
) -> CreateClusterResult:
|
|
3797
3849
|
raise NotImplementedError
|
|
@@ -3934,6 +3986,7 @@ class RedshiftApi:
|
|
|
3934
3986
|
identity_namespace: IdentityNamespaceString | None = None,
|
|
3935
3987
|
authorized_token_issuer_list: AuthorizedTokenIssuerList | None = None,
|
|
3936
3988
|
service_integrations: ServiceIntegrationList | None = None,
|
|
3989
|
+
application_type: ApplicationType | None = None,
|
|
3937
3990
|
tags: TagList | None = None,
|
|
3938
3991
|
sso_tag_keys: TagKeyList | None = None,
|
|
3939
3992
|
**kwargs,
|
|
@@ -4957,6 +5010,20 @@ class RedshiftApi:
|
|
|
4957
5010
|
) -> Integration:
|
|
4958
5011
|
raise NotImplementedError
|
|
4959
5012
|
|
|
5013
|
+
@handler("ModifyLakehouseConfiguration")
|
|
5014
|
+
def modify_lakehouse_configuration(
|
|
5015
|
+
self,
|
|
5016
|
+
context: RequestContext,
|
|
5017
|
+
cluster_identifier: String,
|
|
5018
|
+
lakehouse_registration: LakehouseRegistration | None = None,
|
|
5019
|
+
catalog_name: CatalogNameString | None = None,
|
|
5020
|
+
lakehouse_idc_registration: LakehouseIdcRegistration | None = None,
|
|
5021
|
+
lakehouse_idc_application_arn: String | None = None,
|
|
5022
|
+
dry_run: BooleanOptional | None = None,
|
|
5023
|
+
**kwargs,
|
|
5024
|
+
) -> LakehouseConfiguration:
|
|
5025
|
+
raise NotImplementedError
|
|
5026
|
+
|
|
4960
5027
|
@handler("ModifyRedshiftIdcApplication")
|
|
4961
5028
|
def modify_redshift_idc_application(
|
|
4962
5029
|
self,
|
|
@@ -5130,6 +5197,8 @@ class RedshiftApi:
|
|
|
5130
5197
|
master_password_secret_kms_key_id: String | None = None,
|
|
5131
5198
|
ip_address_type: String | None = None,
|
|
5132
5199
|
multi_az: BooleanOptional | None = None,
|
|
5200
|
+
catalog_name: CatalogNameString | None = None,
|
|
5201
|
+
redshift_idc_application_arn: String | None = None,
|
|
5133
5202
|
**kwargs,
|
|
5134
5203
|
) -> RestoreFromClusterSnapshotResult:
|
|
5135
5204
|
raise NotImplementedError
|
|
@@ -4,16 +4,19 @@ from typing import TypedDict
|
|
|
4
4
|
from localstack.aws.api import RequestContext, ServiceException, ServiceRequest, handler
|
|
5
5
|
|
|
6
6
|
AmazonResourceType = str
|
|
7
|
+
CloudFormationResourceType = str
|
|
7
8
|
ComplianceStatus = bool
|
|
8
9
|
ErrorMessage = str
|
|
9
10
|
ExceptionMessage = str
|
|
10
11
|
ExcludeCompliantResources = bool
|
|
11
12
|
IncludeComplianceDetails = bool
|
|
12
13
|
LastUpdated = str
|
|
14
|
+
MaxResultsForListRequiredTags = int
|
|
13
15
|
MaxResultsGetComplianceSummary = int
|
|
14
16
|
PaginationToken = str
|
|
15
17
|
Region = str
|
|
16
18
|
ResourceARN = str
|
|
19
|
+
ResourceType = str
|
|
17
20
|
ResourcesPerPage = int
|
|
18
21
|
S3Bucket = str
|
|
19
22
|
S3Location = str
|
|
@@ -78,6 +81,7 @@ class ThrottledException(ServiceException):
|
|
|
78
81
|
status_code: int = 400
|
|
79
82
|
|
|
80
83
|
|
|
84
|
+
CloudFormationResourceTypes = list[CloudFormationResourceType]
|
|
81
85
|
TagKeyList = list[TagKey]
|
|
82
86
|
|
|
83
87
|
|
|
@@ -208,6 +212,28 @@ class GetTagValuesOutput(TypedDict, total=False):
|
|
|
208
212
|
TagValues: TagValuesOutputList | None
|
|
209
213
|
|
|
210
214
|
|
|
215
|
+
class ListRequiredTagsInput(ServiceRequest):
|
|
216
|
+
NextToken: PaginationToken | None
|
|
217
|
+
MaxResults: MaxResultsForListRequiredTags | None
|
|
218
|
+
|
|
219
|
+
|
|
220
|
+
ReportingTagKeys = list[TagKey]
|
|
221
|
+
|
|
222
|
+
|
|
223
|
+
class RequiredTag(TypedDict, total=False):
|
|
224
|
+
ResourceType: ResourceType | None
|
|
225
|
+
CloudFormationResourceTypes: CloudFormationResourceTypes | None
|
|
226
|
+
ReportingTagKeys: ReportingTagKeys | None
|
|
227
|
+
|
|
228
|
+
|
|
229
|
+
RequiredTagsForListRequiredTags = list[RequiredTag]
|
|
230
|
+
|
|
231
|
+
|
|
232
|
+
class ListRequiredTagsOutput(TypedDict, total=False):
|
|
233
|
+
RequiredTags: RequiredTagsForListRequiredTags | None
|
|
234
|
+
NextToken: PaginationToken | None
|
|
235
|
+
|
|
236
|
+
|
|
211
237
|
ResourceARNListForTagUntag = list[ResourceARN]
|
|
212
238
|
|
|
213
239
|
|
|
@@ -298,6 +324,16 @@ class ResourcegroupstaggingapiApi:
|
|
|
298
324
|
) -> GetTagValuesOutput:
|
|
299
325
|
raise NotImplementedError
|
|
300
326
|
|
|
327
|
+
@handler("ListRequiredTags")
|
|
328
|
+
def list_required_tags(
|
|
329
|
+
self,
|
|
330
|
+
context: RequestContext,
|
|
331
|
+
next_token: PaginationToken | None = None,
|
|
332
|
+
max_results: MaxResultsForListRequiredTags | None = None,
|
|
333
|
+
**kwargs,
|
|
334
|
+
) -> ListRequiredTagsOutput:
|
|
335
|
+
raise NotImplementedError
|
|
336
|
+
|
|
301
337
|
@handler("StartReportCreation")
|
|
302
338
|
def start_report_creation(
|
|
303
339
|
self, context: RequestContext, s3_bucket: S3Bucket, **kwargs
|
|
@@ -7,6 +7,7 @@ from localstack.aws.api import RequestContext, ServiceException, ServiceRequest,
|
|
|
7
7
|
ARN = str
|
|
8
8
|
AWSAccountID = str
|
|
9
9
|
AWSRegion = str
|
|
10
|
+
AcceleratedRecoveryEnabled = bool
|
|
10
11
|
AlarmName = str
|
|
11
12
|
AliasHealthEnabled = bool
|
|
12
13
|
AssociateVPCComment = str
|
|
@@ -26,6 +27,7 @@ DisassociateVPCComment = str
|
|
|
26
27
|
EnableSNI = bool
|
|
27
28
|
ErrorMessage = str
|
|
28
29
|
EvaluationPeriods = int
|
|
30
|
+
FailureReason = str
|
|
29
31
|
FailureThreshold = int
|
|
30
32
|
FullyQualifiedDomainName = str
|
|
31
33
|
GeoLocationContinentCode = str
|
|
@@ -98,6 +100,17 @@ UUID = str
|
|
|
98
100
|
VPCId = str
|
|
99
101
|
|
|
100
102
|
|
|
103
|
+
class AcceleratedRecoveryStatus(StrEnum):
|
|
104
|
+
ENABLING = "ENABLING"
|
|
105
|
+
ENABLE_FAILED = "ENABLE_FAILED"
|
|
106
|
+
ENABLING_HOSTED_ZONE_LOCKED = "ENABLING_HOSTED_ZONE_LOCKED"
|
|
107
|
+
ENABLED = "ENABLED"
|
|
108
|
+
DISABLING = "DISABLING"
|
|
109
|
+
DISABLE_FAILED = "DISABLE_FAILED"
|
|
110
|
+
DISABLED = "DISABLED"
|
|
111
|
+
DISABLING_HOSTED_ZONE_LOCKED = "DISABLING_HOSTED_ZONE_LOCKED"
|
|
112
|
+
|
|
113
|
+
|
|
101
114
|
class AccountLimitType(StrEnum):
|
|
102
115
|
MAX_HEALTH_CHECKS_BY_OWNER = "MAX_HEALTH_CHECKS_BY_OWNER"
|
|
103
116
|
MAX_HOSTED_ZONES_BY_OWNER = "MAX_HOSTED_ZONES_BY_OWNER"
|
|
@@ -168,6 +181,7 @@ class CloudWatchRegion(StrEnum):
|
|
|
168
181
|
eu_isoe_west_1 = "eu-isoe-west-1"
|
|
169
182
|
ap_southeast_6 = "ap-southeast-6"
|
|
170
183
|
us_isob_west_1 = "us-isob-west-1"
|
|
184
|
+
eusc_de_east_1 = "eusc-de-east-1"
|
|
171
185
|
|
|
172
186
|
|
|
173
187
|
class ComparisonOperator(StrEnum):
|
|
@@ -285,6 +299,7 @@ class ResourceRecordSetRegion(StrEnum):
|
|
|
285
299
|
us_gov_west_1 = "us-gov-west-1"
|
|
286
300
|
ap_east_2 = "ap-east-2"
|
|
287
301
|
ap_southeast_6 = "ap-southeast-6"
|
|
302
|
+
eusc_de_east_1 = "eusc-de-east-1"
|
|
288
303
|
|
|
289
304
|
|
|
290
305
|
class ReusableDelegationSetLimitType(StrEnum):
|
|
@@ -350,6 +365,7 @@ class VPCRegion(StrEnum):
|
|
|
350
365
|
eu_isoe_west_1 = "eu-isoe-west-1"
|
|
351
366
|
ap_southeast_6 = "ap-southeast-6"
|
|
352
367
|
us_isob_west_1 = "us-isob-west-1"
|
|
368
|
+
eusc_de_east_1 = "eusc-de-east-1"
|
|
353
369
|
|
|
354
370
|
|
|
355
371
|
class CidrBlockInUseException(ServiceException):
|
|
@@ -1073,6 +1089,15 @@ class DelegationSet(TypedDict, total=False):
|
|
|
1073
1089
|
NameServers: DelegationSetNameServers
|
|
1074
1090
|
|
|
1075
1091
|
|
|
1092
|
+
class HostedZoneFailureReasons(TypedDict, total=False):
|
|
1093
|
+
AcceleratedRecovery: FailureReason | None
|
|
1094
|
+
|
|
1095
|
+
|
|
1096
|
+
class HostedZoneFeatures(TypedDict, total=False):
|
|
1097
|
+
AcceleratedRecoveryStatus: AcceleratedRecoveryStatus | None
|
|
1098
|
+
FailureReasons: HostedZoneFailureReasons | None
|
|
1099
|
+
|
|
1100
|
+
|
|
1076
1101
|
HostedZoneRRSetCount = int
|
|
1077
1102
|
|
|
1078
1103
|
|
|
@@ -1083,6 +1108,7 @@ class HostedZone(TypedDict, total=False):
|
|
|
1083
1108
|
Config: HostedZoneConfig | None
|
|
1084
1109
|
ResourceRecordSetCount: HostedZoneRRSetCount | None
|
|
1085
1110
|
LinkedService: LinkedService | None
|
|
1111
|
+
Features: HostedZoneFeatures | None
|
|
1086
1112
|
|
|
1087
1113
|
|
|
1088
1114
|
class CreateHostedZoneResponse(TypedDict, total=False):
|
|
@@ -1908,6 +1934,15 @@ class UpdateHostedZoneCommentResponse(TypedDict, total=False):
|
|
|
1908
1934
|
HostedZone: HostedZone
|
|
1909
1935
|
|
|
1910
1936
|
|
|
1937
|
+
class UpdateHostedZoneFeaturesRequest(ServiceRequest):
|
|
1938
|
+
HostedZoneId: ResourceId
|
|
1939
|
+
EnableAcceleratedRecovery: AcceleratedRecoveryEnabled | None
|
|
1940
|
+
|
|
1941
|
+
|
|
1942
|
+
class UpdateHostedZoneFeaturesResponse(TypedDict, total=False):
|
|
1943
|
+
pass
|
|
1944
|
+
|
|
1945
|
+
|
|
1911
1946
|
class UpdateTrafficPolicyCommentRequest(ServiceRequest):
|
|
1912
1947
|
Id: TrafficPolicyId
|
|
1913
1948
|
Version: TrafficPolicyVersion
|
|
@@ -2543,6 +2578,16 @@ class Route53Api:
|
|
|
2543
2578
|
) -> UpdateHostedZoneCommentResponse:
|
|
2544
2579
|
raise NotImplementedError
|
|
2545
2580
|
|
|
2581
|
+
@handler("UpdateHostedZoneFeatures")
|
|
2582
|
+
def update_hosted_zone_features(
|
|
2583
|
+
self,
|
|
2584
|
+
context: RequestContext,
|
|
2585
|
+
hosted_zone_id: ResourceId,
|
|
2586
|
+
enable_accelerated_recovery: AcceleratedRecoveryEnabled | None = None,
|
|
2587
|
+
**kwargs,
|
|
2588
|
+
) -> UpdateHostedZoneFeaturesResponse:
|
|
2589
|
+
raise NotImplementedError
|
|
2590
|
+
|
|
2546
2591
|
@handler("UpdateTrafficPolicyComment")
|
|
2547
2592
|
def update_traffic_policy_comment(
|
|
2548
2593
|
self,
|