aws / aws/aws-cdk

Custom Lookup Providers

Open
#19,752 5 comments 43 reactions 0 assignees View on GitHub
@aws-cdk/custom-resources effort/large feature-request p1
Dominant language
TypeScript
Stars
12.9k
Forks
4.6k
Avg merge
2d 3h
Merged PRs (30d)
83

Description

### Describe the feature

The ability write custom "Lookup" providers that can asynchronously lookup values from 3rd party systems and have the value serialized and cached by context much like first party Lookups today.

### Use Case

There are more than a few cases where you need to get contextual information from a third-party system. It could be information about the target environment, variables from a third party system, or other information that can/must be retrieved programmatically.

### Proposed Solution

The CDK already have a first class system for Lookups, but it's internalized and largely intended for making AWS SDK calls to populate information about various constructs. It might not be easy, but it'd be nice to expose this as a generic escape hatch for end users.

### Other Information

Most teams are getting around this right now by doing some sort of `pre` job that retrieves and serializes this information to a file that CDK can then read. This is not idea since it's disjunct from the CDK process itself, and adds a redundant step for which the CDK is (in theory) capable of doing in one whole step.

### Acknowledgements

- [ ] I may be able to implement this feature request
- [ ] This feature might incur a breaking change

### CDK version used

2.x

### Environment details (OS name and version, etc.)

N/A

Contributor guide

Open the contributing guide

Research direction

No files, tests, or entry points are identified. Start by reading the CDK's existing first-class Lookup system and how it serializes and caches values, then determine the design needed for generic asynchronous third-party providers; done means custom providers can perform lookups with equivalent serialization and context-based caching.

Written by the indexing model from the issue text.

Assessment

Tech stack
aws, typescript
Domain
infrastructure
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.