cdk-factory 0.19.0__tar.gz → 0.19.7__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.
Files changed (166) hide show
  1. {cdk_factory-0.19.0 → cdk_factory-0.19.7}/PKG-INFO +1 -1
  2. {cdk_factory-0.19.0 → cdk_factory-0.19.7}/pyproject.toml +1 -1
  3. {cdk_factory-0.19.0 → cdk_factory-0.19.7}/src/cdk_factory/configurations/resources/lambda_edge.py +2 -2
  4. {cdk_factory-0.19.0 → cdk_factory-0.19.7}/src/cdk_factory/configurations/resources/rds.py +1 -1
  5. {cdk_factory-0.19.0 → cdk_factory-0.19.7}/src/cdk_factory/configurations/resources/s3.py +9 -1
  6. {cdk_factory-0.19.0 → cdk_factory-0.19.7}/src/cdk_factory/constructs/cloudfront/cloudfront_distribution_construct.py +1 -1
  7. {cdk_factory-0.19.0 → cdk_factory-0.19.7}/src/cdk_factory/stack_library/cloudfront/cloudfront_stack.py +42 -20
  8. {cdk_factory-0.19.0 → cdk_factory-0.19.7}/src/cdk_factory/stack_library/lambda_edge/lambda_edge_stack.py +1 -1
  9. {cdk_factory-0.19.0 → cdk_factory-0.19.7}/src/cdk_factory/stack_library/websites/static_website_stack.py +6 -2
  10. cdk_factory-0.19.7/src/cdk_factory/version.py +1 -0
  11. cdk_factory-0.19.0/src/cdk_factory/version.py +0 -1
  12. {cdk_factory-0.19.0 → cdk_factory-0.19.7}/.gitignore +0 -0
  13. {cdk_factory-0.19.0 → cdk_factory-0.19.7}/.windsurfrules +0 -0
  14. {cdk_factory-0.19.0 → cdk_factory-0.19.7}/LICENSE +0 -0
  15. {cdk_factory-0.19.0 → cdk_factory-0.19.7}/README.md +0 -0
  16. {cdk_factory-0.19.0 → cdk_factory-0.19.7}/REFACTORING_PLAN.md +0 -0
  17. {cdk_factory-0.19.0 → cdk_factory-0.19.7}/archive/README.md +0 -0
  18. {cdk_factory-0.19.0 → cdk_factory-0.19.7}/archive/migrate_to_enhanced_ssm.py +0 -0
  19. {cdk_factory-0.19.0 → cdk_factory-0.19.7}/examples/json-imports/README.md +0 -0
  20. {cdk_factory-0.19.0 → cdk_factory-0.19.7}/examples/separate-api-gateway/README.md +0 -0
  21. {cdk_factory-0.19.0 → cdk_factory-0.19.7}/examples/separate-api-gateway/api-gateway-stack.json +0 -0
  22. {cdk_factory-0.19.0 → cdk_factory-0.19.7}/examples/separate-api-gateway/config.json +0 -0
  23. {cdk_factory-0.19.0 → cdk_factory-0.19.7}/examples/separate-api-gateway/lambda-stack.json +0 -0
  24. {cdk_factory-0.19.0 → cdk_factory-0.19.7}/mypy.ini +0 -0
  25. {cdk_factory-0.19.0 → cdk_factory-0.19.7}/publish_to_pypi.py +0 -0
  26. {cdk_factory-0.19.0 → cdk_factory-0.19.7}/publish_to_pypi.sh +0 -0
  27. {cdk_factory-0.19.0 → cdk_factory-0.19.7}/pysetup.py +0 -0
  28. {cdk_factory-0.19.0 → cdk_factory-0.19.7}/pysetup.sh +0 -0
  29. {cdk_factory-0.19.0 → cdk_factory-0.19.7}/requirements.dev.txt +0 -0
  30. {cdk_factory-0.19.0 → cdk_factory-0.19.7}/requirements.tests.txt +0 -0
  31. {cdk_factory-0.19.0 → cdk_factory-0.19.7}/requirements.txt +0 -0
  32. {cdk_factory-0.19.0 → cdk_factory-0.19.7}/run-checks.sh +0 -0
  33. {cdk_factory-0.19.0 → cdk_factory-0.19.7}/run-tests-clean-venv.sh +0 -0
  34. {cdk_factory-0.19.0 → cdk_factory-0.19.7}/run-tests.sh +0 -0
  35. {cdk_factory-0.19.0 → cdk_factory-0.19.7}/scripts/cloudfront-cleanup.sh +0 -0
  36. {cdk_factory-0.19.0 → cdk_factory-0.19.7}/src/cdk_factory/__init__.py +0 -0
  37. {cdk_factory-0.19.0 → cdk_factory-0.19.7}/src/cdk_factory/app.py +0 -0
  38. {cdk_factory-0.19.0 → cdk_factory-0.19.7}/src/cdk_factory/builds/README.md +0 -0
  39. {cdk_factory-0.19.0 → cdk_factory-0.19.7}/src/cdk_factory/cdk.json +0 -0
  40. {cdk_factory-0.19.0 → cdk_factory-0.19.7}/src/cdk_factory/cli.py +0 -0
  41. {cdk_factory-0.19.0 → cdk_factory-0.19.7}/src/cdk_factory/commands/command_loader.py +0 -0
  42. {cdk_factory-0.19.0 → cdk_factory-0.19.7}/src/cdk_factory/configurations/base_config.py +0 -0
  43. {cdk_factory-0.19.0 → cdk_factory-0.19.7}/src/cdk_factory/configurations/cdk_config.py +0 -0
  44. {cdk_factory-0.19.0 → cdk_factory-0.19.7}/src/cdk_factory/configurations/deployment.py +0 -0
  45. {cdk_factory-0.19.0 → cdk_factory-0.19.7}/src/cdk_factory/configurations/deployment_wave.py +0 -0
  46. {cdk_factory-0.19.0 → cdk_factory-0.19.7}/src/cdk_factory/configurations/devops.py +0 -0
  47. {cdk_factory-0.19.0 → cdk_factory-0.19.7}/src/cdk_factory/configurations/enhanced_base_config.py +0 -0
  48. {cdk_factory-0.19.0 → cdk_factory-0.19.7}/src/cdk_factory/configurations/enhanced_ssm_config.py +0 -0
  49. {cdk_factory-0.19.0 → cdk_factory-0.19.7}/src/cdk_factory/configurations/management.py +0 -0
  50. {cdk_factory-0.19.0 → cdk_factory-0.19.7}/src/cdk_factory/configurations/pipeline.py +0 -0
  51. {cdk_factory-0.19.0 → cdk_factory-0.19.7}/src/cdk_factory/configurations/pipeline_stage.py +0 -0
  52. {cdk_factory-0.19.0 → cdk_factory-0.19.7}/src/cdk_factory/configurations/resources/_resources.py +0 -0
  53. {cdk_factory-0.19.0 → cdk_factory-0.19.7}/src/cdk_factory/configurations/resources/acm.py +0 -0
  54. {cdk_factory-0.19.0 → cdk_factory-0.19.7}/src/cdk_factory/configurations/resources/api_gateway.py +0 -0
  55. {cdk_factory-0.19.0 → cdk_factory-0.19.7}/src/cdk_factory/configurations/resources/apigateway_route_config.py +0 -0
  56. {cdk_factory-0.19.0 → cdk_factory-0.19.7}/src/cdk_factory/configurations/resources/auto_scaling.py +0 -0
  57. {cdk_factory-0.19.0 → cdk_factory-0.19.7}/src/cdk_factory/configurations/resources/cloudfront.py +0 -0
  58. {cdk_factory-0.19.0 → cdk_factory-0.19.7}/src/cdk_factory/configurations/resources/cloudwatch_widget.py +0 -0
  59. {cdk_factory-0.19.0 → cdk_factory-0.19.7}/src/cdk_factory/configurations/resources/code_artifact.py +0 -0
  60. {cdk_factory-0.19.0 → cdk_factory-0.19.7}/src/cdk_factory/configurations/resources/code_artifact_login.py +0 -0
  61. {cdk_factory-0.19.0 → cdk_factory-0.19.7}/src/cdk_factory/configurations/resources/code_repository.py +0 -0
  62. {cdk_factory-0.19.0 → cdk_factory-0.19.7}/src/cdk_factory/configurations/resources/cognito.py +0 -0
  63. {cdk_factory-0.19.0 → cdk_factory-0.19.7}/src/cdk_factory/configurations/resources/docker.py +0 -0
  64. {cdk_factory-0.19.0 → cdk_factory-0.19.7}/src/cdk_factory/configurations/resources/dynamodb.py +0 -0
  65. {cdk_factory-0.19.0 → cdk_factory-0.19.7}/src/cdk_factory/configurations/resources/ecr.py +0 -0
  66. {cdk_factory-0.19.0 → cdk_factory-0.19.7}/src/cdk_factory/configurations/resources/ecs_cluster.py +0 -0
  67. {cdk_factory-0.19.0 → cdk_factory-0.19.7}/src/cdk_factory/configurations/resources/ecs_service.py +0 -0
  68. {cdk_factory-0.19.0 → cdk_factory-0.19.7}/src/cdk_factory/configurations/resources/exisiting.py +0 -0
  69. {cdk_factory-0.19.0 → cdk_factory-0.19.7}/src/cdk_factory/configurations/resources/lambda_function.py +0 -0
  70. {cdk_factory-0.19.0 → cdk_factory-0.19.7}/src/cdk_factory/configurations/resources/lambda_layers.py +0 -0
  71. {cdk_factory-0.19.0 → cdk_factory-0.19.7}/src/cdk_factory/configurations/resources/lambda_triggers.py +0 -0
  72. {cdk_factory-0.19.0 → cdk_factory-0.19.7}/src/cdk_factory/configurations/resources/load_balancer.py +0 -0
  73. {cdk_factory-0.19.0 → cdk_factory-0.19.7}/src/cdk_factory/configurations/resources/monitoring.py +0 -0
  74. {cdk_factory-0.19.0 → cdk_factory-0.19.7}/src/cdk_factory/configurations/resources/resource_mapping.py +0 -0
  75. {cdk_factory-0.19.0 → cdk_factory-0.19.7}/src/cdk_factory/configurations/resources/resource_naming.py +0 -0
  76. {cdk_factory-0.19.0 → cdk_factory-0.19.7}/src/cdk_factory/configurations/resources/resource_types.py +0 -0
  77. {cdk_factory-0.19.0 → cdk_factory-0.19.7}/src/cdk_factory/configurations/resources/route53.py +0 -0
  78. {cdk_factory-0.19.0 → cdk_factory-0.19.7}/src/cdk_factory/configurations/resources/route53_hosted_zone.py +0 -0
  79. {cdk_factory-0.19.0 → cdk_factory-0.19.7}/src/cdk_factory/configurations/resources/rum.py +0 -0
  80. {cdk_factory-0.19.0 → cdk_factory-0.19.7}/src/cdk_factory/configurations/resources/security_group.py +0 -0
  81. {cdk_factory-0.19.0 → cdk_factory-0.19.7}/src/cdk_factory/configurations/resources/security_group_full_stack.py +0 -0
  82. {cdk_factory-0.19.0 → cdk_factory-0.19.7}/src/cdk_factory/configurations/resources/sqs.py +0 -0
  83. {cdk_factory-0.19.0 → cdk_factory-0.19.7}/src/cdk_factory/configurations/resources/vpc.py +0 -0
  84. {cdk_factory-0.19.0 → cdk_factory-0.19.7}/src/cdk_factory/configurations/stack.py +0 -0
  85. {cdk_factory-0.19.0 → cdk_factory-0.19.7}/src/cdk_factory/configurations/workload.py +0 -0
  86. {cdk_factory-0.19.0 → cdk_factory-0.19.7}/src/cdk_factory/constructs/ecr/ecr_construct.py +0 -0
  87. {cdk_factory-0.19.0 → cdk_factory-0.19.7}/src/cdk_factory/constructs/lambdas/lambda_function_construct.py +0 -0
  88. {cdk_factory-0.19.0 → cdk_factory-0.19.7}/src/cdk_factory/constructs/lambdas/lambda_function_docker_construct.py +0 -0
  89. {cdk_factory-0.19.0 → cdk_factory-0.19.7}/src/cdk_factory/constructs/lambdas/lambda_function_role_construct.py +0 -0
  90. {cdk_factory-0.19.0 → cdk_factory-0.19.7}/src/cdk_factory/constructs/lambdas/policies/policy_docs.py +0 -0
  91. {cdk_factory-0.19.0 → cdk_factory-0.19.7}/src/cdk_factory/constructs/lambdas/policies/policy_statements.py +0 -0
  92. {cdk_factory-0.19.0 → cdk_factory-0.19.7}/src/cdk_factory/constructs/s3_buckets/s3_bucket_construct.py +0 -0
  93. {cdk_factory-0.19.0 → cdk_factory-0.19.7}/src/cdk_factory/constructs/s3_buckets/s3_bucket_replication_destination_construct.py +0 -0
  94. {cdk_factory-0.19.0 → cdk_factory-0.19.7}/src/cdk_factory/constructs/s3_buckets/s3_bucket_replication_source_construct.py +0 -0
  95. {cdk_factory-0.19.0 → cdk_factory-0.19.7}/src/cdk_factory/constructs/sqs/policies/sqs_policies.py +0 -0
  96. {cdk_factory-0.19.0 → cdk_factory-0.19.7}/src/cdk_factory/interfaces/istack.py +0 -0
  97. {cdk_factory-0.19.0 → cdk_factory-0.19.7}/src/cdk_factory/interfaces/live_ssm_resolver.py +0 -0
  98. {cdk_factory-0.19.0 → cdk_factory-0.19.7}/src/cdk_factory/interfaces/networked_stack_mixin.py +0 -0
  99. {cdk_factory-0.19.0 → cdk_factory-0.19.7}/src/cdk_factory/interfaces/standardized_ssm_mixin.py +0 -0
  100. {cdk_factory-0.19.0 → cdk_factory-0.19.7}/src/cdk_factory/interfaces/vpc_provider_mixin.py +0 -0
  101. {cdk_factory-0.19.0 → cdk_factory-0.19.7}/src/cdk_factory/lambdas/edge/ip_gate/handler.py +0 -0
  102. {cdk_factory-0.19.0 → cdk_factory-0.19.7}/src/cdk_factory/lambdas/health_handler.py +0 -0
  103. {cdk_factory-0.19.0 → cdk_factory-0.19.7}/src/cdk_factory/pipeline/path_utils.py +0 -0
  104. {cdk_factory-0.19.0 → cdk_factory-0.19.7}/src/cdk_factory/pipeline/pipeline_factory.py +0 -0
  105. {cdk_factory-0.19.0 → cdk_factory-0.19.7}/src/cdk_factory/pipeline/security/policies.py +0 -0
  106. {cdk_factory-0.19.0 → cdk_factory-0.19.7}/src/cdk_factory/pipeline/security/roles.py +0 -0
  107. {cdk_factory-0.19.0 → cdk_factory-0.19.7}/src/cdk_factory/pipeline/stage.py +0 -0
  108. {cdk_factory-0.19.0 → cdk_factory-0.19.7}/src/cdk_factory/stack/istack.py +0 -0
  109. {cdk_factory-0.19.0 → cdk_factory-0.19.7}/src/cdk_factory/stack/stack_factory.py +0 -0
  110. {cdk_factory-0.19.0 → cdk_factory-0.19.7}/src/cdk_factory/stack/stack_module_loader.py +0 -0
  111. {cdk_factory-0.19.0 → cdk_factory-0.19.7}/src/cdk_factory/stack/stack_module_registry.py +0 -0
  112. {cdk_factory-0.19.0 → cdk_factory-0.19.7}/src/cdk_factory/stack/stack_modules.py +0 -0
  113. {cdk_factory-0.19.0 → cdk_factory-0.19.7}/src/cdk_factory/stack_library/__init__.py +0 -0
  114. {cdk_factory-0.19.0 → cdk_factory-0.19.7}/src/cdk_factory/stack_library/acm/__init__.py +0 -0
  115. {cdk_factory-0.19.0 → cdk_factory-0.19.7}/src/cdk_factory/stack_library/acm/acm_stack.py +0 -0
  116. {cdk_factory-0.19.0 → cdk_factory-0.19.7}/src/cdk_factory/stack_library/api_gateway/api_gateway_stack.py +0 -0
  117. {cdk_factory-0.19.0 → cdk_factory-0.19.7}/src/cdk_factory/stack_library/auto_scaling/__init__.py +0 -0
  118. {cdk_factory-0.19.0 → cdk_factory-0.19.7}/src/cdk_factory/stack_library/auto_scaling/auto_scaling_stack.py +0 -0
  119. {cdk_factory-0.19.0 → cdk_factory-0.19.7}/src/cdk_factory/stack_library/aws_lambdas/lambda_stack.py +0 -0
  120. {cdk_factory-0.19.0 → cdk_factory-0.19.7}/src/cdk_factory/stack_library/buckets/README.md +0 -0
  121. {cdk_factory-0.19.0 → cdk_factory-0.19.7}/src/cdk_factory/stack_library/buckets/bucket_stack.py +0 -0
  122. {cdk_factory-0.19.0 → cdk_factory-0.19.7}/src/cdk_factory/stack_library/cloudfront/__init__.py +0 -0
  123. {cdk_factory-0.19.0 → cdk_factory-0.19.7}/src/cdk_factory/stack_library/code_artifact/code_artifact_stack.py +0 -0
  124. {cdk_factory-0.19.0 → cdk_factory-0.19.7}/src/cdk_factory/stack_library/cognito/cognito_stack.py +0 -0
  125. {cdk_factory-0.19.0 → cdk_factory-0.19.7}/src/cdk_factory/stack_library/dynamodb/dynamodb_stack.py +0 -0
  126. {cdk_factory-0.19.0 → cdk_factory-0.19.7}/src/cdk_factory/stack_library/ecr/README.md +0 -0
  127. {cdk_factory-0.19.0 → cdk_factory-0.19.7}/src/cdk_factory/stack_library/ecr/ecr_stack.py +0 -0
  128. {cdk_factory-0.19.0 → cdk_factory-0.19.7}/src/cdk_factory/stack_library/ecs/__init__.py +0 -0
  129. {cdk_factory-0.19.0 → cdk_factory-0.19.7}/src/cdk_factory/stack_library/ecs/ecs_cluster_stack.py +0 -0
  130. {cdk_factory-0.19.0 → cdk_factory-0.19.7}/src/cdk_factory/stack_library/ecs/ecs_service_stack.py +0 -0
  131. {cdk_factory-0.19.0 → cdk_factory-0.19.7}/src/cdk_factory/stack_library/lambda_edge/__init__.py +0 -0
  132. {cdk_factory-0.19.0 → cdk_factory-0.19.7}/src/cdk_factory/stack_library/load_balancer/__init__.py +0 -0
  133. {cdk_factory-0.19.0 → cdk_factory-0.19.7}/src/cdk_factory/stack_library/load_balancer/load_balancer_stack.py +0 -0
  134. {cdk_factory-0.19.0 → cdk_factory-0.19.7}/src/cdk_factory/stack_library/monitoring/__init__.py +0 -0
  135. {cdk_factory-0.19.0 → cdk_factory-0.19.7}/src/cdk_factory/stack_library/monitoring/monitoring_stack.py +0 -0
  136. {cdk_factory-0.19.0 → cdk_factory-0.19.7}/src/cdk_factory/stack_library/rds/__init__.py +0 -0
  137. {cdk_factory-0.19.0 → cdk_factory-0.19.7}/src/cdk_factory/stack_library/rds/rds_stack.py +0 -0
  138. {cdk_factory-0.19.0 → cdk_factory-0.19.7}/src/cdk_factory/stack_library/route53/__init__.py +0 -0
  139. {cdk_factory-0.19.0 → cdk_factory-0.19.7}/src/cdk_factory/stack_library/route53/route53_stack.py +0 -0
  140. {cdk_factory-0.19.0 → cdk_factory-0.19.7}/src/cdk_factory/stack_library/rum/__init__.py +0 -0
  141. {cdk_factory-0.19.0 → cdk_factory-0.19.7}/src/cdk_factory/stack_library/rum/rum_stack.py +0 -0
  142. {cdk_factory-0.19.0 → cdk_factory-0.19.7}/src/cdk_factory/stack_library/security_group/__init__.py +0 -0
  143. {cdk_factory-0.19.0 → cdk_factory-0.19.7}/src/cdk_factory/stack_library/security_group/security_group_full_stack.py +0 -0
  144. {cdk_factory-0.19.0 → cdk_factory-0.19.7}/src/cdk_factory/stack_library/security_group/security_group_stack.py +0 -0
  145. {cdk_factory-0.19.0 → cdk_factory-0.19.7}/src/cdk_factory/stack_library/simple_queue_service/sqs_stack.py +0 -0
  146. {cdk_factory-0.19.0 → cdk_factory-0.19.7}/src/cdk_factory/stack_library/stack_base.py +0 -0
  147. {cdk_factory-0.19.0 → cdk_factory-0.19.7}/src/cdk_factory/stack_library/vpc/__init__.py +0 -0
  148. {cdk_factory-0.19.0 → cdk_factory-0.19.7}/src/cdk_factory/stack_library/vpc/vpc_stack.py +0 -0
  149. {cdk_factory-0.19.0 → cdk_factory-0.19.7}/src/cdk_factory/stages/websites/static_website_stage.py +0 -0
  150. {cdk_factory-0.19.0 → cdk_factory-0.19.7}/src/cdk_factory/templates/README.md +0 -0
  151. {cdk_factory-0.19.0 → cdk_factory-0.19.7}/src/cdk_factory/templates/app.py.template +0 -0
  152. {cdk_factory-0.19.0 → cdk_factory-0.19.7}/src/cdk_factory/templates/cdk.json.template +0 -0
  153. {cdk_factory-0.19.0 → cdk_factory-0.19.7}/src/cdk_factory/utilities/api_gateway_integration_utility.py +0 -0
  154. {cdk_factory-0.19.0 → cdk_factory-0.19.7}/src/cdk_factory/utilities/commandline_args.py +0 -0
  155. {cdk_factory-0.19.0 → cdk_factory-0.19.7}/src/cdk_factory/utilities/configuration_loader.py +0 -0
  156. {cdk_factory-0.19.0 → cdk_factory-0.19.7}/src/cdk_factory/utilities/docker_utilities.py +0 -0
  157. {cdk_factory-0.19.0 → cdk_factory-0.19.7}/src/cdk_factory/utilities/environment_services.py +0 -0
  158. {cdk_factory-0.19.0 → cdk_factory-0.19.7}/src/cdk_factory/utilities/file_operations.py +0 -0
  159. {cdk_factory-0.19.0 → cdk_factory-0.19.7}/src/cdk_factory/utilities/git_utilities.py +0 -0
  160. {cdk_factory-0.19.0 → cdk_factory-0.19.7}/src/cdk_factory/utilities/json_loading_utility.py +0 -0
  161. {cdk_factory-0.19.0 → cdk_factory-0.19.7}/src/cdk_factory/utilities/lambda_function_utilities.py +0 -0
  162. {cdk_factory-0.19.0 → cdk_factory-0.19.7}/src/cdk_factory/utilities/os_execute.py +0 -0
  163. {cdk_factory-0.19.0 → cdk_factory-0.19.7}/src/cdk_factory/utils/api_gateway_utilities.py +0 -0
  164. {cdk_factory-0.19.0 → cdk_factory-0.19.7}/src/cdk_factory/validation/config_validator.py +0 -0
  165. {cdk_factory-0.19.0 → cdk_factory-0.19.7}/src/cdk_factory/workload/workload_factory.py +0 -0
  166. {cdk_factory-0.19.0 → cdk_factory-0.19.7}/src/handlers/test/handler.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: cdk_factory
