(custom_resources): retry after Rate exceeded
- Dominant language
- TypeScript
- Stars
- 12.9k
- Forks
- 4.6k
- Avg merge
- 2d 3h
- Merged PRs (30d)
- 83
Description
### Describe the bug
In our project, we use AwsCustomResource to run many API calls against Lake Formation (`grantPermissions`, `revokePermissions`.)
However, in many cases, it happens that the deployment fails after a `Rate exceeded` error.
### Expected Behavior
It would be nice to have the option to enable an exponential backoff retry
### Current Behavior
The deployment fails with no other options.
### Reproduction Steps
Steps
```ts
new AwsCustomResource(this.scope, id, {
role: this.customResourceRole,
onCreate: {
service: 'LakeFormation',
action: 'grantPermissions',
parameters: {
Principal: { ... },
Resource: {
LFTagPolicy: { ... },
Permissions: permissions,
},
physicalResourceId: PhysicalResourceId.of(id),
},
```
### Possible Solution
_No response_
### Additional Information/Context
_No response_
### CDK CLI Version
2.65.0
### Framework Version
_No response_
### Node.js Version
18
### OS
macOs 13.0.1
### Language
Typescript
### Language Version
_No response_
### Other information
_No response_
Contributor guide
Research direction
Start at the AwsCustomResource entry point and trace how the configured LakeFormation grantPermissions and revokePermissions calls are invoked. Reproduce the Rate exceeded failure with the example configuration, then determine the retry option and exponential-backoff behavior needed so deployment can recover instead of failing immediately.
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
- 35/100