(aws_ec2.VpcEndpointService): Add a way to import existing VpcEndpointService
- Dominant language
- TypeScript
- Stars
- 12.9k
- Forks
- 4.6k
- Avg merge
- 2d 3h
- Merged PRs (30d)
- 83
Description
### Describe the feature
Currently, there's no way to import an existing VpcEndpointService into CDK Project.
There's a lack of `From*` method for VpcEndpointService
### Use Case
I have created NLB into my application's private subnet and exposed this NLB to a Private REST API Gateway via VPC Link.
It seems like adding VPC Link automatically creates a VPC Endpoint Service.
However, the problem is I cannot get a reference to the VpcEndpointService to use in CDK nor import VpcEndpointService.
I would like to modify the VpcEndpointService to expose the same NLB to an VpcEndpoint on another AWS Account.
I am intending to implement a Global API Gateway as written here: https://aws.amazon.com/blogs/compute/building-private-cross-account-apis-using-amazon-api-gateway-and-aws-privatelink/
### Proposed Solution
1. Expose VpcEndpointService when creating a VPC Link
2. Allow a way to import existing VpcEndpointService into CDK.
Workaround:
1. Create new NLB and new VpcEndpointService, but this is redundant and isn't cost-efficient.
2. Manually or use AWS CLI to modify the existing VpcEndpointService (change the AllowPrincipal and AcceptanceRequired to false)
### Other Information
_No response_
### Acknowledgements
- [ ] I may be able to implement this feature request
- [ ] This feature might incur a breaking change
### CDK version used
2.56.0
### Environment details (OS name and version, etc.)
Windows 10
Contributor guide
Research direction
Start with the aws_ec2.VpcEndpointService and VPC Link entry points, focusing on how an existing endpoint service could be referenced and how a VPC Link exposes its service. Done means CDK can import an existing VpcEndpointService and expose the service created for a VPC Link without requiring a redundant NLB or endpoint service.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- aws, typescript
- Domain
- cloud, infrastructure
- Issue type
- Feature
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 45/100