File Coverage

blib/lib/Paws/RDS/CopyDBSnapshot.pm
Criterion Covered Total %
statement 6 6 100.0
branch n/a
condition n/a
subroutine 2 2 100.0
pod n/a
total 8 8 100.0


line stmt bran cond sub pod time code
1              
2             package Paws::RDS::CopyDBSnapshot;
3 1     1   434 use Moose;
  1         3  
  1         8  
4             has CopyTags => (is => 'ro', isa => 'Bool');
5             has KmsKeyId => (is => 'ro', isa => 'Str');
6             has OptionGroupName => (is => 'ro', isa => 'Str');
7             has PreSignedUrl => (is => 'ro', isa => 'Str');
8             has SourceDBSnapshotIdentifier => (is => 'ro', isa => 'Str', required => 1);
9             has Tags => (is => 'ro', isa => 'ArrayRef[Paws::RDS::Tag]');
10             has TargetDBSnapshotIdentifier => (is => 'ro', isa => 'Str', required => 1);
11              
12 1     1   5911 use MooseX::ClassAttribute;
  1         3  
  1         7  
13              
14             class_has _api_call => (isa => 'Str', is => 'ro', default => 'CopyDBSnapshot');
15             class_has _returns => (isa => 'Str', is => 'ro', default => 'Paws::RDS::CopyDBSnapshotResult');
16             class_has _result_key => (isa => 'Str', is => 'ro', default => 'CopyDBSnapshotResult');
17             1;
18              
19             ### main pod documentation begin ###
20              
21             =head1 NAME
22              
23             Paws::RDS::CopyDBSnapshot - Arguments for method CopyDBSnapshot on Paws::RDS
24              
25             =head1 DESCRIPTION
26              
27             This class represents the parameters used for calling the method CopyDBSnapshot on the
28             Amazon Relational Database Service service. Use the attributes of this class
29             as arguments to method CopyDBSnapshot.
30              
31             You shouldn't make instances of this class. Each attribute should be used as a named argument in the call to CopyDBSnapshot.
32              
33             As an example:
34              
35             $service_obj->CopyDBSnapshot(Att1 => $value1, Att2 => $value2, ...);
36              
37             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.
38              
39             =head1 ATTRIBUTES
40              
41              
42             =head2 CopyTags => Bool
43              
44             True to copy all tags from the source DB snapshot to the target DB
45             snapshot; otherwise false. The default is false.
46              
47              
48              
49             =head2 KmsKeyId => Str
50              
51             The AWS KMS key ID for an encrypted DB snapshot. The KMS key ID is the
52             Amazon Resource Name (ARN), KMS key identifier, or the KMS key alias
53             for the KMS encryption key.
54              
55             If you copy an encrypted DB snapshot from your AWS account, you can
56             specify a value for this parameter to encrypt the copy with a new KMS
57             encryption key. If you don't specify a value for this parameter, then
58             the copy of the DB snapshot is encrypted with the same KMS key as the
59             source DB snapshot.
60              
61             If you copy an encrypted DB snapshot that is shared from another AWS
62             account, then you must specify a value for this parameter.
63              
64             If you specify this parameter when you copy an unencrypted snapshot,
65             the copy is encrypted.
66              
67             If you copy an encrypted snapshot to a different AWS region, then you
68             must specify a KMS key for the destination AWS region. KMS encryption
69             keys are specific to the region that they are created in, and you
70             cannot use encryption keys from one region in another region.
71              
72              
73              
74             =head2 OptionGroupName => Str
75              
76             The name of an option group to associate with the copy.
77              
78             Specify this option if you are copying a snapshot from one AWS region
79             to another, and your DB instance uses a non-default option group. If
80             your source DB instance uses Transparent Data Encryption for Oracle or
81             Microsoft SQL Server, you must specify this option when copying across
82             regions. For more information, see Option Group Considerations.
83              
84              
85              
86             =head2 PreSignedUrl => Str
87              
88             The URL that contains a Signature Version 4 signed request for the
89             C<CopyDBSnapshot> API action in the source AWS region that contains the
90             source DB snapshot to copy.
91              
92             You must specify this parameter when you copy an encrypted DB snapshot
93             from another AWS region by using the Amazon RDS API. You can specify
94             the source region option instead of this parameter when you copy an
95             encrypted DB snapshot from another AWS region by using the AWS CLI.
96              
97             The presigned URL must be a valid request for the C<CopyDBSnapshot> API
98             action that can be executed in the source region that contains the
99             encrypted DB snapshot to be copied. The presigned URL request must
100             contain the following parameter values:
101              
102             =over
103              
104             =item *
105              
106             C<DestinationRegion> - The AWS Region that the encrypted DB snapshot
107             will be copied to. This region is the same one where the
108             C<CopyDBSnapshot> action is called that contains this presigned URL.
109              
110             For example, if you copy an encrypted DB snapshot from the us-west-2
111             region to the us-east-1 region, then you will call the
112             C<CopyDBSnapshot> action in the us-east-1 region and provide a
113             presigned URL that contains a call to the C<CopyDBSnapshot> action in
114             the us-west-2 region. For this example, the C<DestinationRegion> in the
115             presigned URL must be set to the us-east-1 region.
116              
117             =item *
118              
119             C<KmsKeyId> - The KMS key identifier for the key to use to encrypt the
120             copy of the DB snapshot in the destination region. This is the same
121             identifier for both the C<CopyDBSnapshot> action that is called in the
122             destination region, and the action contained in the presigned URL.
123              
124             =item *
125              
126             C<SourceDBSnapshotIdentifier> - The DB snapshot identifier for the
127             encrypted snapshot to be copied. This identifier must be in the Amazon
128             Resource Name (ARN) format for the source region. For example, if you
129             are copying an encrypted DB snapshot from the us-west-2 region, then
130             your C<SourceDBSnapshotIdentifier> looks like the following example:
131             C<arn:aws:rds:us-west-2:123456789012:snapshot:mysql-instance1-snapshot-20161115>.
132              
133             =back
134              
135             To learn how to generate a Signature Version 4 signed request, see
136             Authenticating Requests: Using Query Parameters (AWS Signature Version
137             4) and Signature Version 4 Signing Process.
138              
139              
140              
141             =head2 B<REQUIRED> SourceDBSnapshotIdentifier => Str
142              
143             The identifier for the source DB snapshot.
144              
145             If the source snapshot is in the same region as the copy, specify a
146             valid DB snapshot identifier. For example,
147             C<rds:mysql-instance1-snapshot-20130805>.
148              
149             If the source snapshot is in a different region than the copy, specify
150             a valid DB snapshot ARN. For example,
151             C<arn:aws:rds:us-west-2:123456789012:snapshot:mysql-instance1-snapshot-20130805>.
152              
153             If you are copying from a shared manual DB snapshot, this parameter
154             must be the Amazon Resource Name (ARN) of the shared DB snapshot.
155              
156             If you are copying an encrypted snapshot this parameter must be in the
157             ARN format for the source region, and must match the
158             C<SourceDBSnapshotIdentifier> in the C<PreSignedUrl> parameter.
159              
160             Constraints:
161              
162             =over
163              
164             =item *
165              
166             Must specify a valid system snapshot in the "available" state.
167              
168             =back
169              
170             Example: C<rds:mydb-2012-04-02-00-01>
171              
172             Example:
173             C<arn:aws:rds:us-west-2:123456789012:snapshot:mysql-instance1-snapshot-20130805>
174              
175              
176              
177             =head2 Tags => ArrayRef[L<Paws::RDS::Tag>]
178              
179              
180              
181              
182              
183             =head2 B<REQUIRED> TargetDBSnapshotIdentifier => Str
184              
185             The identifier for the copy of the snapshot.
186              
187             Constraints:
188              
189             =over
190              
191             =item *
192              
193             Cannot be null, empty, or blank
194              
195             =item *
196              
197             Must contain from 1 to 255 alphanumeric characters or hyphens
198              
199             =item *
200              
201             First character must be a letter
202              
203             =item *
204              
205             Cannot end with a hyphen or contain two consecutive hyphens
206              
207             =back
208              
209             Example: C<my-db-snapshot>
210              
211              
212              
213              
214             =head1 SEE ALSO
215              
216             This class forms part of L<Paws>, documenting arguments for method CopyDBSnapshot in L<Paws::RDS>
217              
218             =head1 BUGS and CONTRIBUTIONS
219              
220             The source code is located here: https://github.com/pplu/aws-sdk-perl
221              
222             Please report bugs to: https://github.com/pplu/aws-sdk-perl/issues
223              
224             =cut
225