3
- Version: 0.19.0
3
+ Version: 0.19.7
4
4
  Summary: CDK Factory. A QuickStarter and best practices setup for CDK projects
5
5
  Author-email: Eric Wilson <eric.wilson@geekcafe.com>
6
6
  License: MIT License
@@ -33,7 +33,7 @@ markers = [
33
33
  [project]
34
34
 
35
35
  name = "cdk_factory"
36
- version = "0.19.0"
36
+ version = "0.19.7"
37
37
  authors = [
38
38
  { name="Eric Wilson", email="eric.wilson@geekcafe.com" }
39
39
  ]
@@ -52,13 +52,13 @@ class LambdaEdgeConfig(EnhancedBaseConfig):
52
52
  """Timeout in seconds (max 5 for origin-request)"""
53
53
  timeout = int(self._config.get("timeout", 5))
54
54
  if timeout > 5:
55
- raise ValueError("Lambda@Edge origin-request timeout cannot exceed 5 seconds")
55
+ raise ValueError("Lambda@Edge origin-request timeout cannot exceed 5 seconds. Value was set to {}".format(timeout))
56
56
  return timeout
57
57
 
58
58
  @property
59
59
  def code_path(self) -> str:
60
60
  """Path to Lambda function code directory"""
61
- return self._config.get("code_path", "./lambdas/edge/ip_gate")
61
+ return self._config.get("code_path", "./lambdas/cloudfront/ip_gate")
62
62
 
63
63
  @property
64
64
  def environment(self) -> Dict[str, str]:
@@ -29,7 +29,7 @@ class RdsConfig(EnhancedBaseConfig):
29
29
  @property
30
30
  def name(self) -> str:
31
31
  """RDS instance name"""
32
- return self.__config.get("name", "database")
32
+ return self.__config.get("name", self.database_name)
33
33
 
34
34
  @property
35
35
  def identifier(self) -> str:
@@ -158,7 +158,15 @@ class S3BucketConfig(EnhancedBaseConfig):
158
158
  value = self.__config.get("block_public_access")
159
159
 
160
160
  if value and isinstance(value, str):
161
- if value.lower() == "block_acls":
161
+ if value.lower() == "disabled":
162
+ # For public website hosting, disable block public access
163
+ return s3.BlockPublicAccess(
164
+ block_public_acls=False,
165
+ block_public_policy=False,
166
+ ignore_public_acls=False,
167
+ restrict_public_buckets=False
168
+ )
169
+ elif value.lower() == "block_acls":
162
170
  return s3.BlockPublicAccess.BLOCK_ACLS
163
171
  # elif value.lower() == "block_public_acls":
164
172
  # return s3.BlockPublicAccess.block_public_acls
@@ -558,7 +558,7 @@ class CloudFrontDistributionConstruct(Construct):
558
558
  """
559
559
  bucket_policy = s3.BucketPolicy(
560
560
  self,
561
- id=f"CloudFrontBucketPolicy-{self.source_bucket.bucket_name}",
561
+ id="CloudFrontBucketPolicy",
562
562
  bucket=self.source_bucket,
563
563
  )
564
564
 
@@ -14,6 +14,7 @@ from aws_cdk import (
14
14
  aws_cloudfront_origins as origins,
15
15
  aws_certificatemanager as acm,
16
16
  aws_route53 as route53,
17
+ aws_s3 as s3,
17
18
  aws_lambda as _lambda,
18
19
  aws_ssm as ssm,
19
20
  CfnOutput,
@@ -222,27 +223,27 @@ class CloudFrontStack(IStack):
222
223
 
223
224
  def _create_custom_origin(self, config: Dict[str, Any]) -> cloudfront.IOrigin:
224
225
  """Create custom origin (ALB, API Gateway, etc.)"""
225
- domain_name = config.get("domain_name")
226
+ domain_name = self.resolve_ssm_value(self, config.get("domain_name"), config.get("domain_name"))
226
227
  origin_id = config.get("id")
227
228
 
228
229
  if not domain_name:
229
230
  raise ValueError("domain_name is required for custom origin")
230
231
 
231
- # Check if domain name is a placeholder from ssm_imports
232
- if domain_name.startswith("{{") and domain_name.endswith("}}"):
233
- placeholder_key = domain_name[2:-2] # Remove {{ and }}
234
- if placeholder_key in self.ssm_imported_values:
235
- domain_name = self.ssm_imported_values[placeholder_key]
236
- logger.info(f"Resolved domain from SSM import: {placeholder_key}")
237
- else:
238
- logger.warning(f"Placeholder {domain_name} not found in SSM imports")
239
-
240
- # Legacy support: Check if domain name is an SSM parameter reference
241
- elif domain_name.startswith("{{ssm:") and domain_name.endswith("}}"):
242
- # Extract SSM parameter name
243
- ssm_param = domain_name[6:-2] # Remove {{ssm: and }}
244
- domain_name = ssm.StringParameter.value_from_lookup(self, ssm_param)
245
- logger.info(f"Resolved domain from SSM lookup {ssm_param}: {domain_name}")
232
+ # # Check if domain name is a placeholder from ssm_imports
233
+ # if domain_name.startswith("{{") and domain_name.endswith("}}"):
234
+ # placeholder_key = domain_name[2:-2] # Remove {{ and }}
235
+ # if placeholder_key in self.ssm_imported_values:
236
+ # domain_name = self.ssm_imported_values[placeholder_key]
237
+ # logger.info(f"Resolved domain from SSM import: {placeholder_key}")
238
+ # else:
239
+ # logger.warning(f"Placeholder {domain_name} not found in SSM imports")
240
+
241
+ # # Legacy support: Check if domain name is an SSM parameter reference
242
+ # elif domain_name.startswith("{{ssm:") and domain_name.endswith("}}"):
243
+ # # Extract SSM parameter name
244
+ # ssm_param = domain_name[6:-2] # Remove {{ssm: and }}
245
+ # domain_name = ssm.StringParameter.value_from_lookup(self, ssm_param)
246
+ # logger.info(f"Resolved domain from SSM lookup {ssm_param}: {domain_name}")
246
247
 
247
248
  # Build custom headers (e.g., X-Origin-Secret)
248
249
  custom_headers = {}
@@ -296,11 +297,32 @@ class CloudFrontStack(IStack):
296
297
 
297
298
  def _create_s3_origin(self, config: Dict[str, Any]) -> cloudfront.IOrigin:
298
299
  """Create S3 origin"""
299
- # S3 origin implementation
300
- # This would use origins.S3Origin
301
- raise NotImplementedError(
302
- "S3 origin support - use existing static_website_stack for S3"
300
+ bucket_name = self.resolve_ssm_value(self, config.get("bucket_name"), config.get("bucket_name"))
301
+
302
+
303
+ origin_path = config.get("origin_path", "")
304
+
305
+ if not bucket_name:
306
+ raise ValueError("S3 origin requires 'bucket_name' configuration")
307
+
308
+ # For S3 origins, we need to import the bucket by name
309
+ bucket = s3.Bucket.from_bucket_name(
310
+ self,
311
+ id=f"S3OriginBucket-{config.get('id', 'unknown')}",
312
+ bucket_name=bucket_name
313
+ )
314
+
315
+ # Create S3 origin with OAC (Origin Access Control) for security
316
+ origin = origins.S3BucketOrigin.with_origin_access_control(
317
+ bucket,
318
+ origin_path=origin_path,
319
+ origin_access_levels=[
320
+ cloudfront.AccessLevel.READ,
321
+ cloudfront.AccessLevel.LIST,
322
+ ],
303
323
  )
324
+
325
+ return origin
304
326
 
305
327
  def _create_distribution(self) -> None:
306
328
  """Create CloudFront distribution"""
@@ -132,7 +132,7 @@ class LambdaEdgeStack(IStack, StandardizedSsmMixin):
132
132
  def _create_lambda_function(self, function_name: str) -> None:
133
133
  """Create the Lambda function"""
134
134
 
135
- # Resolve code path - support package references (e.g., "cdk_factory:lambdas/edge/ip_gate")
135
+ # Resolve code path - support package references (e.g., "cdk_factory:lambdas/cloudfront/ip_gate")
136
136
  code_path_str = self.edge_config.code_path
137
137
 
138
138
  if ':' in code_path_str:
@@ -113,12 +113,16 @@ class StaticWebSiteStack(IStack):
113
113
  self, stack_config: StackConfig, workload: WorkloadConfig
114
114
  ) -> str:
115
115
  source = stack_config.dictionary.get("src", {}).get("path")
116
+ if not source:
117
+ raise ValueError("Source path is required for static website stack")
116
118
  for base in workload.paths:
117
- candidate = Path(os.path.join(Path(base), source)).resolve()
119
+ if base is None:
120
+ continue
121
+ candidate = Path(os.path.join(str(Path(base)), source)).resolve()
118
122
 
119
123
  if candidate.exists():
120
124
  return str(candidate)
121
- raise ValueError(f"Could not find the source path: {source}")
125
+ raise ValueError(f"Could not find the source path for static site: {source}")
122
126
 
123
127
  def __setup_cloudfront_distribution(
124
128
  self,
@@ -0,0 +1 @@
1
+ __version__ = "0.19.7"
@@ -1 +0,0 @@
1
- __version__ = "0.19.0"
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes