cdk-factory 0.18.3__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.3 → cdk_factory-0.18.5}/PKG-INFO +1 -1
- {cdk_factory-0.18.3 → cdk_factory-0.18.5}/pyproject.toml +1 -1
- {cdk_factory-0.18.3 → cdk_factory-0.18.5}/src/cdk_factory/interfaces/standardized_ssm_mixin.py +39 -0
- cdk_factory-0.18.5/src/cdk_factory/stack_library/auto_scaling/auto_scaling_old.py +721 -0
- {cdk_factory-0.18.3 → cdk_factory-0.18.5}/src/cdk_factory/stack_library/auto_scaling/auto_scaling_stack_standardized.py +23 -4
- cdk_factory-0.18.5/src/cdk_factory/version.py +1 -0
- cdk_factory-0.18.3/src/cdk_factory/version.py +0 -1
- {cdk_factory-0.18.3 → cdk_factory-0.18.5}/.gitignore +0 -0
- {cdk_factory-0.18.3 → cdk_factory-0.18.5}/.windsurfrules +0 -0
- {cdk_factory-0.18.3 → cdk_factory-0.18.5}/LICENSE +0 -0
- {cdk_factory-0.18.3 → cdk_factory-0.18.5}/README.md +0 -0
- {cdk_factory-0.18.3 → cdk_factory-0.18.5}/REFACTORING_PLAN.md +0 -0
- {cdk_factory-0.18.3 → cdk_factory-0.18.5}/archive/README.md +0 -0
- {cdk_factory-0.18.3 → cdk_factory-0.18.5}/archive/migrate_to_enhanced_ssm.py +0 -0
- {cdk_factory-0.18.3 → cdk_factory-0.18.5}/examples/json-imports/README.md +0 -0
- {cdk_factory-0.18.3 → cdk_factory-0.18.5}/examples/separate-api-gateway/README.md +0 -0
- {cdk_factory-0.18.3 → cdk_factory-0.18.5}/examples/separate-api-gateway/api-gateway-stack.json +0 -0
- {cdk_factory-0.18.3 → cdk_factory-0.18.5}/examples/separate-api-gateway/config.json +0 -0
- {cdk_factory-0.18.3 → cdk_factory-0.18.5}/examples/separate-api-gateway/lambda-stack.json +0 -0
- {cdk_factory-0.18.3 → cdk_factory-0.18.5}/mypy.ini +0 -0
- {cdk_factory-0.18.3 → cdk_factory-0.18.5}/publish_to_pypi.py +0 -0
- {cdk_factory-0.18.3 → cdk_factory-0.18.5}/publish_to_pypi.sh +0 -0
- {cdk_factory-0.18.3 → cdk_factory-0.18.5}/pysetup.py +0 -0
- {cdk_factory-0.18.3 → cdk_factory-0.18.5}/pysetup.sh +0 -0
- {cdk_factory-0.18.3 → cdk_factory-0.18.5}/requirements.dev.txt +0 -0
- {cdk_factory-0.18.3 → cdk_factory-0.18.5}/requirements.tests.txt +0 -0
- {cdk_factory-0.18.3 → cdk_factory-0.18.5}/requirements.txt +0 -0
- {cdk_factory-0.18.3 → cdk_factory-0.18.5}/run-checks.sh +0 -0
- {cdk_factory-0.18.3 → cdk_factory-0.18.5}/run-tests-clean-venv.sh +0 -0
- {cdk_factory-0.18.3 → cdk_factory-0.18.5}/run-tests.sh +0 -0
- {cdk_factory-0.18.3 → cdk_factory-0.18.5}/scripts/cloudfront-cleanup.sh +0 -0
- {cdk_factory-0.18.3 → cdk_factory-0.18.5}/src/cdk_factory/__init__.py +0 -0
- {cdk_factory-0.18.3 → cdk_factory-0.18.5}/src/cdk_factory/app.py +0 -0
- {cdk_factory-0.18.3 → cdk_factory-0.18.5}/src/cdk_factory/builds/README.md +0 -0
- {cdk_factory-0.18.3 → cdk_factory-0.18.5}/src/cdk_factory/cdk.json +0 -0
- {cdk_factory-0.18.3 → cdk_factory-0.18.5}/src/cdk_factory/cli.py +0 -0
- {cdk_factory-0.18.3 → cdk_factory-0.18.5}/src/cdk_factory/commands/command_loader.py +0 -0
- {cdk_factory-0.18.3 → cdk_factory-0.18.5}/src/cdk_factory/configurations/base_config.py +0 -0
- {cdk_factory-0.18.3 → cdk_factory-0.18.5}/src/cdk_factory/configurations/cdk_config.py +0 -0
- {cdk_factory-0.18.3 → cdk_factory-0.18.5}/src/cdk_factory/configurations/deployment.py +0 -0
- {cdk_factory-0.18.3 → cdk_factory-0.18.5}/src/cdk_factory/configurations/deployment_wave.py +0 -0
- {cdk_factory-0.18.3 → cdk_factory-0.18.5}/src/cdk_factory/configurations/devops.py +0 -0
- {cdk_factory-0.18.3 → cdk_factory-0.18.5}/src/cdk_factory/configurations/enhanced_base_config.py +0 -0
- {cdk_factory-0.18.3 → cdk_factory-0.18.5}/src/cdk_factory/configurations/enhanced_ssm_config.py +0 -0
- {cdk_factory-0.18.3 → cdk_factory-0.18.5}/src/cdk_factory/configurations/management.py +0 -0
- {cdk_factory-0.18.3 → cdk_factory-0.18.5}/src/cdk_factory/configurations/pipeline.py +0 -0
- {cdk_factory-0.18.3 → cdk_factory-0.18.5}/src/cdk_factory/configurations/pipeline_stage.py +0 -0
- {cdk_factory-0.18.3 → cdk_factory-0.18.5}/src/cdk_factory/configurations/resources/_resources.py +0 -0
- {cdk_factory-0.18.3 → cdk_factory-0.18.5}/src/cdk_factory/configurations/resources/acm.py +0 -0
- {cdk_factory-0.18.3 → cdk_factory-0.18.5}/src/cdk_factory/configurations/resources/api_gateway.py +0 -0
- {cdk_factory-0.18.3 → cdk_factory-0.18.5}/src/cdk_factory/configurations/resources/apigateway_route_config.py +0 -0
- {cdk_factory-0.18.3 → cdk_factory-0.18.5}/src/cdk_factory/configurations/resources/auto_scaling.py +0 -0
- {cdk_factory-0.18.3 → cdk_factory-0.18.5}/src/cdk_factory/configurations/resources/cloudfront.py +0 -0
- {cdk_factory-0.18.3 → cdk_factory-0.18.5}/src/cdk_factory/configurations/resources/cloudwatch_widget.py +0 -0
- {cdk_factory-0.18.3 → cdk_factory-0.18.5}/src/cdk_factory/configurations/resources/code_artifact.py +0 -0
- {cdk_factory-0.18.3 → cdk_factory-0.18.5}/src/cdk_factory/configurations/resources/code_artifact_login.py +0 -0
- {cdk_factory-0.18.3 → cdk_factory-0.18.5}/src/cdk_factory/configurations/resources/code_repository.py +0 -0
- {cdk_factory-0.18.3 → cdk_factory-0.18.5}/src/cdk_factory/configurations/resources/cognito.py +0 -0
- {cdk_factory-0.18.3 → cdk_factory-0.18.5}/src/cdk_factory/configurations/resources/docker.py +0 -0
- {cdk_factory-0.18.3 → cdk_factory-0.18.5}/src/cdk_factory/configurations/resources/dynamodb.py +0 -0
- {cdk_factory-0.18.3 → cdk_factory-0.18.5}/src/cdk_factory/configurations/resources/ecr.py +0 -0
- {cdk_factory-0.18.3 → cdk_factory-0.18.5}/src/cdk_factory/configurations/resources/ecs_cluster.py +0 -0
- {cdk_factory-0.18.3 → cdk_factory-0.18.5}/src/cdk_factory/configurations/resources/ecs_service.py +0 -0
- {cdk_factory-0.18.3 → cdk_factory-0.18.5}/src/cdk_factory/configurations/resources/exisiting.py +0 -0
- {cdk_factory-0.18.3 → cdk_factory-0.18.5}/src/cdk_factory/configurations/resources/lambda_edge.py +0 -0
- {cdk_factory-0.18.3 → cdk_factory-0.18.5}/src/cdk_factory/configurations/resources/lambda_function.py +0 -0
- {cdk_factory-0.18.3 → cdk_factory-0.18.5}/src/cdk_factory/configurations/resources/lambda_layers.py +0 -0
- {cdk_factory-0.18.3 → cdk_factory-0.18.5}/src/cdk_factory/configurations/resources/lambda_triggers.py +0 -0
- {cdk_factory-0.18.3 → cdk_factory-0.18.5}/src/cdk_factory/configurations/resources/load_balancer.py +0 -0
- {cdk_factory-0.18.3 → cdk_factory-0.18.5}/src/cdk_factory/configurations/resources/monitoring.py +0 -0
- {cdk_factory-0.18.3 → cdk_factory-0.18.5}/src/cdk_factory/configurations/resources/rds.py +0 -0
- {cdk_factory-0.18.3 → cdk_factory-0.18.5}/src/cdk_factory/configurations/resources/resource_mapping.py +0 -0
- {cdk_factory-0.18.3 → cdk_factory-0.18.5}/src/cdk_factory/configurations/resources/resource_naming.py +0 -0
- {cdk_factory-0.18.3 → cdk_factory-0.18.5}/src/cdk_factory/configurations/resources/resource_types.py +0 -0
- {cdk_factory-0.18.3 → cdk_factory-0.18.5}/src/cdk_factory/configurations/resources/route53.py +0 -0
- {cdk_factory-0.18.3 → cdk_factory-0.18.5}/src/cdk_factory/configurations/resources/route53_hosted_zone.py +0 -0
- {cdk_factory-0.18.3 → cdk_factory-0.18.5}/src/cdk_factory/configurations/resources/rum.py +0 -0
- {cdk_factory-0.18.3 → cdk_factory-0.18.5}/src/cdk_factory/configurations/resources/s3.py +0 -0
- {cdk_factory-0.18.3 → cdk_factory-0.18.5}/src/cdk_factory/configurations/resources/security_group.py +0 -0
- {cdk_factory-0.18.3 → cdk_factory-0.18.5}/src/cdk_factory/configurations/resources/security_group_full_stack.py +0 -0
- {cdk_factory-0.18.3 → cdk_factory-0.18.5}/src/cdk_factory/configurations/resources/sqs.py +0 -0
- {cdk_factory-0.18.3 → cdk_factory-0.18.5}/src/cdk_factory/configurations/resources/vpc.py +0 -0
- {cdk_factory-0.18.3 → cdk_factory-0.18.5}/src/cdk_factory/configurations/stack.py +0 -0
- {cdk_factory-0.18.3 → cdk_factory-0.18.5}/src/cdk_factory/configurations/workload.py +0 -0
- {cdk_factory-0.18.3 → cdk_factory-0.18.5}/src/cdk_factory/constructs/cloudfront/cloudfront_distribution_construct.py +0 -0
- {cdk_factory-0.18.3 → cdk_factory-0.18.5}/src/cdk_factory/constructs/ecr/ecr_construct.py +0 -0
- {cdk_factory-0.18.3 → cdk_factory-0.18.5}/src/cdk_factory/constructs/lambdas/lambda_function_construct.py +0 -0
- {cdk_factory-0.18.3 → cdk_factory-0.18.5}/src/cdk_factory/constructs/lambdas/lambda_function_docker_construct.py +0 -0
- {cdk_factory-0.18.3 → cdk_factory-0.18.5}/src/cdk_factory/constructs/lambdas/lambda_function_role_construct.py +0 -0
- {cdk_factory-0.18.3 → cdk_factory-0.18.5}/src/cdk_factory/constructs/lambdas/policies/policy_docs.py +0 -0
- {cdk_factory-0.18.3 → cdk_factory-0.18.5}/src/cdk_factory/constructs/lambdas/policies/policy_statements.py +0 -0
- {cdk_factory-0.18.3 → cdk_factory-0.18.5}/src/cdk_factory/constructs/s3_buckets/s3_bucket_construct.py +0 -0
- {cdk_factory-0.18.3 → cdk_factory-0.18.5}/src/cdk_factory/constructs/s3_buckets/s3_bucket_replication_destination_construct.py +0 -0
- {cdk_factory-0.18.3 → cdk_factory-0.18.5}/src/cdk_factory/constructs/s3_buckets/s3_bucket_replication_source_construct.py +0 -0
- {cdk_factory-0.18.3 → cdk_factory-0.18.5}/src/cdk_factory/constructs/sqs/policies/sqs_policies.py +0 -0
- {cdk_factory-0.18.3 → cdk_factory-0.18.5}/src/cdk_factory/interfaces/istack.py +0 -0
- {cdk_factory-0.18.3 → cdk_factory-0.18.5}/src/cdk_factory/interfaces/live_ssm_resolver.py +0 -0
- {cdk_factory-0.18.3 → cdk_factory-0.18.5}/src/cdk_factory/interfaces/networked_stack_mixin.py +0 -0
- {cdk_factory-0.18.3 → cdk_factory-0.18.5}/src/cdk_factory/interfaces/vpc_provider_mixin.py +0 -0
- {cdk_factory-0.18.3 → cdk_factory-0.18.5}/src/cdk_factory/lambdas/edge/ip_gate/handler.py +0 -0
- {cdk_factory-0.18.3 → cdk_factory-0.18.5}/src/cdk_factory/lambdas/health_handler.py +0 -0
- {cdk_factory-0.18.3 → cdk_factory-0.18.5}/src/cdk_factory/pipeline/path_utils.py +0 -0
- {cdk_factory-0.18.3 → cdk_factory-0.18.5}/src/cdk_factory/pipeline/pipeline_factory.py +0 -0
- {cdk_factory-0.18.3 → cdk_factory-0.18.5}/src/cdk_factory/pipeline/security/policies.py +0 -0
- {cdk_factory-0.18.3 → cdk_factory-0.18.5}/src/cdk_factory/pipeline/security/roles.py +0 -0
- {cdk_factory-0.18.3 → cdk_factory-0.18.5}/src/cdk_factory/pipeline/stage.py +0 -0
- {cdk_factory-0.18.3 → cdk_factory-0.18.5}/src/cdk_factory/stack/istack.py +0 -0
- {cdk_factory-0.18.3 → cdk_factory-0.18.5}/src/cdk_factory/stack/stack_factory.py +0 -0
- {cdk_factory-0.18.3 → cdk_factory-0.18.5}/src/cdk_factory/stack/stack_module_loader.py +0 -0
- {cdk_factory-0.18.3 → cdk_factory-0.18.5}/src/cdk_factory/stack/stack_module_registry.py +0 -0
- {cdk_factory-0.18.3 → cdk_factory-0.18.5}/src/cdk_factory/stack/stack_modules.py +0 -0
- {cdk_factory-0.18.3 → cdk_factory-0.18.5}/src/cdk_factory/stack_library/__init__.py +0 -0
- {cdk_factory-0.18.3 → cdk_factory-0.18.5}/src/cdk_factory/stack_library/acm/__init__.py +0 -0
- {cdk_factory-0.18.3 → cdk_factory-0.18.5}/src/cdk_factory/stack_library/acm/acm_stack.py +0 -0
- {cdk_factory-0.18.3 → cdk_factory-0.18.5}/src/cdk_factory/stack_library/api_gateway/api_gateway_stack.py +0 -0
- {cdk_factory-0.18.3 → cdk_factory-0.18.5}/src/cdk_factory/stack_library/auto_scaling/__init__.py +0 -0
- {cdk_factory-0.18.3 → cdk_factory-0.18.5}/src/cdk_factory/stack_library/aws_lambdas/lambda_stack.py +0 -0
- {cdk_factory-0.18.3 → cdk_factory-0.18.5}/src/cdk_factory/stack_library/buckets/README.md +0 -0
- {cdk_factory-0.18.3 → cdk_factory-0.18.5}/src/cdk_factory/stack_library/buckets/bucket_stack.py +0 -0
- {cdk_factory-0.18.3 → cdk_factory-0.18.5}/src/cdk_factory/stack_library/cloudfront/__init__.py +0 -0
- {cdk_factory-0.18.3 → cdk_factory-0.18.5}/src/cdk_factory/stack_library/cloudfront/cloudfront_stack.py +0 -0
- {cdk_factory-0.18.3 → cdk_factory-0.18.5}/src/cdk_factory/stack_library/code_artifact/code_artifact_stack.py +0 -0
- {cdk_factory-0.18.3 → cdk_factory-0.18.5}/src/cdk_factory/stack_library/cognito/cognito_stack.py +0 -0
- {cdk_factory-0.18.3 → cdk_factory-0.18.5}/src/cdk_factory/stack_library/dynamodb/dynamodb_stack.py +0 -0
- {cdk_factory-0.18.3 → cdk_factory-0.18.5}/src/cdk_factory/stack_library/ecr/README.md +0 -0
- {cdk_factory-0.18.3 → cdk_factory-0.18.5}/src/cdk_factory/stack_library/ecr/ecr_stack.py +0 -0
- {cdk_factory-0.18.3 → cdk_factory-0.18.5}/src/cdk_factory/stack_library/ecs/__init__.py +0 -0
- {cdk_factory-0.18.3 → cdk_factory-0.18.5}/src/cdk_factory/stack_library/ecs/ecs_cluster_stack_standardized.py +0 -0
- {cdk_factory-0.18.3 → cdk_factory-0.18.5}/src/cdk_factory/stack_library/ecs/ecs_service_stack.py +0 -0
- {cdk_factory-0.18.3 → cdk_factory-0.18.5}/src/cdk_factory/stack_library/lambda_edge/__init__.py +0 -0
- {cdk_factory-0.18.3 → cdk_factory-0.18.5}/src/cdk_factory/stack_library/lambda_edge/lambda_edge_stack.py +0 -0
- {cdk_factory-0.18.3 → cdk_factory-0.18.5}/src/cdk_factory/stack_library/load_balancer/__init__.py +0 -0
- {cdk_factory-0.18.3 → cdk_factory-0.18.5}/src/cdk_factory/stack_library/load_balancer/load_balancer_stack.py +0 -0
- {cdk_factory-0.18.3 → cdk_factory-0.18.5}/src/cdk_factory/stack_library/monitoring/__init__.py +0 -0
- {cdk_factory-0.18.3 → cdk_factory-0.18.5}/src/cdk_factory/stack_library/monitoring/monitoring_stack.py +0 -0
- {cdk_factory-0.18.3 → cdk_factory-0.18.5}/src/cdk_factory/stack_library/rds/__init__.py +0 -0
- {cdk_factory-0.18.3 → cdk_factory-0.18.5}/src/cdk_factory/stack_library/rds/rds_stack.py +0 -0
- {cdk_factory-0.18.3 → cdk_factory-0.18.5}/src/cdk_factory/stack_library/route53/__init__.py +0 -0
- {cdk_factory-0.18.3 → cdk_factory-0.18.5}/src/cdk_factory/stack_library/route53/route53_stack.py +0 -0
- {cdk_factory-0.18.3 → cdk_factory-0.18.5}/src/cdk_factory/stack_library/rum/__init__.py +0 -0
- {cdk_factory-0.18.3 → cdk_factory-0.18.5}/src/cdk_factory/stack_library/rum/rum_stack.py +0 -0
- {cdk_factory-0.18.3 → cdk_factory-0.18.5}/src/cdk_factory/stack_library/security_group/__init__.py +0 -0
- {cdk_factory-0.18.3 → cdk_factory-0.18.5}/src/cdk_factory/stack_library/security_group/security_group_full_stack.py +0 -0
- {cdk_factory-0.18.3 → cdk_factory-0.18.5}/src/cdk_factory/stack_library/security_group/security_group_stack.py +0 -0
- {cdk_factory-0.18.3 → cdk_factory-0.18.5}/src/cdk_factory/stack_library/simple_queue_service/sqs_stack.py +0 -0
- {cdk_factory-0.18.3 → cdk_factory-0.18.5}/src/cdk_factory/stack_library/stack_base.py +0 -0
- {cdk_factory-0.18.3 → cdk_factory-0.18.5}/src/cdk_factory/stack_library/vpc/__init__.py +0 -0
- {cdk_factory-0.18.3 → cdk_factory-0.18.5}/src/cdk_factory/stack_library/vpc/vpc_stack_standardized.py +0 -0
- {cdk_factory-0.18.3 → cdk_factory-0.18.5}/src/cdk_factory/stack_library/websites/static_website_stack.py +0 -0
- {cdk_factory-0.18.3 → cdk_factory-0.18.5}/src/cdk_factory/stages/websites/static_website_stage.py +0 -0
- {cdk_factory-0.18.3 → cdk_factory-0.18.5}/src/cdk_factory/templates/README.md +0 -0
- {cdk_factory-0.18.3 → cdk_factory-0.18.5}/src/cdk_factory/templates/app.py.template +0 -0
- {cdk_factory-0.18.3 → cdk_factory-0.18.5}/src/cdk_factory/templates/cdk.json.template +0 -0
- {cdk_factory-0.18.3 → cdk_factory-0.18.5}/src/cdk_factory/utilities/api_gateway_integration_utility.py +0 -0
- {cdk_factory-0.18.3 → cdk_factory-0.18.5}/src/cdk_factory/utilities/commandline_args.py +0 -0
- {cdk_factory-0.18.3 → cdk_factory-0.18.5}/src/cdk_factory/utilities/configuration_loader.py +0 -0
- {cdk_factory-0.18.3 → cdk_factory-0.18.5}/src/cdk_factory/utilities/docker_utilities.py +0 -0
- {cdk_factory-0.18.3 → cdk_factory-0.18.5}/src/cdk_factory/utilities/environment_services.py +0 -0
- {cdk_factory-0.18.3 → cdk_factory-0.18.5}/src/cdk_factory/utilities/file_operations.py +0 -0
- {cdk_factory-0.18.3 → cdk_factory-0.18.5}/src/cdk_factory/utilities/git_utilities.py +0 -0
- {cdk_factory-0.18.3 → cdk_factory-0.18.5}/src/cdk_factory/utilities/json_loading_utility.py +0 -0
- {cdk_factory-0.18.3 → cdk_factory-0.18.5}/src/cdk_factory/utilities/lambda_function_utilities.py +0 -0
- {cdk_factory-0.18.3 → cdk_factory-0.18.5}/src/cdk_factory/utilities/os_execute.py +0 -0
- {cdk_factory-0.18.3 → cdk_factory-0.18.5}/src/cdk_factory/utils/api_gateway_utilities.py +0 -0
- {cdk_factory-0.18.3 → cdk_factory-0.18.5}/src/cdk_factory/validation/config_validator.py +0 -0
- {cdk_factory-0.18.3 → cdk_factory-0.18.5}/src/cdk_factory/workload/workload_factory.py +0 -0
- {cdk_factory-0.18.3 → cdk_factory-0.18.5}/src/handlers/test/handler.py +0 -0
{cdk_factory-0.18.3 → 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 []
|