Skip to content

Commit ce51cf4

Browse files
Adding support for RDS on Dedicated Local Zones, including local backup target, snapshot availability zone and snapshot target
1 parent 731ce23 commit ce51cf4

14 files changed

+181
-22
lines changed

generator/ServiceModels/rds/rds-2014-10-31.api.json

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3451,7 +3451,9 @@
34513451
"PreSignedUrl":{"shape":"String"},
34523452
"OptionGroupName":{"shape":"String"},
34533453
"TargetCustomAvailabilityZone":{"shape":"String"},
3454-
"CopyOptionGroup":{"shape":"BooleanOptional"}
3454+
"CopyOptionGroup":{"shape":"BooleanOptional"},
3455+
"SnapshotAvailabilityZone":{"shape":"String"},
3456+
"SnapshotTarget":{"shape":"String"}
34553457
}
34563458
},
34573459
"CopyDBSnapshotResult":{
@@ -3781,6 +3783,7 @@
37813783
"NetworkType":{"shape":"String"},
37823784
"StorageThroughput":{"shape":"IntegerOptional"},
37833785
"EnableCustomerOwnedIp":{"shape":"BooleanOptional"},
3786+
"BackupTarget":{"shape":"String"},
37843787
"AllocatedStorage":{"shape":"IntegerOptional"},
37853788
"SourceDBClusterIdentifier":{"shape":"String"},
37863789
"DedicatedLogVolume":{"shape":"BooleanOptional"},
@@ -5520,7 +5523,8 @@
55205523
"StorageThroughput":{"shape":"IntegerOptional"},
55215524
"DBSystemId":{"shape":"String"},
55225525
"DedicatedLogVolume":{"shape":"Boolean"},
5523-
"MultiTenant":{"shape":"BooleanOptional"}
5526+
"MultiTenant":{"shape":"BooleanOptional"},
5527+
"SnapshotAvailabilityZone":{"shape":"String"}
55245528
},
55255529
"wrapper":true
55265530
},

generator/ServiceModels/rds/rds-2014-10-31.docs.json

Lines changed: 10 additions & 6 deletions
Large diffs are not rendered by default.

generator/ServiceModels/rds/rds-2014-10-31.normal.json

