aws / aws/aws-cdk

(aws_ec2.VpcEndpointService): Add a way to import existing VpcEndpointService

Open
#24,606 3 comments 1 reaction 0 assignees View on GitHub
@aws-cdk/aws-ec2 effort/medium feature-request p2
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

Open the contributing 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

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.