localstack-core 4.3.1.dev71__py3-none-any.whl → 4.3.1.dev73__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.
Files changed (19) hide show
  1. localstack/services/lambda_/event_source_mapping/esm_event_processor.py +2 -0
  2. localstack/services/lambda_/event_source_mapping/esm_worker_factory.py +2 -0
  3. localstack/services/lambda_/event_source_mapping/pollers/sqs_poller.py +12 -8
  4. localstack/services/lambda_/event_source_mapping/pollers/stream_poller.py +42 -27
  5. localstack/services/lambda_/invocation/executor_endpoint.py +68 -2
  6. localstack/services/lambda_/provider.py +2 -0
  7. localstack/services/stepfunctions/asl/utils/boto_client.py +1 -4
  8. localstack/version.py +2 -2
  9. {localstack_core-4.3.1.dev71.dist-info → localstack_core-4.3.1.dev73.dist-info}/METADATA +1 -1
  10. {localstack_core-4.3.1.dev71.dist-info → localstack_core-4.3.1.dev73.dist-info}/RECORD +18 -18
  11. localstack_core-4.3.1.dev73.dist-info/plux.json +1 -0
  12. localstack_core-4.3.1.dev71.dist-info/plux.json +0 -1
  13. {localstack_core-4.3.1.dev71.data → localstack_core-4.3.1.dev73.data}/scripts/localstack +0 -0
  14. {localstack_core-4.3.1.dev71.data → localstack_core-4.3.1.dev73.data}/scripts/localstack-supervisor +0 -0
  15. {localstack_core-4.3.1.dev71.data → localstack_core-4.3.1.dev73.data}/scripts/localstack.bat +0 -0
  16. {localstack_core-4.3.1.dev71.dist-info → localstack_core-4.3.1.dev73.dist-info}/WHEEL +0 -0
  17. {localstack_core-4.3.1.dev71.dist-info → localstack_core-4.3.1.dev73.dist-info}/entry_points.txt +0 -0
  18. {localstack_core-4.3.1.dev71.dist-info → localstack_core-4.3.1.dev73.dist-info}/licenses/LICENSE.txt +0 -0
  19. {localstack_core-4.3.1.dev71.dist-info → localstack_core-4.3.1.dev73.dist-info}/top_level.txt +0 -0
@@ -159,6 +159,8 @@ class EsmEventProcessor(EventProcessor):
159
159
  if not error_payload:
160
160
  return {}
161
161
  # TODO: Should 'requestContext' and 'responseContext' be defined as models?
162
+ # TODO: Allow for generating failure context where there is no responseContext i.e
163
+ # if a RecordAgeExceeded condition is triggered.
162
164
  context = {
163
165
  "requestContext": {
164
166
  "requestId": error_payload.get("requestId"),
@@ -172,6 +172,7 @@ class EsmWorkerFactory:
172
172
  "MaximumBatchingWindowInSeconds"
173
173
  ],
174
174
  MaximumRetryAttempts=self.esm_config["MaximumRetryAttempts"],
175
+ MaximumRecordAgeInSeconds=self.esm_config["MaximumRecordAgeInSeconds"],
175
176
  **optional_params,
176
177
  ),
177
178
  )
@@ -203,6 +204,7 @@ class EsmWorkerFactory:
203
204
  "MaximumBatchingWindowInSeconds"
204
205
  ],
205
206
  MaximumRetryAttempts=self.esm_config["MaximumRetryAttempts"],
207
+ MaximumRecordAgeInSeconds=self.esm_config["MaximumRecordAgeInSeconds"],
206
208
  **optional_params,
207
209
  ),
208
210
  )
@@ -1,3 +1,4 @@
1
+ import functools
1
2
  import json
2
3
  import logging
3
4
  from collections import defaultdict
@@ -7,7 +8,7 @@ from botocore.client import BaseClient
7
8
 
8
9
  from localstack.aws.api.pipes import PipeSourceSqsQueueParameters
9
10
  from localstack.aws.api.sqs import MessageSystemAttributeName