Lines changed: 22 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -3942,6 +3942,14 @@
39423942
"CopyOptionGroup":{
39433943
"shape":"BooleanOptional",
39443944
"documentation":"<p>Specifies whether to copy the DB option group associated with the source DB snapshot to the target Amazon Web Services account and associate with the target DB snapshot. The associated option group can be copied only with cross-account snapshot copy calls.</p>"
3945+
},
3946+
"SnapshotAvailabilityZone":{
3947+
"shape":"String",
3948+
"documentation":"<p>Specifies the name of the Availability Zone where RDS stores the DB snapshot. This value is valid only for snapshots that RDS stores on a Dedicated Local Zone.</p>"
3949+
},
3950+
"SnapshotTarget":{
3951+
"shape":"String",
3952+
"documentation":"<p>Configures the location where RDS will store copied snapshots.</p> <p>Valid Values:</p> <ul> <li> <p> <code>local</code> (Dedicated Local Zone)</p> </li> <li> <p> <code>outposts</code> (Amazon Web Services Outposts)</p> </li> <li> <p> <code>region</code> (Amazon Web Services Region)</p> </li> </ul>"
39453953
}
39463954
},
39473955
"documentation":"<p/>"
@@ -4664,7 +4672,7 @@
46644672
},
46654673
"BackupTarget":{
46664674
"shape":"String",
4667-
"documentation":"<p>The location for storing automated backups and manual snapshots.</p> <p>Valid Values:</p> <ul> <li> <p> <code>outposts</code> (Amazon Web Services Outposts)</p> </li> <li> <p> <code>region</code> (Amazon Web Services Region)</p> </li> </ul> <p>Default: <code>region</code> </p> <p>For more information, see <a href=\"https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/rds-on-outposts.html\">Working with Amazon RDS on Amazon Web Services Outposts</a> in the <i>Amazon RDS User Guide</i>.</p>"
4675+
"documentation":"<p>The location for storing automated backups and manual snapshots.</p> <p>Valid Values:</p> <ul> <li> <p> <code>local</code> (Dedicated Local Zone)</p> </li> <li> <p> <code>outposts</code> (Amazon Web Services Outposts)</p> </li> <li> <p> <code>region</code> (Amazon Web Services Region)</p> </li> </ul> <p>Default: <code>region</code> </p> <p>For more information, see <a href=\"https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/rds-on-outposts.html\">Working with Amazon RDS on Amazon Web Services Outposts</a> in the <i>Amazon RDS User Guide</i>.</p>"
46684676
},
46694677
"NetworkType":{
46704678
"shape":"String",
@@ -4870,6 +4878,10 @@
48704878
"shape":"BooleanOptional",
48714879
"documentation":"<p>Specifies whether to enable a customer-owned IP address (CoIP) for an RDS on Outposts read replica.</p> <p>A <i>CoIP</i> provides local or external connectivity to resources in your Outpost subnets through your on-premises network. For some use cases, a CoIP can provide lower latency for connections to the read replica from outside of its virtual private cloud (VPC) on your local network.</p> <p>For more information about RDS on Outposts, see <a href=\"https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/rds-on-outposts.html\">Working with Amazon RDS on Amazon Web Services Outposts</a> in the <i>Amazon RDS User Guide</i>.</p> <p>For more information about CoIPs, see <a href=\"https://docs.aws.amazon.com/outposts/latest/userguide/routing.html#ip-addressing\">Customer-owned IP addresses</a> in the <i>Amazon Web Services Outposts User Guide</i>.</p>"
48724880
},
4881+
"BackupTarget":{
4882+
"shape":"String",
4883+
"documentation":"<p>The location where RDS stores automated backups and manual snapshots.</p> <p>Valid Values:</p> <ul> <li> <p> <code>local</code> for Dedicated Local Zones</p> </li> <li> <p> <code>region</code> for Amazon Web Services Region</p> </li> </ul>"
4884+
},
48734885
"AllocatedStorage":{
48744886
"shape":"IntegerOptional",
48754887
"documentation":"<p>The amount of storage (in gibibytes) to allocate initially for the read replica. Follow the allocation rules specified in <code>CreateDBInstance</code>.</p> <p>This setting isn't valid for RDS for SQL Server.</p> <note> <p>Be sure to allocate enough storage for your read replica so that the create operation can succeed. You can also allocate additional storage for future growth.</p> </note>"
@@ -7042,7 +7054,7 @@
70427054
},
70437055
"BackupTarget":{
70447056
"shape":"String",
7045-
"documentation":"<p>The location where automated backups and manual snapshots are stored: Amazon Web Services Outposts or the Amazon Web Services Region.</p>"
7057+
"documentation":"<p>The location where automated backups and manual snapshots are stored: Dedicated Local Zones, Amazon Web Services Outposts or the Amazon Web Services Region.</p>"
70467058
},
70477059
"NetworkType":{
70487060
"shape":"String",
@@ -7216,7 +7228,7 @@
72167228
},
72177229
"BackupTarget":{
72187230
"shape":"String",
7219-
"documentation":"<p>The location where automated backups are stored: Amazon Web Services Outposts or the Amazon Web Services Region.</p>"
7231+
"documentation":"<p>The location where automated backups are stored: Dedicated Local Zones, Amazon Web Services Outposts or the Amazon Web Services Region.</p>"
72207232
},
72217233
"StorageThroughput":{
72227234
"shape":"IntegerOptional",
@@ -8373,7 +8385,7 @@
83738385
},
83748386
"SnapshotTarget":{
83758387
"shape":"String",
8376-
"documentation":"<p>Specifies where manual snapshots are stored: Amazon Web Services Outposts or the Amazon Web Services Region.</p>"
8388+
"documentation":"<p>Specifies where manual snapshots are stored: Dedicated Local Zones, Amazon Web Services Outposts or the Amazon Web Services Region.</p>"
83778389
},
83788390
"StorageThroughput":{
83798391
"shape":"IntegerOptional",
@@ -8390,6 +8402,10 @@
83908402
"MultiTenant":{
83918403
"shape":"BooleanOptional",
83928404
"documentation":"<p>Indicates whether the snapshot is of a DB instance using the multi-tenant configuration (TRUE) or the single-tenant configuration (FALSE).</p>"
8405+
},
8406+
"SnapshotAvailabilityZone":{
8407+
"shape":"String",
8408+
"documentation":"<p>Specifies the name of the Availability Zone where RDS stores the DB snapshot. This value is valid only for snapshots that RDS stores on a Dedicated Local Zone.</p>"
83938409
}
83948410
},
83958411
"documentation":"<p>Contains the details of an Amazon RDS DB snapshot.</p> <p>This data type is used as a response element in the <code>DescribeDBSnapshots</code> action.</p>",
@@ -15444,7 +15460,7 @@
1544415460
},
1544515461
"BackupTarget":{
1544615462
"shape":"String",
15447-
"documentation":"<p>Specifies where automated backups and manual snapshots are stored for the restored DB instance.</p> <p>Possible values are <code>outposts</code> (Amazon Web Services Outposts) and <code>region</code> (Amazon Web Services Region). The default is <code>region</code>.</p> <p>For more information, see <a href=\"https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/rds-on-outposts.html\">Working with Amazon RDS on Amazon Web Services Outposts</a> in the <i>Amazon RDS User Guide</i>.</p>"
15463+
"documentation":"<p>Specifies where automated backups and manual snapshots are stored for the restored DB instance.</p> <p>Possible values are <code>local</code> (Dedicated Local Zone), <code>outposts</code> (Amazon Web Services Outposts), and <code>region</code> (Amazon Web Services Region). The default is <code>region</code>.</p> <p>For more information, see <a href=\"https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/rds-on-outposts.html\">Working with Amazon RDS on Amazon Web Services Outposts</a> in the <i>Amazon RDS User Guide</i>.</p>"
1544815464
},
1544915465
"NetworkType":{
1545015466
"shape":"String",
@@ -15878,7 +15894,7 @@
1587815894
},
1587915895
"BackupTarget":{
1588015896
"shape":"String",
15881-
"documentation":"<p>The location for storing automated backups and manual snapshots for the restored DB instance.</p> <p>Valid Values:</p> <ul> <li> <p> <code>outposts</code> (Amazon Web Services Outposts)</p> </li> <li> <p> <code>region</code> (Amazon Web Services Region)</p> </li> </ul> <p>Default: <code>region</code> </p> <p>For more information, see <a href=\"https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/rds-on-outposts.html\">Working with Amazon RDS on Amazon Web Services Outposts</a> in the <i>Amazon RDS User Guide</i>.</p>"
15897+
"documentation":"<p>The location for storing automated backups and manual snapshots for the restored DB instance.</p> <p>Valid Values:</p> <ul> <li> <p> <code>local</code> (Dedicated Local Zone)</p> </li> <li> <p> <code>outposts</code> (Amazon Web Services Outposts)</p> </li> <li> <p> <code>region</code> (Amazon Web Services Region)</p> </li> </ul> <p>Default: <code>region</code> </p> <p>For more information, see <a href=\"https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/rds-on-outposts.html\">Working with Amazon RDS on Amazon Web Services Outposts</a> in the <i>Amazon RDS User Guide</i>.</p>"
1588215898
},
1588315899
"NetworkType":{
1588415900
"shape":"String",

sdk/src/Services/RDS/Generated/Model/CopyDBSnapshotRequest.cs

Lines changed: 56 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -57,6 +57,8 @@ public partial class CopyDBSnapshotRequest : AmazonRDSRequest
5757
private string _kmsKeyId;
5858
private string _optionGroupName;
5959
private string _preSignedUrl;
60+
private string _snapshotAvailabilityZone;
61+
private string _snapshotTarget;
6062
private string _sourceDBSnapshotIdentifier;
6163
private List<Tag> _tags = AWSConfigs.InitializeCollections ? new List<Tag>() : null;
6264
private string _targetCustomAvailabilityZone;
@@ -256,6 +258,60 @@ internal bool IsSetPreSignedUrl()
256258
return this._preSignedUrl != null;
257259
}
258260

