File Coverage

blib/lib/Paws/RedShift/RestoreFromClusterSnapshot.pm
Criterion Covered Total %
statement 12 12 100.0
branch n/a
condition n/a
subroutine 4 4 100.0
pod n/a
total 16 16 100.0


line stmt bran cond sub pod time code
1              
2             package Paws::RedShift::RestoreFromClusterSnapshot;
3 1     1   388 use Moose;
  1     1   3  
  1         7  
  1         560  
  1         3  
  1         9  
4             has AdditionalInfo => (is => 'ro', isa => 'Str');
5             has AllowVersionUpgrade => (is => 'ro', isa => 'Bool');
6             has AutomatedSnapshotRetentionPeriod => (is => 'ro', isa => 'Int');
7             has AvailabilityZone => (is => 'ro', isa => 'Str');
8             has ClusterIdentifier => (is => 'ro', isa => 'Str', required => 1);
9             has ClusterParameterGroupName => (is => 'ro', isa => 'Str');
10             has ClusterSecurityGroups => (is => 'ro', isa => 'ArrayRef[Str|Undef]');
11             has ClusterSubnetGroupName => (is => 'ro', isa => 'Str');
12             has ElasticIp => (is => 'ro', isa => 'Str');
13             has EnhancedVpcRouting => (is => 'ro', isa => 'Bool');
14             has HsmClientCertificateIdentifier => (is => 'ro', isa => 'Str');
15             has HsmConfigurationIdentifier => (is => 'ro', isa => 'Str');
16             has IamRoles => (is => 'ro', isa => 'ArrayRef[Str|Undef]');
17             has KmsKeyId => (is => 'ro', isa => 'Str');
18             has NodeType => (is => 'ro', isa => 'Str');
19             has OwnerAccount => (is => 'ro', isa => 'Str');
20             has Port => (is => 'ro', isa => 'Int');
21             has PreferredMaintenanceWindow => (is => 'ro', isa => 'Str');
22             has PubliclyAccessible => (is => 'ro', isa => 'Bool');
23             has SnapshotClusterIdentifier => (is => 'ro', isa => 'Str');
24             has SnapshotIdentifier => (is => 'ro', isa => 'Str', required => 1);
25             has VpcSecurityGroupIds => (is => 'ro', isa => 'ArrayRef[Str|Undef]');
26              
27 1     1   5762 use MooseX::ClassAttribute;
  1     1   4  
  1         8  
  1         6724  
  1         3  
  1         8  
