cdk-factory 0.18.4__tar.gz → 0.18.5__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.18.4 → cdk_factory-0.18.5}/PKG-INFO +1 -1
- {cdk_factory-0.18.4 → cdk_factory-0.18.5}/pyproject.toml +1 -1
- {cdk_factory-0.18.4 → cdk_factory-0.18.5}/src/cdk_factory/interfaces/standardized_ssm_mixin.py +39 -0
- {cdk_factory-0.18.4 → cdk_factory-0.18.5}/src/cdk_factory/stack_library/auto_scaling/auto_scaling_stack_standardized.py +25 -10
- cdk_factory-0.18.5/src/cdk_factory/version.py +1 -0
- cdk_factory-0.18.4/src/cdk_factory/version.py +0 -1
- {cdk_factory-0.18.4 → cdk_factory-0.18.5}/.gitignore +0 -0
- {cdk_factory-0.18.4 → cdk_factory-0.18.5}/.windsurfrules +0 -0
- {cdk_factory-0.18.4 → cdk_factory-0.18.5}/LICENSE +0 -0
- {cdk_factory-0.18.4 → cdk_factory-0.18.5}/README.md +0 -0
- {cdk_factory-0.18.4 → cdk_factory-0.18.5}/REFACTORING_PLAN.md +0 -0
- {cdk_factory-0.18.4 → cdk_factory-0.18.5}/archive/README.md +0 -0
- {cdk_factory-0.18.4 → cdk_factory-0.18.5}/archive/migrate_to_enhanced_ssm.py +0 -0
- {cdk_factory-0.18.4 → cdk_factory-0.18.5}/examples/json-imports/README.md +0 -0
- {cdk_factory-0.18.4 → cdk_factory-0.18.5}/examples/separate-api-gateway/README.md +0 -0
- {cdk_factory-0.18.4 → cdk_factory-0.18.5}/examples/separate-api-gateway/api-gateway-stack.json +0 -0
- {cdk_factory-0.18.4 → cdk_factory-0.18.5}/examples/separate-api-gateway/config.json +0 -0
- {cdk_factory-0.18.4 → cdk_factory-0.18.5}/examples/separate-api-gateway/lambda-stack.json +0 -0
- {cdk_factory-0.18.4 → cdk_factory-0.18.5}/mypy.ini +0 -0
- {cdk_factory-0.18.4 → cdk_factory-0.18.5}/publish_to_pypi.py +0 -0
- {cdk_factory-0.18.4 → cdk_factory-0.18.5}/publish_to_pypi.sh +0 -0
- {cdk_factory-0.18.4 → cdk_factory-0.18.5}/pysetup.py +0 -0
- {cdk_factory-0.18.4 → cdk_factory-0.18.5}/pysetup.sh +0 -0
- {cdk_factory-0.18.4 → cdk_factory-0.18.5}/requirements.dev.txt +0 -0
- {cdk_factory-0.18.4 → cdk_factory-0.18.5}/requirements.tests.txt +0 -0
- {cdk_factory-0.18.4 → cdk_factory-0.18.5}/requirements.txt +0 -0
- {cdk_factory-0.18.4 → cdk_factory-0.18.5}/run-checks.sh +0 -0
- {cdk_factory-0.18.4 → cdk_factory-0.18.5}/run-tests-clean-venv.sh +0 -0
- {cdk_factory-0.18.4 → cdk_factory-0.18.5}/run-tests.sh +0 -0
- {cdk_factory-0.18.4 → cdk_factory-0.18.5}/scripts/cloudfront-cleanup.sh +0 -0
- {cdk_factory-0.18.4 → cdk_factory-0.18.5}/src/cdk_factory/__init__.py +0 -0
- {cdk_factory-0.18.4 → cdk_factory-0.18.5}/src/cdk_factory/app.py +0 -0
- {cdk_factory-0.18.4 → cdk_factory-0.18.5}/src/cdk_factory/builds/README.md +0 -0
- {cdk_factory-0.18.4 → cdk_factory-0.18.5}/src/cdk_factory/cdk.json +0 -0
- {cdk_factory-0.18.4 → cdk_factory-0.18.5}/src/cdk_factory/cli.py +0 -0
- {cdk_factory-0.18.4 → cdk_factory-0.18.5}/src/cdk_factory/commands/command_loader.py +0 -0
- {cdk_factory-0.18.4 → cdk_factory-0.18.5}/src/cdk_factory/configurations/base_config.py +0 -0
- {cdk_factory-0.18.4 → cdk_factory-0.18.5}/src/cdk_factory/configurations/cdk_config.py +0 -0
- {cdk_factory-0.18.4 → cdk_factory-0.18.5}/src/cdk_factory/configurations/deployment.py +0 -0
- {cdk_factory-0.18.4 → cdk_factory-0.18.5}/src/cdk_factory/configurations/deployment_wave.py +0 -0
- {cdk_factory-0.18.4 → cdk_factory-0.18.5}/src/cdk_factory/configurations/devops.py +0 -0
- {cdk_factory-0.18.4 → cdk_factory-0.18.5}/src/cdk_factory/configurations/enhanced_base_config.py +0 -0
- {cdk_factory-0.18.4 → cdk_factory-0.18.5}/src/cdk_factory/configurations/enhanced_ssm_config.py +0 -0
- {cdk_factory-0.18.4 → cdk_factory-0.18.5}/src/cdk_factory/configurations/management.py +0 -0
- {cdk_factory-0.18.4 → cdk_factory-0.18.5}/src/cdk_factory/configurations/pipeline.py +0 -0
- {cdk_factory-0.18.4 → cdk_factory-0.18.5}/src/cdk_factory/configurations/pipeline_stage.py +0 -0
- {cdk_factory-0.18.4 → cdk_factory-0.18.5}/src/cdk_factory/configurations/resources/_resources.py +0 -0
- {cdk_factory-0.18.4 → cdk_factory-0.18.5}/src/cdk_factory/configurations/resources/acm.py +0 -0
- {cdk_factory-0.18.4 → cdk_factory-0.18.5}/src/cdk_factory/configurations/resources/api_gateway.py +0 -0
- {cdk_factory-0.18.4 → cdk_factory-0.18.5}/src/cdk_factory/configurations/resources/apigateway_route_config.py +0 -0
- {cdk_factory-0.18.4 → cdk_factory-0.18.5}/src/cdk_factory/configurations/resources/auto_scaling.py +0 -0
- {cdk_factory-0.18.4 → cdk_factory-0.18.5}/src/cdk_factory/configurations/resources/cloudfront.py +0 -0
- {cdk_factory-0.18.4 → cdk_factory-0.18.5}/src/cdk_factory/configurations/resources/cloudwatch_widget.py +0 -0
- {cdk_factory-0.18.4 → cdk_factory-0.18.5}/src/cdk_factory/configurations/resources/code_artifact.py +0 -0
- {cdk_factory-0.18.4 → cdk_factory-0.18.5}/src/cdk_factory/configurations/resources/code_artifact_login.py +0 -0
- {cdk_factory-0.18.4 → cdk_factory-0.18.5}/src/cdk_factory/configurations/resources/code_repository.py +0 -0
- {cdk_factory-0.18.4 → cdk_factory-0.18.5}/src/cdk_factory/configurations/resources/cognito.py +0 -0
- {cdk_factory-0.18.4 → cdk_factory-0.18.5}/src/cdk_factory/configurations/resources/docker.py +0 -0
- {cdk_factory-0.18.4 → cdk_factory-0.18.5}/src/cdk_factory/configurations/resources/dynamodb.py +0 -0
- {cdk_factory-0.18.4 → cdk_factory-0.18.5}/src/cdk_factory/configurations/resources/ecr.py +0 -0
- {cdk_factory-0.18.4 → cdk_factory-0.18.5}/src/cdk_factory/configurations/resources/ecs_cluster.py +0 -0
- {cdk_factory-0.18.4 → cdk_factory-0.18.5}/src/cdk_factory/configurations/resources/ecs_service.py +0 -0
- {cdk_factory-0.18.4 → cdk_factory-0.18.5}/src/cdk_factory/configurations/resources/exisiting.py +0 -0
- {cdk_factory-0.18.4 → cdk_factory-0.18.5}/src/cdk_factory/configurations/resources/lambda_edge.py +0 -0
- {cdk_factory-0.18.4 → cdk_factory-0.18.5}/src/cdk_factory/configurations/resources/lambda_function.py +0 -0
- {cdk_factory-0.18.4 → cdk_factory-0.18.5}/src/cdk_factory/configurations/resources/lambda_layers.py +0 -0
- {cdk_factory-0.18.4 → cdk_factory-0.18.5}/src/cdk_factory/configurations/resources/lambda_triggers.py +0 -0
- {cdk_factory-0.18.4 → cdk_factory-0.18.5}/src/cdk_factory/configurations/resources/load_balancer.py +0 -0
- {cdk_factory-0.18.4 → cdk_factory-0.18.5}/src/cdk_factory/configurations/resources/monitoring.py +0 -0
- {cdk_factory-0.18.4 → cdk_factory-0.18.5}/src/cdk_factory/configurations/resources/rds.py +0 -0
- {cdk_factory-0.18.4 → cdk_factory-0.18.5}/src/cdk_factory/configurations/resources/resource_mapping.py +0 -0
- {cdk_factory-0.18.4 → cdk_factory-0.18.5}/src/cdk_factory/configurations/resources/resource_naming.py +0 -0
- {cdk_factory-0.18.4 → cdk_factory-0.18.5}/src/cdk_factory/configurations/resources/resource_types.py +0 -0
- {cdk_factory-0.18.4 → cdk_factory-0.18.5}/src/cdk_factory/configurations/resources/route53.py +0 -0
- {cdk_factory-0.18.4 → cdk_factory-0.18.5}/src/cdk_factory/configurations/resources/route53_hosted_zone.py +0 -0
- {cdk_factory-0.18.4 → cdk_factory-0.18.5}/src/cdk_factory/configurations/resources/rum.py +0 -0
- {cdk_factory-0.18.4 → cdk_factory-0.18.5}/src/cdk_factory/configurations/resources/s3.py +0 -0
- {cdk_factory-0.18.4 → cdk_factory-0.18.5}/src/cdk_factory/configurations/resources/security_group.py +0 -0
- {cdk_factory-0.18.4 → cdk_factory-0.18.5}/src/cdk_factory/configurations/resources/security_group_full_stack.py +0 -0
- {cdk_factory-0.18.4 → cdk_factory-0.18.5}/src/cdk_factory/configurations/resources/sqs.py +0 -0
- {cdk_factory-0.18.4 → cdk_factory-0.18.5}/src/cdk_factory/configurations/resources/vpc.py +0 -0
- {cdk_factory-0.18.4 → cdk_factory-0.18.5}/src/cdk_factory/configurations/stack.py +0 -0
- {cdk_factory-0.18.4 → cdk_factory-0.18.5}/src/cdk_factory/configurations/workload.py +0 -0
- {cdk_factory-0.18.4 → cdk_factory-0.18.5}/src/cdk_factory/constructs/cloudfront/cloudfront_distribution_construct.py +0 -0
- {cdk_factory-0.18.4 → cdk_factory-0.18.5}/src/cdk_factory/constructs/ecr/ecr_construct.py +0 -0
- {cdk_factory-0.18.4 → cdk_factory-0.18.5}/src/cdk_factory/constructs/lambdas/lambda_function_construct.py +0 -0
- {cdk_factory-0.18.4 → cdk_factory-0.18.5}/src/cdk_factory/constructs/lambdas/lambda_function_docker_construct.py +0 -0
- {cdk_factory-0.18.4 → cdk_factory-0.18.5}/src/cdk_factory/constructs/lambdas/lambda_function_role_construct.py +0 -0
- {cdk_factory-0.18.4 → cdk_factory-0.18.5}/src/cdk_factory/constructs/lambdas/policies/policy_docs.py +0 -0
- {cdk_factory-0.18.4 → cdk_factory-0.18.5}/src/cdk_factory/constructs/lambdas/policies/policy_statements.py +0 -0
- {cdk_factory-0.18.4 → cdk_factory-0.18.5}/src/cdk_factory/constructs/s3_buckets/s3_bucket_construct.py +0 -0
- {cdk_factory-0.18.4 → cdk_factory-0.18.5}/src/cdk_factory/constructs/s3_buckets/s3_bucket_replication_destination_construct.py +0 -0
- {cdk_factory-0.18.4 → cdk_factory-0.18.5}/src/cdk_factory/constructs/s3_buckets/s3_bucket_replication_source_construct.py +0 -0
- {cdk_factory-0.18.4 → cdk_factory-0.18.5}/src/cdk_factory/constructs/sqs/policies/sqs_policies.py +0 -0
- {cdk_factory-0.18.4 → cdk_factory-0.18.5}/src/cdk_factory/interfaces/istack.py +0 -0
- {cdk_factory-0.18.4 → cdk_factory-0.18.5}/src/cdk_factory/interfaces/live_ssm_resolver.py +0 -0
- {cdk_factory-0.18.4 → cdk_factory-0.18.5}/src/cdk_factory/interfaces/networked_stack_mixin.py +0 -0
- {cdk_factory-0.18.4 → cdk_factory-0.18.5}/src/cdk_factory/interfaces/vpc_provider_mixin.py +0 -0
- {cdk_factory-0.18.4 → cdk_factory-0.18.5}/src/cdk_factory/lambdas/edge/ip_gate/handler.py +0 -0
- {cdk_factory-0.18.4 → cdk_factory-0.18.5}/src/cdk_factory/lambdas/health_handler.py +0 -0
- {cdk_factory-0.18.4 → cdk_factory-0.18.5}/src/cdk_factory/pipeline/path_utils.py +0 -0
- {cdk_factory-0.18.4 → cdk_factory-0.18.5}/src/cdk_factory/pipeline/pipeline_factory.py +0 -0
- {cdk_factory-0.18.4 → cdk_factory-0.18.5}/src/cdk_factory/pipeline/security/policies.py +0 -0
- {cdk_factory-0.18.4 → cdk_factory-0.18.5}/src/cdk_factory/pipeline/security/roles.py +0 -0
- {cdk_factory-0.18.4 → cdk_factory-0.18.5}/src/cdk_factory/pipeline/stage.py +0 -0
- {cdk_factory-0.18.4 → cdk_factory-0.18.5}/src/cdk_factory/stack/istack.py +0 -0
- {cdk_factory-0.18.4 → cdk_factory-0.18.5}/src/cdk_factory/stack/stack_factory.py +0 -0
- {cdk_factory-0.18.4 → cdk_factory-0.18.5}/src/cdk_factory/stack/stack_module_loader.py +0 -0
- {cdk_factory-0.18.4 → cdk_factory-0.18.5}/src/cdk_factory/stack/stack_module_registry.py +0 -0
- {cdk_factory-0.18.4 → cdk_factory-0.18.5}/src/cdk_factory/stack/stack_modules.py +0 -0
- {cdk_factory-0.18.4 → cdk_factory-0.18.5}/src/cdk_factory/stack_library/__init__.py +0 -0
- {cdk_factory-0.18.4 → cdk_factory-0.18.5}/src/cdk_factory/stack_library/acm/__init__.py +0 -0
- {cdk_factory-0.18.4 → cdk_factory-0.18.5}/src/cdk_factory/stack_library/acm/acm_stack.py +0 -0
- {cdk_factory-0.18.4 → cdk_factory-0.18.5}/src/cdk_factory/stack_library/api_gateway/api_gateway_stack.py +0 -0
- {cdk_factory-0.18.4 → cdk_factory-0.18.5}/src/cdk_factory/stack_library/auto_scaling/__init__.py +0 -0
- {cdk_factory-0.18.4 → cdk_factory-0.18.5}/src/cdk_factory/stack_library/auto_scaling/auto_scaling_old.py +0 -0
- {cdk_factory-0.18.4 → cdk_factory-0.18.5}/src/cdk_factory/stack_library/aws_lambdas/lambda_stack.py +0 -0
- {cdk_factory-0.18.4 → cdk_factory-0.18.5}/src/cdk_factory/stack_library/buckets/README.md +0 -0
- {cdk_factory-0.18.4 → cdk_factory-0.18.5}/src/cdk_factory/stack_library/buckets/bucket_stack.py +0 -0
- {cdk_factory-0.18.4 → cdk_factory-0.18.5}/src/cdk_factory/stack_library/cloudfront/__init__.py +0 -0
- {cdk_factory-0.18.4 → cdk_factory-0.18.5}/src/cdk_factory/stack_library/cloudfront/cloudfront_stack.py +0 -0
- {cdk_factory-0.18.4 → cdk_factory-0.18.5}/src/cdk_factory/stack_library/code_artifact/code_artifact_stack.py +0 -0
- {cdk_factory-0.18.4 → cdk_factory-0.18.5}/src/cdk_factory/stack_library/cognito/cognito_stack.py +0 -0
- {cdk_factory-0.18.4 → cdk_factory-0.18.5}/src/cdk_factory/stack_library/dynamodb/dynamodb_stack.py +0 -0
- {cdk_factory-0.18.4 → cdk_factory-0.18.5}/src/cdk_factory/stack_library/ecr/README.md +0 -0
- {cdk_factory-0.18.4 → cdk_factory-0.18.5}/src/cdk_factory/stack_library/ecr/ecr_stack.py +0 -0
- {cdk_factory-0.18.4 → cdk_factory-0.18.5}/src/cdk_factory/stack_library/ecs/__init__.py +0 -0
- {cdk_factory-0.18.4 → cdk_factory-0.18.5}/src/cdk_factory/stack_library/ecs/ecs_cluster_stack_standardized.py +0 -0
- {cdk_factory-0.18.4 → cdk_factory-0.18.5}/src/cdk_factory/stack_library/ecs/ecs_service_stack.py +0 -0
- {cdk_factory-0.18.4 → cdk_factory-0.18.5}/src/cdk_factory/stack_library/lambda_edge/__init__.py +0 -0
- {cdk_factory-0.18.4 → cdk_factory-0.18.5}/src/cdk_factory/stack_library/lambda_edge/lambda_edge_stack.py +0 -0
- {cdk_factory-0.18.4 → cdk_factory-0.18.5}/src/cdk_factory/stack_library/load_balancer/__init__.py +0 -0
- {cdk_factory-0.18.4 → cdk_factory-0.18.5}/src/cdk_factory/stack_library/load_balancer/load_balancer_stack.py +0 -0
- {cdk_factory-0.18.4 → cdk_factory-0.18.5}/src/cdk_factory/stack_library/monitoring/__init__.py +0 -0
- {cdk_factory-0.18.4 → cdk_factory-0.18.5}/src/cdk_factory/stack_library/monitoring/monitoring_stack.py +0 -0
- {cdk_factory-0.18.4 → cdk_factory-0.18.5}/src/cdk_factory/stack_library/rds/__init__.py +0 -0
- {cdk_factory-0.18.4 → cdk_factory-0.18.5}/src/cdk_factory/stack_library/rds/rds_stack.py +0 -0
- {cdk_factory-0.18.4 → cdk_factory-0.18.5}/src/cdk_factory/stack_library/route53/__init__.py +0 -0
- {cdk_factory-0.18.4 → cdk_factory-0.18.5}/src/cdk_factory/stack_library/route53/route53_stack.py +0 -0
- {cdk_factory-0.18.4 → cdk_factory-0.18.5}/src/cdk_factory/stack_library/rum/__init__.py +0 -0
- {cdk_factory-0.18.4 → cdk_factory-0.18.5}/src/cdk_factory/stack_library/rum/rum_stack.py +0 -0
- {cdk_factory-0.18.4 → cdk_factory-0.18.5}/src/cdk_factory/stack_library/security_group/__init__.py +0 -0
- {cdk_factory-0.18.4 → cdk_factory-0.18.5}/src/cdk_factory/stack_library/security_group/security_group_full_stack.py +0 -0
- {cdk_factory-0.18.4 → cdk_factory-0.18.5}/src/cdk_factory/stack_library/security_group/security_group_stack.py +0 -0
- {cdk_factory-0.18.4 → cdk_factory-0.18.5}/src/cdk_factory/stack_library/simple_queue_service/sqs_stack.py +0 -0
- {cdk_factory-0.18.4 → cdk_factory-0.18.5}/src/cdk_factory/stack_library/stack_base.py +0 -0
- {cdk_factory-0.18.4 → cdk_factory-0.18.5}/src/cdk_factory/stack_library/vpc/__init__.py +0 -0
- {cdk_factory-0.18.4 → cdk_factory-0.18.5}/src/cdk_factory/stack_library/vpc/vpc_stack_standardized.py +0 -0
- {cdk_factory-0.18.4 → cdk_factory-0.18.5}/src/cdk_factory/stack_library/websites/static_website_stack.py +0 -0
- {cdk_factory-0.18.4 → cdk_factory-0.18.5}/src/cdk_factory/stages/websites/static_website_stage.py +0 -0
- {cdk_factory-0.18.4 → cdk_factory-0.18.5}/src/cdk_factory/templates/README.md +0 -0
- {cdk_factory-0.18.4 → cdk_factory-0.18.5}/src/cdk_factory/templates/app.py.template +0 -0
- {cdk_factory-0.18.4 → cdk_factory-0.18.5}/src/cdk_factory/templates/cdk.json.template +0 -0
- {cdk_factory-0.18.4 → cdk_factory-0.18.5}/src/cdk_factory/utilities/api_gateway_integration_utility.py +0 -0
- {cdk_factory-0.18.4 → cdk_factory-0.18.5}/src/cdk_factory/utilities/commandline_args.py +0 -0
- {cdk_factory-0.18.4 → cdk_factory-0.18.5}/src/cdk_factory/utilities/configuration_loader.py +0 -0
- {cdk_factory-0.18.4 → cdk_factory-0.18.5}/src/cdk_factory/utilities/docker_utilities.py +0 -0
- {cdk_factory-0.18.4 → cdk_factory-0.18.5}/src/cdk_factory/utilities/environment_services.py +0 -0
- {cdk_factory-0.18.4 → cdk_factory-0.18.5}/src/cdk_factory/utilities/file_operations.py +0 -0
- {cdk_factory-0.18.4 → cdk_factory-0.18.5}/src/cdk_factory/utilities/git_utilities.py +0 -0
- {cdk_factory-0.18.4 → cdk_factory-0.18.5}/src/cdk_factory/utilities/json_loading_utility.py +0 -0
- {cdk_factory-0.18.4 → cdk_factory-0.18.5}/src/cdk_factory/utilities/lambda_function_utilities.py +0 -0
- {cdk_factory-0.18.4 → cdk_factory-0.18.5}/src/cdk_factory/utilities/os_execute.py +0 -0
- {cdk_factory-0.18.4 → cdk_factory-0.18.5}/src/cdk_factory/utils/api_gateway_utilities.py +0 -0
- {cdk_factory-0.18.4 → cdk_factory-0.18.5}/src/cdk_factory/validation/config_validator.py +0 -0
- {cdk_factory-0.18.4 → cdk_factory-0.18.5}/src/cdk_factory/workload/workload_factory.py +0 -0
- {cdk_factory-0.18.4 → cdk_factory-0.18.5}/src/handlers/test/handler.py +0 -0
{cdk_factory-0.18.4 → cdk_factory-0.18.5}/src/cdk_factory/interfaces/standardized_ssm_mixin.py
RENAMED
|
@@ -24,6 +24,8 @@ import os
|
|
|
24
24
|
import re
|
|
25
25
|
from typing import Dict, Any, Optional, List, Union
|
|
26
26
|
from aws_cdk import aws_ssm as ssm
|
|
27
|
+
from aws_cdk import aws_ec2 as ec2
|
|
28
|
+
from aws_cdk import aws_ecs as ecs
|
|
27
29
|
from constructs import Construct
|
|
28
30
|
from aws_lambda_powertools import Logger
|
|
29
31
|
from cdk_factory.configurations.deployment import DeploymentConfig
|
|
@@ -610,3 +612,40 @@ class SsmStandardValidator:
|
|
|
610
612
|
errors.append(f"{context}: SSM path should use template variables: {path}")
|
|
611
613
|
|
|
612
614
|
return errors
|
|
615
|
+
|
|
616
|
+
|
|
617
|
+
def parse_subnet_ids_from_ssm(self, subnet_ids_key: str = "subnet_ids") -> List[str]:
|
|
618
|
+
"""
|
|
619
|
+
Helper function to parse subnet IDs from SSM imports.
|
|
620
|
+
|
|
621
|
+
This common pattern handles:
|
|
622
|
+
1. Comma-separated subnet ID strings from SSM
|
|
623
|
+
2. List of subnet IDs from SSM
|
|
624
|
+
3. CDK Token resolution for deployment-time values
|
|
625
|
+
|
|
626
|
+
Args:
|
|
627
|
+
subnet_ids_key: The key used for subnet IDs in SSM imports (default: "subnet_ids")
|
|
628
|
+
|
|
629
|
+
Returns:
|
|
630
|
+
List of subnet IDs (empty list if not found or invalid format)
|
|
631
|
+
"""
|
|
632
|
+
ssm_imports = self.get_all_ssm_imports()
|
|
633
|
+
|
|
634
|
+
if subnet_ids_key not in ssm_imports:
|
|
635
|
+
logger.warning(f"No subnet IDs found in SSM imports with key: {subnet_ids_key}")
|
|
636
|
+
return []
|
|
637
|
+
|
|
638
|
+
subnet_ids = ssm_imports[subnet_ids_key]
|
|
639
|
+
|
|
640
|
+
# Handle comma-separated string or list
|
|
641
|
+
if isinstance(subnet_ids, str):
|
|
642
|
+
# Split comma-separated string
|
|
643
|
+
parsed_ids = [sid.strip() for sid in subnet_ids.split(',') if sid.strip()]
|
|
644
|
+
logger.info(f"Parsed {len(parsed_ids)} subnet IDs from comma-separated string")
|
|
645
|
+
return parsed_ids
|
|
646
|
+
elif isinstance(subnet_ids, list):
|
|
647
|
+
logger.info(f"Using {len(subnet_ids)} subnet IDs from list")
|
|
648
|
+
return subnet_ids
|
|
649
|
+
else:
|
|
650
|
+
logger.warning(f"Unexpected subnet_ids type: {type(subnet_ids)}")
|
|
651
|
+
return []
|
|
@@ -212,8 +212,20 @@ class AutoScalingStack(IStack, VPCProviderMixin, StandardizedSsmMixin):
|
|
|
212
212
|
"""
|
|
213
213
|
# Primary method: Use standardized SSM imports
|
|
214
214
|
ssm_imports = self._get_ssm_imports()
|
|
215
|
+
|
|
215
216
|
if "subnet_ids" in ssm_imports:
|
|
216
|
-
|
|
217
|
+
subnet_ids = ssm_imports["subnet_ids"]
|
|
218
|
+
|
|
219
|
+
# Handle comma-separated string or list
|
|
220
|
+
if isinstance(subnet_ids, str):
|
|
221
|
+
# Split comma-separated string
|
|
222
|
+
parsed_ids = [sid.strip() for sid in subnet_ids.split(',') if sid.strip()]
|
|
223
|
+
return parsed_ids
|
|
224
|
+
elif isinstance(subnet_ids, list):
|
|
225
|
+
return subnet_ids
|
|
226
|
+
else:
|
|
227
|
+
logger.warning(f"Unexpected subnet_ids type: {type(subnet_ids)}")
|
|
228
|
+
return []
|
|
217
229
|
|
|
218
230
|
# Fallback: Use VPC provider mixin (backward compatibility)
|
|
219
231
|
elif hasattr(self, '_get_subnets_from_provider'):
|
|
@@ -497,18 +509,21 @@ class AutoScalingStack(IStack, VPCProviderMixin, StandardizedSsmMixin):
|
|
|
497
509
|
# Get the underlying CloudFormation resource to add update policy
|
|
498
510
|
cfn_asg = self.auto_scaling_group.node.default_child
|
|
499
511
|
|
|
500
|
-
# Get
|
|
501
|
-
|
|
512
|
+
# Get CDK's default policy first (if any)
|
|
513
|
+
default_policy = getattr(cfn_asg, 'update_policy', {})
|
|
502
514
|
|
|
503
|
-
# Merge
|
|
504
|
-
|
|
505
|
-
|
|
506
|
-
"
|
|
507
|
-
|
|
515
|
+
# Merge with defaults, then use the robust add_override method
|
|
516
|
+
merged_policy = {
|
|
517
|
+
**default_policy, # Preserve CDK defaults
|
|
518
|
+
"AutoScalingRollingUpdate": {
|
|
519
|
+
"MinInstancesInService": update_policy.get("min_instances_in_service", 1),
|
|
520
|
+
"MaxBatchSize": update_policy.get("max_batch_size", 1),
|
|
521
|
+
"PauseTime": f"PT{update_policy.get('pause_time', 300)}S"
|
|
522
|
+
}
|
|
508
523
|
}
|
|
509
524
|
|
|
510
|
-
#
|
|
511
|
-
cfn_asg.
|
|
525
|
+
# Use the robust CDK-documented approach
|
|
526
|
+
cfn_asg.add_override("UpdatePolicy", merged_policy)
|
|
512
527
|
|
|
513
528
|
logger.info("Added rolling update policy to Auto Scaling Group")
|
|
514
529
|
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
__version__ = "0.18.5"
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
__version__ = "0.18.4"
|
|
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.18.4 → cdk_factory-0.18.5}/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.18.4 → cdk_factory-0.18.5}/src/cdk_factory/configurations/enhanced_base_config.py
RENAMED
|
File without changes
|
{cdk_factory-0.18.4 → cdk_factory-0.18.5}/src/cdk_factory/configurations/enhanced_ssm_config.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{cdk_factory-0.18.4 → cdk_factory-0.18.5}/src/cdk_factory/configurations/resources/_resources.py
RENAMED
|
File without changes
|
|
File without changes
|
{cdk_factory-0.18.4 → cdk_factory-0.18.5}/src/cdk_factory/configurations/resources/api_gateway.py
RENAMED
|
File without changes
|
|
File without changes
|
{cdk_factory-0.18.4 → cdk_factory-0.18.5}/src/cdk_factory/configurations/resources/auto_scaling.py
RENAMED
|
File without changes
|
{cdk_factory-0.18.4 → cdk_factory-0.18.5}/src/cdk_factory/configurations/resources/cloudfront.py
RENAMED
|
File without changes
|
|
File without changes
|
{cdk_factory-0.18.4 → cdk_factory-0.18.5}/src/cdk_factory/configurations/resources/code_artifact.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{cdk_factory-0.18.4 → cdk_factory-0.18.5}/src/cdk_factory/configurations/resources/cognito.py
RENAMED
|
File without changes
|
{cdk_factory-0.18.4 → cdk_factory-0.18.5}/src/cdk_factory/configurations/resources/docker.py
RENAMED
|
File without changes
|
{cdk_factory-0.18.4 → cdk_factory-0.18.5}/src/cdk_factory/configurations/resources/dynamodb.py
RENAMED
|
File without changes
|
|
File without changes
|
{cdk_factory-0.18.4 → cdk_factory-0.18.5}/src/cdk_factory/configurations/resources/ecs_cluster.py
RENAMED
|
File without changes
|
{cdk_factory-0.18.4 → cdk_factory-0.18.5}/src/cdk_factory/configurations/resources/ecs_service.py
RENAMED
|
File without changes
|
{cdk_factory-0.18.4 → cdk_factory-0.18.5}/src/cdk_factory/configurations/resources/exisiting.py
RENAMED
|
File without changes
|
{cdk_factory-0.18.4 → cdk_factory-0.18.5}/src/cdk_factory/configurations/resources/lambda_edge.py
RENAMED
|
File without changes
|
|
File without changes
|
{cdk_factory-0.18.4 → cdk_factory-0.18.5}/src/cdk_factory/configurations/resources/lambda_layers.py
RENAMED
|
File without changes
|
|
File without changes
|
{cdk_factory-0.18.4 → cdk_factory-0.18.5}/src/cdk_factory/configurations/resources/load_balancer.py
RENAMED
|
File without changes
|
{cdk_factory-0.18.4 → cdk_factory-0.18.5}/src/cdk_factory/configurations/resources/monitoring.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{cdk_factory-0.18.4 → cdk_factory-0.18.5}/src/cdk_factory/configurations/resources/resource_types.py
RENAMED
|
File without changes
|
{cdk_factory-0.18.4 → cdk_factory-0.18.5}/src/cdk_factory/configurations/resources/route53.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{cdk_factory-0.18.4 → cdk_factory-0.18.5}/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.18.4 → cdk_factory-0.18.5}/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.18.4 → cdk_factory-0.18.5}/src/cdk_factory/constructs/sqs/policies/sqs_policies.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{cdk_factory-0.18.4 → cdk_factory-0.18.5}/src/cdk_factory/interfaces/networked_stack_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.18.4 → cdk_factory-0.18.5}/src/cdk_factory/stack_library/auto_scaling/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
{cdk_factory-0.18.4 → cdk_factory-0.18.5}/src/cdk_factory/stack_library/aws_lambdas/lambda_stack.py
RENAMED
|
File without changes
|
|
File without changes
|
{cdk_factory-0.18.4 → cdk_factory-0.18.5}/src/cdk_factory/stack_library/buckets/bucket_stack.py
RENAMED
|
File without changes
|
{cdk_factory-0.18.4 → cdk_factory-0.18.5}/src/cdk_factory/stack_library/cloudfront/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{cdk_factory-0.18.4 → cdk_factory-0.18.5}/src/cdk_factory/stack_library/cognito/cognito_stack.py
RENAMED
|
File without changes
|
{cdk_factory-0.18.4 → cdk_factory-0.18.5}/src/cdk_factory/stack_library/dynamodb/dynamodb_stack.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{cdk_factory-0.18.4 → cdk_factory-0.18.5}/src/cdk_factory/stack_library/ecs/ecs_service_stack.py
RENAMED
|
File without changes
|
{cdk_factory-0.18.4 → cdk_factory-0.18.5}/src/cdk_factory/stack_library/lambda_edge/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
{cdk_factory-0.18.4 → cdk_factory-0.18.5}/src/cdk_factory/stack_library/load_balancer/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
{cdk_factory-0.18.4 → cdk_factory-0.18.5}/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.18.4 → cdk_factory-0.18.5}/src/cdk_factory/stack_library/route53/route53_stack.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{cdk_factory-0.18.4 → cdk_factory-0.18.5}/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.18.4 → cdk_factory-0.18.5}/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.18.4 → cdk_factory-0.18.5}/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
|