261+
/// <summary>
262+
/// Gets and sets the property SnapshotAvailabilityZone.
263+
/// <para>
264+
/// Specifies the name of the Availability Zone where RDS stores the DB snapshot. This
265+
/// value is valid only for snapshots that RDS stores on a Dedicated Local Zone.
266+
/// </para>
267+
/// </summary>
268+
public string SnapshotAvailabilityZone
269+
{
270+
get { return this._snapshotAvailabilityZone; }
271+
set { this._snapshotAvailabilityZone = value; }
272+
}
273+
274+
// Check to see if SnapshotAvailabilityZone property is set
275+
internal bool IsSetSnapshotAvailabilityZone()
276+
{
277+
return this._snapshotAvailabilityZone != null;
278+
}
279+
280+
/// <summary>
281+
/// Gets and sets the property SnapshotTarget.
282+
/// <para>
283+
/// Configures the location where RDS will store copied snapshots.
284+
/// </para>
285+
///
286+
/// <para>
287+
/// Valid Values:
288+
/// </para>
289+
/// <ul> <li>
290+
/// <para>
291+
/// <c>local</c> (Dedicated Local Zone)
292+
/// </para>
293+
/// </li> <li>
294+
/// <para>
295+
/// <c>outposts</c> (Amazon Web Services Outposts)
296+
/// </para>
297+
/// </li> <li>
298+
/// <para>
299+
/// <c>region</c> (Amazon Web Services Region)
300+
/// </para>
301+
/// </li> </ul>
302+
/// </summary>
303+
public string SnapshotTarget
304+
{
305+
get { return this._snapshotTarget; }
306+
set { this._snapshotTarget = value; }
307+
}
308+
309+
// Check to see if SnapshotTarget property is set
310+
internal bool IsSetSnapshotTarget()
311+
{
312+
return this._snapshotTarget != null;
313+
}
314+
259315
/// <summary>
260316
/// Gets and sets the property SourceDBSnapshotIdentifier.
261317
/// <para>

