aws-cloudformation / aws-cloudformation/cloudformation-coverage-roadmap
AWS::CloudFormation::Delay (new resource)
- Dominant language
- No language data
- Stars
- 1.1k
- Forks
- 62
- PR merge metrics
- No merged PRs in 30d
Description
## 1. Title
#### AWS::CloudFormation::Delay (new resource)
## 2. Scope of request
In order to solve issues such as throttling (#588) or other scenarios where you want to delay the the next resource in line for deployment, I would like to propose to create a new CloudFormation resource type. It should be very similar to `AWS::CloudFormation::WaitCondition`[1], except that we don't need to wait for an external process, only for a period of time.
## 3. Expected behavior
A property should be available to receive the timeout. The value must be in ISO8601 duration format [2], in the form: `PT#H#M#S`, where each # is the number of hours, minutes, and seconds, respectively.
#### In Create/Update/Delete, it should return `SUCCESS` after the amount of time specified by user has passed.
## 4. Suggest specific test cases
This is an example usage for this hypothetical resource type:
```yaml
DomainName1:
Type: AWS::ApiGateway::DomainName
Properties:
DomainName: example.com
CertificateArn: ...
Delay:
Type: AWS::CloudFormation::Delay
Properties:
Timeout: PT1M
# This should only start after 1 minute has passed
DomainName2:
Type: AWS::ApiGateway::DomainName
DependsOn: Delay
Properties:
DomainName: api.example.com
CertificateArn: ...
```
## 5. Helpful Links to speed up research and evaluation
#### [1]: https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-waitcondition.html
#### [2]: http://en.wikipedia.org/wiki/ISO_8601#Durations
## 6. Category
5. Management (CloudTrail, Config...)
Contributor guide
Research direction
Start by reviewing the AWS::CloudFormation::WaitCondition documentation and the ISO 8601 duration reference linked in the issue, then compare the motivation with issue #588. Done means defining the new resource's timeout behavior and ensuring Create, Update, and Delete return SUCCESS only after the requested duration.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- aws
- Domain
- cloud, infrastructure
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100