10
- from localstack.config import internal_service_url
11
+ from localstack.aws.connect import connect_to
11
12
  from localstack.services.lambda_.event_source_mapping.event_processor import (
12
13
  EventProcessor,
13
14
  PartialBatchFailureError,
@@ -315,16 +316,19 @@ def transform_into_events(messages: list[dict]) -> list[dict]:
315
316
  return events
316
317
 
317
318
 
319
+ @functools.cache
318
320
  def get_queue_url(queue_arn: str) -> str:
319
- # TODO: consolidate this method with localstack.services.sqs.models.SqsQueue.url
320
- # * Do we need to support different endpoint strategies?
321
- # * If so, how can we achieve this without having a request context
322
- host_url = internal_service_url()
323
- host = host_url.rstrip("/")
324
321
  parsed_arn = parse_arn(queue_arn)
322
+
323
+ queue_name = parsed_arn["resource"]
325
324
  account_id = parsed_arn["account"]
326
- name = parsed_arn["resource"]
327
- return f"{host}/{account_id}/{name}"
325
+ region = parsed_arn["region"]
326
+
327
+ sqs_client = connect_to(region_name=region).sqs
328
+ queue_url = sqs_client.get_queue_url(QueueName=queue_name, QueueOwnerAWSAccountId=account_id)[
329
+ "QueueUrl"
330
+ ]
331
+ return queue_url
328
332
 
329
333
 
330
334
  def message_attributes_to_lower(message_attrs):
@@ -2,6 +2,7 @@ import json
2
2
  import logging
3
3
  import threading
4
4
  from abc import abstractmethod
5
+ from bisect import bisect_left
5
6
  from collections import defaultdict
6
7
  from datetime import datetime
7
8
  from typing import Iterator
@@ -209,16 +210,7 @@ class StreamPoller(Poller):
209
210
 
210
211
  def forward_events_to_target(self, shard_id, next_shard_iterator, records):
211
212
  polled_events = self.transform_into_events(records, shard_id)
212
-
213
213
  abort_condition = None
214
- # Check MaximumRecordAgeInSeconds
215
- if maximum_record_age_in_seconds := self.stream_parameters.get("MaximumRecordAgeInSeconds"):
216
- arrival_timestamp_of_last_event = polled_events[-1]["approximateArrivalTimestamp"]
217
- now = get_current_time().timestamp()
218
- record_age_in_seconds = now - arrival_timestamp_of_last_event
219
- if record_age_in_seconds > maximum_record_age_in_seconds:
220
- abort_condition = "RecordAgeExpired"
221
-
222
214
  # TODO: implement format detection behavior (e.g., for JSON body):
223
215
  # https://docs.aws.amazon.com/eventbridge/latest/userguide/eb-pipes-event-filtering.html
224
216
  # Check whether we need poller-specific filter-preprocessing here without modifying the actual event!
@@ -243,23 +235,32 @@ class StreamPoller(Poller):
243
235
  return
244
236
  events = self.add_source_metadata(matching_events_post_filter)
245
237
  LOG.debug("Polled %d events from %s in shard %s", len(events), self.source_arn, shard_id)
246
- # TODO: A retry should probably re-trigger fetching the record from the stream again?!
247
238
  # -> This could be tested by setting a high retry number, using a long pipe execution, and a relatively
248
239
  # short record expiration age at the source. Check what happens if the record expires at the source.
249
240
  # A potential implementation could use checkpointing based on the iterator position (within shard scope)
250
241
  # TODO: handle partial batch failure (see poller.py:parse_batch_item_failures)
251
242
  # TODO: think about how to avoid starvation of other shards if one shard runs into infinite retries
252
243
  attempts = 0
244
+ discarded_events_for_dlq = []
253
245
  error_payload = {}
254
246
 
255
247
  max_retries = self.stream_parameters.get("MaximumRetryAttempts", -1)
248
+ max_record_age = max(
249
+ self.stream_parameters.get("MaximumRecordAgeInSeconds", -1), 0
250
+ ) # Disable check if -1
256
251
  # NOTE: max_retries == 0 means exponential backoff is disabled
257
252
  boff = ExponentialBackoff(max_retries=max_retries)
258
- while (
259
- not abort_condition
260
- and not self.max_retries_exceeded(attempts)
261
- and not self._is_shutdown.is_set()
262
- ):
253
+ while not abort_condition and events and not self._is_shutdown.is_set():
254
+ if self.max_retries_exceeded(attempts):
255
+ abort_condition = "RetryAttemptsExhausted"
256
+ break
257
+
258
+ if max_record_age:
259
+ events, expired_events = self.bisect_events_by_record_age(max_record_age, events)
260
+ if expired_events:
261
+ discarded_events_for_dlq.extend(expired_events)
262
+ continue
263
+
263
264
  try:
264
265
  if attempts > 0:
265
266
  # TODO: Should we always backoff (with jitter) before processing since we may not want multiple pollers
@@ -269,10 +270,8 @@ class StreamPoller(Poller):
269
270
 
270
271
  self.processor.process_events_batch(events)
271
272
  boff.reset()
272
-
273
- # Update shard iterator if execution is successful
274
- self.shards[shard_id] = next_shard_iterator
275
- return
273
+ # We may need to send on data to a DLQ so break the processing loop and proceed if invocation successful.
274
+ break
276
275
  except PartialBatchFailureError as ex:
277
276
  # TODO: add tests for partial batch failure scenarios
278
277
  if (
@@ -327,15 +326,20 @@ class StreamPoller(Poller):
327
326
  # Retry polling until the record expires at the source
328
327
  attempts += 1
329
328
 
329
+ if discarded_events_for_dlq:
330
+ abort_condition = "RecordAgeExceeded"
331
+ error_payload = {}
332
+ events = discarded_events_for_dlq
333
+
330
334
  # Send failed events to potential DLQ
331
- abort_condition = abort_condition or "RetryAttemptsExhausted"
332
- failure_context = self.processor.generate_event_failure_context(
333
- abort_condition=abort_condition,
334
- error=error_payload,
335
- attempts_count=attempts,
336
- partner_resource_arn=self.partner_resource_arn,
337
- )
338
- self.send_events_to_dlq(shard_id, events, context=failure_context)
335
+ if abort_condition:
336
+ failure_context = self.processor.generate_event_failure_context(
337
+ abort_condition=abort_condition,
338
+ error=error_payload,
339
+ attempts_count=attempts,
340
+ partner_resource_arn=self.partner_resource_arn,
341
+ )
342
+ self.send_events_to_dlq(shard_id, events, context=failure_context)
339
343
  # Update shard iterator if the execution failed but the events are sent to a DLQ
340
344
  self.shards[shard_id] = next_shard_iterator
341
345
 
@@ -479,6 +483,17 @@ class StreamPoller(Poller):
479
483
 
480
484
  return events, []
481
485
 
486
+ def bisect_events_by_record_age(
487
+ self, maximum_record_age: int, events: list[dict]
488
+ ) -> tuple[list[dict], list[dict]]:
489
+ """Splits events into [valid_events], [expired_events] based on record age.
490
+ Where:
491
+ - Events with age < maximum_record_age are valid.
492
+ - Events with age >= maximum_record_age are expired."""
493
+ cutoff_timestamp = get_current_time().timestamp() - maximum_record_age
494
+ index = bisect_left(events, cutoff_timestamp, key=self.get_approximate_arrival_time)
495
+ return events[index:], events[:index]
496
+
482
497
 
483
498
  def get_failure_s3_object_key(esm_uuid: str, shard_id: str, failure_datetime: datetime) -> str:
484
499
  """
@@ -1,8 +1,9 @@
1
1
  import abc
2
2
  import logging
3
+ import time
3
4
  from concurrent.futures import CancelledError, Future
4
5
  from http import HTTPStatus
5
- from typing import Dict, Optional
6
+ from typing import Any, Dict, Optional
6
7
 
7
8
  import requests
8
9
  from werkzeug import Request
@@ -10,6 +11,7 @@ from werkzeug import Request
10
11
  from localstack.http import Response, route
11
12
  from localstack.services.edge import ROUTER
12
13
  from localstack.services.lambda_.invocation.lambda_models import InvocationResult
14
+ from localstack.utils.backoff import ExponentialBackoff
13
15
  from localstack.utils.lambda_debug_mode.lambda_debug_mode import (
14
16
  DEFAULT_LAMBDA_DEBUG_MODE_TIMEOUT_SECONDS,
15
17
  is_lambda_debug_mode,
@@ -192,7 +194,9 @@ class ExecutorEndpoint(Endpoint):
192
194
  invocation_url = f"http://{self.container_address}:{self.container_port}/invoke"
193
195
  # disable proxies for internal requests
194
196
  proxies = {"http": "", "https": ""}
195
- response = requests.post(url=invocation_url, json=payload, proxies=proxies)
197
+ response = self._perform_invoke(
198
+ invocation_url=invocation_url, proxies=proxies, payload=payload
199
+ )
196
200
  if not response.ok:
197
201
  raise InvokeSendError(
198
202
  f"Error while sending invocation {payload} to {invocation_url}. Error Code: {response.status_code}"
@@ -214,3 +218,65 @@ class ExecutorEndpoint(Endpoint):
214
218
  invoke_timeout_buffer_seconds = 5
215
219
  timeout_seconds = lambda_max_timeout_seconds + invoke_timeout_buffer_seconds
216
220
  return self.invocation_future.result(timeout=timeout_seconds)
221
+
222
+ @staticmethod
223
+ def _perform_invoke(
224
+ invocation_url: str,
225
+ proxies: dict[str, str],
226
+ payload: dict[str, Any],
227
+ ) -> requests.Response:
228
+ """
229
+ Dispatches a Lambda invocation request to the specified container endpoint, with automatic
230
+ retries in case of connection errors, using exponential backoff.
231
+
232
+ The first attempt is made immediately. If it fails, exponential backoff is applied with
233
+ retry intervals starting at 100ms, doubling each time for up to 5 total retries.
234
+
235
+ Parameters:
236
+ invocation_url (str): The full URL of the container's invocation endpoint.
237
+ proxies (dict[str, str]): Proxy settings to be used for the HTTP request.
238
+ payload (dict[str, Any]): The JSON payload to send to the container.
239
+
240
+ Returns:
241
+ Response: The successful HTTP response from the container.
242
+
243
+ Raises:
244
+ requests.exceptions.ConnectionError: If all retry attempts fail to connect.
245
+ """
246
+ backoff = None
247
+ last_exception = None
248
+ max_retry_on_connection_error = 5
249
+
250
+ for attempt_count in range(max_retry_on_connection_error + 1): # 1 initial + n retries
251
+ try:
252
+ response = requests.post(url=invocation_url, json=payload, proxies=proxies)
253
+ return response
254
+ except requests.exceptions.ConnectionError as connection_error:
255
+ last_exception = connection_error
256
+
257
+ if backoff is None:
258
+ LOG.debug(
259
+ "Initial connection attempt failed: %s. Starting backoff retries.",
260
+ connection_error,
261
+ )
262
+ backoff = ExponentialBackoff(
263
+ max_retries=max_retry_on_connection_error,
264
+ initial_interval=0.1,
265
+ multiplier=2.0,
266
+ randomization_factor=0.0,
267
+ max_interval=1,
268
+ max_time_elapsed=-1,
269
+ )
270
+
271
+ delay = backoff.next_backoff()
272
+ if delay > 0:
273
+ LOG.debug(
274
+ "Connection error on invoke attempt #%d: %s. Retrying in %.2f seconds",
275
+ attempt_count,
276
+ connection_error,
277
+ delay,
278
+ )
279
+ time.sleep(delay)
280
+
281
+ LOG.debug("Connection error after all attempts exhausted: %s", last_exception)
282
+ raise last_exception
@@ -1988,6 +1988,8 @@ class LambdaProvider(LambdaApi, ServiceLifecycleHook):
1988
1988
 
1989
1989
  def validate_event_source_mapping(self, context, request):
1990
1990
  # TODO: test whether stream ARNs are valid sources for Pipes or ESM or whether only DynamoDB table ARNs work
1991
+ # TODO: Validate MaxRecordAgeInSeconds (i.e cannot subceed 60s but can be -1) and MaxRetryAttempts parameters.
1992
+ # See https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lambda-eventsourcemapping.html#cfn-lambda-eventsourcemapping-maximumrecordageinseconds
1991
1993
  is_create_esm_request = context.operation.name == self.create_event_source_mapping.operation
1992
1994
 
1993
1995
  if destination_config := request.get("DestinationConfig"):
@@ -10,10 +10,7 @@ from localstack.utils.aws.client_types import ServicePrincipal
10
10
 
11
11
  _BOTO_CLIENT_CONFIG = config = Config(
12
12
  parameter_validation=False,
13
- # Temporary workaround—should be reverted once underlying potential Lambda limitation is resolved.
14
- # Increased total boto client retry attempts from 1 to 5 to mitigate transient service issues.
15
- # This helps reduce unnecessary state machine retries on non-service-level errors.
16
- retries={"total_max_attempts": 5},
13
+ retries={"total_max_attempts": 1},
17
14
  connect_timeout=TimeoutSeconds.DEFAULT_TIMEOUT_SECONDS,
18
15
  read_timeout=TimeoutSeconds.DEFAULT_TIMEOUT_SECONDS,
19
16
  tcp_keepalive=True,
localstack/version.py CHANGED
@@ -17,5 +17,5 @@ __version__: str
17
17
  __version_tuple__: VERSION_TUPLE
18
18
  version_tuple: VERSION_TUPLE
19
19
 
20
- __version__ = version = '4.3.1.dev71'
21
- __version_tuple__ = version_tuple = (4, 3, 1, 'dev71')
20
+ __version__ = version = '4.3.1.dev73'
21
+ __version_tuple__ = version_tuple = (4, 3, 1, 'dev73')
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: localstack-core
3
- Version: 4.3.1.dev71
3
+ Version: 4.3.1.dev73
4
4
  Summary: The core library and runtime of LocalStack
5
5
  Author-email: LocalStack Contributors <info@localstack.cloud>
6
6
  License-Expression: Apache-2.0
@@ -4,7 +4,7 @@ localstack/deprecations.py,sha256=mNXTebZ8kSbQjFKz0LbT-g1Kdr0CE8bhEgZfHV3IX0s,15
4
4
  localstack/openapi.yaml,sha256=B803NmpwsxG8PHpHrdZYBrUYjnrRh7B_JX0XuNynuFs,30237
5
5
  localstack/plugins.py,sha256=BIJC9dlo0WbP7lLKkCiGtd_2q5oeqiHZohvoRTcejXM,2457
6
6
  localstack/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
7
- localstack/version.py,sha256=igN0IRMFf4_zNIgzFrRUibeT-nf11R3ptuV7FNLRjlg,526
7
+ localstack/version.py,sha256=KHNnB1SriYHZ3xWCDqU-RKf43k1_wlQ1fjYOhqn1PdY,526
8
8
  localstack/aws/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
9
9
  localstack/aws/accounts.py,sha256=102zpGowOxo0S6UGMpfjw14QW7WCLVAGsnFK5xFMLoo,3043
10
10
  localstack/aws/app.py,sha256=n9bJCfJRuMz_gLGAH430c3bIQXgUXeWO5NPfcdL2MV8,5145
@@ -544,15 +544,15 @@ localstack/services/lambda_/lambda_utils.py,sha256=pxnRJnYzwhwbHbW1-GKV1TJyJgn52
544
544
  localstack/services/lambda_/networking.py,sha256=H9fq1aYThqXZkOi0fCoJrHI9rm19qgUVxFe3vYloN08,938
545
545
  localstack/services/lambda_/packages.py,sha256=pGDSFMZe_XkkYLlNczW9YFW8G0sulVr2pRHqVAhchhY,3965
546
546
  localstack/services/lambda_/plugins.py,sha256=eZsdzZqgEG9EZpd3W8TUdoydTpPXl6JBzJgDx_qeFUU,1275
547
- localstack/services/lambda_/provider.py,sha256=9FZEyjWcoSn4Eytkovfu1XLi0GioKqKEB_7OoPt2GCQ,190636
547
+ localstack/services/lambda_/provider.py,sha256=Mgiez4AoXs-vpgWz5HuOwgn7YGx3gNz-PQmUZjN5KoU,190932
548
548
  localstack/services/lambda_/provider_utils.py,sha256=-vM__pt5qIVhTiPA05N2P0P_pQpwyZggyRuL_QvsQHs,3210
549
549
  localstack/services/lambda_/runtimes.py,sha256=0ODrFfr2VYb1jWC-Gqyro7CoTyO3NyY_SpR9paE4_w8,8332
550
550
  localstack/services/lambda_/urlrouter.py,sha256=ZuVUaAn3tmesDQntkrVQ_-xkMAmdDzmAqx7XIzK9dOo,8351
551
551
  localstack/services/lambda_/event_source_mapping/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
552
552
  localstack/services/lambda_/event_source_mapping/esm_config_factory.py,sha256=E7N81Dm9PV7lbvD_JRWDeqACYnEhazrFV4YEPejkXgw,6180
553
- localstack/services/lambda_/event_source_mapping/esm_event_processor.py,sha256=-VOSmZmNi38ob_zMUEcFjIk6Hy-Aa4cXYPmB71R-zQo,6842
553
+ localstack/services/lambda_/event_source_mapping/esm_event_processor.py,sha256=nPQYRRX3AMnqlNCTUapFy3bhCeM00VZQwMASfuA3VqQ,6990
554
554
  localstack/services/lambda_/event_source_mapping/esm_worker.py,sha256=ro4t7DAvrlMd-U7WWly1XKnyKXL6du3T4IgtVVtLoKw,9368
555
- localstack/services/lambda_/event_source_mapping/esm_worker_factory.py,sha256=L96xgwRNTY38TUN0zijU1QEGF25vBNmOVMaTJNxB5H0,10340
555
+ localstack/services/lambda_/event_source_mapping/esm_worker_factory.py,sha256=TXhrTKbqN-gZwy38aoI7abKlXS-C0lyMbQP8u-5j2Gg,10524
556
556
  localstack/services/lambda_/event_source_mapping/event_processor.py,sha256=lrneBFEeitdd-KVOtVzyWDHbE_dulRP5J44PpAONfJE,2481
557
557
  localstack/services/lambda_/event_source_mapping/noops_event_processor.py,sha256=rCdI2_y0yoOqQ1WwF3rrscwbNVz6AqDScPqAZcR5tTQ,382
558
558
  localstack/services/lambda_/event_source_mapping/pipe_utils.py,sha256=ajZGcrkXpr8skwkufe-alCvY002nm9nb19x7QjhBkXc,2553
@@ -563,8 +563,8 @@ localstack/services/lambda_/event_source_mapping/pollers/__init__.py,sha256=47DE
563
563
  localstack/services/lambda_/event_source_mapping/pollers/dynamodb_poller.py,sha256=_HD7tfp7NmE53MXaYVca_ko5DIkmHvowv1hoekt85lQ,4681
564
564
  localstack/services/lambda_/event_source_mapping/pollers/kinesis_poller.py,sha256=2e9GsgumV6YgNlDwWyxrx_GQGuornQy78r2Y1Z8zu64,8802
565
565
  localstack/services/lambda_/event_source_mapping/pollers/poller.py,sha256=qqIowkqJH5mMsnsTQMBX3XMqrdafuQKdsdFhyDp6Yss,8065
566
- localstack/services/lambda_/event_source_mapping/pollers/sqs_poller.py,sha256=MOIWO4iMeZys1xnwd63kV39_wdBH2HRJ6q8Sqjg3mJw,17786
567
- localstack/services/lambda_/event_source_mapping/pollers/stream_poller.py,sha256=gCM3bQlbsEfMhczblAexnN1gM1P2C6rpWJwWGj1dai0,24045
566
+ localstack/services/lambda_/event_source_mapping/pollers/sqs_poller.py,sha256=lIKx2zdK-qqD-suHUZxCPKmAPdmrJsRVU3-ZEt0wRfY,17725
567
+ localstack/services/lambda_/event_source_mapping/pollers/stream_poller.py,sha256=Bd_j73-tLyOAhdvLIRLJphkjrATJSnqS531WwerDcM0,24709
568
568
  localstack/services/lambda_/event_source_mapping/senders/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
569
569
  localstack/services/lambda_/event_source_mapping/senders/lambda_sender.py,sha256=YigmLtTzSBXSt97jis6bvcLqXau35umSaiSeS3T-vzs,4892
570
570
  localstack/services/lambda_/event_source_mapping/senders/sender.py,sha256=73CxzisqP4Jiuz9w_NWzc2rz6X-FaM7Z88BsVTPNi4Q,1744
@@ -575,7 +575,7 @@ localstack/services/lambda_/invocation/counting_service.py,sha256=e3f__j4cpZoA3n
575
575
  localstack/services/lambda_/invocation/docker_runtime_executor.py,sha256=Y6h53H8-hoLtrdAINXfeeEwSfc1w4uhHgfhdD8kBLO8,21659
576
576
  localstack/services/lambda_/invocation/event_manager.py,sha256=OQTCHkpPPDv_Vis5lL5QtEbIKc7WcNFeFDkQQwBw2WE,27004
577
577
  localstack/services/lambda_/invocation/execution_environment.py,sha256=2tilgA18tcQ4D7kHn9piYWKrfSKWxMcWlUk-XizMGp0,18192
578
- localstack/services/lambda_/invocation/executor_endpoint.py,sha256=ok1unx1_vroBKvV9We8iZNt6O4u58q788ywHTgFrm9o,8481
578
+ localstack/services/lambda_/invocation/executor_endpoint.py,sha256=JP5ib3JwtN63_iC4hAm9hc8X0YQol37Y3BvHA8BX_rc,11152
579
579
  localstack/services/lambda_/invocation/internal_sqs_queue.py,sha256=h8wQPbJPtcUxKXmPzfrD5R5UzhZc248wkXNDJOexJ_I,7332
580
580
  localstack/services/lambda_/invocation/lambda_models.py,sha256=K0G0CE_8BS58xyl2rjGvx8VFJsczoBekBb4vA1SOJ0A,19813
581
581
  localstack/services/lambda_/invocation/lambda_service.py,sha256=1E0fnHqvU53yMd4Z0iY4ud-yNsO2d5UkG7GkpXLyqxA,29990
@@ -1112,7 +1112,7 @@ localstack/services/stepfunctions/asl/static_analyser/intrinsic/variable_names_i
1112
1112
  localstack/services/stepfunctions/asl/static_analyser/test_state/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
1113
1113
  localstack/services/stepfunctions/asl/static_analyser/test_state/test_state_analyser.py,sha256=-yqZh5i2VlcDE8yy1CgqeZsJgUuLRiC5fLbc6S5wA6c,1993
1114
1114
  localstack/services/stepfunctions/asl/utils/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
1115
- localstack/services/stepfunctions/asl/utils/boto_client.py,sha256=fKJwZtzbQkCCc8zRsNOkdU5zPoxeJ0caXM1sfD8xusk,1331
1115
+ localstack/services/stepfunctions/asl/utils/boto_client.py,sha256=kyYfMbvaNFqjXDxZ8DihMD9RgPPThjz4cfYYQ9b3uQg,1040
1116
1116
  localstack/services/stepfunctions/asl/utils/encoding.py,sha256=51Or_Y09NKZ_BKDxYTFlRq3U_HscJ8xA4-tzQTPZ3jA,452
1117
1117
  localstack/services/stepfunctions/asl/utils/json_path.py,sha256=Its-8J-JCd9hvam93u-pGpokF3r4jF6Cj4RqFMw_W90,2116
1118
1118
  localstack/services/stepfunctions/backend/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
@@ -1279,13 +1279,13 @@ localstack/utils/server/tcp_proxy.py,sha256=rR6d5jR0ozDvIlpHiqW0cfyY9a2fRGdOzyA8
1279
1279
  localstack/utils/xray/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
1280
1280
  localstack/utils/xray/trace_header.py,sha256=ahXk9eonq7LpeENwlqUEPj3jDOCiVRixhntQuxNor-Q,6209
1281
1281
  localstack/utils/xray/traceid.py,sha256=SQSsMV2rhbTNK6ceIoozZYuGU7Fg687EXcgqxoDl1Fw,1106
1282
- localstack_core-4.3.1.dev71.data/scripts/localstack,sha256=WyL11vp5CkuP79iIR-L8XT7Cj8nvmxX7XRAgxhbmXNE,529
1283
- localstack_core-4.3.1.dev71.data/scripts/localstack-supervisor,sha256=nm1Il2d6ASyOB6Vo4CRHd90w7TK9FdRl9VPp0NN6hUk,6378
1284
- localstack_core-4.3.1.dev71.data/scripts/localstack.bat,sha256=tlzZTXtveHkMX_s_fa7VDfvdNdS8iVpEz2ER3uk9B_c,29
1285
- localstack_core-4.3.1.dev71.dist-info/licenses/LICENSE.txt,sha256=3PC-9Z69UsNARuQ980gNR_JsLx8uvMjdG6C7cc4LBYs,606
1286
- localstack_core-4.3.1.dev71.dist-info/METADATA,sha256=qKyYKgmZ-1FtSyR2mJ8NMzVdVTQfp1zYLpLToN2Aayc,5531
1287
- localstack_core-4.3.1.dev71.dist-info/WHEEL,sha256=pxyMxgL8-pra_rKaQ4drOZAegBVuX-G_4nRHjjgWbmo,91
1288
- localstack_core-4.3.1.dev71.dist-info/entry_points.txt,sha256=UqGFR0MPKa2sfresdqiCpqBZuWyRxCb3UG77oPVMzVA,20564
1289
- localstack_core-4.3.1.dev71.dist-info/plux.json,sha256=X9q7FUZfPfErXguqgGZk01vY5t0xakbgFtNCb5XLfzQ,20786
1290
- localstack_core-4.3.1.dev71.dist-info/top_level.txt,sha256=3sqmK2lGac8nCy8nwsbS5SpIY_izmtWtgaTFKHYVHbI,11
1291
- localstack_core-4.3.1.dev71.dist-info/RECORD,,
1282
+ localstack_core-4.3.1.dev73.data/scripts/localstack,sha256=WyL11vp5CkuP79iIR-L8XT7Cj8nvmxX7XRAgxhbmXNE,529
1283
+ localstack_core-4.3.1.dev73.data/scripts/localstack-supervisor,sha256=nm1Il2d6ASyOB6Vo4CRHd90w7TK9FdRl9VPp0NN6hUk,6378
1284
+ localstack_core-4.3.1.dev73.data/scripts/localstack.bat,sha256=tlzZTXtveHkMX_s_fa7VDfvdNdS8iVpEz2ER3uk9B_c,29
1285
+ localstack_core-4.3.1.dev73.dist-info/licenses/LICENSE.txt,sha256=3PC-9Z69UsNARuQ980gNR_JsLx8uvMjdG6C7cc4LBYs,606
1286
+ localstack_core-4.3.1.dev73.dist-info/METADATA,sha256=Ul1_kW21bOb8unY9tLeujHtd082EYTRrgmPfmdpQVuA,5531
1287
+ localstack_core-4.3.1.dev73.dist-info/WHEEL,sha256=pxyMxgL8-pra_rKaQ4drOZAegBVuX-G_4nRHjjgWbmo,91
1288
+ localstack_core-4.3.1.dev73.dist-info/entry_points.txt,sha256=UqGFR0MPKa2sfresdqiCpqBZuWyRxCb3UG77oPVMzVA,20564
1289
+ localstack_core-4.3.1.dev73.dist-info/plux.json,sha256=gcWwtBf4cDu61-9lRVdRQlW0kmSOaHFxvk_aiHp69_8,20786
1290
+ localstack_core-4.3.1.dev73.dist-info/top_level.txt,sha256=3sqmK2lGac8nCy8nwsbS5SpIY_izmtWtgaTFKHYVHbI,11
1291
+ localstack_core-4.3.1.dev73.dist-info/RECORD,,
@@ -0,0 +1 @@
1
+ {"localstack.packages": ["lambda-java-libs/community=localstack.services.lambda_.plugins:lambda_java_libs", "lambda-runtime/community=localstack.services.lambda_.plugins:lambda_runtime_package", "kinesis-mock/community=localstack.services.kinesis.plugins:kinesismock_package", "opensearch/community=localstack.services.opensearch.plugins:opensearch_package", "ffmpeg/community=localstack.packages.plugins:ffmpeg_package", "java/community=localstack.packages.plugins:java_package", "terraform/community=localstack.packages.plugins:terraform_package", "jpype-jsonata/community=localstack.services.stepfunctions.plugins:jpype_jsonata_package", "elasticsearch/community=localstack.services.es.plugins:elasticsearch_package", "vosk/community=localstack.services.transcribe.plugins:vosk_package", "dynamodb-local/community=localstack.services.dynamodb.plugins:dynamodb_local_package"], "localstack.hooks.on_infra_start": ["register_custom_endpoints=localstack.services.lambda_.plugins:register_custom_endpoints", "validate_configuration=localstack.services.lambda_.plugins:validate_configuration", "_patch_botocore_endpoint_in_memory=localstack.aws.client:_patch_botocore_endpoint_in_memory", "_patch_botocore_json_parser=localstack.aws.client:_patch_botocore_json_parser", "_patch_cbor2=localstack.aws.client:_patch_cbor2", "setup_dns_configuration_on_host=localstack.dns.plugins:setup_dns_configuration_on_host", "start_dns_server=localstack.dns.plugins:start_dns_server", "conditionally_enable_debugger=localstack.dev.debugger.plugins:conditionally_enable_debugger", "register_cloudformation_deploy_ui=localstack.services.cloudformation.plugins:register_cloudformation_deploy_ui", "_run_init_scripts_on_start=localstack.runtime.init:_run_init_scripts_on_start", "register_swagger_endpoints=localstack.http.resources.swagger.plugins:register_swagger_endpoints", "delete_cached_certificate=localstack.plugins:delete_cached_certificate", "deprecation_warnings=localstack.plugins:deprecation_warnings", "apply_aws_runtime_patches=localstack.aws.patches:apply_aws_runtime_patches", "apply_runtime_patches=localstack.runtime.patches:apply_runtime_patches", "_publish_config_as_analytics_event=localstack.runtime.analytics:_publish_config_as_analytics_event", "_publish_container_info=localstack.runtime.analytics:_publish_container_info"], "localstack.hooks.on_infra_shutdown": ["remove_custom_endpoints=localstack.services.lambda_.plugins:remove_custom_endpoints", "stop_server=localstack.dns.plugins:stop_server", "_run_init_scripts_on_shutdown=localstack.runtime.init:_run_init_scripts_on_shutdown", "publish_metrics=localstack.utils.analytics.metrics:publish_metrics", "run_on_after_service_shutdown_handlers=localstack.runtime.shutdown:run_on_after_service_shutdown_handlers", "run_shutdown_handlers=localstack.runtime.shutdown:run_shutdown_handlers", "shutdown_services=localstack.runtime.shutdown:shutdown_services", "aggregate_and_send=localstack.utils.analytics.usage:aggregate_and_send"], "localstack.cloudformation.resource_providers": ["AWS::Lambda::Version=localstack.services.lambda_.resource_providers.aws_lambda_version_plugin:LambdaVersionProviderPlugin", "AWS::EC2::KeyPair=localstack.services.ec2.resource_providers.aws_ec2_keypair_plugin:EC2KeyPairProviderPlugin", "AWS::ApiGateway::UsagePlan=localstack.services.apigateway.resource_providers.aws_apigateway_usageplan_plugin:ApiGatewayUsagePlanProviderPlugin", "AWS::Lambda::EventInvokeConfig=localstack.services.lambda_.resource_providers.aws_lambda_eventinvokeconfig_plugin:LambdaEventInvokeConfigProviderPlugin", "AWS::SSM::Parameter=localstack.services.ssm.resource_providers.aws_ssm_parameter_plugin:SSMParameterProviderPlugin", "AWS::EC2::NatGateway=localstack.services.ec2.resource_providers.aws_ec2_natgateway_plugin:EC2NatGatewayProviderPlugin", "AWS::Elasticsearch::Domain=localstack.services.opensearch.resource_providers.aws_elasticsearch_domain_plugin:ElasticsearchDomainProviderPlugin", "AWS::StepFunctions::StateMachine=localstack.services.stepfunctions.resource_providers.aws_stepfunctions_statemachine_plugin:StepFunctionsStateMachineProviderPlugin", "AWS::ResourceGroups::Group=localstack.services.resource_groups.resource_providers.aws_resourcegroups_group_plugin:ResourceGroupsGroupProviderPlugin", "AWS::Logs::LogStream=localstack.services.logs.resource_providers.aws_logs_logstream_plugin:LogsLogStreamProviderPlugin", "AWS::ApiGateway::Method=localstack.services.apigateway.resource_providers.aws_apigateway_method_plugin:ApiGatewayMethodProviderPlugin", "AWS::Lambda::LayerVersion=localstack.services.lambda_.resource_providers.aws_lambda_layerversion_plugin:LambdaLayerVersionProviderPlugin", "AWS::CloudFormation::WaitConditionHandle=localstack.services.cloudformation.resource_providers.aws_cloudformation_waitconditionhandle_plugin:CloudFormationWaitConditionHandleProviderPlugin", "AWS::SSM::PatchBaseline=localstack.services.ssm.resource_providers.aws_ssm_patchbaseline_plugin:SSMPatchBaselineProviderPlugin", "AWS::CertificateManager::Certificate=localstack.services.certificatemanager.resource_providers.aws_certificatemanager_certificate_plugin:CertificateManagerCertificateProviderPlugin", "AWS::SES::EmailIdentity=localstack.services.ses.resource_providers.aws_ses_emailidentity_plugin:SESEmailIdentityProviderPlugin", "AWS::ApiGateway::Resource=localstack.services.apigateway.resource_providers.aws_apigateway_resource_plugin:ApiGatewayResourceProviderPlugin", "AWS::Events::Rule=localstack.services.events.resource_providers.aws_events_rule_plugin:EventsRuleProviderPlugin", "AWS::S3::BucketPolicy=localstack.services.s3.resource_providers.aws_s3_bucketpolicy_plugin:S3BucketPolicyProviderPlugin", "AWS::CDK::Metadata=localstack.services.cdk.resource_providers.cdk_metadata_plugin:LambdaAliasProviderPlugin", "AWS::ECR::Repository=localstack.services.ecr.resource_providers.aws_ecr_repository_plugin:ECRRepositoryProviderPlugin", "AWS::S3::Bucket=localstack.services.s3.resource_providers.aws_s3_bucket_plugin:S3BucketProviderPlugin", "AWS::SecretsManager::SecretTargetAttachment=localstack.services.secretsmanager.resource_providers.aws_secretsmanager_secrettargetattachment_plugin:SecretsManagerSecretTargetAttachmentProviderPlugin", "AWS::CloudWatch::CompositeAlarm=localstack.services.cloudwatch.resource_providers.aws_cloudwatch_compositealarm_plugin:CloudWatchCompositeAlarmProviderPlugin", "AWS::Route53::RecordSet=localstack.services.route53.resource_providers.aws_route53_recordset_plugin:Route53RecordSetProviderPlugin", "AWS::CloudFormation::Stack=localstack.services.cloudformation.resource_providers.aws_cloudformation_stack_plugin:CloudFormationStackProviderPlugin", "AWS::Lambda::EventSourceMapping=localstack.services.lambda_.resource_providers.aws_lambda_eventsourcemapping_plugin:LambdaEventSourceMappingProviderPlugin", "AWS::Lambda::CodeSigningConfig=localstack.services.lambda_.resource_providers.aws_lambda_codesigningconfig_plugin:LambdaCodeSigningConfigProviderPlugin", "AWS::EC2::SubnetRouteTableAssociation=localstack.services.ec2.resource_providers.aws_ec2_subnetroutetableassociation_plugin:EC2SubnetRouteTableAssociationProviderPlugin", "AWS::ApiGateway::BasePathMapping=localstack.services.apigateway.resource_providers.aws_apigateway_basepathmapping_plugin:ApiGatewayBasePathMappingProviderPlugin", "AWS::Events::EventBus=localstack.services.events.resource_providers.aws_events_eventbus_plugin:EventsEventBusProviderPlugin", "AWS::IAM::User=localstack.services.iam.resource_providers.aws_iam_user_plugin:IAMUserProviderPlugin", "AWS::SQS::QueuePolicy=localstack.services.sqs.resource_providers.aws_sqs_queuepolicy_plugin:SQSQueuePolicyProviderPlugin", "AWS::ApiGateway::UsagePlanKey=localstack.services.apigateway.resource_providers.aws_apigateway_usageplankey_plugin:ApiGatewayUsagePlanKeyProviderPlugin", "AWS::Lambda::LayerVersionPermission=localstack.services.lambda_.resource_providers.aws_lambda_layerversionpermission_plugin:LambdaLayerVersionPermissionProviderPlugin", "AWS::EC2::TransitGateway=localstack.services.ec2.resource_providers.aws_ec2_transitgateway_plugin:EC2TransitGatewayProviderPlugin", "AWS::KMS::Key=localstack.services.kms.resource_providers.aws_kms_key_plugin:KMSKeyProviderPlugin", "AWS::EC2::NetworkAcl=localstack.services.ec2.resource_providers.aws_ec2_networkacl_plugin:EC2NetworkAclProviderPlugin", "AWS::Events::Connection=localstack.services.events.resource_providers.aws_events_connection_plugin:EventsConnectionProviderPlugin", "AWS::SecretsManager::RotationSchedule=localstack.services.secretsmanager.resource_providers.aws_secretsmanager_rotationschedule_plugin:SecretsManagerRotationScheduleProviderPlugin", "AWS::StepFunctions::Activity=localstack.services.stepfunctions.resource_providers.aws_stepfunctions_activity_plugin:StepFunctionsActivityProviderPlugin", "AWS::Scheduler::Schedule=localstack.services.scheduler.resource_providers.aws_scheduler_schedule_plugin:SchedulerScheduleProviderPlugin", "AWS::SSM::MaintenanceWindow=localstack.services.ssm.resource_providers.aws_ssm_maintenancewindow_plugin:SSMMaintenanceWindowProviderPlugin", "AWS::Scheduler::ScheduleGroup=localstack.services.scheduler.resource_providers.aws_scheduler_schedulegroup_plugin:SchedulerScheduleGroupProviderPlugin", "AWS::EC2::PrefixList=localstack.services.ec2.resource_providers.aws_ec2_prefixlist_plugin:EC2PrefixListProviderPlugin", "AWS::SSM::MaintenanceWindowTask=localstack.services.ssm.resource_providers.aws_ssm_maintenancewindowtask_plugin:SSMMaintenanceWindowTaskProviderPlugin", "AWS::IAM::ServerCertificate=localstack.services.iam.resource_providers.aws_iam_servercertificate_plugin:IAMServerCertificateProviderPlugin", "AWS::IAM::ServiceLinkedRole=localstack.services.iam.resource_providers.aws_iam_servicelinkedrole_plugin:IAMServiceLinkedRoleProviderPlugin", "AWS::IAM::ManagedPolicy=localstack.services.iam.resource_providers.aws_iam_managedpolicy_plugin:IAMManagedPolicyProviderPlugin", "AWS::EC2::VPC=localstack.services.ec2.resource_providers.aws_ec2_vpc_plugin:EC2VPCProviderPlugin", "AWS::EC2::Instance=localstack.services.ec2.resource_providers.aws_ec2_instance_plugin:EC2InstanceProviderPlugin", "AWS::EC2::TransitGatewayAttachment=localstack.services.ec2.resource_providers.aws_ec2_transitgatewayattachment_plugin:EC2TransitGatewayAttachmentProviderPlugin", "AWS::IAM::Group=localstack.services.iam.resource_providers.aws_iam_group_plugin:IAMGroupProviderPlugin", "AWS::ApiGateway::Model=localstack.services.apigateway.resource_providers.aws_apigateway_model_plugin:ApiGatewayModelProviderPlugin", "AWS::Route53::HealthCheck=localstack.services.route53.resource_providers.aws_route53_healthcheck_plugin:Route53HealthCheckProviderPlugin", "AWS::IAM::Role=localstack.services.iam.resource_providers.aws_iam_role_plugin:IAMRoleProviderPlugin", "AWS::CloudWatch::Alarm=localstack.services.cloudwatch.resource_providers.aws_cloudwatch_alarm_plugin:CloudWatchAlarmProviderPlugin", "AWS::DynamoDB::Table=localstack.services.dynamodb.resource_providers.aws_dynamodb_table_plugin:DynamoDBTableProviderPlugin", "AWS::EC2::DHCPOptions=localstack.services.ec2.resource_providers.aws_ec2_dhcpoptions_plugin:EC2DHCPOptionsProviderPlugin", "AWS::ApiGateway::Deployment=localstack.services.apigateway.resource_providers.aws_apigateway_deployment_plugin:ApiGatewayDeploymentProviderPlugin", "AWS::Redshift::Cluster=localstack.services.redshift.resource_providers.aws_redshift_cluster_plugin:RedshiftClusterProviderPlugin", "AWS::Lambda::Permission=localstack.services.lambda_.resource_providers.aws_lambda_permission_plugin:LambdaPermissionProviderPlugin", "AWS::OpenSearchService::Domain=localstack.services.opensearch.resource_providers.aws_opensearchservice_domain_plugin:OpenSearchServiceDomainProviderPlugin", "AWS::ApiGateway::GatewayResponse=localstack.services.apigateway.resource_providers.aws_apigateway_gatewayresponse_plugin:ApiGatewayGatewayResponseProviderPlugin", "AWS::Kinesis::StreamConsumer=localstack.services.kinesis.resource_providers.aws_kinesis_streamconsumer_plugin:KinesisStreamConsumerProviderPlugin", "AWS::EC2::SecurityGroup=localstack.services.ec2.resource_providers.aws_ec2_securitygroup_plugin:EC2SecurityGroupProviderPlugin", "AWS::EC2::VPCGatewayAttachment=localstack.services.ec2.resource_providers.aws_ec2_vpcgatewayattachment_plugin:EC2VPCGatewayAttachmentProviderPlugin", "AWS::SQS::Queue=localstack.services.sqs.resource_providers.aws_sqs_queue_plugin:SQSQueueProviderPlugin", "AWS::SNS::TopicPolicy=localstack.services.sns.resource_providers.aws_sns_topicpolicy_plugin:SNSTopicPolicyProviderPlugin", "AWS::EC2::Route=localstack.services.ec2.resource_providers.aws_ec2_route_plugin:EC2RouteProviderPlugin", "AWS::SNS::Topic=localstack.services.sns.resource_providers.aws_sns_topic_plugin:SNSTopicProviderPlugin", "AWS::Events::EventBusPolicy=localstack.services.events.resource_providers.aws_events_eventbuspolicy_plugin:EventsEventBusPolicyProviderPlugin", "AWS::Lambda::Url=localstack.services.lambda_.resource_providers.aws_lambda_url_plugin:LambdaUrlProviderPlugin", "AWS::SSM::MaintenanceWindowTarget=localstack.services.ssm.resource_providers.aws_ssm_maintenancewindowtarget_plugin:SSMMaintenanceWindowTargetProviderPlugin", "AWS::Logs::LogGroup=localstack.services.logs.resource_providers.aws_logs_loggroup_plugin:LogsLogGroupProviderPlugin", "AWS::SNS::Subscription=localstack.services.sns.resource_providers.aws_sns_subscription_plugin:SNSSubscriptionProviderPlugin", "AWS::IAM::InstanceProfile=localstack.services.iam.resource_providers.aws_iam_instanceprofile_plugin:IAMInstanceProfileProviderPlugin", "AWS::Lambda::Function=localstack.services.lambda_.resource_providers.aws_lambda_function_plugin:LambdaFunctionProviderPlugin", "AWS::SecretsManager::ResourcePolicy=localstack.services.secretsmanager.resource_providers.aws_secretsmanager_resourcepolicy_plugin:SecretsManagerResourcePolicyProviderPlugin", "AWS::ApiGateway::ApiKey=localstack.services.apigateway.resource_providers.aws_apigateway_apikey_plugin:ApiGatewayApiKeyProviderPlugin", "AWS::EC2::VPCEndpoint=localstack.services.ec2.resource_providers.aws_ec2_vpcendpoint_plugin:EC2VPCEndpointProviderPlugin", "AWS::CloudFormation::WaitCondition=localstack.services.cloudformation.resource_providers.aws_cloudformation_waitcondition_plugin:CloudFormationWaitConditionProviderPlugin", "AWS::Events::ApiDestination=localstack.services.events.resource_providers.aws_events_apidestination_plugin:EventsApiDestinationProviderPlugin", "AWS::ApiGateway::DomainName=localstack.services.apigateway.resource_providers.aws_apigateway_domainname_plugin:ApiGatewayDomainNameProviderPlugin", "AWS::KMS::Alias=localstack.services.kms.resource_providers.aws_kms_alias_plugin:KMSAliasProviderPlugin", "AWS::IAM::Policy=localstack.services.iam.resource_providers.aws_iam_policy_plugin:IAMPolicyProviderPlugin", "AWS::KinesisFirehose::DeliveryStream=localstack.services.kinesisfirehose.resource_providers.aws_kinesisfirehose_deliverystream_plugin:KinesisFirehoseDeliveryStreamProviderPlugin", "AWS::ApiGateway::Stage=localstack.services.apigateway.resource_providers.aws_apigateway_stage_plugin:ApiGatewayStageProviderPlugin", "AWS::ApiGateway::Account=localstack.services.apigateway.resource_providers.aws_apigateway_account_plugin:ApiGatewayAccountProviderPlugin", "AWS::EC2::InternetGateway=localstack.services.ec2.resource_providers.aws_ec2_internetgateway_plugin:EC2InternetGatewayProviderPlugin", "AWS::EC2::Subnet=localstack.services.ec2.resource_providers.aws_ec2_subnet_plugin:EC2SubnetProviderPlugin", "AWS::EC2::RouteTable=localstack.services.ec2.resource_providers.aws_ec2_routetable_plugin:EC2RouteTableProviderPlugin", "AWS::ApiGateway::RequestValidator=localstack.services.apigateway.resource_providers.aws_apigateway_requestvalidator_plugin:ApiGatewayRequestValidatorProviderPlugin", "AWS::Kinesis::Stream=localstack.services.kinesis.resource_providers.aws_kinesis_stream_plugin:KinesisStreamProviderPlugin", "AWS::Logs::SubscriptionFilter=localstack.services.logs.resource_providers.aws_logs_subscriptionfilter_plugin:LogsSubscriptionFilterProviderPlugin", "AWS::SecretsManager::Secret=localstack.services.secretsmanager.resource_providers.aws_secretsmanager_secret_plugin:SecretsManagerSecretProviderPlugin", "AWS::Lambda::Alias=localstack.services.lambda_.resource_providers.lambda_alias_plugin:LambdaAliasProviderPlugin", "AWS::ApiGateway::RestApi=localstack.services.apigateway.resource_providers.aws_apigateway_restapi_plugin:ApiGatewayRestApiProviderPlugin", "AWS::CloudFormation::Macro=localstack.services.cloudformation.resource_providers.aws_cloudformation_macro_plugin:CloudFormationMacroProviderPlugin", "AWS::IAM::AccessKey=localstack.services.iam.resource_providers.aws_iam_accesskey_plugin:IAMAccessKeyProviderPlugin", "AWS::DynamoDB::GlobalTable=localstack.services.dynamodb.resource_providers.aws_dynamodb_globaltable_plugin:DynamoDBGlobalTableProviderPlugin"], "localstack.lambda.runtime_executor": ["docker=localstack.services.lambda_.invocation.plugins:DockerRuntimeExecutorPlugin"], "localstack.init.runner": ["py=localstack.runtime.init:PythonScriptRunner", "sh=localstack.runtime.init:ShellScriptRunner"], "localstack.hooks.on_infra_ready": ["_run_init_scripts_on_ready=localstack.runtime.init:_run_init_scripts_on_ready"], "localstack.openapi.spec": ["localstack=localstack.plugins:CoreOASPlugin"], "localstack.aws.provider": ["acm:default=localstack.services.providers:acm", "apigateway:default=localstack.services.providers:apigateway", "apigateway:legacy=localstack.services.providers:apigateway_legacy", "apigateway:next_gen=localstack.services.providers:apigateway_next_gen", "config:default=localstack.services.providers:awsconfig", "cloudformation:default=localstack.services.providers:cloudformation", "cloudformation:engine-v2=localstack.services.providers:cloudformation_v2", "cloudwatch:default=localstack.services.providers:cloudwatch", "cloudwatch:v1=localstack.services.providers:cloudwatch_v1", "cloudwatch:v2=localstack.services.providers:cloudwatch_v2", "dynamodb:default=localstack.services.providers:dynamodb", "dynamodb:v2=localstack.services.providers:dynamodb_v2", "dynamodbstreams:default=localstack.services.providers:dynamodbstreams", "dynamodbstreams:v2=localstack.services.providers:dynamodbstreams_v2", "ec2:default=localstack.services.providers:ec2", "es:default=localstack.services.providers:es", "events:default=localstack.services.providers:events", "events:legacy=localstack.services.providers:events_legacy", "events:v1=localstack.services.providers:events_v1", "events:v2=localstack.services.providers:events_v2", "firehose:default=localstack.services.providers:firehose", "iam:default=localstack.services.providers:iam", "kinesis:default=localstack.services.providers:kinesis", "kms:default=localstack.services.providers:kms", "lambda:default=localstack.services.providers:lambda_", "lambda:asf=localstack.services.providers:lambda_asf", "lambda:v2=localstack.services.providers:lambda_v2", "logs:default=localstack.services.providers:logs", "opensearch:default=localstack.services.providers:opensearch", "redshift:default=localstack.services.providers:redshift", "resource-groups:default=localstack.services.providers:resource_groups", "resourcegroupstaggingapi:default=localstack.services.providers:resourcegroupstaggingapi", "route53:default=localstack.services.providers:route53", "route53resolver:default=localstack.services.providers:route53resolver", "s3:default=localstack.services.providers:s3", "s3control:default=localstack.services.providers:s3control", "scheduler:default=localstack.services.providers:scheduler", "secretsmanager:default=localstack.services.providers:secretsmanager", "ses:default=localstack.services.providers:ses", "sns:default=localstack.services.providers:sns", "sqs:default=localstack.services.providers:sqs", "ssm:default=localstack.services.providers:ssm", "stepfunctions:default=localstack.services.providers:stepfunctions", "stepfunctions:v2=localstack.services.providers:stepfunctions_v2", "sts:default=localstack.services.providers:sts", "support:default=localstack.services.providers:support", "swf:default=localstack.services.providers:swf", "transcribe:default=localstack.services.providers:transcribe"], "localstack.runtime.server": ["hypercorn=localstack.runtime.server.plugins:HypercornRuntimeServerPlugin", "twisted=localstack.runtime.server.plugins:TwistedRuntimeServerPlugin"], "localstack.runtime.components": ["aws=localstack.aws.components:AwsComponents"], "localstack.hooks.configure_localstack_container": ["_mount_machine_file=localstack.utils.analytics.metadata:_mount_machine_file"], "localstack.hooks.prepare_host": ["prepare_host_machine_id=localstack.utils.analytics.metadata:prepare_host_machine_id"]}
@@ -1 +0,0 @@
1
- {"localstack.cloudformation.resource_providers": ["AWS::StepFunctions::Activity=localstack.services.stepfunctions.resource_providers.aws_stepfunctions_activity_plugin:StepFunctionsActivityProviderPlugin", "AWS::IAM::ServiceLinkedRole=localstack.services.iam.resource_providers.aws_iam_servicelinkedrole_plugin:IAMServiceLinkedRoleProviderPlugin", "AWS::Lambda::Permission=localstack.services.lambda_.resource_providers.aws_lambda_permission_plugin:LambdaPermissionProviderPlugin", "AWS::ApiGateway::ApiKey=localstack.services.apigateway.resource_providers.aws_apigateway_apikey_plugin:ApiGatewayApiKeyProviderPlugin", "AWS::SSM::PatchBaseline=localstack.services.ssm.resource_providers.aws_ssm_patchbaseline_plugin:SSMPatchBaselineProviderPlugin", "AWS::Route53::HealthCheck=localstack.services.route53.resource_providers.aws_route53_healthcheck_plugin:Route53HealthCheckProviderPlugin", "AWS::Lambda::EventInvokeConfig=localstack.services.lambda_.resource_providers.aws_lambda_eventinvokeconfig_plugin:LambdaEventInvokeConfigProviderPlugin", "AWS::IAM::AccessKey=localstack.services.iam.resource_providers.aws_iam_accesskey_plugin:IAMAccessKeyProviderPlugin", "AWS::Redshift::Cluster=localstack.services.redshift.resource_providers.aws_redshift_cluster_plugin:RedshiftClusterProviderPlugin", "AWS::Events::ApiDestination=localstack.services.events.resource_providers.aws_events_apidestination_plugin:EventsApiDestinationProviderPlugin", "AWS::StepFunctions::StateMachine=localstack.services.stepfunctions.resource_providers.aws_stepfunctions_statemachine_plugin:StepFunctionsStateMachineProviderPlugin", "AWS::CloudWatch::Alarm=localstack.services.cloudwatch.resource_providers.aws_cloudwatch_alarm_plugin:CloudWatchAlarmProviderPlugin", "AWS::CloudFormation::Stack=localstack.services.cloudformation.resource_providers.aws_cloudformation_stack_plugin:CloudFormationStackProviderPlugin", "AWS::ApiGateway::Method=localstack.services.apigateway.resource_providers.aws_apigateway_method_plugin:ApiGatewayMethodProviderPlugin", "AWS::ApiGateway::Model=localstack.services.apigateway.resource_providers.aws_apigateway_model_plugin:ApiGatewayModelProviderPlugin", "AWS::EC2::SecurityGroup=localstack.services.ec2.resource_providers.aws_ec2_securitygroup_plugin:EC2SecurityGroupProviderPlugin", "AWS::EC2::SubnetRouteTableAssociation=localstack.services.ec2.resource_providers.aws_ec2_subnetroutetableassociation_plugin:EC2SubnetRouteTableAssociationProviderPlugin", "AWS::S3::BucketPolicy=localstack.services.s3.resource_providers.aws_s3_bucketpolicy_plugin:S3BucketPolicyProviderPlugin", "AWS::CloudWatch::CompositeAlarm=localstack.services.cloudwatch.resource_providers.aws_cloudwatch_compositealarm_plugin:CloudWatchCompositeAlarmProviderPlugin", "AWS::SES::EmailIdentity=localstack.services.ses.resource_providers.aws_ses_emailidentity_plugin:SESEmailIdentityProviderPlugin", "AWS::SecretsManager::ResourcePolicy=localstack.services.secretsmanager.resource_providers.aws_secretsmanager_resourcepolicy_plugin:SecretsManagerResourcePolicyProviderPlugin", "AWS::IAM::ManagedPolicy=localstack.services.iam.resource_providers.aws_iam_managedpolicy_plugin:IAMManagedPolicyProviderPlugin", "AWS::SecretsManager::SecretTargetAttachment=localstack.services.secretsmanager.resource_providers.aws_secretsmanager_secrettargetattachment_plugin:SecretsManagerSecretTargetAttachmentProviderPlugin", "AWS::KMS::Alias=localstack.services.kms.resource_providers.aws_kms_alias_plugin:KMSAliasProviderPlugin", "AWS::EC2::VPC=localstack.services.ec2.resource_providers.aws_ec2_vpc_plugin:EC2VPCProviderPlugin", "AWS::ApiGateway::Stage=localstack.services.apigateway.resource_providers.aws_apigateway_stage_plugin:ApiGatewayStageProviderPlugin", "AWS::Kinesis::StreamConsumer=localstack.services.kinesis.resource_providers.aws_kinesis_streamconsumer_plugin:KinesisStreamConsumerProviderPlugin", "AWS::Logs::LogStream=localstack.services.logs.resource_providers.aws_logs_logstream_plugin:LogsLogStreamProviderPlugin", "AWS::Lambda::Alias=localstack.services.lambda_.resource_providers.lambda_alias_plugin:LambdaAliasProviderPlugin", "AWS::CertificateManager::Certificate=localstack.services.certificatemanager.resource_providers.aws_certificatemanager_certificate_plugin:CertificateManagerCertificateProviderPlugin", "AWS::ApiGateway::BasePathMapping=localstack.services.apigateway.resource_providers.aws_apigateway_basepathmapping_plugin:ApiGatewayBasePathMappingProviderPlugin", "AWS::EC2::PrefixList=localstack.services.ec2.resource_providers.aws_ec2_prefixlist_plugin:EC2PrefixListProviderPlugin", "AWS::Lambda::LayerVersionPermission=localstack.services.lambda_.resource_providers.aws_lambda_layerversionpermission_plugin:LambdaLayerVersionPermissionProviderPlugin", "AWS::Lambda::Version=localstack.services.lambda_.resource_providers.aws_lambda_version_plugin:LambdaVersionProviderPlugin", "AWS::IAM::InstanceProfile=localstack.services.iam.resource_providers.aws_iam_instanceprofile_plugin:IAMInstanceProfileProviderPlugin", "AWS::SQS::QueuePolicy=localstack.services.sqs.resource_providers.aws_sqs_queuepolicy_plugin:SQSQueuePolicyProviderPlugin", "AWS::EC2::Route=localstack.services.ec2.resource_providers.aws_ec2_route_plugin:EC2RouteProviderPlugin", "AWS::CloudFormation::WaitCondition=localstack.services.cloudformation.resource_providers.aws_cloudformation_waitcondition_plugin:CloudFormationWaitConditionProviderPlugin", "AWS::ECR::Repository=localstack.services.ecr.resource_providers.aws_ecr_repository_plugin:ECRRepositoryProviderPlugin", "AWS::ApiGateway::Account=localstack.services.apigateway.resource_providers.aws_apigateway_account_plugin:ApiGatewayAccountProviderPlugin", "AWS::IAM::Group=localstack.services.iam.resource_providers.aws_iam_group_plugin:IAMGroupProviderPlugin", "AWS::Logs::SubscriptionFilter=localstack.services.logs.resource_providers.aws_logs_subscriptionfilter_plugin:LogsSubscriptionFilterProviderPlugin", "AWS::KMS::Key=localstack.services.kms.resource_providers.aws_kms_key_plugin:KMSKeyProviderPlugin", "AWS::ApiGateway::RequestValidator=localstack.services.apigateway.resource_providers.aws_apigateway_requestvalidator_plugin:ApiGatewayRequestValidatorProviderPlugin", "AWS::IAM::User=localstack.services.iam.resource_providers.aws_iam_user_plugin:IAMUserProviderPlugin", "AWS::Kinesis::Stream=localstack.services.kinesis.resource_providers.aws_kinesis_stream_plugin:KinesisStreamProviderPlugin", "AWS::SNS::Topic=localstack.services.sns.resource_providers.aws_sns_topic_plugin:SNSTopicProviderPlugin", "AWS::Scheduler::ScheduleGroup=localstack.services.scheduler.resource_providers.aws_scheduler_schedulegroup_plugin:SchedulerScheduleGroupProviderPlugin", "AWS::Events::EventBusPolicy=localstack.services.events.resource_providers.aws_events_eventbuspolicy_plugin:EventsEventBusPolicyProviderPlugin", "AWS::IAM::Role=localstack.services.iam.resource_providers.aws_iam_role_plugin:IAMRoleProviderPlugin", "AWS::ApiGateway::GatewayResponse=localstack.services.apigateway.resource_providers.aws_apigateway_gatewayresponse_plugin:ApiGatewayGatewayResponseProviderPlugin", "AWS::CloudFormation::Macro=localstack.services.cloudformation.resource_providers.aws_cloudformation_macro_plugin:CloudFormationMacroProviderPlugin", "AWS::ApiGateway::UsagePlan=localstack.services.apigateway.resource_providers.aws_apigateway_usageplan_plugin:ApiGatewayUsagePlanProviderPlugin", "AWS::DynamoDB::GlobalTable=localstack.services.dynamodb.resource_providers.aws_dynamodb_globaltable_plugin:DynamoDBGlobalTableProviderPlugin", "AWS::SNS::TopicPolicy=localstack.services.sns.resource_providers.aws_sns_topicpolicy_plugin:SNSTopicPolicyProviderPlugin", "AWS::Lambda::Function=localstack.services.lambda_.resource_providers.aws_lambda_function_plugin:LambdaFunctionProviderPlugin", "AWS::Events::EventBus=localstack.services.events.resource_providers.aws_events_eventbus_plugin:EventsEventBusProviderPlugin", "AWS::Logs::LogGroup=localstack.services.logs.resource_providers.aws_logs_loggroup_plugin:LogsLogGroupProviderPlugin", "AWS::ApiGateway::Deployment=localstack.services.apigateway.resource_providers.aws_apigateway_deployment_plugin:ApiGatewayDeploymentProviderPlugin", "AWS::ApiGateway::RestApi=localstack.services.apigateway.resource_providers.aws_apigateway_restapi_plugin:ApiGatewayRestApiProviderPlugin", "AWS::SSM::MaintenanceWindowTask=localstack.services.ssm.resource_providers.aws_ssm_maintenancewindowtask_plugin:SSMMaintenanceWindowTaskProviderPlugin", "AWS::Elasticsearch::Domain=localstack.services.opensearch.resource_providers.aws_elasticsearch_domain_plugin:ElasticsearchDomainProviderPlugin", "AWS::Lambda::Url=localstack.services.lambda_.resource_providers.aws_lambda_url_plugin:LambdaUrlProviderPlugin", "AWS::SQS::Queue=localstack.services.sqs.resource_providers.aws_sqs_queue_plugin:SQSQueueProviderPlugin", "AWS::DynamoDB::Table=localstack.services.dynamodb.resource_providers.aws_dynamodb_table_plugin:DynamoDBTableProviderPlugin", "AWS::IAM::ServerCertificate=localstack.services.iam.resource_providers.aws_iam_servercertificate_plugin:IAMServerCertificateProviderPlugin", "AWS::Scheduler::Schedule=localstack.services.scheduler.resource_providers.aws_scheduler_schedule_plugin:SchedulerScheduleProviderPlugin", "AWS::CDK::Metadata=localstack.services.cdk.resource_providers.cdk_metadata_plugin:LambdaAliasProviderPlugin", "AWS::ApiGateway::Resource=localstack.services.apigateway.resource_providers.aws_apigateway_resource_plugin:ApiGatewayResourceProviderPlugin", "AWS::SecretsManager::Secret=localstack.services.secretsmanager.resource_providers.aws_secretsmanager_secret_plugin:SecretsManagerSecretProviderPlugin", "AWS::EC2::TransitGatewayAttachment=localstack.services.ec2.resource_providers.aws_ec2_transitgatewayattachment_plugin:EC2TransitGatewayAttachmentProviderPlugin", "AWS::KinesisFirehose::DeliveryStream=localstack.services.kinesisfirehose.resource_providers.aws_kinesisfirehose_deliverystream_plugin:KinesisFirehoseDeliveryStreamProviderPlugin", "AWS::EC2::NetworkAcl=localstack.services.ec2.resource_providers.aws_ec2_networkacl_plugin:EC2NetworkAclProviderPlugin", "AWS::EC2::RouteTable=localstack.services.ec2.resource_providers.aws_ec2_routetable_plugin:EC2RouteTableProviderPlugin", "AWS::EC2::Instance=localstack.services.ec2.resource_providers.aws_ec2_instance_plugin:EC2InstanceProviderPlugin", "AWS::Lambda::LayerVersion=localstack.services.lambda_.resource_providers.aws_lambda_layerversion_plugin:LambdaLayerVersionProviderPlugin", "AWS::S3::Bucket=localstack.services.s3.resource_providers.aws_s3_bucket_plugin:S3BucketProviderPlugin", "AWS::EC2::VPCEndpoint=localstack.services.ec2.resource_providers.aws_ec2_vpcendpoint_plugin:EC2VPCEndpointProviderPlugin", "AWS::OpenSearchService::Domain=localstack.services.opensearch.resource_providers.aws_opensearchservice_domain_plugin:OpenSearchServiceDomainProviderPlugin", "AWS::EC2::InternetGateway=localstack.services.ec2.resource_providers.aws_ec2_internetgateway_plugin:EC2InternetGatewayProviderPlugin", "AWS::EC2::VPCGatewayAttachment=localstack.services.ec2.resource_providers.aws_ec2_vpcgatewayattachment_plugin:EC2VPCGatewayAttachmentProviderPlugin", "AWS::Events::Connection=localstack.services.events.resource_providers.aws_events_connection_plugin:EventsConnectionProviderPlugin", "AWS::CloudFormation::WaitConditionHandle=localstack.services.cloudformation.resource_providers.aws_cloudformation_waitconditionhandle_plugin:CloudFormationWaitConditionHandleProviderPlugin", "AWS::EC2::KeyPair=localstack.services.ec2.resource_providers.aws_ec2_keypair_plugin:EC2KeyPairProviderPlugin", "AWS::Route53::RecordSet=localstack.services.route53.resource_providers.aws_route53_recordset_plugin:Route53RecordSetProviderPlugin", "AWS::EC2::DHCPOptions=localstack.services.ec2.resource_providers.aws_ec2_dhcpoptions_plugin:EC2DHCPOptionsProviderPlugin", "AWS::IAM::Policy=localstack.services.iam.resource_providers.aws_iam_policy_plugin:IAMPolicyProviderPlugin", "AWS::ResourceGroups::Group=localstack.services.resource_groups.resource_providers.aws_resourcegroups_group_plugin:ResourceGroupsGroupProviderPlugin", "AWS::ApiGateway::UsagePlanKey=localstack.services.apigateway.resource_providers.aws_apigateway_usageplankey_plugin:ApiGatewayUsagePlanKeyProviderPlugin", "AWS::SNS::Subscription=localstack.services.sns.resource_providers.aws_sns_subscription_plugin:SNSSubscriptionProviderPlugin", "AWS::SSM::Parameter=localstack.services.ssm.resource_providers.aws_ssm_parameter_plugin:SSMParameterProviderPlugin", "AWS::Lambda::CodeSigningConfig=localstack.services.lambda_.resource_providers.aws_lambda_codesigningconfig_plugin:LambdaCodeSigningConfigProviderPlugin", "AWS::Lambda::EventSourceMapping=localstack.services.lambda_.resource_providers.aws_lambda_eventsourcemapping_plugin:LambdaEventSourceMappingProviderPlugin", "AWS::EC2::Subnet=localstack.services.ec2.resource_providers.aws_ec2_subnet_plugin:EC2SubnetProviderPlugin", "AWS::SecretsManager::RotationSchedule=localstack.services.secretsmanager.resource_providers.aws_secretsmanager_rotationschedule_plugin:SecretsManagerRotationScheduleProviderPlugin", "AWS::ApiGateway::DomainName=localstack.services.apigateway.resource_providers.aws_apigateway_domainname_plugin:ApiGatewayDomainNameProviderPlugin", "AWS::EC2::NatGateway=localstack.services.ec2.resource_providers.aws_ec2_natgateway_plugin:EC2NatGatewayProviderPlugin", "AWS::EC2::TransitGateway=localstack.services.ec2.resource_providers.aws_ec2_transitgateway_plugin:EC2TransitGatewayProviderPlugin", "AWS::SSM::MaintenanceWindow=localstack.services.ssm.resource_providers.aws_ssm_maintenancewindow_plugin:SSMMaintenanceWindowProviderPlugin", "AWS::Events::Rule=localstack.services.events.resource_providers.aws_events_rule_plugin:EventsRuleProviderPlugin", "AWS::SSM::MaintenanceWindowTarget=localstack.services.ssm.resource_providers.aws_ssm_maintenancewindowtarget_plugin:SSMMaintenanceWindowTargetProviderPlugin"], "localstack.hooks.on_infra_shutdown": ["run_on_after_service_shutdown_handlers=localstack.runtime.shutdown:run_on_after_service_shutdown_handlers", "run_shutdown_handlers=localstack.runtime.shutdown:run_shutdown_handlers", "shutdown_services=localstack.runtime.shutdown:shutdown_services", "_run_init_scripts_on_shutdown=localstack.runtime.init:_run_init_scripts_on_shutdown", "remove_custom_endpoints=localstack.services.lambda_.plugins:remove_custom_endpoints", "aggregate_and_send=localstack.utils.analytics.usage:aggregate_and_send", "publish_metrics=localstack.utils.analytics.metrics:publish_metrics", "stop_server=localstack.dns.plugins:stop_server"], "localstack.packages": ["dynamodb-local/community=localstack.services.dynamodb.plugins:dynamodb_local_package", "jpype-jsonata/community=localstack.services.stepfunctions.plugins:jpype_jsonata_package", "elasticsearch/community=localstack.services.es.plugins:elasticsearch_package", "lambda-java-libs/community=localstack.services.lambda_.plugins:lambda_java_libs", "lambda-runtime/community=localstack.services.lambda_.plugins:lambda_runtime_package", "kinesis-mock/community=localstack.services.kinesis.plugins:kinesismock_package", "opensearch/community=localstack.services.opensearch.plugins:opensearch_package", "ffmpeg/community=localstack.packages.plugins:ffmpeg_package", "java/community=localstack.packages.plugins:java_package", "terraform/community=localstack.packages.plugins:terraform_package", "vosk/community=localstack.services.transcribe.plugins:vosk_package"], "localstack.hooks.on_infra_start": ["apply_aws_runtime_patches=localstack.aws.patches:apply_aws_runtime_patches", "delete_cached_certificate=localstack.plugins:delete_cached_certificate", "deprecation_warnings=localstack.plugins:deprecation_warnings", "_patch_botocore_endpoint_in_memory=localstack.aws.client:_patch_botocore_endpoint_in_memory", "_patch_botocore_json_parser=localstack.aws.client:_patch_botocore_json_parser", "_patch_cbor2=localstack.aws.client:_patch_cbor2", "conditionally_enable_debugger=localstack.dev.debugger.plugins:conditionally_enable_debugger", "_run_init_scripts_on_start=localstack.runtime.init:_run_init_scripts_on_start", "_publish_config_as_analytics_event=localstack.runtime.analytics:_publish_config_as_analytics_event", "_publish_container_info=localstack.runtime.analytics:_publish_container_info", "apply_runtime_patches=localstack.runtime.patches:apply_runtime_patches", "register_custom_endpoints=localstack.services.lambda_.plugins:register_custom_endpoints", "validate_configuration=localstack.services.lambda_.plugins:validate_configuration", "register_swagger_endpoints=localstack.http.resources.swagger.plugins:register_swagger_endpoints", "setup_dns_configuration_on_host=localstack.dns.plugins:setup_dns_configuration_on_host", "start_dns_server=localstack.dns.plugins:start_dns_server", "register_cloudformation_deploy_ui=localstack.services.cloudformation.plugins:register_cloudformation_deploy_ui"], "localstack.aws.provider": ["acm:default=localstack.services.providers:acm", "apigateway:default=localstack.services.providers:apigateway", "apigateway:legacy=localstack.services.providers:apigateway_legacy", "apigateway:next_gen=localstack.services.providers:apigateway_next_gen", "config:default=localstack.services.providers:awsconfig", "cloudformation:default=localstack.services.providers:cloudformation", "cloudformation:engine-v2=localstack.services.providers:cloudformation_v2", "cloudwatch:default=localstack.services.providers:cloudwatch", "cloudwatch:v1=localstack.services.providers:cloudwatch_v1", "cloudwatch:v2=localstack.services.providers:cloudwatch_v2", "dynamodb:default=localstack.services.providers:dynamodb", "dynamodb:v2=localstack.services.providers:dynamodb_v2", "dynamodbstreams:default=localstack.services.providers:dynamodbstreams", "dynamodbstreams:v2=localstack.services.providers:dynamodbstreams_v2", "ec2:default=localstack.services.providers:ec2", "es:default=localstack.services.providers:es", "events:default=localstack.services.providers:events", "events:legacy=localstack.services.providers:events_legacy", "events:v1=localstack.services.providers:events_v1", "events:v2=localstack.services.providers:events_v2", "firehose:default=localstack.services.providers:firehose", "iam:default=localstack.services.providers:iam", "kinesis:default=localstack.services.providers:kinesis", "kms:default=localstack.services.providers:kms", "lambda:default=localstack.services.providers:lambda_", "lambda:asf=localstack.services.providers:lambda_asf", "lambda:v2=localstack.services.providers:lambda_v2", "logs:default=localstack.services.providers:logs", "opensearch:default=localstack.services.providers:opensearch", "redshift:default=localstack.services.providers:redshift", "resource-groups:default=localstack.services.providers:resource_groups", "resourcegroupstaggingapi:default=localstack.services.providers:resourcegroupstaggingapi", "route53:default=localstack.services.providers:route53", "route53resolver:default=localstack.services.providers:route53resolver", "s3:default=localstack.services.providers:s3", "s3control:default=localstack.services.providers:s3control", "scheduler:default=localstack.services.providers:scheduler", "secretsmanager:default=localstack.services.providers:secretsmanager", "ses:default=localstack.services.providers:ses", "sns:default=localstack.services.providers:sns", "sqs:default=localstack.services.providers:sqs", "ssm:default=localstack.services.providers:ssm", "stepfunctions:default=localstack.services.providers:stepfunctions", "stepfunctions:v2=localstack.services.providers:stepfunctions_v2", "sts:default=localstack.services.providers:sts", "support:default=localstack.services.providers:support", "swf:default=localstack.services.providers:swf", "transcribe:default=localstack.services.providers:transcribe"], "localstack.openapi.spec": ["localstack=localstack.plugins:CoreOASPlugin"], "localstack.init.runner": ["py=localstack.runtime.init:PythonScriptRunner", "sh=localstack.runtime.init:ShellScriptRunner"], "localstack.hooks.on_infra_ready": ["_run_init_scripts_on_ready=localstack.runtime.init:_run_init_scripts_on_ready"], "localstack.lambda.runtime_executor": ["docker=localstack.services.lambda_.invocation.plugins:DockerRuntimeExecutorPlugin"], "localstack.hooks.configure_localstack_container": ["_mount_machine_file=localstack.utils.analytics.metadata:_mount_machine_file"], "localstack.hooks.prepare_host": ["prepare_host_machine_id=localstack.utils.analytics.metadata:prepare_host_machine_id"], "localstack.runtime.server": ["hypercorn=localstack.runtime.server.plugins:HypercornRuntimeServerPlugin", "twisted=localstack.runtime.server.plugins:TwistedRuntimeServerPlugin"], "localstack.runtime.components": ["aws=localstack.aws.components:AwsComponents"]}