localstack-core 4.7.1.dev27__py3-none-any.whl → 4.7.1.dev28__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/services/cloudformation/engine/v2/change_set_model_executor.py +1 -1
- localstack/services/cloudformation/engine/v2/change_set_model_preproc.py +17 -3
- localstack/services/cloudformation/engine/v2/change_set_model_validator.py +121 -33
- localstack/services/cloudformation/resource_provider.py +3 -3
- localstack/services/cloudformation/v2/provider.py +41 -8
- localstack/version.py +2 -2
- {localstack_core-4.7.1.dev27.dist-info → localstack_core-4.7.1.dev28.dist-info}/METADATA +1 -1
- {localstack_core-4.7.1.dev27.dist-info → localstack_core-4.7.1.dev28.dist-info}/RECORD +16 -16
- localstack_core-4.7.1.dev28.dist-info/plux.json +1 -0
- localstack_core-4.7.1.dev27.dist-info/plux.json +0 -1
- {localstack_core-4.7.1.dev27.data → localstack_core-4.7.1.dev28.data}/scripts/localstack +0 -0
- {localstack_core-4.7.1.dev27.data → localstack_core-4.7.1.dev28.data}/scripts/localstack-supervisor +0 -0
- {localstack_core-4.7.1.dev27.data → localstack_core-4.7.1.dev28.data}/scripts/localstack.bat +0 -0
- {localstack_core-4.7.1.dev27.dist-info → localstack_core-4.7.1.dev28.dist-info}/WHEEL +0 -0
- {localstack_core-4.7.1.dev27.dist-info → localstack_core-4.7.1.dev28.dist-info}/entry_points.txt +0 -0
- {localstack_core-4.7.1.dev27.dist-info → localstack_core-4.7.1.dev28.dist-info}/licenses/LICENSE.txt +0 -0
- {localstack_core-4.7.1.dev27.dist-info → localstack_core-4.7.1.dev28.dist-info}/top_level.txt +0 -0
|
@@ -441,7 +441,7 @@ class ChangeSetModelExecutor(ChangeSetModelPreproc):
|
|
|
441
441
|
LOG.warning(
|
|
442
442
|
"Resource provider operation failed: '%s'",
|
|
443
443
|
reason,
|
|
444
|
-
exc_info=LOG.isEnabledFor(logging.DEBUG),
|
|
444
|
+
exc_info=LOG.isEnabledFor(logging.DEBUG) and config.CFN_VERBOSE_ERRORS,
|
|
445
445
|
)
|
|
446
446
|
event = ProgressEvent(
|
|
447
447
|
OperationStatus.FAILED,
|
|
@@ -47,6 +47,7 @@ from localstack.services.cloudformation.engine.v2.resolving import (
|
|
|
47
47
|
extract_dynamic_reference,
|
|
48
48
|
perform_dynamic_reference_lookup,
|
|
49
49
|
)
|
|
50
|
+
from localstack.services.cloudformation.engine.validations import ValidationError
|
|
50
51
|
from localstack.services.cloudformation.stores import (
|
|
51
52
|
exports_map,
|
|
52
53
|
)
|
|
@@ -75,6 +76,8 @@ TAfter = TypeVar("TAfter")
|
|
|
75
76
|
|
|
76
77
|
MOCKED_REFERENCE = "unknown"
|
|
77
78
|
|
|
79
|
+
VALID_LOGICAL_RESOURCE_ID_RE = re.compile(r"^[A-Za-z0-9]+$")
|
|
80
|
+
|
|
78
81
|
|
|
79
82
|
class PreprocEntityDelta(Generic[TBefore, TAfter]):
|
|
80
83
|
before: Maybe[TBefore]
|
|
@@ -223,7 +226,9 @@ class ChangeSetModelPreproc(ChangeSetModelVisitor):
|
|
|
223
226
|
if node_resource.name == resource_name:
|
|
224
227
|
self.visit(node_resource)
|
|
225
228
|
return node_resource
|
|
226
|
-
raise
|
|
229
|
+
raise ValidationError(
|
|
230
|
+
f"Template format error: Unresolved resource dependencies [{resource_name}] in the Resources block of the template"
|
|
231
|
+
)
|
|
227
232
|
|
|
228
233
|
def _get_node_property_for(
|
|
229
234
|
self, property_name: str, node_resource: NodeResource
|
|
@@ -238,7 +243,8 @@ class ChangeSetModelPreproc(ChangeSetModelVisitor):
|
|
|
238
243
|
def _deployed_property_value_of(
|
|
239
244
|
self, resource_logical_id: str, property_name: str, resolved_resources: dict
|
|
240
245
|
) -> Any:
|
|
241
|
-
#
|
|
246
|
+
# We have to override this function to make sure it does not try to access the
|
|
247
|
+
# resolved resource
|
|
242
248
|
|
|
243
249
|
# Before we can obtain deployed value for a resource, we need to first ensure to
|
|
244
250
|
# process the resource if this wasn't processed already. Ideally, values should only
|
|
@@ -372,8 +378,12 @@ class ChangeSetModelPreproc(ChangeSetModelVisitor):
|
|
|
372
378
|
node_mapping: NodeMapping = self._get_node_mapping(map_name=map_name)
|
|
373
379
|
top_level_value = node_mapping.bindings.bindings.get(top_level_key)
|
|
374
380
|
if not isinstance(top_level_value, NodeObject):
|
|
375
|
-
|
|
381
|
+
error_key = "::".join([map_name, top_level_key, second_level_key])
|
|
382
|
+
raise ValidationError(f"Template error: Unable to get mapping for {error_key}")
|
|
376
383
|
second_level_value = top_level_value.bindings.get(second_level_key)
|
|
384
|
+
if not isinstance(second_level_value, TerminalValue):
|
|
385
|
+
error_key = "::".join([map_name, top_level_key, second_level_key])
|
|
386
|
+
raise ValidationError(f"Template error: Unable to get mapping for {error_key}")
|
|
377
387
|
mapping_value_delta = self.visit(second_level_value)
|
|
378
388
|
return mapping_value_delta
|
|
379
389
|
|
|
@@ -1070,6 +1080,10 @@ class ChangeSetModelPreproc(ChangeSetModelVisitor):
|
|
|
1070
1080
|
def visit_node_resource(
|
|
1071
1081
|
self, node_resource: NodeResource
|
|
1072
1082
|
) -> PreprocEntityDelta[PreprocResource, PreprocResource]:
|
|
1083
|
+
if not VALID_LOGICAL_RESOURCE_ID_RE.match(node_resource.name):
|
|
1084
|
+
raise ValidationError(
|
|
1085
|
+
f"Template format error: Resource name {node_resource.name} is non alphanumeric."
|
|
1086
|
+
)
|
|
1073
1087
|
change_type = node_resource.change_type
|
|
1074
1088
|
condition_before = Nothing
|
|
1075
1089
|
condition_after = Nothing
|
|
@@ -1,53 +1,141 @@
|
|
|
1
1
|
import re
|
|
2
|
+
from typing import Any
|
|
2
3
|
|
|
3
4
|
from localstack.services.cloudformation.engine.v2.change_set_model import (
|
|
4
|
-
|
|
5
|
-
|
|
5
|
+
Maybe,
|
|
6
|
+
NodeIntrinsicFunction,
|
|
6
7
|
NodeTemplate,
|
|
8
|
+
Nothing,
|
|
7
9
|
is_nothing,
|
|
8
10
|
)
|
|
9
11
|
from localstack.services.cloudformation.engine.v2.change_set_model_preproc import (
|
|
12
|
+
_PSEUDO_PARAMETERS,
|
|
13
|
+
ChangeSetModelPreproc,
|
|
10
14
|
PreprocEntityDelta,
|
|
15
|
+
PreprocResource,
|
|
11
16
|
)
|
|
12
|
-
from localstack.services.cloudformation.engine.v2.change_set_model_visitor import (
|
|
13
|
-
ChangeSetModelVisitor,
|
|
14
|
-
)
|
|
15
|
-
from localstack.services.cloudformation.engine.validations import ValidationError
|
|
16
|
-
from localstack.services.cloudformation.v2.entities import ChangeSet
|
|
17
|
-
|
|
18
|
-
VALID_LOGICAL_RESOURCE_ID_RE = re.compile(r"^[A-Za-z0-9]+$")
|
|
19
17
|
|
|
20
18
|
|
|
21
|
-
class ChangeSetModelValidator(
|
|
22
|
-
def __init__(self, change_set: ChangeSet):
|
|
23
|
-
self._change_set = change_set
|
|
24
|
-
|
|
19
|
+
class ChangeSetModelValidator(ChangeSetModelPreproc):
|
|
25
20
|
def validate(self):
|
|
26
|
-
self.
|
|
21
|
+
self.process()
|
|
27
22
|
|
|
28
23
|
def visit_node_template(self, node_template: NodeTemplate):
|
|
29
|
-
self.visit(node_template.
|
|
24
|
+
self.visit(node_template.mappings)
|
|
30
25
|
self.visit(node_template.resources)
|
|
31
26
|
|
|
32
|
-
def
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
27
|
+
def visit_node_intrinsic_function_fn_get_att(
|
|
28
|
+
self, node_intrinsic_function: NodeIntrinsicFunction
|
|
29
|
+
) -> PreprocEntityDelta:
|
|
30
|
+
arguments_delta = self.visit(node_intrinsic_function.arguments)
|
|
31
|
+
before_arguments: Maybe[str | list[str]] = arguments_delta.before
|
|
32
|
+
after_arguments: Maybe[str | list[str]] = arguments_delta.after
|
|
33
|
+
|
|
34
|
+
before = self._before_cache.get(node_intrinsic_function.scope, Nothing)
|
|
35
|
+
if is_nothing(before) and not is_nothing(before_arguments):
|
|
36
|
+
before = ".".join(before_arguments)
|
|
37
|
+
|
|
38
|
+
after = self._after_cache.get(node_intrinsic_function.scope, Nothing)
|
|
39
|
+
if is_nothing(after) and not is_nothing(after_arguments):
|
|
40
|
+
after = ".".join(after_arguments)
|
|
41
|
+
|
|
42
|
+
return PreprocEntityDelta(before=before, after=after)
|
|
43
|
+
|
|
44
|
+
def visit_node_intrinsic_function_fn_sub(
|
|
45
|
+
self, node_intrinsic_function: NodeIntrinsicFunction
|
|
46
|
+
) -> PreprocEntityDelta:
|
|
47
|
+
def _compute_sub(args: str | list[Any], select_before: bool) -> str:
|
|
48
|
+
# TODO: add further schema validation.
|
|
49
|
+
string_template: str
|
|
50
|
+
sub_parameters: dict
|
|
51
|
+
if isinstance(args, str):
|
|
52
|
+
string_template = args
|
|
53
|
+
sub_parameters = dict()
|
|
54
|
+
elif (
|
|
55
|
+
isinstance(args, list)
|
|
56
|
+
and len(args) == 2
|
|
57
|
+
and isinstance(args[0], str)
|
|
58
|
+
and isinstance(args[1], dict)
|
|
39
59
|
):
|
|
40
|
-
|
|
60
|
+
string_template = args[0]
|
|
61
|
+
sub_parameters = args[1]
|
|
62
|
+
else:
|
|
63
|
+
raise RuntimeError(
|
|
64
|
+
"Invalid arguments shape for Fn::Sub, expected a String "
|
|
65
|
+
f"or a Tuple of String and Map but got '{args}'"
|
|
66
|
+
)
|
|
67
|
+
sub_string = string_template
|
|
68
|
+
template_variable_names = re.findall("\\${([^}]+)}", string_template)
|
|
69
|
+
for template_variable_name in template_variable_names:
|
|
70
|
+
template_variable_value = Nothing
|
|
71
|
+
|
|
72
|
+
# Try to resolve the variable name as pseudo parameter.
|
|
73
|
+
if template_variable_name in _PSEUDO_PARAMETERS:
|
|
74
|
+
template_variable_value = self._resolve_pseudo_parameter(
|
|
75
|
+
pseudo_parameter_name=template_variable_name
|
|
76
|
+
)
|
|
77
|
+
|
|
78
|
+
# Try to resolve the variable name as an entry to the defined parameters.
|
|
79
|
+
elif template_variable_name in sub_parameters:
|
|
80
|
+
template_variable_value = sub_parameters[template_variable_name]
|
|
81
|
+
|
|
82
|
+
# Try to resolve the variable name as GetAtt.
|
|
83
|
+
elif "." in template_variable_name:
|
|
84
|
+
try:
|
|
85
|
+
template_variable_value = self._resolve_attribute(
|
|
86
|
+
arguments=template_variable_name, select_before=select_before
|
|
87
|
+
)
|
|
88
|
+
except RuntimeError:
|
|
89
|
+
pass
|
|
90
|
+
|
|
91
|
+
# Try to resolve the variable name as Ref.
|
|
92
|
+
else:
|
|
93
|
+
try:
|
|
94
|
+
resource_delta = self._resolve_reference(logical_id=template_variable_name)
|
|
95
|
+
template_variable_value = (
|
|
96
|
+
resource_delta.before if select_before else resource_delta.after
|
|
97
|
+
)
|
|
98
|
+
if isinstance(template_variable_value, PreprocResource):
|
|
99
|
+
template_variable_value = template_variable_value.physical_resource_id
|
|
100
|
+
except RuntimeError:
|
|
101
|
+
pass
|
|
102
|
+
|
|
103
|
+
if is_nothing(template_variable_value):
|
|
104
|
+
# override the base method just for this line to prevent accessing the
|
|
105
|
+
# resource properties since we are not deploying any resources
|
|
106
|
+
template_variable_value = ""
|
|
107
|
+
|
|
108
|
+
if not isinstance(template_variable_value, str):
|
|
109
|
+
template_variable_value = str(template_variable_value)
|
|
41
110
|
|
|
42
|
-
|
|
43
|
-
|
|
111
|
+
sub_string = sub_string.replace(
|
|
112
|
+
f"${{{template_variable_name}}}", template_variable_value
|
|
113
|
+
)
|
|
44
114
|
|
|
45
|
-
|
|
46
|
-
|
|
115
|
+
# FIXME: the following type reduction is ported from v1; however it appears as though such
|
|
116
|
+
# reduction is not performed by the engine, and certainly not at this depth given the
|
|
117
|
+
# lack of context. This section should be removed with Fn::Sub always retuning a string
|
|
118
|
+
# and the resource providers reviewed.
|
|
119
|
+
account_id = self._change_set.account_id
|
|
120
|
+
is_another_account_id = sub_string.isdigit() and len(sub_string) == len(account_id)
|
|
121
|
+
if sub_string == account_id or is_another_account_id:
|
|
122
|
+
result = sub_string
|
|
123
|
+
elif sub_string.isdigit():
|
|
124
|
+
result = int(sub_string)
|
|
125
|
+
else:
|
|
126
|
+
try:
|
|
127
|
+
result = float(sub_string)
|
|
128
|
+
except ValueError:
|
|
129
|
+
result = sub_string
|
|
130
|
+
return result
|
|
47
131
|
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
132
|
+
arguments_delta = self.visit(node_intrinsic_function.arguments)
|
|
133
|
+
arguments_before = arguments_delta.before
|
|
134
|
+
arguments_after = arguments_delta.after
|
|
135
|
+
before = self._before_cache.get(node_intrinsic_function.scope, Nothing)
|
|
136
|
+
if is_nothing(before) and not is_nothing(arguments_before):
|
|
137
|
+
before = _compute_sub(args=arguments_before, select_before=True)
|
|
138
|
+
after = self._after_cache.get(node_intrinsic_function.scope, Nothing)
|
|
139
|
+
if is_nothing(after) and not is_nothing(arguments_after):
|
|
140
|
+
after = _compute_sub(args=arguments_after, select_before=False)
|
|
141
|
+
return PreprocEntityDelta(before=before, after=after)
|
|
@@ -236,7 +236,7 @@ def get_resource_type(resource: dict) -> str:
|
|
|
236
236
|
LOG.warning(
|
|
237
237
|
"Failed to retrieve resource type %s",
|
|
238
238
|
resource.get("Type"),
|
|
239
|
-
exc_info=LOG.isEnabledFor(logging.DEBUG),
|
|
239
|
+
exc_info=LOG.isEnabledFor(logging.DEBUG) and config.CFN_VERBOSE_ERRORS,
|
|
240
240
|
)
|
|
241
241
|
|
|
242
242
|
|
|
@@ -577,7 +577,7 @@ class ResourceProviderExecutor:
|
|
|
577
577
|
LOG.warning(
|
|
578
578
|
"Failed to load PRO resource type %s as a ResourceProvider.",
|
|
579
579
|
resource_type,
|
|
580
|
-
exc_info=LOG.isEnabledFor(logging.DEBUG),
|
|
580
|
+
exc_info=LOG.isEnabledFor(logging.DEBUG) and config.CFN_VERBOSE_ERRORS,
|
|
581
581
|
)
|
|
582
582
|
|
|
583
583
|
# 2. try to load community resource provider
|
|
@@ -592,7 +592,7 @@ class ResourceProviderExecutor:
|
|
|
592
592
|
LOG.warning(
|
|
593
593
|
"Failed to load community resource type %s as a ResourceProvider.",
|
|
594
594
|
resource_type,
|
|
595
|
-
exc_info=LOG.isEnabledFor(logging.DEBUG),
|
|
595
|
+
exc_info=LOG.isEnabledFor(logging.DEBUG) and config.CFN_VERBOSE_ERRORS,
|
|
596
596
|
)
|
|
597
597
|
|
|
598
598
|
# we could not find the resource provider
|
|
@@ -5,8 +5,10 @@ from collections import defaultdict
|
|
|
5
5
|
from datetime import UTC, datetime
|
|
6
6
|
from typing import Any
|
|
7
7
|
|
|
8
|
+
from localstack import config
|
|
8
9
|
from localstack.aws.api import RequestContext, handler
|
|
9
10
|
from localstack.aws.api.cloudformation import (
|
|
11
|
+
AlreadyExistsException,
|
|
10
12
|
CallAs,
|
|
11
13
|
Changes,
|
|
12
14
|
ChangeSetNameOrId,
|
|
@@ -213,6 +215,7 @@ class CloudformationProviderV2(CloudformationProvider):
|
|
|
213
215
|
) -> dict[str, EngineParameter]:
|
|
214
216
|
template_parameters = template.get("Parameters", {})
|
|
215
217
|
resolved_parameters = {}
|
|
218
|
+
invalid_parameters = []
|
|
216
219
|
for name, parameter in template_parameters.items():
|
|
217
220
|
given_value = parameters.get(name)
|
|
218
221
|
default_value = parameter.get("Default")
|
|
@@ -231,10 +234,14 @@ class CloudformationProviderV2(CloudformationProvider):
|
|
|
231
234
|
f"Parameter {name} should either have input value or default value"
|
|
232
235
|
)
|
|
233
236
|
elif given_value is None and default_value is None:
|
|
234
|
-
|
|
237
|
+
invalid_parameters.append(name)
|
|
238
|
+
continue
|
|
235
239
|
|
|
236
240
|
resolved_parameters[name] = resolved_parameter
|
|
237
241
|
|
|
242
|
+
if invalid_parameters:
|
|
243
|
+
raise ValidationError(f"Parameters: [{','.join(invalid_parameters)}] must have values")
|
|
244
|
+
|
|
238
245
|
for name, parameter in resolved_parameters.items():
|
|
239
246
|
if (
|
|
240
247
|
parameter.get("resolved_value") is None
|
|
@@ -539,7 +546,9 @@ class CloudformationProviderV2(CloudformationProvider):
|
|
|
539
546
|
change_set.stack.template_body = change_set.template_body
|
|
540
547
|
except Exception as e:
|
|
541
548
|
LOG.error(
|
|
542
|
-
"Execute change set failed: %s",
|
|
549
|
+
"Execute change set failed: %s",
|
|
550
|
+
e,
|
|
551
|
+
exc_info=LOG.isEnabledFor(logging.DEBUG) and config.CFN_VERBOSE_ERRORS,
|
|
543
552
|
)
|
|
544
553
|
new_stack_status = StackStatus.UPDATE_FAILED
|
|
545
554
|
if change_set.change_set_type == ChangeSetType.CREATE:
|
|
@@ -645,6 +654,26 @@ class CloudformationProviderV2(CloudformationProvider):
|
|
|
645
654
|
raise ValidationError("StackName must be specified")
|
|
646
655
|
|
|
647
656
|
state = get_cloudformation_store(context.account_id, context.region)
|
|
657
|
+
|
|
658
|
+
active_stack_candidates = [
|
|
659
|
+
stack
|
|
660
|
+
for stack in state.stacks_v2.values()
|
|
661
|
+
if stack.stack_name == stack_name and stack.status not in [StackStatus.DELETE_COMPLETE]
|
|
662
|
+
]
|
|
663
|
+
|
|
664
|
+
# TODO: fix/implement this code path
|
|
665
|
+
# this needs more investigation how Cloudformation handles it (e.g. normal stack create or does it create a separate changeset?)
|
|
666
|
+
# REVIEW_IN_PROGRESS is another special status
|
|
667
|
+
# in this case existing changesets are set to obsolete and the stack is created
|
|
668
|
+
# review_stack_candidates = [s for s in stack_candidates if s.status == StackStatus.REVIEW_IN_PROGRESS]
|
|
669
|
+
# if review_stack_candidates:
|
|
670
|
+
# set changesets to obsolete
|
|
671
|
+
# for cs in review_stack_candidates[0].change_sets:
|
|
672
|
+
# cs.execution_status = ExecutionStatus.OBSOLETE
|
|
673
|
+
|
|
674
|
+
if active_stack_candidates:
|
|
675
|
+
raise AlreadyExistsException(f"Stack [{stack_name}] already exists")
|
|
676
|
+
|
|
648
677
|
# TODO: copied from create_change_set, consider unifying
|
|
649
678
|
template_body = request.get("TemplateBody")
|
|
650
679
|
# s3 or secretsmanager url
|
|
@@ -724,7 +753,9 @@ class CloudformationProviderV2(CloudformationProvider):
|
|
|
724
753
|
stack.resolved_parameters = change_set.resolved_parameters
|
|
725
754
|
except Exception as e:
|
|
726
755
|
LOG.error(
|
|
727
|
-
"Create Stack set failed: %s",
|
|
756
|
+
"Create Stack set failed: %s",
|
|
757
|
+
e,
|
|
758
|
+
exc_info=LOG.isEnabledFor(logging.WARNING) and config.CFN_VERBOSE_ERRORS,
|
|
728
759
|
)
|
|
729
760
|
stack.set_stack_status(StackStatus.CREATE_FAILED)
|
|
730
761
|
|
|
@@ -754,9 +785,7 @@ class CloudformationProviderV2(CloudformationProvider):
|
|
|
754
785
|
if stack_name:
|
|
755
786
|
stack = find_stack_v2(state, stack_name)
|
|
756
787
|
if not stack:
|
|
757
|
-
raise
|
|
758
|
-
stack_name, message_override=f"Stack with id {stack_name} does not exist"
|
|
759
|
-
)
|
|
788
|
+
raise ValidationError(f"Stack with id {stack_name} does not exist")
|
|
760
789
|
stacks = [stack]
|
|
761
790
|
else:
|
|
762
791
|
stacks = state.stacks_v2.values()
|
|
@@ -1356,7 +1385,11 @@ class CloudformationProviderV2(CloudformationProvider):
|
|
|
1356
1385
|
stack.template_body = change_set.template_body
|
|
1357
1386
|
stack.resolved_parameters = change_set.resolved_parameters
|
|
1358
1387
|
except Exception as e:
|
|
1359
|
-
LOG.error(
|
|
1388
|
+
LOG.error(
|
|
1389
|
+
"Update Stack failed: %s",
|
|
1390
|
+
e,
|
|
1391
|
+
exc_info=LOG.isEnabledFor(logging.WARNING) and config.CFN_VERBOSE_ERRORS,
|
|
1392
|
+
)
|
|
1360
1393
|
stack.set_stack_status(StackStatus.UPDATE_FAILED)
|
|
1361
1394
|
|
|
1362
1395
|
start_worker_thread(_run)
|
|
@@ -1419,7 +1452,7 @@ class CloudformationProviderV2(CloudformationProvider):
|
|
|
1419
1452
|
"Failed to delete stack '%s': %s",
|
|
1420
1453
|
stack.stack_name,
|
|
1421
1454
|
e,
|
|
1422
|
-
exc_info=LOG.isEnabledFor(logging.DEBUG),
|
|
1455
|
+
exc_info=LOG.isEnabledFor(logging.DEBUG) and config.CFN_VERBOSE_ERRORS,
|
|
1423
1456
|
)
|
|
1424
1457
|
stack.set_stack_status(StackStatus.DELETE_FAILED)
|
|
1425
1458
|
|
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.7.1.
|
|
21
|
-
__version_tuple__ = version_tuple = (4, 7, 1, '
|
|
20
|
+
__version__ = version = '4.7.1.dev28'
|
|
21
|
+
__version_tuple__ = version_tuple = (4, 7, 1, 'dev28')
|
|
@@ -4,7 +4,7 @@ localstack/deprecations.py,sha256=78Sf99fgH3ckJ20a9SMqsu01r1cm5GgcomkuY4yDMDo,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=
|
|
7
|
+
localstack/version.py,sha256=xkpL5ul3WGnuFXsU0YU5SrOcVBYeaEKiGFbkenBXfk8,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
|
|
@@ -291,7 +291,7 @@ localstack/services/cloudformation/deployment_utils.py,sha256=Owe6QgvJ0rpqPlwLlt
|
|
|
291
291
|
localstack/services/cloudformation/plugins.py,sha256=8E1i9U65RnjZJoXz214ceV8OXcnpHNU44unK3raXkWs,336
|
|
292
292
|
localstack/services/cloudformation/provider.py,sha256=U79fqNKc8X6po8Gv4fuzuhSoMq-xIhXa3Q516PBooNo,52921
|
|
293
293
|
localstack/services/cloudformation/provider_utils.py,sha256=CBHP5AkfKbgVhO_JEDkiHpvksN2Kv6szLdjBtYjXc2w,8984
|
|
294
|
-
localstack/services/cloudformation/resource_provider.py,sha256=
|
|
294
|
+
localstack/services/cloudformation/resource_provider.py,sha256=ORwN3rRow6XvxN6zZnly7FdzW75wsfEKapPx0yZM89g,23161
|
|
295
295
|
localstack/services/cloudformation/service_models.py,sha256=uo2sr2PIazsdE0-PfdoaaG9BEbKpjPP8ChCIJfX0pm8,5186
|
|
296
296
|
localstack/services/cloudformation/stores.py,sha256=fEFa93666XDJMkfQl04tYaLBZNPwhEL8v3XDrDZ1sMk,5495
|
|
297
297
|
localstack/services/cloudformation/engine/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
@@ -313,10 +313,10 @@ localstack/services/cloudformation/engine/yaml_parser.py,sha256=LQpAVq9Syze9jXUG
|
|
|
313
313
|
localstack/services/cloudformation/engine/v2/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
314
314
|
localstack/services/cloudformation/engine/v2/change_set_model.py,sha256=EErVcOi3PtMfDSTJfPpgM0LabgnkE95JyG6AM8-6a3o,58218
|
|
315
315
|
localstack/services/cloudformation/engine/v2/change_set_model_describer.py,sha256=m5L2DRkQjxU-CXEHhdMwptQuYWwXHpcDNv1kqt15cYI,10401
|
|
316
|
-
localstack/services/cloudformation/engine/v2/change_set_model_executor.py,sha256=
|
|
317
|
-
localstack/services/cloudformation/engine/v2/change_set_model_preproc.py,sha256=
|
|
316
|
+
localstack/services/cloudformation/engine/v2/change_set_model_executor.py,sha256=P26nKtTcK_bxSONY9JiS0DSYpxjQIooXQAOlbX-cTmk,25839
|
|
317
|
+
localstack/services/cloudformation/engine/v2/change_set_model_preproc.py,sha256=QnH7Ok9RMV8KlfLU9FtsWGdMdJdka_QHvmMiHOybbek,52550
|
|
318
318
|
localstack/services/cloudformation/engine/v2/change_set_model_transform.py,sha256=vynAvpnRQv7F0G0Z6g3gFmwtfdaeX71TBlZWMKctawg,13395
|
|
319
|
-
localstack/services/cloudformation/engine/v2/change_set_model_validator.py,sha256=
|
|
319
|
+
localstack/services/cloudformation/engine/v2/change_set_model_validator.py,sha256=tfFIQaY27v0PI9L2tMZfhQ47ODrMWg9czucXa6iePeE,6345
|
|
320
320
|
localstack/services/cloudformation/engine/v2/change_set_model_visitor.py,sha256=ygUVPgM3b8SAXLLhLeGSD2k_Oo81ukFkug6bcmvRSJg,7843
|
|
321
321
|
localstack/services/cloudformation/engine/v2/resolving.py,sha256=ot76GycQsw6Y9SvxB8sAlK7tRntJb5CTrKYqyEnfiHc,4002
|
|
322
322
|
localstack/services/cloudformation/models/__init__.py,sha256=da1PTClDMl-IBkrSvq6JC1lnS-K_BASzCvxVhNxN5Ls,13
|
|
@@ -337,7 +337,7 @@ localstack/services/cloudformation/scaffolding/__main__.py,sha256=K25POLQlhmM_-l
|
|
|
337
337
|
localstack/services/cloudformation/scaffolding/propgen.py,sha256=id7l43zsJsTgUyQ8F3jpfbpEoicc8GC6cB2ESEktDxc,7936
|
|
338
338
|
localstack/services/cloudformation/v2/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
339
339
|
localstack/services/cloudformation/v2/entities.py,sha256=LOqBpe-H0eKumd9HSbXwriUumrjrmw5YO2hvChbv7aQ,10944
|
|
340
|
-
localstack/services/cloudformation/v2/provider.py,sha256
|
|
340
|
+
localstack/services/cloudformation/v2/provider.py,sha256=NDhWGu8ULV8d6vtiT0ySLwT0iwD_qyBAVm54c7xQ43c,60442
|
|
341
341
|
localstack/services/cloudformation/v2/utils.py,sha256=xy4Lcp4X8XGJ0OKfnsE7pnfMcFrtIH0Chw35qwjhZuw,148
|
|
342
342
|
localstack/services/cloudwatch/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
343
343
|
localstack/services/cloudwatch/alarm_scheduler.py,sha256=ZgvNwcWn-uI51zCz2Vecchu2jhLlJr2eh9QryE34Pv0,15630
|
|
@@ -1285,13 +1285,13 @@ localstack/utils/server/tcp_proxy.py,sha256=rR6d5jR0ozDvIlpHiqW0cfyY9a2fRGdOzyA8
|
|
|
1285
1285
|
localstack/utils/xray/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
1286
1286
|
localstack/utils/xray/trace_header.py,sha256=ahXk9eonq7LpeENwlqUEPj3jDOCiVRixhntQuxNor-Q,6209
|
|
1287
1287
|
localstack/utils/xray/traceid.py,sha256=SQSsMV2rhbTNK6ceIoozZYuGU7Fg687EXcgqxoDl1Fw,1106
|
|
1288
|
-
localstack_core-4.7.1.
|
|
1289
|
-
localstack_core-4.7.1.
|
|
1290
|
-
localstack_core-4.7.1.
|
|
1291
|
-
localstack_core-4.7.1.
|
|
1292
|
-
localstack_core-4.7.1.
|
|
1293
|
-
localstack_core-4.7.1.
|
|
1294
|
-
localstack_core-4.7.1.
|
|
1295
|
-
localstack_core-4.7.1.
|
|
1296
|
-
localstack_core-4.7.1.
|
|
1297
|
-
localstack_core-4.7.1.
|
|
1288
|
+
localstack_core-4.7.1.dev28.data/scripts/localstack,sha256=WyL11vp5CkuP79iIR-L8XT7Cj8nvmxX7XRAgxhbmXNE,529
|
|
1289
|
+
localstack_core-4.7.1.dev28.data/scripts/localstack-supervisor,sha256=nm1Il2d6ASyOB6Vo4CRHd90w7TK9FdRl9VPp0NN6hUk,6378
|
|
1290
|
+
localstack_core-4.7.1.dev28.data/scripts/localstack.bat,sha256=tlzZTXtveHkMX_s_fa7VDfvdNdS8iVpEz2ER3uk9B_c,29
|
|
1291
|
+
localstack_core-4.7.1.dev28.dist-info/licenses/LICENSE.txt,sha256=3PC-9Z69UsNARuQ980gNR_JsLx8uvMjdG6C7cc4LBYs,606
|
|
1292
|
+
localstack_core-4.7.1.dev28.dist-info/METADATA,sha256=PkchUozjV4svvdcMiGEevoduHJ_GudXJwmrwhHnHT-U,5570
|
|
1293
|
+
localstack_core-4.7.1.dev28.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
|
|
1294
|
+
localstack_core-4.7.1.dev28.dist-info/entry_points.txt,sha256=-GFtw80qM_1GQIDUcyqXojJvnqvP_8lK1Vc-M9ShaJE,20668
|
|
1295
|
+
localstack_core-4.7.1.dev28.dist-info/plux.json,sha256=BXOYjZ2cVI4p5Dmkg8gY0pE1z3I-daHs6dXOslKGgcg,20891
|
|
1296
|
+
localstack_core-4.7.1.dev28.dist-info/top_level.txt,sha256=3sqmK2lGac8nCy8nwsbS5SpIY_izmtWtgaTFKHYVHbI,11
|
|
1297
|
+
localstack_core-4.7.1.dev28.dist-info/RECORD,,
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"localstack.cloudformation.resource_providers": ["AWS::CloudFormation::WaitCondition=localstack.services.cloudformation.resource_providers.aws_cloudformation_waitcondition_plugin:CloudFormationWaitConditionProviderPlugin", "AWS::ApiGateway::Account=localstack.services.apigateway.resource_providers.aws_apigateway_account_plugin:ApiGatewayAccountProviderPlugin", "AWS::SNS::Topic=localstack.services.sns.resource_providers.aws_sns_topic_plugin:SNSTopicProviderPlugin", "AWS::Route53::HealthCheck=localstack.services.route53.resource_providers.aws_route53_healthcheck_plugin:Route53HealthCheckProviderPlugin", "AWS::Logs::SubscriptionFilter=localstack.services.logs.resource_providers.aws_logs_subscriptionfilter_plugin:LogsSubscriptionFilterProviderPlugin", "AWS::EC2::InternetGateway=localstack.services.ec2.resource_providers.aws_ec2_internetgateway_plugin:EC2InternetGatewayProviderPlugin", "AWS::EC2::NatGateway=localstack.services.ec2.resource_providers.aws_ec2_natgateway_plugin:EC2NatGatewayProviderPlugin", "AWS::CloudFormation::Stack=localstack.services.cloudformation.resource_providers.aws_cloudformation_stack_plugin:CloudFormationStackProviderPlugin", "AWS::ApiGateway::GatewayResponse=localstack.services.apigateway.resource_providers.aws_apigateway_gatewayresponse_plugin:ApiGatewayGatewayResponseProviderPlugin", "AWS::CloudWatch::CompositeAlarm=localstack.services.cloudwatch.resource_providers.aws_cloudwatch_compositealarm_plugin:CloudWatchCompositeAlarmProviderPlugin", "AWS::Events::EventBus=localstack.services.events.resource_providers.aws_events_eventbus_plugin:EventsEventBusProviderPlugin", "AWS::KinesisFirehose::DeliveryStream=localstack.services.kinesisfirehose.resource_providers.aws_kinesisfirehose_deliverystream_plugin:KinesisFirehoseDeliveryStreamProviderPlugin", "AWS::ApiGateway::BasePathMapping=localstack.services.apigateway.resource_providers.aws_apigateway_basepathmapping_plugin:ApiGatewayBasePathMappingProviderPlugin", "AWS::DynamoDB::GlobalTable=localstack.services.dynamodb.resource_providers.aws_dynamodb_globaltable_plugin:DynamoDBGlobalTableProviderPlugin", "AWS::Route53::RecordSet=localstack.services.route53.resource_providers.aws_route53_recordset_plugin:Route53RecordSetProviderPlugin", "AWS::IAM::ServerCertificate=localstack.services.iam.resource_providers.aws_iam_servercertificate_plugin:IAMServerCertificateProviderPlugin", "AWS::ApiGateway::Model=localstack.services.apigateway.resource_providers.aws_apigateway_model_plugin:ApiGatewayModelProviderPlugin", "AWS::IAM::Group=localstack.services.iam.resource_providers.aws_iam_group_plugin:IAMGroupProviderPlugin", "AWS::SQS::Queue=localstack.services.sqs.resource_providers.aws_sqs_queue_plugin:SQSQueueProviderPlugin", "AWS::EC2::VPCGatewayAttachment=localstack.services.ec2.resource_providers.aws_ec2_vpcgatewayattachment_plugin:EC2VPCGatewayAttachmentProviderPlugin", "AWS::KMS::Key=localstack.services.kms.resource_providers.aws_kms_key_plugin:KMSKeyProviderPlugin", "AWS::ECR::Repository=localstack.services.ecr.resource_providers.aws_ecr_repository_plugin:ECRRepositoryProviderPlugin", "AWS::Lambda::EventSourceMapping=localstack.services.lambda_.resource_providers.aws_lambda_eventsourcemapping_plugin:LambdaEventSourceMappingProviderPlugin", "AWS::ApiGateway::Stage=localstack.services.apigateway.resource_providers.aws_apigateway_stage_plugin:ApiGatewayStageProviderPlugin", "AWS::Scheduler::Schedule=localstack.services.scheduler.resource_providers.aws_scheduler_schedule_plugin:SchedulerScheduleProviderPlugin", "AWS::IAM::ServiceLinkedRole=localstack.services.iam.resource_providers.aws_iam_servicelinkedrole_plugin:IAMServiceLinkedRoleProviderPlugin", "AWS::Kinesis::Stream=localstack.services.kinesis.resource_providers.aws_kinesis_stream_plugin:KinesisStreamProviderPlugin", "AWS::IAM::InstanceProfile=localstack.services.iam.resource_providers.aws_iam_instanceprofile_plugin:IAMInstanceProfileProviderPlugin", "AWS::Lambda::Permission=localstack.services.lambda_.resource_providers.aws_lambda_permission_plugin:LambdaPermissionProviderPlugin", "AWS::Lambda::Url=localstack.services.lambda_.resource_providers.aws_lambda_url_plugin:LambdaUrlProviderPlugin", "AWS::ResourceGroups::Group=localstack.services.resource_groups.resource_providers.aws_resourcegroups_group_plugin:ResourceGroupsGroupProviderPlugin", "AWS::ApiGateway::Method=localstack.services.apigateway.resource_providers.aws_apigateway_method_plugin:ApiGatewayMethodProviderPlugin", "AWS::Scheduler::ScheduleGroup=localstack.services.scheduler.resource_providers.aws_scheduler_schedulegroup_plugin:SchedulerScheduleGroupProviderPlugin", "AWS::EC2::Subnet=localstack.services.ec2.resource_providers.aws_ec2_subnet_plugin:EC2SubnetProviderPlugin", "AWS::EC2::TransitGatewayAttachment=localstack.services.ec2.resource_providers.aws_ec2_transitgatewayattachment_plugin:EC2TransitGatewayAttachmentProviderPlugin", "AWS::OpenSearchService::Domain=localstack.services.opensearch.resource_providers.aws_opensearchservice_domain_plugin:OpenSearchServiceDomainProviderPlugin", "AWS::SSM::MaintenanceWindowTask=localstack.services.ssm.resource_providers.aws_ssm_maintenancewindowtask_plugin:SSMMaintenanceWindowTaskProviderPlugin", "AWS::SSM::MaintenanceWindowTarget=localstack.services.ssm.resource_providers.aws_ssm_maintenancewindowtarget_plugin:SSMMaintenanceWindowTargetProviderPlugin", "AWS::S3::BucketPolicy=localstack.services.s3.resource_providers.aws_s3_bucketpolicy_plugin:S3BucketPolicyProviderPlugin", "AWS::ApiGateway::DomainName=localstack.services.apigateway.resource_providers.aws_apigateway_domainname_plugin:ApiGatewayDomainNameProviderPlugin", "AWS::IAM::AccessKey=localstack.services.iam.resource_providers.aws_iam_accesskey_plugin:IAMAccessKeyProviderPlugin", "AWS::CDK::Metadata=localstack.services.cdk.resource_providers.cdk_metadata_plugin:LambdaAliasProviderPlugin", "AWS::Events::ApiDestination=localstack.services.events.resource_providers.aws_events_apidestination_plugin:EventsApiDestinationProviderPlugin", "AWS::Events::EventBusPolicy=localstack.services.events.resource_providers.aws_events_eventbuspolicy_plugin:EventsEventBusPolicyProviderPlugin", "AWS::EC2::RouteTable=localstack.services.ec2.resource_providers.aws_ec2_routetable_plugin:EC2RouteTableProviderPlugin", "AWS::StepFunctions::StateMachine=localstack.services.stepfunctions.resource_providers.aws_stepfunctions_statemachine_plugin:StepFunctionsStateMachineProviderPlugin", "AWS::ApiGateway::RequestValidator=localstack.services.apigateway.resource_providers.aws_apigateway_requestvalidator_plugin:ApiGatewayRequestValidatorProviderPlugin", "AWS::EC2::TransitGateway=localstack.services.ec2.resource_providers.aws_ec2_transitgateway_plugin:EC2TransitGatewayProviderPlugin", "AWS::EC2::PrefixList=localstack.services.ec2.resource_providers.aws_ec2_prefixlist_plugin:EC2PrefixListProviderPlugin", "AWS::ApiGateway::RestApi=localstack.services.apigateway.resource_providers.aws_apigateway_restapi_plugin:ApiGatewayRestApiProviderPlugin", "AWS::EC2::DHCPOptions=localstack.services.ec2.resource_providers.aws_ec2_dhcpoptions_plugin:EC2DHCPOptionsProviderPlugin", "AWS::DynamoDB::Table=localstack.services.dynamodb.resource_providers.aws_dynamodb_table_plugin:DynamoDBTableProviderPlugin", "AWS::Lambda::LayerVersion=localstack.services.lambda_.resource_providers.aws_lambda_layerversion_plugin:LambdaLayerVersionProviderPlugin", "AWS::Events::Connection=localstack.services.events.resource_providers.aws_events_connection_plugin:EventsConnectionProviderPlugin", "AWS::ApiGateway::Deployment=localstack.services.apigateway.resource_providers.aws_apigateway_deployment_plugin:ApiGatewayDeploymentProviderPlugin", "AWS::IAM::User=localstack.services.iam.resource_providers.aws_iam_user_plugin:IAMUserProviderPlugin", "AWS::CertificateManager::Certificate=localstack.services.certificatemanager.resource_providers.aws_certificatemanager_certificate_plugin:CertificateManagerCertificateProviderPlugin", "AWS::ApiGateway::UsagePlanKey=localstack.services.apigateway.resource_providers.aws_apigateway_usageplankey_plugin:ApiGatewayUsagePlanKeyProviderPlugin", "AWS::Elasticsearch::Domain=localstack.services.opensearch.resource_providers.aws_elasticsearch_domain_plugin:ElasticsearchDomainProviderPlugin", "AWS::EC2::VPCEndpoint=localstack.services.ec2.resource_providers.aws_ec2_vpcendpoint_plugin:EC2VPCEndpointProviderPlugin", "AWS::Lambda::Version=localstack.services.lambda_.resource_providers.aws_lambda_version_plugin:LambdaVersionProviderPlugin", "AWS::SNS::Subscription=localstack.services.sns.resource_providers.aws_sns_subscription_plugin:SNSSubscriptionProviderPlugin", "AWS::Kinesis::StreamConsumer=localstack.services.kinesis.resource_providers.aws_kinesis_streamconsumer_plugin:KinesisStreamConsumerProviderPlugin", "AWS::SES::EmailIdentity=localstack.services.ses.resource_providers.aws_ses_emailidentity_plugin:SESEmailIdentityProviderPlugin", "AWS::S3::Bucket=localstack.services.s3.resource_providers.aws_s3_bucket_plugin:S3BucketProviderPlugin", "AWS::EC2::VPC=localstack.services.ec2.resource_providers.aws_ec2_vpc_plugin:EC2VPCProviderPlugin", "AWS::SecretsManager::ResourcePolicy=localstack.services.secretsmanager.resource_providers.aws_secretsmanager_resourcepolicy_plugin:SecretsManagerResourcePolicyProviderPlugin", "AWS::Logs::LogGroup=localstack.services.logs.resource_providers.aws_logs_loggroup_plugin:LogsLogGroupProviderPlugin", "AWS::Lambda::Function=localstack.services.lambda_.resource_providers.aws_lambda_function_plugin:LambdaFunctionProviderPlugin", "AWS::IAM::Role=localstack.services.iam.resource_providers.aws_iam_role_plugin:IAMRoleProviderPlugin", "AWS::IAM::ManagedPolicy=localstack.services.iam.resource_providers.aws_iam_managedpolicy_plugin:IAMManagedPolicyProviderPlugin", "AWS::CloudFormation::Macro=localstack.services.cloudformation.resource_providers.aws_cloudformation_macro_plugin:CloudFormationMacroProviderPlugin", "AWS::StepFunctions::Activity=localstack.services.stepfunctions.resource_providers.aws_stepfunctions_activity_plugin:StepFunctionsActivityProviderPlugin", "AWS::SSM::MaintenanceWindow=localstack.services.ssm.resource_providers.aws_ssm_maintenancewindow_plugin:SSMMaintenanceWindowProviderPlugin", "AWS::CloudFormation::WaitConditionHandle=localstack.services.cloudformation.resource_providers.aws_cloudformation_waitconditionhandle_plugin:CloudFormationWaitConditionHandleProviderPlugin", "AWS::Lambda::Alias=localstack.services.lambda_.resource_providers.lambda_alias_plugin:LambdaAliasProviderPlugin", "AWS::SSM::Parameter=localstack.services.ssm.resource_providers.aws_ssm_parameter_plugin:SSMParameterProviderPlugin", "AWS::Events::Rule=localstack.services.events.resource_providers.aws_events_rule_plugin:EventsRuleProviderPlugin", "AWS::Lambda::EventInvokeConfig=localstack.services.lambda_.resource_providers.aws_lambda_eventinvokeconfig_plugin:LambdaEventInvokeConfigProviderPlugin", "AWS::SNS::TopicPolicy=localstack.services.sns.resource_providers.aws_sns_topicpolicy_plugin:SNSTopicPolicyProviderPlugin", "AWS::Lambda::CodeSigningConfig=localstack.services.lambda_.resource_providers.aws_lambda_codesigningconfig_plugin:LambdaCodeSigningConfigProviderPlugin", "AWS::Redshift::Cluster=localstack.services.redshift.resource_providers.aws_redshift_cluster_plugin:RedshiftClusterProviderPlugin", "AWS::Lambda::LayerVersionPermission=localstack.services.lambda_.resource_providers.aws_lambda_layerversionpermission_plugin:LambdaLayerVersionPermissionProviderPlugin", "AWS::ApiGateway::Resource=localstack.services.apigateway.resource_providers.aws_apigateway_resource_plugin:ApiGatewayResourceProviderPlugin", "AWS::CloudWatch::Alarm=localstack.services.cloudwatch.resource_providers.aws_cloudwatch_alarm_plugin:CloudWatchAlarmProviderPlugin", "AWS::SSM::PatchBaseline=localstack.services.ssm.resource_providers.aws_ssm_patchbaseline_plugin:SSMPatchBaselineProviderPlugin", "AWS::IAM::Policy=localstack.services.iam.resource_providers.aws_iam_policy_plugin:IAMPolicyProviderPlugin", "AWS::EC2::NetworkAcl=localstack.services.ec2.resource_providers.aws_ec2_networkacl_plugin:EC2NetworkAclProviderPlugin", "AWS::EC2::SubnetRouteTableAssociation=localstack.services.ec2.resource_providers.aws_ec2_subnetroutetableassociation_plugin:EC2SubnetRouteTableAssociationProviderPlugin", "AWS::SecretsManager::RotationSchedule=localstack.services.secretsmanager.resource_providers.aws_secretsmanager_rotationschedule_plugin:SecretsManagerRotationScheduleProviderPlugin", "AWS::EC2::SecurityGroup=localstack.services.ec2.resource_providers.aws_ec2_securitygroup_plugin:EC2SecurityGroupProviderPlugin", "AWS::EC2::Route=localstack.services.ec2.resource_providers.aws_ec2_route_plugin:EC2RouteProviderPlugin", "AWS::SecretsManager::Secret=localstack.services.secretsmanager.resource_providers.aws_secretsmanager_secret_plugin:SecretsManagerSecretProviderPlugin", "AWS::KMS::Alias=localstack.services.kms.resource_providers.aws_kms_alias_plugin:KMSAliasProviderPlugin", "AWS::SecretsManager::SecretTargetAttachment=localstack.services.secretsmanager.resource_providers.aws_secretsmanager_secrettargetattachment_plugin:SecretsManagerSecretTargetAttachmentProviderPlugin", "AWS::EC2::KeyPair=localstack.services.ec2.resource_providers.aws_ec2_keypair_plugin:EC2KeyPairProviderPlugin", "AWS::Logs::LogStream=localstack.services.logs.resource_providers.aws_logs_logstream_plugin:LogsLogStreamProviderPlugin", "AWS::ApiGateway::ApiKey=localstack.services.apigateway.resource_providers.aws_apigateway_apikey_plugin:ApiGatewayApiKeyProviderPlugin", "AWS::ApiGateway::UsagePlan=localstack.services.apigateway.resource_providers.aws_apigateway_usageplan_plugin:ApiGatewayUsagePlanProviderPlugin", "AWS::SQS::QueuePolicy=localstack.services.sqs.resource_providers.aws_sqs_queuepolicy_plugin:SQSQueuePolicyProviderPlugin", "AWS::EC2::Instance=localstack.services.ec2.resource_providers.aws_ec2_instance_plugin:EC2InstanceProviderPlugin"], "localstack.hooks.on_infra_start": ["init_response_mutation_handler=localstack.aws.handlers.response:init_response_mutation_handler", "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", "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", "conditionally_enable_debugger=localstack.dev.debugger.plugins:conditionally_enable_debugger", "register_swagger_endpoints=localstack.http.resources.swagger.plugins:register_swagger_endpoints", "_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", "eager_load_services=localstack.services.plugins:eager_load_services", "_run_init_scripts_on_start=localstack.runtime.init:_run_init_scripts_on_start", "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", "register_custom_endpoints=localstack.services.lambda_.plugins:register_custom_endpoints", "validate_configuration=localstack.services.lambda_.plugins:validate_configuration"], "localstack.packages": ["kinesis-mock/community=localstack.services.kinesis.plugins:kinesismock_package", "opensearch/community=localstack.services.opensearch.plugins:opensearch_package", "jpype-jsonata/community=localstack.services.stepfunctions.plugins:jpype_jsonata_package", "vosk/community=localstack.services.transcribe.plugins:vosk_package", "elasticsearch/community=localstack.services.es.plugins:elasticsearch_package", "dynamodb-local/community=localstack.services.dynamodb.plugins:dynamodb_local_package", "ffmpeg/community=localstack.packages.plugins:ffmpeg_package", "java/community=localstack.packages.plugins:java_package", "terraform/community=localstack.packages.plugins:terraform_package", "lambda-java-libs/community=localstack.services.lambda_.plugins:lambda_java_libs", "lambda-runtime/community=localstack.services.lambda_.plugins:lambda_runtime_package"], "localstack.openapi.spec": ["localstack=localstack.plugins:CoreOASPlugin"], "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.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", "publish_metrics=localstack.utils.analytics.metrics.publisher:publish_metrics", "_run_init_scripts_on_shutdown=localstack.runtime.init:_run_init_scripts_on_shutdown", "stop_server=localstack.dns.plugins:stop_server", "remove_custom_endpoints=localstack.services.lambda_.plugins:remove_custom_endpoints"], "localstack.lambda.runtime_executor": ["docker=localstack.services.lambda_.invocation.plugins:DockerRuntimeExecutorPlugin"], "localstack.runtime.server": ["hypercorn=localstack.runtime.server.plugins:HypercornRuntimeServerPlugin", "twisted=localstack.runtime.server.plugins:TwistedRuntimeServerPlugin"], "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.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.runtime.components": ["aws=localstack.aws.components:AwsComponents"]}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"localstack.cloudformation.resource_providers": ["AWS::SNS::Subscription=localstack.services.sns.resource_providers.aws_sns_subscription_plugin:SNSSubscriptionProviderPlugin", "AWS::Logs::LogStream=localstack.services.logs.resource_providers.aws_logs_logstream_plugin:LogsLogStreamProviderPlugin", "AWS::Lambda::EventInvokeConfig=localstack.services.lambda_.resource_providers.aws_lambda_eventinvokeconfig_plugin:LambdaEventInvokeConfigProviderPlugin", "AWS::Lambda::CodeSigningConfig=localstack.services.lambda_.resource_providers.aws_lambda_codesigningconfig_plugin:LambdaCodeSigningConfigProviderPlugin", "AWS::Events::EventBus=localstack.services.events.resource_providers.aws_events_eventbus_plugin:EventsEventBusProviderPlugin", "AWS::SSM::MaintenanceWindow=localstack.services.ssm.resource_providers.aws_ssm_maintenancewindow_plugin:SSMMaintenanceWindowProviderPlugin", "AWS::IAM::Group=localstack.services.iam.resource_providers.aws_iam_group_plugin:IAMGroupProviderPlugin", "AWS::EC2::Instance=localstack.services.ec2.resource_providers.aws_ec2_instance_plugin:EC2InstanceProviderPlugin", "AWS::ApiGateway::Resource=localstack.services.apigateway.resource_providers.aws_apigateway_resource_plugin:ApiGatewayResourceProviderPlugin", "AWS::OpenSearchService::Domain=localstack.services.opensearch.resource_providers.aws_opensearchservice_domain_plugin:OpenSearchServiceDomainProviderPlugin", "AWS::DynamoDB::GlobalTable=localstack.services.dynamodb.resource_providers.aws_dynamodb_globaltable_plugin:DynamoDBGlobalTableProviderPlugin", "AWS::S3::Bucket=localstack.services.s3.resource_providers.aws_s3_bucket_plugin:S3BucketProviderPlugin", "AWS::EC2::InternetGateway=localstack.services.ec2.resource_providers.aws_ec2_internetgateway_plugin:EC2InternetGatewayProviderPlugin", "AWS::Lambda::Url=localstack.services.lambda_.resource_providers.aws_lambda_url_plugin:LambdaUrlProviderPlugin", "AWS::EC2::PrefixList=localstack.services.ec2.resource_providers.aws_ec2_prefixlist_plugin:EC2PrefixListProviderPlugin", "AWS::EC2::RouteTable=localstack.services.ec2.resource_providers.aws_ec2_routetable_plugin:EC2RouteTableProviderPlugin", "AWS::ApiGateway::BasePathMapping=localstack.services.apigateway.resource_providers.aws_apigateway_basepathmapping_plugin:ApiGatewayBasePathMappingProviderPlugin", "AWS::EC2::NatGateway=localstack.services.ec2.resource_providers.aws_ec2_natgateway_plugin:EC2NatGatewayProviderPlugin", "AWS::CertificateManager::Certificate=localstack.services.certificatemanager.resource_providers.aws_certificatemanager_certificate_plugin:CertificateManagerCertificateProviderPlugin", "AWS::Lambda::LayerVersion=localstack.services.lambda_.resource_providers.aws_lambda_layerversion_plugin:LambdaLayerVersionProviderPlugin", "AWS::CloudFormation::Macro=localstack.services.cloudformation.resource_providers.aws_cloudformation_macro_plugin:CloudFormationMacroProviderPlugin", "AWS::ApiGateway::DomainName=localstack.services.apigateway.resource_providers.aws_apigateway_domainname_plugin:ApiGatewayDomainNameProviderPlugin", "AWS::SecretsManager::RotationSchedule=localstack.services.secretsmanager.resource_providers.aws_secretsmanager_rotationschedule_plugin:SecretsManagerRotationScheduleProviderPlugin", "AWS::CloudWatch::CompositeAlarm=localstack.services.cloudwatch.resource_providers.aws_cloudwatch_compositealarm_plugin:CloudWatchCompositeAlarmProviderPlugin", "AWS::EC2::SubnetRouteTableAssociation=localstack.services.ec2.resource_providers.aws_ec2_subnetroutetableassociation_plugin:EC2SubnetRouteTableAssociationProviderPlugin", "AWS::Lambda::Function=localstack.services.lambda_.resource_providers.aws_lambda_function_plugin:LambdaFunctionProviderPlugin", "AWS::CloudWatch::Alarm=localstack.services.cloudwatch.resource_providers.aws_cloudwatch_alarm_plugin:CloudWatchAlarmProviderPlugin", "AWS::IAM::AccessKey=localstack.services.iam.resource_providers.aws_iam_accesskey_plugin:IAMAccessKeyProviderPlugin", "AWS::IAM::Role=localstack.services.iam.resource_providers.aws_iam_role_plugin:IAMRoleProviderPlugin", "AWS::Scheduler::Schedule=localstack.services.scheduler.resource_providers.aws_scheduler_schedule_plugin:SchedulerScheduleProviderPlugin", "AWS::ApiGateway::UsagePlan=localstack.services.apigateway.resource_providers.aws_apigateway_usageplan_plugin:ApiGatewayUsagePlanProviderPlugin", "AWS::S3::BucketPolicy=localstack.services.s3.resource_providers.aws_s3_bucketpolicy_plugin:S3BucketPolicyProviderPlugin", "AWS::IAM::Policy=localstack.services.iam.resource_providers.aws_iam_policy_plugin:IAMPolicyProviderPlugin", "AWS::Events::Connection=localstack.services.events.resource_providers.aws_events_connection_plugin:EventsConnectionProviderPlugin", "AWS::SecretsManager::ResourcePolicy=localstack.services.secretsmanager.resource_providers.aws_secretsmanager_resourcepolicy_plugin:SecretsManagerResourcePolicyProviderPlugin", "AWS::Kinesis::StreamConsumer=localstack.services.kinesis.resource_providers.aws_kinesis_streamconsumer_plugin:KinesisStreamConsumerProviderPlugin", "AWS::DynamoDB::Table=localstack.services.dynamodb.resource_providers.aws_dynamodb_table_plugin:DynamoDBTableProviderPlugin", "AWS::Events::EventBusPolicy=localstack.services.events.resource_providers.aws_events_eventbuspolicy_plugin:EventsEventBusPolicyProviderPlugin", "AWS::SecretsManager::SecretTargetAttachment=localstack.services.secretsmanager.resource_providers.aws_secretsmanager_secrettargetattachment_plugin:SecretsManagerSecretTargetAttachmentProviderPlugin", "AWS::EC2::TransitGatewayAttachment=localstack.services.ec2.resource_providers.aws_ec2_transitgatewayattachment_plugin:EC2TransitGatewayAttachmentProviderPlugin", "AWS::CloudFormation::WaitCondition=localstack.services.cloudformation.resource_providers.aws_cloudformation_waitcondition_plugin:CloudFormationWaitConditionProviderPlugin", "AWS::EC2::VPCEndpoint=localstack.services.ec2.resource_providers.aws_ec2_vpcendpoint_plugin:EC2VPCEndpointProviderPlugin", "AWS::StepFunctions::Activity=localstack.services.stepfunctions.resource_providers.aws_stepfunctions_activity_plugin:StepFunctionsActivityProviderPlugin", "AWS::ApiGateway::Account=localstack.services.apigateway.resource_providers.aws_apigateway_account_plugin:ApiGatewayAccountProviderPlugin", "AWS::SNS::Topic=localstack.services.sns.resource_providers.aws_sns_topic_plugin:SNSTopicProviderPlugin", "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::Route53::RecordSet=localstack.services.route53.resource_providers.aws_route53_recordset_plugin:Route53RecordSetProviderPlugin", "AWS::EC2::VPCGatewayAttachment=localstack.services.ec2.resource_providers.aws_ec2_vpcgatewayattachment_plugin:EC2VPCGatewayAttachmentProviderPlugin", "AWS::ApiGateway::Deployment=localstack.services.apigateway.resource_providers.aws_apigateway_deployment_plugin:ApiGatewayDeploymentProviderPlugin", "AWS::Scheduler::ScheduleGroup=localstack.services.scheduler.resource_providers.aws_scheduler_schedulegroup_plugin:SchedulerScheduleGroupProviderPlugin", "AWS::SES::EmailIdentity=localstack.services.ses.resource_providers.aws_ses_emailidentity_plugin:SESEmailIdentityProviderPlugin", "AWS::CloudFormation::Stack=localstack.services.cloudformation.resource_providers.aws_cloudformation_stack_plugin:CloudFormationStackProviderPlugin", "AWS::ApiGateway::ApiKey=localstack.services.apigateway.resource_providers.aws_apigateway_apikey_plugin:ApiGatewayApiKeyProviderPlugin", "AWS::KMS::Key=localstack.services.kms.resource_providers.aws_kms_key_plugin:KMSKeyProviderPlugin", "AWS::EC2::Subnet=localstack.services.ec2.resource_providers.aws_ec2_subnet_plugin:EC2SubnetProviderPlugin", "AWS::SSM::PatchBaseline=localstack.services.ssm.resource_providers.aws_ssm_patchbaseline_plugin:SSMPatchBaselineProviderPlugin", "AWS::IAM::ServerCertificate=localstack.services.iam.resource_providers.aws_iam_servercertificate_plugin:IAMServerCertificateProviderPlugin", "AWS::ApiGateway::Stage=localstack.services.apigateway.resource_providers.aws_apigateway_stage_plugin:ApiGatewayStageProviderPlugin", "AWS::EC2::TransitGateway=localstack.services.ec2.resource_providers.aws_ec2_transitgateway_plugin:EC2TransitGatewayProviderPlugin", "AWS::KMS::Alias=localstack.services.kms.resource_providers.aws_kms_alias_plugin:KMSAliasProviderPlugin", "AWS::EC2::NetworkAcl=localstack.services.ec2.resource_providers.aws_ec2_networkacl_plugin:EC2NetworkAclProviderPlugin", "AWS::Events::Rule=localstack.services.events.resource_providers.aws_events_rule_plugin:EventsRuleProviderPlugin", "AWS::Lambda::LayerVersionPermission=localstack.services.lambda_.resource_providers.aws_lambda_layerversionpermission_plugin:LambdaLayerVersionPermissionProviderPlugin", "AWS::IAM::ManagedPolicy=localstack.services.iam.resource_providers.aws_iam_managedpolicy_plugin:IAMManagedPolicyProviderPlugin", "AWS::CloudFormation::WaitConditionHandle=localstack.services.cloudformation.resource_providers.aws_cloudformation_waitconditionhandle_plugin:CloudFormationWaitConditionHandleProviderPlugin", "AWS::SQS::QueuePolicy=localstack.services.sqs.resource_providers.aws_sqs_queuepolicy_plugin:SQSQueuePolicyProviderPlugin", "AWS::EC2::VPC=localstack.services.ec2.resource_providers.aws_ec2_vpc_plugin:EC2VPCProviderPlugin", "AWS::SSM::MaintenanceWindowTarget=localstack.services.ssm.resource_providers.aws_ssm_maintenancewindowtarget_plugin:SSMMaintenanceWindowTargetProviderPlugin", "AWS::SNS::TopicPolicy=localstack.services.sns.resource_providers.aws_sns_topicpolicy_plugin:SNSTopicPolicyProviderPlugin", "AWS::EC2::KeyPair=localstack.services.ec2.resource_providers.aws_ec2_keypair_plugin:EC2KeyPairProviderPlugin", "AWS::ApiGateway::GatewayResponse=localstack.services.apigateway.resource_providers.aws_apigateway_gatewayresponse_plugin:ApiGatewayGatewayResponseProviderPlugin", "AWS::Lambda::EventSourceMapping=localstack.services.lambda_.resource_providers.aws_lambda_eventsourcemapping_plugin:LambdaEventSourceMappingProviderPlugin", "AWS::Redshift::Cluster=localstack.services.redshift.resource_providers.aws_redshift_cluster_plugin:RedshiftClusterProviderPlugin", "AWS::Route53::HealthCheck=localstack.services.route53.resource_providers.aws_route53_healthcheck_plugin:Route53HealthCheckProviderPlugin", "AWS::KinesisFirehose::DeliveryStream=localstack.services.kinesisfirehose.resource_providers.aws_kinesisfirehose_deliverystream_plugin:KinesisFirehoseDeliveryStreamProviderPlugin", "AWS::Lambda::Permission=localstack.services.lambda_.resource_providers.aws_lambda_permission_plugin:LambdaPermissionProviderPlugin", "AWS::SSM::MaintenanceWindowTask=localstack.services.ssm.resource_providers.aws_ssm_maintenancewindowtask_plugin:SSMMaintenanceWindowTaskProviderPlugin", "AWS::EC2::DHCPOptions=localstack.services.ec2.resource_providers.aws_ec2_dhcpoptions_plugin:EC2DHCPOptionsProviderPlugin", "AWS::ApiGateway::Model=localstack.services.apigateway.resource_providers.aws_apigateway_model_plugin:ApiGatewayModelProviderPlugin", "AWS::IAM::InstanceProfile=localstack.services.iam.resource_providers.aws_iam_instanceprofile_plugin:IAMInstanceProfileProviderPlugin", "AWS::Logs::SubscriptionFilter=localstack.services.logs.resource_providers.aws_logs_subscriptionfilter_plugin:LogsSubscriptionFilterProviderPlugin", "AWS::SQS::Queue=localstack.services.sqs.resource_providers.aws_sqs_queue_plugin:SQSQueueProviderPlugin", "AWS::SecretsManager::Secret=localstack.services.secretsmanager.resource_providers.aws_secretsmanager_secret_plugin:SecretsManagerSecretProviderPlugin", "AWS::ApiGateway::UsagePlanKey=localstack.services.apigateway.resource_providers.aws_apigateway_usageplankey_plugin:ApiGatewayUsagePlanKeyProviderPlugin", "AWS::ApiGateway::RestApi=localstack.services.apigateway.resource_providers.aws_apigateway_restapi_plugin:ApiGatewayRestApiProviderPlugin", "AWS::Elasticsearch::Domain=localstack.services.opensearch.resource_providers.aws_elasticsearch_domain_plugin:ElasticsearchDomainProviderPlugin", "AWS::Kinesis::Stream=localstack.services.kinesis.resource_providers.aws_kinesis_stream_plugin:KinesisStreamProviderPlugin", "AWS::ECR::Repository=localstack.services.ecr.resource_providers.aws_ecr_repository_plugin:ECRRepositoryProviderPlugin", "AWS::StepFunctions::StateMachine=localstack.services.stepfunctions.resource_providers.aws_stepfunctions_statemachine_plugin:StepFunctionsStateMachineProviderPlugin", "AWS::Lambda::Alias=localstack.services.lambda_.resource_providers.lambda_alias_plugin:LambdaAliasProviderPlugin", "AWS::Lambda::Version=localstack.services.lambda_.resource_providers.aws_lambda_version_plugin:LambdaVersionProviderPlugin", "AWS::Events::ApiDestination=localstack.services.events.resource_providers.aws_events_apidestination_plugin:EventsApiDestinationProviderPlugin", "AWS::ApiGateway::Method=localstack.services.apigateway.resource_providers.aws_apigateway_method_plugin:ApiGatewayMethodProviderPlugin", "AWS::CDK::Metadata=localstack.services.cdk.resource_providers.cdk_metadata_plugin:LambdaAliasProviderPlugin", "AWS::EC2::SecurityGroup=localstack.services.ec2.resource_providers.aws_ec2_securitygroup_plugin:EC2SecurityGroupProviderPlugin", "AWS::SSM::Parameter=localstack.services.ssm.resource_providers.aws_ssm_parameter_plugin:SSMParameterProviderPlugin", "AWS::EC2::Route=localstack.services.ec2.resource_providers.aws_ec2_route_plugin:EC2RouteProviderPlugin", "AWS::Logs::LogGroup=localstack.services.logs.resource_providers.aws_logs_loggroup_plugin:LogsLogGroupProviderPlugin", "AWS::IAM::ServiceLinkedRole=localstack.services.iam.resource_providers.aws_iam_servicelinkedrole_plugin:IAMServiceLinkedRoleProviderPlugin", "AWS::ResourceGroups::Group=localstack.services.resource_groups.resource_providers.aws_resourcegroups_group_plugin:ResourceGroupsGroupProviderPlugin"], "localstack.hooks.on_infra_start": ["register_cloudformation_deploy_ui=localstack.services.cloudformation.plugins:register_cloudformation_deploy_ui", "apply_aws_runtime_patches=localstack.aws.patches:apply_aws_runtime_patches", "init_response_mutation_handler=localstack.aws.handlers.response:init_response_mutation_handler", "_run_init_scripts_on_start=localstack.runtime.init:_run_init_scripts_on_start", "delete_cached_certificate=localstack.plugins:delete_cached_certificate", "deprecation_warnings=localstack.plugins:deprecation_warnings", "eager_load_services=localstack.services.plugins:eager_load_services", "register_swagger_endpoints=localstack.http.resources.swagger.plugins:register_swagger_endpoints", "register_custom_endpoints=localstack.services.lambda_.plugins:register_custom_endpoints", "validate_configuration=localstack.services.lambda_.plugins:validate_configuration", "conditionally_enable_debugger=localstack.dev.debugger.plugins:conditionally_enable_debugger", "_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", "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", "setup_dns_configuration_on_host=localstack.dns.plugins:setup_dns_configuration_on_host", "start_dns_server=localstack.dns.plugins:start_dns_server"], "localstack.packages": ["ffmpeg/community=localstack.packages.plugins:ffmpeg_package", "java/community=localstack.packages.plugins:java_package", "terraform/community=localstack.packages.plugins:terraform_package", "opensearch/community=localstack.services.opensearch.plugins:opensearch_package", "dynamodb-local/community=localstack.services.dynamodb.plugins:dynamodb_local_package", "lambda-java-libs/community=localstack.services.lambda_.plugins:lambda_java_libs", "lambda-runtime/community=localstack.services.lambda_.plugins:lambda_runtime_package", "vosk/community=localstack.services.transcribe.plugins:vosk_package", "jpype-jsonata/community=localstack.services.stepfunctions.plugins:jpype_jsonata_package", "elasticsearch/community=localstack.services.es.plugins:elasticsearch_package", "kinesis-mock/community=localstack.services.kinesis.plugins:kinesismock_package"], "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.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.hooks.on_infra_shutdown": ["_run_init_scripts_on_shutdown=localstack.runtime.init:_run_init_scripts_on_shutdown", "publish_metrics=localstack.utils.analytics.metrics.publisher:publish_metrics", "remove_custom_endpoints=localstack.services.lambda_.plugins:remove_custom_endpoints", "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", "stop_server=localstack.dns.plugins:stop_server"], "localstack.openapi.spec": ["localstack=localstack.plugins:CoreOASPlugin"], "localstack.runtime.components": ["aws=localstack.aws.components:AwsComponents"], "localstack.runtime.server": ["hypercorn=localstack.runtime.server.plugins:HypercornRuntimeServerPlugin", "twisted=localstack.runtime.server.plugins:TwistedRuntimeServerPlugin"], "localstack.lambda.runtime_executor": ["docker=localstack.services.lambda_.invocation.plugins:DockerRuntimeExecutorPlugin"], "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"]}
|
|
File without changes
|
{localstack_core-4.7.1.dev27.data → localstack_core-4.7.1.dev28.data}/scripts/localstack-supervisor
RENAMED
|
File without changes
|
{localstack_core-4.7.1.dev27.data → localstack_core-4.7.1.dev28.data}/scripts/localstack.bat
RENAMED
|
File without changes
|
|
File without changes
|
{localstack_core-4.7.1.dev27.dist-info → localstack_core-4.7.1.dev28.dist-info}/entry_points.txt
RENAMED
|
File without changes
|
{localstack_core-4.7.1.dev27.dist-info → localstack_core-4.7.1.dev28.dist-info}/licenses/LICENSE.txt
RENAMED
|
File without changes
|
{localstack_core-4.7.1.dev27.dist-info → localstack_core-4.7.1.dev28.dist-info}/top_level.txt
RENAMED
|
File without changes
|