aws-cloudformation / aws-cloudformation/cloudformation-coverage-roadmap

Add FinalClusterSnapshotIdentifier and SkipFinalClusterSnapshot properties to AWS::Redshift::Cluster

Open
#2,368 0 comments 1 reaction 0 assignees View on GitHub
Coverage
Dominant language
No language data
Stars
1.1k
Forks
62
PR merge metrics
No merged PRs in 30d

Description

### Name of the resource

AWS::Redshift::Cluster

### Resource name

_No response_

### Description

## Summary
Request to add `FinalClusterSnapshotIdentifier` and `SkipFinalClusterSnapshot` properties to the `AWS::Redshift::Cluster` CloudFormation resource to enable automatic final snapshot creation when clusters are deleted via CloudFormation stack deletion.

## Use Case
Currently, when a Redshift cluster is deleted through CloudFormation stack deletion, there's no way to automatically create a final snapshot. This forces users to either:
1. Manually delete the cluster via CLI/Console with snapshot options before deleting the stack
2. Risk data loss if the stack is accidentally deleted
3. Use workarounds like Lambda functions in custom resources

## Proposed Solution
Add the following properties to `AWS::Redshift::Cluster`:

```yaml
FinalClusterSnapshotIdentifier: String
SkipFinalClusterSnapshot: Boolean
```

These properties already exist in the Redshift API (`delete-cluster` operation) but are missing from the CloudFormation resource.

## Example Usage
```yaml
rRedshiftCluster:
Type: AWS::Redshift::Cluster
Properties:
# ... existing properties
FinalClusterSnapshotIdentifier: !Sub "${ClusterName}-final-snapshot"
SkipFinalClusterSnapshot: false
```

## Benefits
- Prevents accidental data loss during stack deletion
- Aligns CloudFormation capabilities with native Redshift API
- Eliminates need for complex workarounds
- Improves infrastructure-as-code best practices

## Current Workaround
Currently using manual cluster deletion or custom Lambda resources, which adds complexity and potential for human error.

### CLI Command (works but requires manual intervention)
```bash
aws redshift delete-cluster \
--cluster-identifier my-cluster \
--final-cluster-snapshot-identifier my-cluster-final-snapshot
```

## AWS Service
Amazon Redshift / AWS CloudFormation

## Resource Type
AWS::Redshift::Cluster

### Other Details

_No response_

Contributor guide

Open the contributing guide

Research direction

Start with the AWS::Redshift::Cluster resource and compare its CloudFormation properties with the Redshift delete-cluster API options named in the issue. Use the shown CLI command as the reference behavior. Done means CloudFormation supports FinalClusterSnapshotIdentifier and SkipFinalClusterSnapshot for stack deletion without requiring the listed workarounds.

Written by the indexing model from the issue text.

Assessment

Tech stack
aws
Domain
cloud, databases
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Clearly specified
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.