{ "name": "l2-microservice", "version": "1.0.0", "kind": "l2", "depth": 1, "description": "Thin-composition: an ECS Fargate microservice. References 6 L1s (vpc, cluster, ecr, roles, alb, service).", "children": [ {"id": "vpc", "module": "l1-vpc@1.0.0"}, {"id": "cluster", "module": "l1-ecs-cluster@1.0.0"}, {"id": "ecr", "module": "l1-ecr@1.0.0"}, {"id": "roles", "module": "l1-iam-role@1.0.0"}, {"id": "alb", "module": "l1-alb@1.0.0"}, {"id": "service", "module": "l1-ecs-service@1.0.0"} ], "wires": { "name": [ {"target": "vpc", "input": "name"}, {"target": "cluster", "input": "name"}, {"target": "ecr", "input": "name"}, {"target": "alb", "input": "name"} ], "cidr": {"target": "vpc", "input": "cidr"}, "azs": {"target": "vpc", "input": "azs"}, "image": {"target": "service", "input": "image"}, "port": [ {"target": "service", "input": "port"}, {"target": "alb", "input": "port"} ], "cpu": {"target": "service", "input": "cpu"}, "memory": {"target": "service", "input": "memory"}, "env": {"target": "service", "input": "env"}, "protocol": {"target": "alb", "input": "protocol"}, "region": [ {"target": "vpc", "input": "region"}, {"target": "cluster", "input": "region"}, {"target": "ecr", "input": "region"}, {"target": "roles", "input": "region"}, {"target": "alb", "input": "region"}, {"target": "service", "input": "region"} ], "role_name": {"target": "roles", "input": "role_name"}, "assume_role_policy": {"target": "roles", "input": "assume_role_policy"}, "managed_policies": {"target": "roles", "input": "managed_policies"}, "cluster_arn": {"target": "service", "input": "cluster_arn", "source": "child:cluster.cluster_arn"}, "subnet_ids": [ {"target": "service", "input": "subnets", "source": "child:vpc.subnet_ids"}, {"target": "alb", "input": "subnets", "source": "child:vpc.subnet_ids"} ], "target_group_arn": {"target": "service", "input": "lb_target_group_arn", "source": "child:alb.target_group_arn"}, "role_arn": [ {"target": "service", "input": "security_group", "source": "child:roles.role_arn"}, {"target": "alb", "input": "security_group", "source": "child:roles.role_arn"} ] } }