cdk-factory 0.19.7__tar.gz → 0.19.9__tar.gz
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.
- {cdk_factory-0.19.7 → cdk_factory-0.19.9}/PKG-INFO +1 -1
- {cdk_factory-0.19.7 → cdk_factory-0.19.9}/pyproject.toml +1 -1
- {cdk_factory-0.19.7 → cdk_factory-0.19.9}/src/cdk_factory/stack_library/lambda_edge/lambda_edge_stack.py +32 -3
- cdk_factory-0.19.9/src/cdk_factory/version.py +1 -0
- cdk_factory-0.19.7/src/cdk_factory/version.py +0 -1
- {cdk_factory-0.19.7 → cdk_factory-0.19.9}/.gitignore +0 -0
- {cdk_factory-0.19.7 → cdk_factory-0.19.9}/.windsurfrules +0 -0
- {cdk_factory-0.19.7 → cdk_factory-0.19.9}/LICENSE +0 -0
- {cdk_factory-0.19.7 → cdk_factory-0.19.9}/README.md +0 -0
- {cdk_factory-0.19.7 → cdk_factory-0.19.9}/REFACTORING_PLAN.md +0 -0
- {cdk_factory-0.19.7 → cdk_factory-0.19.9}/archive/README.md +0 -0
- {cdk_factory-0.19.7 → cdk_factory-0.19.9}/archive/migrate_to_enhanced_ssm.py +0 -0
- {cdk_factory-0.19.7 → cdk_factory-0.19.9}/examples/json-imports/README.md +0 -0
- {cdk_factory-0.19.7 → cdk_factory-0.19.9}/examples/separate-api-gateway/README.md +0 -0
- {cdk_factory-0.19.7 → cdk_factory-0.19.9}/examples/separate-api-gateway/api-gateway-stack.json +0 -0
- {cdk_factory-0.19.7 → cdk_factory-0.19.9}/examples/separate-api-gateway/config.json +0 -0
- {cdk_factory-0.19.7 → cdk_factory-0.19.9}/examples/separate-api-gateway/lambda-stack.json +0 -0
- {cdk_factory-0.19.7 → cdk_factory-0.19.9}/mypy.ini +0 -0
- {cdk_factory-0.19.7 → cdk_factory-0.19.9}/publish_to_pypi.py +0 -0
- {cdk_factory-0.19.7 → cdk_factory-0.19.9}/publish_to_pypi.sh +0 -0
- {cdk_factory-0.19.7 → cdk_factory-0.19.9}/pysetup.py +0 -0
- {cdk_factory-0.19.7 → cdk_factory-0.19.9}/pysetup.sh +0 -0
- {cdk_factory-0.19.7 → cdk_factory-0.19.9}/requirements.dev.txt +0 -0
- {cdk_factory-0.19.7 → cdk_factory-0.19.9}/requirements.tests.txt +0 -0
- {cdk_factory-0.19.7 → cdk_factory-0.19.9}/requirements.txt +0 -0
- {cdk_factory-0.19.7 → cdk_factory-0.19.9}/run-checks.sh +0 -0
- {cdk_factory-0.19.7 → cdk_factory-0.19.9}/run-tests-clean-venv.sh +0 -0
- {cdk_factory-0.19.7 → cdk_factory-0.19.9}/run-tests.sh +0 -0
- {cdk_factory-0.19.7 → cdk_factory-0.19.9}/scripts/cloudfront-cleanup.sh +0 -0
- {cdk_factory-0.19.7 → cdk_factory-0.19.9}/src/cdk_factory/__init__.py +0 -0
- {cdk_factory-0.19.7 → cdk_factory-0.19.9}/src/cdk_factory/app.py +0 -0
- {cdk_factory-0.19.7 → cdk_factory-0.19.9}/src/cdk_factory/builds/README.md +0 -0
- {cdk_factory-0.19.7 → cdk_factory-0.19.9}/src/cdk_factory/cdk.json +0 -0
- {cdk_factory-0.19.7 → cdk_factory-0.19.9}/src/cdk_factory/cli.py +0 -0
- {cdk_factory-0.19.7 → cdk_factory-0.19.9}/src/cdk_factory/commands/command_loader.py +0 -0
- {cdk_factory-0.19.7 → cdk_factory-0.19.9}/src/cdk_factory/configurations/base_config.py +0 -0
- {cdk_factory-0.19.7 → cdk_factory-0.19.9}/src/cdk_factory/configurations/cdk_config.py +0 -0
- {cdk_factory-0.19.7 → cdk_factory-0.19.9}/src/cdk_factory/configurations/deployment.py +0 -0
- {cdk_factory-0.19.7 → cdk_factory-0.19.9}/src/cdk_factory/configurations/deployment_wave.py +0 -0
- {cdk_factory-0.19.7 → cdk_factory-0.19.9}/src/cdk_factory/configurations/devops.py +0 -0
- {cdk_factory-0.19.7 → cdk_factory-0.19.9}/src/cdk_factory/configurations/enhanced_base_config.py +0 -0
- {cdk_factory-0.19.7 → cdk_factory-0.19.9}/src/cdk_factory/configurations/enhanced_ssm_config.py +0 -0
- {cdk_factory-0.19.7 → cdk_factory-0.19.9}/src/cdk_factory/configurations/management.py +0 -0
- {cdk_factory-0.19.7 → cdk_factory-0.19.9}/src/cdk_factory/configurations/pipeline.py +0 -0
- {cdk_factory-0.19.7 → cdk_factory-0.19.9}/src/cdk_factory/configurations/pipeline_stage.py +0 -0
- {cdk_factory-0.19.7 → cdk_factory-0.19.9}/src/cdk_factory/configurations/resources/_resources.py +0 -0
- {cdk_factory-0.19.7 → cdk_factory-0.19.9}/src/cdk_factory/configurations/resources/acm.py +0 -0
- {cdk_factory-0.19.7 → cdk_factory-0.19.9}/src/cdk_factory/configurations/resources/api_gateway.py +0 -0
- {cdk_factory-0.19.7 → cdk_factory-0.19.9}/src/cdk_factory/configurations/resources/apigateway_route_config.py +0 -0
- {cdk_factory-0.19.7 → cdk_factory-0.19.9}/src/cdk_factory/configurations/resources/auto_scaling.py +0 -0
- {cdk_factory-0.19.7 → cdk_factory-0.19.9}/src/cdk_factory/configurations/resources/cloudfront.py +0 -0
- {cdk_factory-0.19.7 → cdk_factory-0.19.9}/src/cdk_factory/configurations/resources/cloudwatch_widget.py +0 -0
- {cdk_factory-0.19.7 → cdk_factory-0.19.9}/src/cdk_factory/configurations/resources/code_artifact.py +0 -0
- {cdk_factory-0.19.7 → cdk_factory-0.19.9}/src/cdk_factory/configurations/resources/code_artifact_login.py +0 -0
- {cdk_factory-0.19.7 → cdk_factory-0.19.9}/src/cdk_factory/configurations/resources/code_repository.py +0 -0
- {cdk_factory-0.19.7 → cdk_factory-0.19.9}/src/cdk_factory/configurations/resources/cognito.py +0 -0
- {cdk_factory-0.19.7 → cdk_factory-0.19.9}/src/cdk_factory/configurations/resources/docker.py +0 -0
- {cdk_factory-0.19.7 → cdk_factory-0.19.9}/src/cdk_factory/configurations/resources/dynamodb.py +0 -0
- {cdk_factory-0.19.7 → cdk_factory-0.19.9}/src/cdk_factory/configurations/resources/ecr.py +0 -0
- {cdk_factory-0.19.7 → cdk_factory-0.19.9}/src/cdk_factory/configurations/resources/ecs_cluster.py +0 -0
- {cdk_factory-0.19.7 → cdk_factory-0.19.9}/src/cdk_factory/configurations/resources/ecs_service.py +0 -0
- {cdk_factory-0.19.7 → cdk_factory-0.19.9}/src/cdk_factory/configurations/resources/exisiting.py +0 -0
- {cdk_factory-0.19.7 → cdk_factory-0.19.9}/src/cdk_factory/configurations/resources/lambda_edge.py +0 -0
- {cdk_factory-0.19.7 → cdk_factory-0.19.9}/src/cdk_factory/configurations/resources/lambda_function.py +0 -0
- {cdk_factory-0.19.7 → cdk_factory-0.19.9}/src/cdk_factory/configurations/resources/lambda_layers.py +0 -0
- {cdk_factory-0.19.7 → cdk_factory-0.19.9}/src/cdk_factory/configurations/resources/lambda_triggers.py +0 -0
- {cdk_factory-0.19.7 → cdk_factory-0.19.9}/src/cdk_factory/configurations/resources/load_balancer.py +0 -0
- {cdk_factory-0.19.7 → cdk_factory-0.19.9}/src/cdk_factory/configurations/resources/monitoring.py +0 -0
- {cdk_factory-0.19.7 → cdk_factory-0.19.9}/src/cdk_factory/configurations/resources/rds.py +0 -0
- {cdk_factory-0.19.7 → cdk_factory-0.19.9}/src/cdk_factory/configurations/resources/resource_mapping.py +0 -0
- {cdk_factory-0.19.7 → cdk_factory-0.19.9}/src/cdk_factory/configurations/resources/resource_naming.py +0 -0
- {cdk_factory-0.19.7 → cdk_factory-0.19.9}/src/cdk_factory/configurations/resources/resource_types.py +0 -0
- {cdk_factory-0.19.7 → cdk_factory-0.19.9}/src/cdk_factory/configurations/resources/route53.py +0 -0
- {cdk_factory-0.19.7 → cdk_factory-0.19.9}/src/cdk_factory/configurations/resources/route53_hosted_zone.py +0 -0
- {cdk_factory-0.19.7 → cdk_factory-0.19.9}/src/cdk_factory/configurations/resources/rum.py +0 -0
- {cdk_factory-0.19.7 → cdk_factory-0.19.9}/src/cdk_factory/configurations/resources/s3.py +0 -0
- {cdk_factory-0.19.7 → cdk_factory-0.19.9}/src/cdk_factory/configurations/resources/security_group.py +0 -0
- {cdk_factory-0.19.7 → cdk_factory-0.19.9}/src/cdk_factory/configurations/resources/security_group_full_stack.py +0 -0
- {cdk_factory-0.19.7 → cdk_factory-0.19.9}/src/cdk_factory/configurations/resources/sqs.py +0 -0
- {cdk_factory-0.19.7 → cdk_factory-0.19.9}/src/cdk_factory/configurations/resources/vpc.py +0 -0
- {cdk_factory-0.19.7 → cdk_factory-0.19.9}/src/cdk_factory/configurations/stack.py +0 -0
- {cdk_factory-0.19.7 → cdk_factory-0.19.9}/src/cdk_factory/configurations/workload.py +0 -0
- {cdk_factory-0.19.7 → cdk_factory-0.19.9}/src/cdk_factory/constructs/cloudfront/cloudfront_distribution_construct.py +0 -0
- {cdk_factory-0.19.7 → cdk_factory-0.19.9}/src/cdk_factory/constructs/ecr/ecr_construct.py +0 -0
- {cdk_factory-0.19.7 → cdk_factory-0.19.9}/src/cdk_factory/constructs/lambdas/lambda_function_construct.py +0 -0
- {cdk_factory-0.19.7 → cdk_factory-0.19.9}/src/cdk_factory/constructs/lambdas/lambda_function_docker_construct.py +0 -0
- {cdk_factory-0.19.7 → cdk_factory-0.19.9}/src/cdk_factory/constructs/lambdas/lambda_function_role_construct.py +0 -0
- {cdk_factory-0.19.7 → cdk_factory-0.19.9}/src/cdk_factory/constructs/lambdas/policies/policy_docs.py +0 -0
- {cdk_factory-0.19.7 → cdk_factory-0.19.9}/src/cdk_factory/constructs/lambdas/policies/policy_statements.py +0 -0
- {cdk_factory-0.19.7 → cdk_factory-0.19.9}/src/cdk_factory/constructs/s3_buckets/s3_bucket_construct.py +0 -0
- {cdk_factory-0.19.7 → cdk_factory-0.19.9}/src/cdk_factory/constructs/s3_buckets/s3_bucket_replication_destination_construct.py +0 -0
- {cdk_factory-0.19.7 → cdk_factory-0.19.9}/src/cdk_factory/constructs/s3_buckets/s3_bucket_replication_source_construct.py +0 -0
- {cdk_factory-0.19.7 → cdk_factory-0.19.9}/src/cdk_factory/constructs/sqs/policies/sqs_policies.py +0 -0
- {cdk_factory-0.19.7 → cdk_factory-0.19.9}/src/cdk_factory/interfaces/istack.py +0 -0
- {cdk_factory-0.19.7 → cdk_factory-0.19.9}/src/cdk_factory/interfaces/live_ssm_resolver.py +0 -0
- {cdk_factory-0.19.7 → cdk_factory-0.19.9}/src/cdk_factory/interfaces/networked_stack_mixin.py +0 -0
- {cdk_factory-0.19.7 → cdk_factory-0.19.9}/src/cdk_factory/interfaces/standardized_ssm_mixin.py +0 -0
- {cdk_factory-0.19.7 → cdk_factory-0.19.9}/src/cdk_factory/interfaces/vpc_provider_mixin.py +0 -0
- {cdk_factory-0.19.7 → cdk_factory-0.19.9}/src/cdk_factory/lambdas/edge/ip_gate/handler.py +0 -0
- {cdk_factory-0.19.7 → cdk_factory-0.19.9}/src/cdk_factory/lambdas/health_handler.py +0 -0
- {cdk_factory-0.19.7 → cdk_factory-0.19.9}/src/cdk_factory/pipeline/path_utils.py +0 -0
- {cdk_factory-0.19.7 → cdk_factory-0.19.9}/src/cdk_factory/pipeline/pipeline_factory.py +0 -0
- {cdk_factory-0.19.7 → cdk_factory-0.19.9}/src/cdk_factory/pipeline/security/policies.py +0 -0
- {cdk_factory-0.19.7 → cdk_factory-0.19.9}/src/cdk_factory/pipeline/security/roles.py +0 -0
- {cdk_factory-0.19.7 → cdk_factory-0.19.9}/src/cdk_factory/pipeline/stage.py +0 -0
- {cdk_factory-0.19.7 → cdk_factory-0.19.9}/src/cdk_factory/stack/istack.py +0 -0
- {cdk_factory-0.19.7 → cdk_factory-0.19.9}/src/cdk_factory/stack/stack_factory.py +0 -0
- {cdk_factory-0.19.7 → cdk_factory-0.19.9}/src/cdk_factory/stack/stack_module_loader.py +0 -0
- {cdk_factory-0.19.7 → cdk_factory-0.19.9}/src/cdk_factory/stack/stack_module_registry.py +0 -0
- {cdk_factory-0.19.7 → cdk_factory-0.19.9}/src/cdk_factory/stack/stack_modules.py +0 -0
- {cdk_factory-0.19.7 → cdk_factory-0.19.9}/src/cdk_factory/stack_library/__init__.py +0 -0
- {cdk_factory-0.19.7 → cdk_factory-0.19.9}/src/cdk_factory/stack_library/acm/__init__.py +0 -0
- {cdk_factory-0.19.7 → cdk_factory-0.19.9}/src/cdk_factory/stack_library/acm/acm_stack.py +0 -0
- {cdk_factory-0.19.7 → cdk_factory-0.19.9}/src/cdk_factory/stack_library/api_gateway/api_gateway_stack.py +0 -0
- {cdk_factory-0.19.7 → cdk_factory-0.19.9}/src/cdk_factory/stack_library/auto_scaling/__init__.py +0 -0
- {cdk_factory-0.19.7 → cdk_factory-0.19.9}/src/cdk_factory/stack_library/auto_scaling/auto_scaling_stack.py +0 -0
- {cdk_factory-0.19.7 → cdk_factory-0.19.9}/src/cdk_factory/stack_library/aws_lambdas/lambda_stack.py +0 -0
- {cdk_factory-0.19.7 → cdk_factory-0.19.9}/src/cdk_factory/stack_library/buckets/README.md +0 -0
- {cdk_factory-0.19.7 → cdk_factory-0.19.9}/src/cdk_factory/stack_library/buckets/bucket_stack.py +0 -0
- {cdk_factory-0.19.7 → cdk_factory-0.19.9}/src/cdk_factory/stack_library/cloudfront/__init__.py +0 -0
- {cdk_factory-0.19.7 → cdk_factory-0.19.9}/src/cdk_factory/stack_library/cloudfront/cloudfront_stack.py +0 -0
- {cdk_factory-0.19.7 → cdk_factory-0.19.9}/src/cdk_factory/stack_library/code_artifact/code_artifact_stack.py +0 -0
- {cdk_factory-0.19.7 → cdk_factory-0.19.9}/src/cdk_factory/stack_library/cognito/cognito_stack.py +0 -0
- {cdk_factory-0.19.7 → cdk_factory-0.19.9}/src/cdk_factory/stack_library/dynamodb/dynamodb_stack.py +0 -0
- {cdk_factory-0.19.7 → cdk_factory-0.19.9}/src/cdk_factory/stack_library/ecr/README.md +0 -0
- {cdk_factory-0.19.7 → cdk_factory-0.19.9}/src/cdk_factory/stack_library/ecr/ecr_stack.py +0 -0
- {cdk_factory-0.19.7 → cdk_factory-0.19.9}/src/cdk_factory/stack_library/ecs/__init__.py +0 -0
- {cdk_factory-0.19.7 → cdk_factory-0.19.9}/src/cdk_factory/stack_library/ecs/ecs_cluster_stack.py +0 -0
- {cdk_factory-0.19.7 → cdk_factory-0.19.9}/src/cdk_factory/stack_library/ecs/ecs_service_stack.py +0 -0
- {cdk_factory-0.19.7 → cdk_factory-0.19.9}/src/cdk_factory/stack_library/lambda_edge/__init__.py +0 -0
- {cdk_factory-0.19.7 → cdk_factory-0.19.9}/src/cdk_factory/stack_library/load_balancer/__init__.py +0 -0
- {cdk_factory-0.19.7 → cdk_factory-0.19.9}/src/cdk_factory/stack_library/load_balancer/load_balancer_stack.py +0 -0
- {cdk_factory-0.19.7 → cdk_factory-0.19.9}/src/cdk_factory/stack_library/monitoring/__init__.py +0 -0
- {cdk_factory-0.19.7 → cdk_factory-0.19.9}/src/cdk_factory/stack_library/monitoring/monitoring_stack.py +0 -0
- {cdk_factory-0.19.7 → cdk_factory-0.19.9}/src/cdk_factory/stack_library/rds/__init__.py +0 -0
- {cdk_factory-0.19.7 → cdk_factory-0.19.9}/src/cdk_factory/stack_library/rds/rds_stack.py +0 -0
- {cdk_factory-0.19.7 → cdk_factory-0.19.9}/src/cdk_factory/stack_library/route53/__init__.py +0 -0
- {cdk_factory-0.19.7 → cdk_factory-0.19.9}/src/cdk_factory/stack_library/route53/route53_stack.py +0 -0
- {cdk_factory-0.19.7 → cdk_factory-0.19.9}/src/cdk_factory/stack_library/rum/__init__.py +0 -0
- {cdk_factory-0.19.7 → cdk_factory-0.19.9}/src/cdk_factory/stack_library/rum/rum_stack.py +0 -0
- {cdk_factory-0.19.7 → cdk_factory-0.19.9}/src/cdk_factory/stack_library/security_group/__init__.py +0 -0
- {cdk_factory-0.19.7 → cdk_factory-0.19.9}/src/cdk_factory/stack_library/security_group/security_group_full_stack.py +0 -0
- {cdk_factory-0.19.7 → cdk_factory-0.19.9}/src/cdk_factory/stack_library/security_group/security_group_stack.py +0 -0
- {cdk_factory-0.19.7 → cdk_factory-0.19.9}/src/cdk_factory/stack_library/simple_queue_service/sqs_stack.py +0 -0
- {cdk_factory-0.19.7 → cdk_factory-0.19.9}/src/cdk_factory/stack_library/stack_base.py +0 -0
- {cdk_factory-0.19.7 → cdk_factory-0.19.9}/src/cdk_factory/stack_library/vpc/__init__.py +0 -0
- {cdk_factory-0.19.7 → cdk_factory-0.19.9}/src/cdk_factory/stack_library/vpc/vpc_stack.py +0 -0
- {cdk_factory-0.19.7 → cdk_factory-0.19.9}/src/cdk_factory/stack_library/websites/static_website_stack.py +0 -0
- {cdk_factory-0.19.7 → cdk_factory-0.19.9}/src/cdk_factory/stages/websites/static_website_stage.py +0 -0
- {cdk_factory-0.19.7 → cdk_factory-0.19.9}/src/cdk_factory/templates/README.md +0 -0
- {cdk_factory-0.19.7 → cdk_factory-0.19.9}/src/cdk_factory/templates/app.py.template +0 -0
- {cdk_factory-0.19.7 → cdk_factory-0.19.9}/src/cdk_factory/templates/cdk.json.template +0 -0
- {cdk_factory-0.19.7 → cdk_factory-0.19.9}/src/cdk_factory/utilities/api_gateway_integration_utility.py +0 -0
- {cdk_factory-0.19.7 → cdk_factory-0.19.9}/src/cdk_factory/utilities/commandline_args.py +0 -0
- {cdk_factory-0.19.7 → cdk_factory-0.19.9}/src/cdk_factory/utilities/configuration_loader.py +0 -0
- {cdk_factory-0.19.7 → cdk_factory-0.19.9}/src/cdk_factory/utilities/docker_utilities.py +0 -0
- {cdk_factory-0.19.7 → cdk_factory-0.19.9}/src/cdk_factory/utilities/environment_services.py +0 -0
- {cdk_factory-0.19.7 → cdk_factory-0.19.9}/src/cdk_factory/utilities/file_operations.py +0 -0
- {cdk_factory-0.19.7 → cdk_factory-0.19.9}/src/cdk_factory/utilities/git_utilities.py +0 -0
- {cdk_factory-0.19.7 → cdk_factory-0.19.9}/src/cdk_factory/utilities/json_loading_utility.py +0 -0
- {cdk_factory-0.19.7 → cdk_factory-0.19.9}/src/cdk_factory/utilities/lambda_function_utilities.py +0 -0
- {cdk_factory-0.19.7 → cdk_factory-0.19.9}/src/cdk_factory/utilities/os_execute.py +0 -0
- {cdk_factory-0.19.7 → cdk_factory-0.19.9}/src/cdk_factory/utils/api_gateway_utilities.py +0 -0
- {cdk_factory-0.19.7 → cdk_factory-0.19.9}/src/cdk_factory/validation/config_validator.py +0 -0
- {cdk_factory-0.19.7 → cdk_factory-0.19.9}/src/cdk_factory/workload/workload_factory.py +0 -0
- {cdk_factory-0.19.7 → cdk_factory-0.19.9}/src/handlers/test/handler.py +0 -0
|
@@ -53,6 +53,8 @@ class LambdaEdgeStack(IStack, StandardizedSsmMixin):
|
|
|
53
53
|
self.workload: Optional[WorkloadConfig] = None
|
|
54
54
|
self.function: Optional[_lambda.Function] = None
|
|
55
55
|
self.function_version: Optional[_lambda.Version] = None
|
|
56
|
+
# Cache for resolved environment variables to prevent duplicate construct creation
|
|
57
|
+
self._resolved_env_cache: Optional[Dict[str, str]] = None
|
|
56
58
|
|
|
57
59
|
def build(
|
|
58
60
|
self,
|
|
@@ -101,12 +103,32 @@ class LambdaEdgeStack(IStack, StandardizedSsmMixin):
|
|
|
101
103
|
# Add outputs
|
|
102
104
|
self._add_outputs(function_name)
|
|
103
105
|
|
|
106
|
+
def _sanitize_construct_name(self, name: str) -> str:
|
|
107
|
+
"""
|
|
108
|
+
Create a deterministic, valid CDK construct name from any string.
|
|
109
|
+
Replaces non-alphanumeric characters with dashes and limits length.
|
|
110
|
+
"""
|
|
111
|
+
# Replace non-alphanumeric characters with dashes
|
|
112
|
+
sanitized = ''.join(c if c.isalnum() else '-' for c in name)
|
|
113
|
+
# Remove consecutive dashes
|
|
114
|
+
while '--' in sanitized:
|
|
115
|
+
sanitized = sanitized.replace('--', '-')
|
|
116
|
+
# Remove leading/trailing dashes
|
|
117
|
+
sanitized = sanitized.strip('-')
|
|
118
|
+
# Limit to 255 characters (CDK limit)
|
|
119
|
+
return sanitized[:255]
|
|
120
|
+
|
|
104
121
|
def _resolve_environment_variables(self) -> Dict[str, str]:
|
|
105
122
|
"""
|
|
106
123
|
Resolve environment variables, including SSM parameter references.
|
|
107
124
|
Supports {{ssm:parameter-path}} syntax for dynamic SSM lookups.
|
|
108
125
|
Uses CDK tokens that resolve at deployment time, not synthesis time.
|
|
126
|
+
Caches results to prevent duplicate construct creation.
|
|
109
127
|
"""
|
|
128
|
+
# Return cached result if available
|
|
129
|
+
if self._resolved_env_cache is not None:
|
|
130
|
+
return self._resolved_env_cache
|
|
131
|
+
|
|
110
132
|
resolved_env = {}
|
|
111
133
|
|
|
112
134
|
for key, value in self.edge_config.environment.items():
|
|
@@ -115,18 +137,23 @@ class LambdaEdgeStack(IStack, StandardizedSsmMixin):
|
|
|
115
137
|
# Extract SSM parameter path
|
|
116
138
|
ssm_param_path = value[6:-2] # Remove {{ssm: and }}
|
|
117
139
|
|
|
140
|
+
# Create deterministic construct name from parameter path
|
|
141
|
+
construct_name = self._sanitize_construct_name(f"env-{key}-{ssm_param_path}")
|
|
142
|
+
|
|
118
143
|
# Import SSM parameter - this creates a token that resolves at deployment time
|
|
119
144
|
param = ssm.StringParameter.from_string_parameter_name(
|
|
120
145
|
self,
|
|
121
|
-
|
|
146
|
+
construct_name,
|
|
122
147
|
ssm_param_path
|
|
123
148
|
)
|
|
124
149
|
resolved_value = param.string_value
|
|
125
|
-
logger.info(f"Resolved environment variable {key} from SSM {ssm_param_path}")
|
|
150
|
+
logger.info(f"Resolved environment variable {key} from SSM {ssm_param_path} as {construct_name}")
|
|
126
151
|
resolved_env[key] = resolved_value
|
|
127
152
|
else:
|
|
128
153
|
resolved_env[key] = value
|
|
129
154
|
|
|
155
|
+
# Cache the result
|
|
156
|
+
self._resolved_env_cache = resolved_env
|
|
130
157
|
return resolved_env
|
|
131
158
|
|
|
132
159
|
def _create_lambda_function(self, function_name: str) -> None:
|
|
@@ -185,10 +212,12 @@ class LambdaEdgeStack(IStack, StandardizedSsmMixin):
|
|
|
185
212
|
# Create runtime configuration file for Lambda@Edge
|
|
186
213
|
# Since Lambda@Edge doesn't support environment variables, we bundle a config file
|
|
187
214
|
# Use the full function_name (e.g., "tech-talk-dev-ip-gate") not just the base name
|
|
215
|
+
resolved_env = self._resolve_environment_variables()
|
|
188
216
|
runtime_config = {
|
|
189
217
|
'environment': self.deployment.environment,
|
|
190
218
|
'function_name': function_name,
|
|
191
|
-
'region': self.deployment.region
|
|
219
|
+
'region': self.deployment.region,
|
|
220
|
+
'environment_variables': resolved_env # Add actual environment variables
|
|
192
221
|
}
|
|
193
222
|
|
|
194
223
|
runtime_config_path = temp_code_dir / 'runtime_config.json'
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
__version__ = "0.19.9"
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
__version__ = "0.19.7"
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{cdk_factory-0.19.7 → cdk_factory-0.19.9}/examples/separate-api-gateway/api-gateway-stack.json
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{cdk_factory-0.19.7 → cdk_factory-0.19.9}/src/cdk_factory/configurations/enhanced_base_config.py
RENAMED
|
File without changes
|
{cdk_factory-0.19.7 → cdk_factory-0.19.9}/src/cdk_factory/configurations/enhanced_ssm_config.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{cdk_factory-0.19.7 → cdk_factory-0.19.9}/src/cdk_factory/configurations/resources/_resources.py
RENAMED
|
File without changes
|
|
File without changes
|
{cdk_factory-0.19.7 → cdk_factory-0.19.9}/src/cdk_factory/configurations/resources/api_gateway.py
RENAMED
|
File without changes
|
|
File without changes
|
{cdk_factory-0.19.7 → cdk_factory-0.19.9}/src/cdk_factory/configurations/resources/auto_scaling.py
RENAMED
|
File without changes
|
{cdk_factory-0.19.7 → cdk_factory-0.19.9}/src/cdk_factory/configurations/resources/cloudfront.py
RENAMED
|
File without changes
|
|
File without changes
|
{cdk_factory-0.19.7 → cdk_factory-0.19.9}/src/cdk_factory/configurations/resources/code_artifact.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{cdk_factory-0.19.7 → cdk_factory-0.19.9}/src/cdk_factory/configurations/resources/cognito.py
RENAMED
|
File without changes
|
{cdk_factory-0.19.7 → cdk_factory-0.19.9}/src/cdk_factory/configurations/resources/docker.py
RENAMED
|
File without changes
|
{cdk_factory-0.19.7 → cdk_factory-0.19.9}/src/cdk_factory/configurations/resources/dynamodb.py
RENAMED
|
File without changes
|
|
File without changes
|
{cdk_factory-0.19.7 → cdk_factory-0.19.9}/src/cdk_factory/configurations/resources/ecs_cluster.py
RENAMED
|
File without changes
|
{cdk_factory-0.19.7 → cdk_factory-0.19.9}/src/cdk_factory/configurations/resources/ecs_service.py
RENAMED
|
File without changes
|
{cdk_factory-0.19.7 → cdk_factory-0.19.9}/src/cdk_factory/configurations/resources/exisiting.py
RENAMED
|
File without changes
|
{cdk_factory-0.19.7 → cdk_factory-0.19.9}/src/cdk_factory/configurations/resources/lambda_edge.py
RENAMED
|
File without changes
|
|
File without changes
|
{cdk_factory-0.19.7 → cdk_factory-0.19.9}/src/cdk_factory/configurations/resources/lambda_layers.py
RENAMED
|
File without changes
|
|
File without changes
|
{cdk_factory-0.19.7 → cdk_factory-0.19.9}/src/cdk_factory/configurations/resources/load_balancer.py
RENAMED
|
File without changes
|
{cdk_factory-0.19.7 → cdk_factory-0.19.9}/src/cdk_factory/configurations/resources/monitoring.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{cdk_factory-0.19.7 → cdk_factory-0.19.9}/src/cdk_factory/configurations/resources/resource_types.py
RENAMED
|
File without changes
|
{cdk_factory-0.19.7 → cdk_factory-0.19.9}/src/cdk_factory/configurations/resources/route53.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{cdk_factory-0.19.7 → cdk_factory-0.19.9}/src/cdk_factory/configurations/resources/security_group.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{cdk_factory-0.19.7 → cdk_factory-0.19.9}/src/cdk_factory/constructs/lambdas/policies/policy_docs.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{cdk_factory-0.19.7 → cdk_factory-0.19.9}/src/cdk_factory/constructs/sqs/policies/sqs_policies.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{cdk_factory-0.19.7 → cdk_factory-0.19.9}/src/cdk_factory/interfaces/networked_stack_mixin.py
RENAMED
|
File without changes
|
{cdk_factory-0.19.7 → cdk_factory-0.19.9}/src/cdk_factory/interfaces/standardized_ssm_mixin.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{cdk_factory-0.19.7 → cdk_factory-0.19.9}/src/cdk_factory/stack_library/auto_scaling/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
{cdk_factory-0.19.7 → cdk_factory-0.19.9}/src/cdk_factory/stack_library/aws_lambdas/lambda_stack.py
RENAMED
|
File without changes
|
|
File without changes
|
{cdk_factory-0.19.7 → cdk_factory-0.19.9}/src/cdk_factory/stack_library/buckets/bucket_stack.py
RENAMED
|
File without changes
|
{cdk_factory-0.19.7 → cdk_factory-0.19.9}/src/cdk_factory/stack_library/cloudfront/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{cdk_factory-0.19.7 → cdk_factory-0.19.9}/src/cdk_factory/stack_library/cognito/cognito_stack.py
RENAMED
|
File without changes
|
{cdk_factory-0.19.7 → cdk_factory-0.19.9}/src/cdk_factory/stack_library/dynamodb/dynamodb_stack.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{cdk_factory-0.19.7 → cdk_factory-0.19.9}/src/cdk_factory/stack_library/ecs/ecs_cluster_stack.py
RENAMED
|
File without changes
|
{cdk_factory-0.19.7 → cdk_factory-0.19.9}/src/cdk_factory/stack_library/ecs/ecs_service_stack.py
RENAMED
|
File without changes
|
{cdk_factory-0.19.7 → cdk_factory-0.19.9}/src/cdk_factory/stack_library/lambda_edge/__init__.py
RENAMED
|
File without changes
|
{cdk_factory-0.19.7 → cdk_factory-0.19.9}/src/cdk_factory/stack_library/load_balancer/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
{cdk_factory-0.19.7 → cdk_factory-0.19.9}/src/cdk_factory/stack_library/monitoring/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{cdk_factory-0.19.7 → cdk_factory-0.19.9}/src/cdk_factory/stack_library/route53/route53_stack.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{cdk_factory-0.19.7 → cdk_factory-0.19.9}/src/cdk_factory/stack_library/security_group/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{cdk_factory-0.19.7 → cdk_factory-0.19.9}/src/cdk_factory/stages/websites/static_website_stage.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{cdk_factory-0.19.7 → cdk_factory-0.19.9}/src/cdk_factory/utilities/lambda_function_utilities.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|