Is your feature request related to a problem? Please describe.
Make the syntax work:
x-vpc:
Lookup:
VpcId:
Identifier: vpc-xxx
Output (if there are no VPC with tags in whole AWS acct):
2025-03-25 11:39:47 [ INFO] Processing x-vpc
Traceback (most recent call last):
File "/Users/user/.local/bin/compose-x", line 8, in <module>
sys.exit(main())
~~~~^^
File "/Users/user/.local/pipx/venvs/ecs-composex/lib/python3.13/site-packages/ecs_composex/cli.py", line 213, in main
root_stack = generate_full_template(settings)
File "/Users/user/.local/pipx/venvs/ecs-composex/lib/python3.13/site-packages/ecs_composex/ecs_composex.py", line 257, in generate_full_template
add_x_resources(settings)
~~~~~~~~~~~~~~~^^^^^^^^^^
File "/Users/user/.local/pipx/venvs/ecs-composex/lib/python3.13/site-packages/ecs_composex/ecs_composex.py", line 181, in add_x_resources
x_stack = module.stack_class(
module.mapping_key,
...<2 lines>...
Parameters={ROOT_STACK_NAME.title: Ref(AWS_STACK_NAME)},
)
File "/Users/user/.local/pipx/venvs/ecs-composex/lib/python3.13/site-packages/ecs_composex/vpc/vpc_stack.py", line 371, in __init__
self.vpc_resource.lookup_vpc()
~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^
File "/Users/user/.local/pipx/venvs/ecs-composex/lib/python3.13/site-packages/ecs_composex/vpc/vpc_stack.py", line 173, in lookup_vpc
vpc_settings = lookup_x_vpc_settings(self)
File "/Users/user/.local/pipx/venvs/ecs-composex/lib/python3.13/site-packages/ecs_composex/vpc/vpc_aws.py", line 106, in lookup_x_vpc_settings
vpc_arn = find_aws_resource_arn_from_tags_api(
vpc_resource.lookup[VPC_ID.title],
...<2 lines>...
allow_multi=False,
)
File "/Users/user/.local/pipx/venvs/ecs-composex/lib/python3.13/site-packages/ecs_composex/common/aws.py", line 237, in find_aws_resource_arn_from_tags_api
return handle_search_results(
arns, name, res_types, aws_resource_search, allow_multi=allow_multi
)
File "/Users/user/.local/pipx/venvs/ecs-composex/lib/python3.13/site-packages/ecs_composex/common/aws.py", line 176, in handle_search_results
raise LookupError(
...<3 lines>...
)
LookupError: ('No resources were found with the provided tags and information', None, 'ec2:vpc')
Output (if there are two tagged VPCs but using "Identifier"):
LookupError: ('More than one resource None:ec2:vpc was found with the current tags.Found', ['arn:aws:ec2:us-east-2:123:vpc/vpc-xxx', 'arn:aws:ec2:us-east-2:123:vpc/vpc-yyy'])
Not sure if this is a bug or feature. Docs are unclear.
Lookups docs suggest this should be possible:
Identifier | The Service resource ID (i.e. vpc-abcd1234)
x-vpc docs nor test cases ever mention this field
Reasoning:
- Network resources shared via RAM shares do not have Tags by default (unless some effort is made), ID/Arn lookup would be great.
Describe the solution you'd like
Allow ID/ARN lookup
Describe alternatives you've considered
A clear and concise description of any alternative solutions or features you've considered.
Additional context
Add any other context or screenshots about the feature request here.
Is your feature request related to a problem? Please describe.
Make the syntax work:
Output (if there are no VPC with tags in whole AWS acct):
Output (if there are two tagged VPCs but using "Identifier"):
Not sure if this is a bug or feature. Docs are unclear.
Lookups docs suggest this should be possible:
x-vpc docs nor test cases ever mention this field
Reasoning:
Describe the solution you'd like
Allow ID/ARN lookup
Describe alternatives you've considered
A clear and concise description of any alternative solutions or features you've considered.
Additional context
Add any other context or screenshots about the feature request here.