sdk/src/Services/RDS/Generated/Model/CreateDBInstanceReadReplicaRequest.cs

Lines changed: 32 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -66,6 +66,7 @@ public partial class CreateDBInstanceReadReplicaRequest : AmazonRDSRequest
6666
private int? _allocatedStorage;
6767
private bool? _autoMinorVersionUpgrade;
6868
private string _availabilityZone;
69+
private string _backupTarget;
6970
private string _caCertificateIdentifier;
7071
private bool? _copyTagsToSnapshot;
7172
private string _customIamInstanceProfile;
@@ -214,6 +215,37 @@ internal bool IsSetAvailabilityZone()
214215
return this._availabilityZone != null;
215216
}
216217

218+
/// <summary>
219+
/// Gets and sets the property BackupTarget.
220+
/// <para>
221+
/// The location where RDS stores automated backups and manual snapshots.
222+
/// </para>
223+
///
224+
/// <para>
225+
/// Valid Values:
226+
/// </para>
227+
/// <ul> <li>
228+
/// <para>
229+
/// <c>local</c> for Dedicated Local Zones
230+
/// </para>
231+
/// </li> <li>
232+
/// <para>
233+
/// <c>region</c> for Amazon Web Services Region
234+
/// </para>
235+
/// </li> </ul>
236+
/// </summary>
237+
public string BackupTarget
238+
{
239+
get { return this._backupTarget; }
240+
set { this._backupTarget = value; }
241+
}
242+
243+
// Check to see if BackupTarget property is set
244+
internal bool IsSetBackupTarget()
245+
{
246+
return this._backupTarget != null;
247+
}
248+
217249
/// <summary>
218250
/// Gets and sets the property CACertificateIdentifier.
219251
/// <para>

sdk/src/Services/RDS/Generated/Model/CreateDBInstanceRequest.cs

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -432,6 +432,10 @@ internal bool IsSetBackupRetentionPeriod()
432432
/// </para>
433433
/// <ul> <li>
434434
/// <para>
435+
/// <c>local</c> (Dedicated Local Zone)
436+
/// </para>
437+
/// </li> <li>
438+
/// <para>
435439
/// <c>outposts</c> (Amazon Web Services Outposts)
436440
/// </para>
437441
/// </li> <li>

sdk/src/Services/RDS/Generated/Model/DBInstance.cs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -403,8 +403,8 @@ internal bool IsSetBackupRetentionPeriod()
403403
/// <summary>
404404
/// Gets and sets the property BackupTarget.
405405
/// <para>
406-
/// The location where automated backups and manual snapshots are stored: Amazon Web Services
407-
/// Outposts or the Amazon Web Services Region.
406+
/// The location where automated backups and manual snapshots are stored: Dedicated Local
407+
/// Zones, Amazon Web Services Outposts or the Amazon Web Services Region.
408408
/// </para>
409409
/// </summary>
410410
public string BackupTarget

