snapshots
Creates, updates, deletes or gets a snapshot resource or lists snapshots in a region
Overview
| Name | snapshots |
| Type | Resource |
| Description | Resource Type definition for AWS::RedshiftServerless::Snapshot Resource Type. |
| Id | awscc.redshiftserverless.snapshots |
Fields
| Name | Datatype | Description |
|---|---|---|
snapshot_name | string | The name of the snapshot. |
namespace_name | string | The namespace the snapshot is associated with. |
owner_account | string | The owner account of the snapshot. |
retention_period | integer | The retention period of the snapshot. |
tags | array | An array of key-value pairs to apply to this resource. |
snapshot | object | Definition for snapshot resource |
region | string | AWS region. |
For more information, see AWS::RedshiftServerless::Snapshot.
Methods
| Name | Accessible by | Required Params |
|---|---|---|
create_resource | INSERT | SnapshotName, region |
delete_resource | DELETE | data__Identifier, region |
update_resource | UPDATE | data__Identifier, data__PatchDocument, region |
list_resources | SELECT | region |
get_resource | SELECT | data__Identifier, region |
SELECT examples
Gets all properties from an individual snapshot.
SELECT
region,
snapshot_name,
namespace_name,
owner_account,
retention_period,
tags,
snapshot
FROM awscc.redshiftserverless.snapshots
WHERE region = 'us-east-1' AND data__Identifier = '<SnapshotName>';
INSERT example
Use the following StackQL query and manifest file to create a new snapshot resource, using stack-deploy.
- Required Properties
- All Properties
- Manifest
/*+ create */
INSERT INTO awscc.redshiftserverless.snapshots (
SnapshotName,
region
)
SELECT
'{{ SnapshotName }}',
'{{ region }}';
/*+ create */
INSERT INTO awscc.redshiftserverless.snapshots (
SnapshotName,
NamespaceName,
RetentionPeriod,
Tags,
region
)
SELECT
'{{ SnapshotName }}',
'{{ NamespaceName }}',
'{{ RetentionPeriod }}',
'{{ Tags }}',
'{{ region }}';
version: 1
name: stack name
description: stack description
providers:
- aws
globals:
- name: region
value: '{{ vars.AWS_REGION }}'
resources:
- name: snapshot
props:
- name: SnapshotName
value: '{{ SnapshotName }}'
- name: NamespaceName
value: '{{ NamespaceName }}'
- name: RetentionPeriod
value: '{{ RetentionPeriod }}'
- name: Tags
value:
- Key: '{{ Key }}'
Value: '{{ Value }}'
DELETE example
/*+ delete */
DELETE FROM awscc.redshiftserverless.snapshots
WHERE data__Identifier = '<SnapshotName>'
AND region = 'us-east-1';
Permissions
To operate on the snapshots resource, the following permissions are required:
Create
redshift-serverless:CreateSnapshot,
redshift-serverless:GetSnapshot,
redshift-serverless:ListTagsForResource,
redshift-serverless:TagResource,
redshift-serverless:GetNamespace
Read
redshift-serverless:GetSnapshot,
redshift-serverless:ListTagsForResource,
redshift-serverless:GetNamespace
Update
redshift-serverless:UpdateSnapshot,
redshift-serverless:GetSnapshot,
redshift-serverless:ListTagsForResource,
redshift-serverless:TagResource,
redshift-serverless:UntagResource,
redshift-serverless:GetNamespace
Delete
redshift-serverless:DeleteSnapshot,
redshift-serverless:GetSnapshot,
redshift-serverless:ListTagsForResource,
redshift-serverless:UntagResource,
redshift-serverless:GetNamespace
List
redshift-serverless:ListSnapshots,
redshift-serverless:GetSnapshot,
redshift-serverless:ListTagsForResource,
redshift-serverless:GetNamespace