cdk-factory 0.18.10__tar.gz → 0.18.14__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.

Potentially problematic release.


This version of cdk-factory might be problematic. Click here for more details.

Files changed (166) hide show
  1. {cdk_factory-0.18.10 → cdk_factory-0.18.14}/PKG-INFO +1 -1
  2. {cdk_factory-0.18.10 → cdk_factory-0.18.14}/pyproject.toml +1 -1
  3. {cdk_factory-0.18.10 → cdk_factory-0.18.14}/src/cdk_factory/configurations/resources/ecs_service.py +24 -2
  4. {cdk_factory-0.18.10 → cdk_factory-0.18.14}/src/cdk_factory/stack_library/cloudfront/cloudfront_stack.py +30 -1
  5. {cdk_factory-0.18.10 → cdk_factory-0.18.14}/src/cdk_factory/stack_library/ecs/ecs_service_stack.py +1 -1
  6. {cdk_factory-0.18.10 → cdk_factory-0.18.14}/src/cdk_factory/stack_library/lambda_edge/lambda_edge_stack.py +1 -1
  7. cdk_factory-0.18.14/src/cdk_factory/version.py +1 -0
  8. cdk_factory-0.18.10/src/cdk_factory/version.py +0 -1
  9. {cdk_factory-0.18.10 → cdk_factory-0.18.14}/.gitignore +0 -0
  10. {cdk_factory-0.18.10 → cdk_factory-0.18.14}/.windsurfrules +0 -0
  11. {cdk_factory-0.18.10 → cdk_factory-0.18.14}/LICENSE +0 -0
  12. {cdk_factory-0.18.10 → cdk_factory-0.18.14}/README.md +0 -0
  13. {cdk_factory-0.18.10 → cdk_factory-0.18.14}/REFACTORING_PLAN.md +0 -0
  14. {cdk_factory-0.18.10 → cdk_factory-0.18.14}/archive/README.md +0 -0
  15. {cdk_factory-0.18.10 → cdk_factory-0.18.14}/archive/migrate_to_enhanced_ssm.py +0 -0
  16. {cdk_factory-0.18.10 → cdk_factory-0.18.14}/examples/json-imports/README.md +0 -0
  17. {cdk_factory-0.18.10 → cdk_factory-0.18.14}/examples/separate-api-gateway/README.md +0 -0
  18. {cdk_factory-0.18.10 → cdk_factory-0.18.14}/examples/separate-api-gateway/api-gateway-stack.json +0 -0
  19. {cdk_factory-0.18.10 → cdk_factory-0.18.14}/examples/separate-api-gateway/config.json +0 -0
  20. {cdk_factory-0.18.10 → cdk_factory-0.18.14}/examples/separate-api-gateway/lambda-stack.json +0 -0
  21. {cdk_factory-0.18.10 → cdk_factory-0.18.14}/mypy.ini +0 -0
  22. {cdk_factory-0.18.10 → cdk_factory-0.18.14}/publish_to_pypi.py +0 -0
  23. {cdk_factory-0.18.10 → cdk_factory-0.18.14}/publish_to_pypi.sh +0 -0
  24. {cdk_factory-0.18.10 → cdk_factory-0.18.14}/pysetup.py +0 -0
  25. {cdk_factory-0.18.10 → cdk_factory-0.18.14}/pysetup.sh +0 -0
  26. {cdk_factory-0.18.10 → cdk_factory-0.18.14}/requirements.dev.txt +0 -0
  27. {cdk_factory-0.18.10 → cdk_factory-0.18.14}/requirements.tests.txt +0 -0
  28. {cdk_factory-0.18.10 → cdk_factory-0.18.14}/requirements.txt +0 -0
  29. {cdk_factory-0.18.10 → cdk_factory-0.18.14}/run-checks.sh +0 -0
  30. {cdk_factory-0.18.10 → cdk_factory-0.18.14}/run-tests-clean-venv.sh +0 -0
  31. {cdk_factory-0.18.10 → cdk_factory-0.18.14}/run-tests.sh +0 -0
  32. {cdk_factory-0.18.10 → cdk_factory-0.18.14}/scripts/cloudfront-cleanup.sh +0 -0
  33. {cdk_factory-0.18.10 → cdk_factory-0.18.14}/src/cdk_factory/__init__.py +0 -0
  34. {cdk_factory-0.18.10 → cdk_factory-0.18.14}/src/cdk_factory/app.py +0 -0
  35. {cdk_factory-0.18.10 → cdk_factory-0.18.14}/src/cdk_factory/builds/README.md +0 -0
  36. {cdk_factory-0.18.10 → cdk_factory-0.18.14}/src/cdk_factory/cdk.json +0 -0
  37. {cdk_factory-0.18.10 → cdk_factory-0.18.14}/src/cdk_factory/cli.py +0 -0
  38. {cdk_factory-0.18.10 → cdk_factory-0.18.14}/src/cdk_factory/commands/command_loader.py +0 -0
  39. {cdk_factory-0.18.10 → cdk_factory-0.18.14}/src/cdk_factory/configurations/base_config.py +0 -0
  40. {cdk_factory-0.18.10 → cdk_factory-0.18.14}/src/cdk_factory/configurations/cdk_config.py +0 -0
  41. {cdk_factory-0.18.10 → cdk_factory-0.18.14}/src/cdk_factory/configurations/deployment.py +0 -0
  42. {cdk_factory-0.18.10 → cdk_factory-0.18.14}/src/cdk_factory/configurations/deployment_wave.py +0 -0
  43. {cdk_factory-0.18.10 → cdk_factory-0.18.14}/src/cdk_factory/configurations/devops.py +0 -0
  44. {cdk_factory-0.18.10 → cdk_factory-0.18.14}/src/cdk_factory/configurations/enhanced_base_config.py +0 -0
  45. {cdk_factory-0.18.10 → cdk_factory-0.18.14}/src/cdk_factory/configurations/enhanced_ssm_config.py +0 -0
  46. {cdk_factory-0.18.10 → cdk_factory-0.18.14}/src/cdk_factory/configurations/management.py +0 -0
  47. {cdk_factory-0.18.10 → cdk_factory-0.18.14}/src/cdk_factory/configurations/pipeline.py +0 -0
  48. {cdk_factory-0.18.10 → cdk_factory-0.18.14}/src/cdk_factory/configurations/pipeline_stage.py +0 -0
  49. {cdk_factory-0.18.10 → cdk_factory-0.18.14}/src/cdk_factory/configurations/resources/_resources.py +0 -0
  50. {cdk_factory-0.18.10 → cdk_factory-0.18.14}/src/cdk_factory/configurations/resources/acm.py +0 -0
  51. {cdk_factory-0.18.10 → cdk_factory-0.18.14}/src/cdk_factory/configurations/resources/api_gateway.py +0 -0
  52. {cdk_factory-0.18.10 → cdk_factory-0.18.14}/src/cdk_factory/configurations/resources/apigateway_route_config.py +0 -0
  53. {cdk_factory-0.18.10 → cdk_factory-0.18.14}/src/cdk_factory/configurations/resources/auto_scaling.py +0 -0
  54. {cdk_factory-0.18.10 → cdk_factory-0.18.14}/src/cdk_factory/configurations/resources/cloudfront.py +0 -0
  55. {cdk_factory-0.18.10 → cdk_factory-0.18.14}/src/cdk_factory/configurations/resources/cloudwatch_widget.py +0 -0
  56. {cdk_factory-0.18.10 → cdk_factory-0.18.14}/src/cdk_factory/configurations/resources/code_artifact.py +0 -0
  57. {cdk_factory-0.18.10 → cdk_factory-0.18.14}/src/cdk_factory/configurations/resources/code_artifact_login.py +0 -0
  58. {cdk_factory-0.18.10 → cdk_factory-0.18.14}/src/cdk_factory/configurations/resources/code_repository.py +0 -0
  59. {cdk_factory-0.18.10 → cdk_factory-0.18.14}/src/cdk_factory/configurations/resources/cognito.py +0 -0
  60. {cdk_factory-0.18.10 → cdk_factory-0.18.14}/src/cdk_factory/configurations/resources/docker.py +0 -0
  61. {cdk_factory-0.18.10 → cdk_factory-0.18.14}/src/cdk_factory/configurations/resources/dynamodb.py +0 -0
  62. {cdk_factory-0.18.10 → cdk_factory-0.18.14}/src/cdk_factory/configurations/resources/ecr.py +0 -0
  63. {cdk_factory-0.18.10 → cdk_factory-0.18.14}/src/cdk_factory/configurations/resources/ecs_cluster.py +0 -0
  64. {cdk_factory-0.18.10 → cdk_factory-0.18.14}/src/cdk_factory/configurations/resources/exisiting.py +0 -0
  65. {cdk_factory-0.18.10 → cdk_factory-0.18.14}/src/cdk_factory/configurations/resources/lambda_edge.py +0 -0
  66. {cdk_factory-0.18.10 → cdk_factory-0.18.14}/src/cdk_factory/configurations/resources/lambda_function.py +0 -0
  67. {cdk_factory-0.18.10 → cdk_factory-0.18.14}/src/cdk_factory/configurations/resources/lambda_layers.py +0 -0
  68. {cdk_factory-0.18.10 → cdk_factory-0.18.14}/src/cdk_factory/configurations/resources/lambda_triggers.py +0 -0
  69. {cdk_factory-0.18.10 → cdk_factory-0.18.14}/src/cdk_factory/configurations/resources/load_balancer.py +0 -0
  70. {cdk_factory-0.18.10 → cdk_factory-0.18.14}/src/cdk_factory/configurations/resources/monitoring.py +0 -0
  71. {cdk_factory-0.18.10 → cdk_factory-0.18.14}/src/cdk_factory/configurations/resources/rds.py +0 -0
  72. {cdk_factory-0.18.10 → cdk_factory-0.18.14}/src/cdk_factory/configurations/resources/resource_mapping.py +0 -0
  73. {cdk_factory-0.18.10 → cdk_factory-0.18.14}/src/cdk_factory/configurations/resources/resource_naming.py +0 -0
  74. {cdk_factory-0.18.10 → cdk_factory-0.18.14}/src/cdk_factory/configurations/resources/resource_types.py +0 -0
  75. {cdk_factory-0.18.10 → cdk_factory-0.18.14}/src/cdk_factory/configurations/resources/route53.py +0 -0
  76. {cdk_factory-0.18.10 → cdk_factory-0.18.14}/src/cdk_factory/configurations/resources/route53_hosted_zone.py +0 -0
  77. {cdk_factory-0.18.10 → cdk_factory-0.18.14}/src/cdk_factory/configurations/resources/rum.py +0 -0
  78. {cdk_factory-0.18.10 → cdk_factory-0.18.14}/src/cdk_factory/configurations/resources/s3.py +0 -0
  79. {cdk_factory-0.18.10 → cdk_factory-0.18.14}/src/cdk_factory/configurations/resources/security_group.py +0 -0
  80. {cdk_factory-0.18.10 → cdk_factory-0.18.14}/src/cdk_factory/configurations/resources/security_group_full_stack.py +0 -0
  81. {cdk_factory-0.18.10 → cdk_factory-0.18.14}/src/cdk_factory/configurations/resources/sqs.py +0 -0
  82. {cdk_factory-0.18.10 → cdk_factory-0.18.14}/src/cdk_factory/configurations/resources/vpc.py +0 -0
  83. {cdk_factory-0.18.10 → cdk_factory-0.18.14}/src/cdk_factory/configurations/stack.py +0 -0
  84. {cdk_factory-0.18.10 → cdk_factory-0.18.14}/src/cdk_factory/configurations/workload.py +0 -0
  85. {cdk_factory-0.18.10 → cdk_factory-0.18.14}/src/cdk_factory/constructs/cloudfront/cloudfront_distribution_construct.py +0 -0
  86. {cdk_factory-0.18.10 → cdk_factory-0.18.14}/src/cdk_factory/constructs/ecr/ecr_construct.py +0 -0
  87. {cdk_factory-0.18.10 → cdk_factory-0.18.14}/src/cdk_factory/constructs/lambdas/lambda_function_construct.py +0 -0
  88. {cdk_factory-0.18.10 → cdk_factory-0.18.14}/src/cdk_factory/constructs/lambdas/lambda_function_docker_construct.py +0 -0
  89. {cdk_factory-0.18.10 → cdk_factory-0.18.14}/src/cdk_factory/constructs/lambdas/lambda_function_role_construct.py +0 -0
  90. {cdk_factory-0.18.10 → cdk_factory-0.18.14}/src/cdk_factory/constructs/lambdas/policies/policy_docs.py +0 -0
  91. {cdk_factory-0.18.10 → cdk_factory-0.18.14}/src/cdk_factory/constructs/lambdas/policies/policy_statements.py +0 -0
  92. {cdk_factory-0.18.10 → cdk_factory-0.18.14}/src/cdk_factory/constructs/s3_buckets/s3_bucket_construct.py +0 -0
  93. {cdk_factory-0.18.10 → cdk_factory-0.18.14}/src/cdk_factory/constructs/s3_buckets/s3_bucket_replication_destination_construct.py +0 -0
  94. {cdk_factory-0.18.10 → cdk_factory-0.18.14}/src/cdk_factory/constructs/s3_buckets/s3_bucket_replication_source_construct.py +0 -0
  95. {cdk_factory-0.18.10 → cdk_factory-0.18.14}/src/cdk_factory/constructs/sqs/policies/sqs_policies.py +0 -0
  96. {cdk_factory-0.18.10 → cdk_factory-0.18.14}/src/cdk_factory/interfaces/istack.py +0 -0
  97. {cdk_factory-0.18.10 → cdk_factory-0.18.14}/src/cdk_factory/interfaces/live_ssm_resolver.py +0 -0
  98. {cdk_factory-0.18.10 → cdk_factory-0.18.14}/src/cdk_factory/interfaces/networked_stack_mixin.py +0 -0
  99. {cdk_factory-0.18.10 → cdk_factory-0.18.14}/src/cdk_factory/interfaces/standardized_ssm_mixin.py +0 -0
  100. {cdk_factory-0.18.10 → cdk_factory-0.18.14}/src/cdk_factory/interfaces/vpc_provider_mixin.py +0 -0
  101. {cdk_factory-0.18.10 → cdk_factory-0.18.14}/src/cdk_factory/lambdas/edge/ip_gate/handler.py +0 -0
  102. {cdk_factory-0.18.10 → cdk_factory-0.18.14}/src/cdk_factory/lambdas/health_handler.py +0 -0
  103. {cdk_factory-0.18.10 → cdk_factory-0.18.14}/src/cdk_factory/pipeline/path_utils.py +0 -0
  104. {cdk_factory-0.18.10 → cdk_factory-0.18.14}/src/cdk_factory/pipeline/pipeline_factory.py +0 -0
  105. {cdk_factory-0.18.10 → cdk_factory-0.18.14}/src/cdk_factory/pipeline/security/policies.py +0 -0
  106. {cdk_factory-0.18.10 → cdk_factory-0.18.14}/src/cdk_factory/pipeline/security/roles.py +0 -0
  107. {cdk_factory-0.18.10 → cdk_factory-0.18.14}/src/cdk_factory/pipeline/stage.py +0 -0
  108. {cdk_factory-0.18.10 → cdk_factory-0.18.14}/src/cdk_factory/stack/istack.py +0 -0
  109. {cdk_factory-0.18.10 → cdk_factory-0.18.14}/src/cdk_factory/stack/stack_factory.py +0 -0
  110. {cdk_factory-0.18.10 → cdk_factory-0.18.14}/src/cdk_factory/stack/stack_module_loader.py +0 -0
  111. {cdk_factory-0.18.10 → cdk_factory-0.18.14}/src/cdk_factory/stack/stack_module_registry.py +0 -0
  112. {cdk_factory-0.18.10 → cdk_factory-0.18.14}/src/cdk_factory/stack/stack_modules.py +0 -0
  113. {cdk_factory-0.18.10 → cdk_factory-0.18.14}/src/cdk_factory/stack_library/__init__.py +0 -0
  114. {cdk_factory-0.18.10 → cdk_factory-0.18.14}/src/cdk_factory/stack_library/acm/__init__.py +0 -0
  115. {cdk_factory-0.18.10 → cdk_factory-0.18.14}/src/cdk_factory/stack_library/acm/acm_stack.py +0 -0
  116. {cdk_factory-0.18.10 → cdk_factory-0.18.14}/src/cdk_factory/stack_library/api_gateway/api_gateway_stack.py +0 -0
  117. {cdk_factory-0.18.10 → cdk_factory-0.18.14}/src/cdk_factory/stack_library/auto_scaling/__init__.py +0 -0
  118. {cdk_factory-0.18.10 → cdk_factory-0.18.14}/src/cdk_factory/stack_library/auto_scaling/auto_scaling_stack.py +0 -0
  119. {cdk_factory-0.18.10 → cdk_factory-0.18.14}/src/cdk_factory/stack_library/aws_lambdas/lambda_stack.py +0 -0
  120. {cdk_factory-0.18.10 → cdk_factory-0.18.14}/src/cdk_factory/stack_library/buckets/README.md +0 -0
  121. {cdk_factory-0.18.10 → cdk_factory-0.18.14}/src/cdk_factory/stack_library/buckets/bucket_stack.py +0 -0
  122. {cdk_factory-0.18.10 → cdk_factory-0.18.14}/src/cdk_factory/stack_library/cloudfront/__init__.py +0 -0
  123. {cdk_factory-0.18.10 → cdk_factory-0.18.14}/src/cdk_factory/stack_library/code_artifact/code_artifact_stack.py +0 -0
  124. {cdk_factory-0.18.10 → cdk_factory-0.18.14}/src/cdk_factory/stack_library/cognito/cognito_stack.py +0 -0
  125. {cdk_factory-0.18.10 → cdk_factory-0.18.14}/src/cdk_factory/stack_library/dynamodb/dynamodb_stack.py +0 -0
  126. {cdk_factory-0.18.10 → cdk_factory-0.18.14}/src/cdk_factory/stack_library/ecr/README.md +0 -0
  127. {cdk_factory-0.18.10 → cdk_factory-0.18.14}/src/cdk_factory/stack_library/ecr/ecr_stack.py +0 -0
  128. {cdk_factory-0.18.10 → cdk_factory-0.18.14}/src/cdk_factory/stack_library/ecs/__init__.py +0 -0
  129. {cdk_factory-0.18.10 → cdk_factory-0.18.14}/src/cdk_factory/stack_library/ecs/ecs_cluster_stack.py +0 -0
  130. {cdk_factory-0.18.10 → cdk_factory-0.18.14}/src/cdk_factory/stack_library/lambda_edge/__init__.py +0 -0
  131. {cdk_factory-0.18.10 → cdk_factory-0.18.14}/src/cdk_factory/stack_library/load_balancer/__init__.py +0 -0
  132. {cdk_factory-0.18.10 → cdk_factory-0.18.14}/src/cdk_factory/stack_library/load_balancer/load_balancer_stack.py +0 -0
  133. {cdk_factory-0.18.10 → cdk_factory-0.18.14}/src/cdk_factory/stack_library/monitoring/__init__.py +0 -0
  134. {cdk_factory-0.18.10 → cdk_factory-0.18.14}/src/cdk_factory/stack_library/monitoring/monitoring_stack.py +0 -0
  135. {cdk_factory-0.18.10 → cdk_factory-0.18.14}/src/cdk_factory/stack_library/rds/__init__.py +0 -0
  136. {cdk_factory-0.18.10 → cdk_factory-0.18.14}/src/cdk_factory/stack_library/rds/rds_stack.py +0 -0
  137. {cdk_factory-0.18.10 → cdk_factory-0.18.14}/src/cdk_factory/stack_library/route53/__init__.py +0 -0
  138. {cdk_factory-0.18.10 → cdk_factory-0.18.14}/src/cdk_factory/stack_library/route53/route53_stack.py +0 -0
  139. {cdk_factory-0.18.10 → cdk_factory-0.18.14}/src/cdk_factory/stack_library/rum/__init__.py +0 -0
  140. {cdk_factory-0.18.10 → cdk_factory-0.18.14}/src/cdk_factory/stack_library/rum/rum_stack.py +0 -0
  141. {cdk_factory-0.18.10 → cdk_factory-0.18.14}/src/cdk_factory/stack_library/security_group/__init__.py +0 -0
  142. {cdk_factory-0.18.10 → cdk_factory-0.18.14}/src/cdk_factory/stack_library/security_group/security_group_full_stack.py +0 -0
  143. {cdk_factory-0.18.10 → cdk_factory-0.18.14}/src/cdk_factory/stack_library/security_group/security_group_stack.py +0 -0
  144. {cdk_factory-0.18.10 → cdk_factory-0.18.14}/src/cdk_factory/stack_library/simple_queue_service/sqs_stack.py +0 -0
  145. {cdk_factory-0.18.10 → cdk_factory-0.18.14}/src/cdk_factory/stack_library/stack_base.py +0 -0
  146. {cdk_factory-0.18.10 → cdk_factory-0.18.14}/src/cdk_factory/stack_library/vpc/__init__.py +0 -0
  147. {cdk_factory-0.18.10 → cdk_factory-0.18.14}/src/cdk_factory/stack_library/vpc/vpc_stack.py +0 -0
  148. {cdk_factory-0.18.10 → cdk_factory-0.18.14}/src/cdk_factory/stack_library/websites/static_website_stack.py +0 -0
  149. {cdk_factory-0.18.10 → cdk_factory-0.18.14}/src/cdk_factory/stages/websites/static_website_stage.py +0 -0
  150. {cdk_factory-0.18.10 → cdk_factory-0.18.14}/src/cdk_factory/templates/README.md +0 -0
  151. {cdk_factory-0.18.10 → cdk_factory-0.18.14}/src/cdk_factory/templates/app.py.template +0 -0
  152. {cdk_factory-0.18.10 → cdk_factory-0.18.14}/src/cdk_factory/templates/cdk.json.template +0 -0
  153. {cdk_factory-0.18.10 → cdk_factory-0.18.14}/src/cdk_factory/utilities/api_gateway_integration_utility.py +0 -0
  154. {cdk_factory-0.18.10 → cdk_factory-0.18.14}/src/cdk_factory/utilities/commandline_args.py +0 -0
  155. {cdk_factory-0.18.10 → cdk_factory-0.18.14}/src/cdk_factory/utilities/configuration_loader.py +0 -0
  156. {cdk_factory-0.18.10 → cdk_factory-0.18.14}/src/cdk_factory/utilities/docker_utilities.py +0 -0
  157. {cdk_factory-0.18.10 → cdk_factory-0.18.14}/src/cdk_factory/utilities/environment_services.py +0 -0
  158. {cdk_factory-0.18.10 → cdk_factory-0.18.14}/src/cdk_factory/utilities/file_operations.py +0 -0
  159. {cdk_factory-0.18.10 → cdk_factory-0.18.14}/src/cdk_factory/utilities/git_utilities.py +0 -0
  160. {cdk_factory-0.18.10 → cdk_factory-0.18.14}/src/cdk_factory/utilities/json_loading_utility.py +0 -0
  161. {cdk_factory-0.18.10 → cdk_factory-0.18.14}/src/cdk_factory/utilities/lambda_function_utilities.py +0 -0
  162. {cdk_factory-0.18.10 → cdk_factory-0.18.14}/src/cdk_factory/utilities/os_execute.py +0 -0
  163. {cdk_factory-0.18.10 → cdk_factory-0.18.14}/src/cdk_factory/utils/api_gateway_utilities.py +0 -0
  164. {cdk_factory-0.18.10 → cdk_factory-0.18.14}/src/cdk_factory/validation/config_validator.py +0 -0
  165. {cdk_factory-0.18.10 → cdk_factory-0.18.14}/src/cdk_factory/workload/workload_factory.py +0 -0
  166. {cdk_factory-0.18.10 → cdk_factory-0.18.14}/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.18.10