28              
29             class_has _api_call => (isa => 'Str', is => 'ro', default => 'RestoreFromClusterSnapshot');
30             class_has _returns => (isa => 'Str', is => 'ro', default => 'Paws::RedShift::RestoreFromClusterSnapshotResult');
31             class_has _result_key => (isa => 'Str', is => 'ro', default => 'RestoreFromClusterSnapshotResult');
32             1;
33              
34             ### main pod documentation begin ###
35              
36             =head1 NAME
37              
38             Paws::RedShift::RestoreFromClusterSnapshot - Arguments for method RestoreFromClusterSnapshot on Paws::RedShift
39              
40             =head1 DESCRIPTION
41              
42             This class represents the parameters used for calling the method RestoreFromClusterSnapshot on the
43             Amazon Redshift service. Use the attributes of this class
44             as arguments to method RestoreFromClusterSnapshot.
45              
46             You shouldn't make instances of this class. Each attribute should be used as a named argument in the call to RestoreFromClusterSnapshot.
47              
48             As an example:
49              
50             $service_obj->RestoreFromClusterSnapshot(Att1 => $value1, Att2 => $value2, ...);
51              
52             Values for attributes that are native types (Int, String, Float, etc) can passed as-is (scalar values). Values for complex Types (objects) can be passed as a HashRef. The keys and values of the hashref will be used to instance the underlying object.
53              
54             =head1 ATTRIBUTES
55              
56              
57             =head2 AdditionalInfo => Str
58              
59             Reserved.
60              
61              
62              
63             =head2 AllowVersionUpgrade => Bool
64              
65             If C<true>, major version upgrades can be applied during the
66             maintenance window to the Amazon Redshift engine that is running on the
67             cluster.
68              
69             Default: C<true>
70              
71              
72              
73             =head2 AutomatedSnapshotRetentionPeriod => Int
74              
75             The number of days that automated snapshots are retained. If the value
76             is 0, automated snapshots are disabled. Even if automated snapshots are
77             disabled, you can still create manual snapshots when you want with
78             CreateClusterSnapshot.
79              
80             Default: The value selected for the cluster from which the snapshot was
81             taken.
82              
83             Constraints: Must be a value from 0 to 35.
84              
85              
86              
87             =head2 AvailabilityZone => Str
88              
89             The Amazon EC2 Availability Zone in which to restore the cluster.
90              
91             Default: A random, system-chosen Availability Zone.
92              
93             Example: C<us-east-1a>
94              
95              
96              
97             =head2 B<REQUIRED> ClusterIdentifier => Str
98              
99             The identifier of the cluster that will be created from restoring the
100             snapshot.
101              
102             Constraints:
103              
104             =over
105              
106             =item *
107              
108             Must contain from 1 to 63 alphanumeric characters or hyphens.
109              
110             =item *
111              
112             Alphabetic characters must be lowercase.
113              
114             =item *
115              
116             First character must be a letter.
117              
118             =item *
119              
120             Cannot end with a hyphen or contain two consecutive hyphens.
121              
122             =item *
123              
124             Must be unique for all clusters within an AWS account.
125              
126             =back
127              
128              
129              
130              
131             =head2 ClusterParameterGroupName => Str
132              
133             The name of the parameter group to be associated with this cluster.
134              
135             Default: The default Amazon Redshift cluster parameter group. For
136             information about the default parameter group, go to Working with
137             Amazon Redshift Parameter Groups.
138              
139             Constraints:
140              
141             =over
142              
143             =item *
144              
145             Must be 1 to 255 alphanumeric characters or hyphens.
146              
147             =item *
148              
149             First character must be a letter.
150              
151             =item *
152              
153             Cannot end with a hyphen or contain two consecutive hyphens.
154              
155             =back
156              
157              
158              
159              
160             =head2 ClusterSecurityGroups => ArrayRef[Str|Undef]
161              
162             A list of security groups to be associated with this cluster.
163              
164             Default: The default cluster security group for Amazon Redshift.
165              
166             Cluster security groups only apply to clusters outside of VPCs.
167              
168              
169              
170             =head2 ClusterSubnetGroupName => Str
171              
172             The name of the subnet group where you want to cluster restored.
173              
174             A snapshot of cluster in VPC can be restored only in VPC. Therefore,
175             you must provide subnet group name where you want the cluster restored.
176              
177              
178              
179             =head2 ElasticIp => Str
180              
181             The elastic IP (EIP) address for the cluster.
182              
183              
184              
185             =head2 EnhancedVpcRouting => Bool
186              
187             An option that specifies whether to create the cluster with enhanced
188             VPC routing enabled. To create a cluster that uses enhanced VPC
189             routing, the cluster must be in a VPC. For more information, see
190             Enhanced VPC Routing in the Amazon Redshift Cluster Management Guide.
191              
192             If this option is C<true>, enhanced VPC routing is enabled.
193              
194             Default: false
195              
196              
197              
198             =head2 HsmClientCertificateIdentifier => Str
199              
200             Specifies the name of the HSM client certificate the Amazon Redshift
201             cluster uses to retrieve the data encryption keys stored in an HSM.
202              
203              
204              
205             =head2 HsmConfigurationIdentifier => Str
206              
207             Specifies the name of the HSM configuration that contains the
208             information the Amazon Redshift cluster can use to retrieve and store
209             keys in an HSM.
210              
211              
212              
213             =head2 IamRoles => ArrayRef[Str|Undef]
214              
215             A list of AWS Identity and Access Management (IAM) roles that can be
216             used by the cluster to access other AWS services. You must supply the
217             IAM roles in their Amazon Resource Name (ARN) format. You can supply up
218             to 10 IAM roles in a single request.
219              
220             A cluster can have up to 10 IAM roles associated at any time.
221              
222              
223              
224             =head2 KmsKeyId => Str
225              
226             The AWS Key Management Service (KMS) key ID of the encryption key that
227             you want to use to encrypt data in the cluster that you restore from a
228             shared snapshot.
229              
230              
231              
232             =head2 NodeType => Str
233              
234             The node type that the restored cluster will be provisioned with.
235              
236             Default: The node type of the cluster from which the snapshot was
237             taken. You can modify this if you are using any DS node type. In that
238             case, you can choose to restore into another DS node type of the same
239             size. For example, you can restore ds1.8xlarge into ds2.8xlarge, or
240             ds2.xlarge into ds1.xlarge. If you have a DC instance type, you must
241             restore into that same instance type and size. In other words, you can
242             only restore a dc1.large instance type into another dc1.large instance
243             type. For more information about node types, see About Clusters and
244             Nodes in the I<Amazon Redshift Cluster Management Guide>
245              
246              
247              
248             =head2 OwnerAccount => Str
249              
250             The AWS customer account used to create or copy the snapshot. Required
251             if you are restoring a snapshot you do not own, optional if you own the
252             snapshot.
253              
254              
255              
256             =head2 Port => Int
257              
258             The port number on which the cluster accepts connections.
259              
260             Default: The same port as the original cluster.
261              
262             Constraints: Must be between C<1115> and C<65535>.
263              
264              
265              
266             =head2 PreferredMaintenanceWindow => Str
267              
268             The weekly time range (in UTC) during which automated cluster
269             maintenance can occur.
270              
271             Format: C<ddd:hh24:mi-ddd:hh24:mi>
272              
273             Default: The value selected for the cluster from which the snapshot was
274             taken. For more information about the time blocks for each region, see
275             Maintenance Windows in Amazon Redshift Cluster Management Guide.
276              
277             Valid Days: Mon | Tue | Wed | Thu | Fri | Sat | Sun
278              
279             Constraints: Minimum 30-minute window.
280              
281              
282              
283             =head2 PubliclyAccessible => Bool
284              
285             If C<true>, the cluster can be accessed from a public network.
286              
287              
288              
289             =head2 SnapshotClusterIdentifier => Str
290              
291             The name of the cluster the source snapshot was created from. This
292             parameter is required if your IAM user has a policy containing a
293             snapshot resource element that specifies anything other than * for the
294             cluster name.
295              
296              
297              
298             =head2 B<REQUIRED> SnapshotIdentifier => Str
299              
300             The name of the snapshot from which to create the new cluster. This
301             parameter isn't case sensitive.
302              
303             Example: C<my-snapshot-id>
304              
305              
306              
307             =head2 VpcSecurityGroupIds => ArrayRef[Str|Undef]
308              
309             A list of Virtual Private Cloud (VPC) security groups to be associated
310             with the cluster.
311              
312             Default: The default VPC security group is associated with the cluster.
313              
314             VPC security groups only apply to clusters in VPCs.
315              
316              
317              
318              
319             =head1 SEE ALSO
320              
321             This class forms part of L<Paws>, documenting arguments for method RestoreFromClusterSnapshot in L<Paws::RedShift>
322              
323             =head1 BUGS and CONTRIBUTIONS
324              
325             The source code is located here: https://github.com/pplu/aws-sdk-perl
326              
327             Please report bugs to: https://github.com/pplu/aws-sdk-perl/issues
328              
329             =cut
330