sdk/src/Services/RDS/Generated/Model/DBInstanceAutomatedBackup.cs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -145,8 +145,8 @@ internal bool IsSetBackupRetentionPeriod()
145145
/// <summary>
146146
/// Gets and sets the property BackupTarget.
147147
/// <para>
148-
/// The location where automated backups are stored: Amazon Web Services Outposts or the
149-
/// Amazon Web Services Region.
148+
/// The location where automated backups are stored: Dedicated Local Zones, Amazon Web
149+
/// Services Outposts or the Amazon Web Services Region.
150150
/// </para>
151151
/// </summary>
152152
public string BackupTarget

sdk/src/Services/RDS/Generated/Model/DBSnapshot.cs

Lines changed: 22 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -62,6 +62,7 @@ public partial class DBSnapshot
6262
private int? _percentProgress;
6363
private int? _port;
6464
private List<ProcessorFeature> _processorFeatures = AWSConfigs.InitializeCollections ? new List<ProcessorFeature>() : null;
65+
private string _snapshotAvailabilityZone;
6566
private DateTime? _snapshotCreateTime;
6667
private DateTime? _snapshotDatabaseTime;
6768
private string _snapshotTarget;
@@ -511,6 +512,25 @@ internal bool IsSetProcessorFeatures()
511512
return this._processorFeatures != null && (this._processorFeatures.Count > 0 || !AWSConfigs.InitializeCollections);
512513
}
513514

515+
/// <summary>
516+
/// Gets and sets the property SnapshotAvailabilityZone.
517+
/// <para>
518+
/// Specifies the name of the Availability Zone where RDS stores the DB snapshot. This
519+
/// value is valid only for snapshots that RDS stores on a Dedicated Local Zone.
520+
/// </para>
521+
/// </summary>
522+
public string SnapshotAvailabilityZone
523+
{
524+
get { return this._snapshotAvailabilityZone; }
525+
set { this._snapshotAvailabilityZone = value; }
526+
}
527+
528+
// Check to see if SnapshotAvailabilityZone property is set
529+
internal bool IsSetSnapshotAvailabilityZone()
530+
{
531+
return this._snapshotAvailabilityZone != null;
532+
}
533+
514534
/// <summary>
515535
/// Gets and sets the property SnapshotCreateTime.
516536
/// <para>
@@ -560,8 +580,8 @@ internal bool IsSetSnapshotDatabaseTime()
560580
/// <summary>
561581
/// Gets and sets the property SnapshotTarget.
562582
/// <para>
563-
/// Specifies where manual snapshots are stored: Amazon Web Services Outposts or the Amazon
564-
/// Web Services Region.
583+
/// Specifies where manual snapshots are stored: Dedicated Local Zones, Amazon Web Services
584+
/// Outposts or the Amazon Web Services Region.
565585
/// </para>
566586
/// </summary>
567587
public string SnapshotTarget

sdk/src/Services/RDS/Generated/Model/Internal/MarshallTransformations/CopyDBSnapshotRequestMarshaller.cs

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -79,6 +79,14 @@ public IRequest Marshall(CopyDBSnapshotRequest publicRequest)
7979
{
8080
request.Parameters.Add("PreSignedUrl", StringUtils.FromString(publicRequest.PreSignedUrl));
8181
}
82+
if(publicRequest.IsSetSnapshotAvailabilityZone())
83+
{
84+
request.Parameters.Add("SnapshotAvailabilityZone", StringUtils.FromString(publicRequest.SnapshotAvailabilityZone));
85+
}
86+
if(publicRequest.IsSetSnapshotTarget())
87+
{
88+
request.Parameters.Add("SnapshotTarget", StringUtils.FromString(publicRequest.SnapshotTarget));
89+
}
8290
if(publicRequest.IsSetSourceDBSnapshotIdentifier())
8391
{
8492
request.Parameters.Add("SourceDBSnapshotIdentifier", StringUtils.FromString(publicRequest.SourceDBSnapshotIdentifier));

0 commit comments

Comments
 (0)