3
+ Version: 0.18.14
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.18.10"
36
+ version = "0.18.14"
37
37
  authors = [
38
38
  { name="Eric Wilson", email="eric.wilson@geekcafe.com" }
39
39
  ]
@@ -83,14 +83,27 @@ class EcsServiceConfig:
83
83
  """Whether to assign public IP addresses"""
84
84
  return self._config.get("assign_public_ip", False)
85
85
 
86
+ @property
87
+ def load_balancer_config(self) -> Dict[str, Any]:
88
+ """Load balancer configuration"""
89
+ return self._config.get("load_balancer", {})
90
+
86
91
  @property
87
92
  def target_group_arns(self) -> List[str]:
88
93
  """Target group ARNs for load balancing"""
94
+ # Check if load_balancer config has target_group_arn
95
+ if self.load_balancer_config and self.load_balancer_config.get("target_group_arn"):
96
+ arn = self.load_balancer_config["target_group_arn"]
97
+ if arn and arn != "arn:aws:elasticloadbalancing:placeholder":
98
+ return [arn]
89
99
  return self._config.get("target_group_arns", [])
90
100
 
91
101
  @property
92
102
  def container_port(self) -> int:
93
103
  """Container port for load balancer"""
104
+ # Check load_balancer config first
105
+ if self.load_balancer_config and self.load_balancer_config.get("container_port"):
106
+ return self.load_balancer_config["container_port"]
94
107
  return self._config.get("container_port", 80)
95
108
 
96
109
  @property
@@ -138,8 +151,17 @@ class EcsServiceConfig:
138
151
  """SSM parameter imports"""
139
152
  # Check both nested and flat structures for backwards compatibility
140
153
  if "ssm" in self._config and "imports" in self._config["ssm"]:
141
- return self._config["ssm"]["imports"]
142
- return self.ssm.get("imports", {})
154
+ imports = self._config["ssm"]["imports"]
155
+ else:
156
+ imports = self.ssm.get("imports", {})
157
+
158
+ # Add load_balancer SSM imports if they exist
159
+ if self.load_balancer_config and "ssm" in self.load_balancer_config:
160
+ lb_ssm = self.load_balancer_config["ssm"]
161
+ if "imports" in lb_ssm:
162
+ imports.update(lb_ssm["imports"])
163
+
164
+ return imports
143
165
 
144
166
  @property
145
167
  def deployment_type(self) -> str:
@@ -13,6 +13,7 @@ from aws_cdk import (
13
13
  aws_cloudfront as cloudfront,
14
14
  aws_cloudfront_origins as origins,
15
15
  aws_certificatemanager as acm,
16
+ aws_route53 as route53,
16
17
  aws_lambda as _lambda,
17
18
  aws_ssm as ssm,
18
19
  CfnOutput,
@@ -161,8 +162,36 @@ class CloudFrontStack(IStack):
161
162
  logger.info(f"Using certificate from SSM: {ssm_param}")
162
163
  return
163
164
 
165
+ # Create new certificate from domain name
166
+ domain_name = cert_config.get("domain_name")
167
+ if domain_name and self.cf_config.aliases:
168
+ # CloudFront certificates must be in us-east-1
169
+ if self.region != "us-east-1":
170
+ logger.warning(
171
+ f"Certificate creation requested but stack is in {self.region}. "
172
+ "CloudFront certificates must be created in us-east-1"
173
+ )
174
+ return
175
+
176
+ # Create the certificate
177
+ # Get hosted zone from SSM imports
178
+ hosted_zone_id = cert_config.get("hosted_zone_id")
179
+ hosted_zone = route53.HostedZone.from_hosted_zone_id(
180
+ self, "HostedZone", hosted_zone_id
181
+ )
182
+
183
+ self.certificate = acm.Certificate(
184
+ self,
185
+ "Certificate",
186
+ domain_name=domain_name,
187
+ subject_alternative_names=self.cf_config.aliases,
188
+ validation=acm.CertificateValidation.from_dns(hosted_zone=hosted_zone),
189
+ )
190
+ logger.info(f"Created new ACM certificate for domain: {domain_name}")
191
+ return
192
+
164
193
  logger.warning(
165
- "No certificate ARN provided - CloudFront will use default certificate"
194
+ "No certificate ARN or domain name provided - CloudFront will use default certificate"
166
195
  )
167
196
 
168
197
  def _create_origins(self) -> None:
@@ -563,7 +563,7 @@ class EcsServiceStack(IStack, VPCProviderMixin, StandardizedSsmMixin):
563
563
  for param_key, param_name in ssm_imports.items():
564
564
  if 'target_group' in param_key.lower() or 'tg' in param_key.lower():
565
565
  try:
566
- param_value = self.get_ssm_parameter_value(param_name)
566
+ param_value = self.get_ssm_imported_value(param_name)
567
567
  if param_value and param_value.startswith('arn:'):
568
568
  target_group_arns.append(param_value)
569
569
  except Exception as e:
@@ -329,7 +329,7 @@ class LambdaEdgeStack(IStack, StandardizedSsmMixin):
329
329
  )
330
330
 
331
331
  # SSM Parameter Store exports (if configured)
332
- ssm_exports = self.edge_config.dictionary.get("ssm_exports", {})
332
+ ssm_exports = self.edge_config.dictionary.get("ssm", {}).get("exports", {})
333
333
  if ssm_exports:
334
334
  export_values = {
335
335
  "function_name": self.function.function_name,
@@ -0,0 +1 @@
1
+ __version__ = "0.18.14"
@@ -1 +0,0 @@
1
- __version__ = "0.18.10"
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes