Skip to content

Commit

Permalink
feat(client-rds): This release adds support for scale storage on the …
Browse files Browse the repository at this point in the history
…DB instance using a Blue/Green Deployment.
  • Loading branch information
awstools committed Nov 20, 2024
1 parent 0873d67 commit ed19e89
Show file tree
Hide file tree
Showing 4 changed files with 91 additions and 9 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -31,8 +31,8 @@ export interface CreateBlueGreenDeploymentCommandOutput extends CreateBlueGreenD
* <p>Creates a blue/green deployment.</p>
* <p>A blue/green deployment creates a staging environment that copies the production environment.
* In a blue/green deployment, the blue environment is the current production environment.
* The green environment is the staging environment. The staging environment stays in sync
* with the current production environment using logical replication.</p>
* The green environment is the staging environment, and it stays in sync
* with the current production environment.</p>
* <p>You can make changes to the databases in the green environment without affecting
* production workloads. For example, you can upgrade the major or minor DB engine version, change
* database parameters, or make schema changes in the staging environment. You can thoroughly test
Expand Down Expand Up @@ -63,6 +63,10 @@ export interface CreateBlueGreenDeploymentCommandOutput extends CreateBlueGreenD
* ],
* TargetDBInstanceClass: "STRING_VALUE",
* UpgradeTargetStorageConfig: true || false,
* TargetIops: Number("int"),
* TargetStorageType: "STRING_VALUE",
* TargetAllocatedStorage: Number("int"),
* TargetStorageThroughput: Number("int"),
* };
* const command = new CreateBlueGreenDeploymentCommand(input);
* const response = await client.send(command);
Expand Down
35 changes: 35 additions & 0 deletions clients/client-rds/src/models/models_0.ts
Original file line number Diff line number Diff line change
Expand Up @@ -3346,6 +3346,41 @@ export interface CreateBlueGreenDeploymentRequest {
* @public
*/
UpgradeTargetStorageConfig?: boolean | undefined;

/**
* <p>The amount of Provisioned IOPS (input/output operations per second) to allocate for the green DB instance.
* For information about valid IOPS values, see
* <a href="https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/CHAP_Storage.html">Amazon RDS DB instance storage</a>
* in the <i>Amazon RDS User Guide</i>.</p>
* <p>This setting doesn't apply to Amazon Aurora blue/green deployments.</p>
* @public
*/
TargetIops?: number | undefined;

/**
* <p>The storage type to associate with the green DB instance.</p>
* <p>Valid Values: <code>gp2 | gp3 | io1 | io2</code>
* </p>
* <p>This setting doesn't apply to Amazon Aurora blue/green deployments.</p>
* @public
*/
TargetStorageType?: string | undefined;

/**
* <p>The amount of storage in gibibytes (GiB) to allocate for the green DB instance. You can choose to
* increase or decrease the allocated storage on the green DB instance.</p>
* <p>This setting doesn't apply to Amazon Aurora blue/green deployments.</p>
* @public
*/
TargetAllocatedStorage?: number | undefined;

/**
* <p>The storage throughput value for the green DB instance.</p>
* <p>This setting applies only to the <code>gp3</code> storage type.</p>
* <p>This setting doesn't apply to Amazon Aurora blue/green deployments.</p>
* @public
*/
TargetStorageThroughput?: number | undefined;
}

/**
Expand Down
28 changes: 22 additions & 6 deletions clients/client-rds/src/protocols/Aws_query.ts
Original file line number Diff line number Diff line change
Expand Up @@ -10277,6 +10277,18 @@ const se_CreateBlueGreenDeploymentRequest = (input: CreateBlueGreenDeploymentReq
if (input[_UTSC] != null) {
entries[_UTSC] = input[_UTSC];
}
if (input[_TI] != null) {
entries[_TI] = input[_TI];
}
if (input[_TST] != null) {
entries[_TST] = input[_TST];
}
if (input[_TAS] != null) {
entries[_TAS] = input[_TAS];
}
if (input[_TSTa] != null) {
entries[_TSTa] = input[_TSTa];
}
return entries;
};

Expand Down Expand Up @@ -19584,8 +19596,8 @@ const de_DBRecommendation = (output: any, context: __SerdeContext): DBRecommenda
if (output[_RIe] != null) {
contents[_RIe] = __expectString(output[_RIe]);
}
if (output[_TI] != null) {
contents[_TI] = __expectString(output[_TI]);
if (output[_TIy] != null) {
contents[_TIy] = __expectString(output[_TIy]);
}
if (output[_Se] != null) {
contents[_Se] = __expectString(output[_Se]);
Expand Down Expand Up @@ -21193,8 +21205,8 @@ const de_ExportTask = (output: any, context: __SerdeContext): ExportTask => {
if (output[_STnap] != null) {
contents[_STnap] = __expectNonNull(__parseRfc3339DateTimeWithOffset(output[_STnap]));
}
if (output[_TST] != null) {
contents[_TST] = __expectNonNull(__parseRfc3339DateTimeWithOffset(output[_TST]));
if (output[_TSTas] != null) {
contents[_TSTas] = __expectNonNull(__parseRfc3339DateTimeWithOffset(output[_TSTas]));
}
if (output[_TET] != null) {
contents[_TET] = __expectNonNull(__parseRfc3339DateTimeWithOffset(output[_TET]));
Expand Down Expand Up @@ -25856,6 +25868,7 @@ const _Sub = "Subnet";
const _Sw = "Switchover";
const _T = "Tags";
const _TA = "TargetArn";
const _TAS = "TargetAllocatedStorage";
const _TAi = "TimeoutAction";
const _TCA = "TdeCredentialArn";
const _TCAZ = "TargetCustomAvailabilityZone";
Expand Down Expand Up @@ -25888,7 +25901,8 @@ const _TGA = "TargetGroupArn";
const _TGMDI = "TransitGatewayMulticastDomainId";
const _TGN = "TargetGroupName";
const _TH = "TargetHealth";
const _TI = "TypeId";
const _TI = "TargetIops";
const _TIy = "TypeId";
const _TK = "TagKeys";
const _TL = "TagList";
const _TM = "TargetMember";
Expand All @@ -25897,7 +25911,9 @@ const _TOGD = "TargetOptionGroupDescription";
const _TOGI = "TargetOptionGroupIdentifier";
const _TR = "TargetRole";
const _TRy = "TypeRecommendation";
const _TST = "TaskStartTime";
const _TST = "TargetStorageType";
const _TSTa = "TargetStorageThroughput";
const _TSTas = "TaskStartTime";
const _Ta = "Target";
const _Tag = "Tag";
const _Tar = "Targets";
Expand Down
29 changes: 28 additions & 1 deletion codegen/sdk-codegen/aws-models/rds.json
Original file line number Diff line number Diff line change
Expand Up @@ -3677,7 +3677,7 @@
}
],
"traits": {
"smithy.api#documentation": "<p>Creates a blue/green deployment.</p>\n <p>A blue/green deployment creates a staging environment that copies the production environment. \n In a blue/green deployment, the blue environment is the current production environment. \n The green environment is the staging environment. The staging environment stays in sync \n with the current production environment using logical replication.</p>\n <p>You can make changes to the databases in the green environment without affecting \n production workloads. For example, you can upgrade the major or minor DB engine version, change \n database parameters, or make schema changes in the staging environment. You can thoroughly test \n changes in the green environment. When ready, you can switch over the environments to promote the \n green environment to be the new production environment. The switchover typically takes under a minute.</p>\n <p>For more information, see <a href=\"https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/blue-green-deployments.html\">Using Amazon RDS Blue/Green Deployments \n for database updates</a> in the <i>Amazon RDS User Guide</i> and \n <a href=\"https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/blue-green-deployments.html\">\n Using Amazon RDS Blue/Green Deployments for database updates</a> in the <i>Amazon Aurora \n User Guide</i>.</p>"
"smithy.api#documentation": "<p>Creates a blue/green deployment.</p>\n <p>A blue/green deployment creates a staging environment that copies the production environment. \n In a blue/green deployment, the blue environment is the current production environment. \n The green environment is the staging environment, and it stays in sync \n with the current production environment.</p>\n <p>You can make changes to the databases in the green environment without affecting \n production workloads. For example, you can upgrade the major or minor DB engine version, change \n database parameters, or make schema changes in the staging environment. You can thoroughly test \n changes in the green environment. When ready, you can switch over the environments to promote the \n green environment to be the new production environment. The switchover typically takes under a minute.</p>\n <p>For more information, see <a href=\"https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/blue-green-deployments.html\">Using Amazon RDS Blue/Green Deployments \n for database updates</a> in the <i>Amazon RDS User Guide</i> and \n <a href=\"https://docs.aws.amazon.com/AmazonRDS/latest/AuroraUserGuide/blue-green-deployments.html\">\n Using Amazon RDS Blue/Green Deployments for database updates</a> in the <i>Amazon Aurora \n User Guide</i>.</p>"
}
},
"com.amazonaws.rds#CreateBlueGreenDeploymentRequest": {
Expand Down Expand Up @@ -3734,6 +3734,30 @@
"traits": {
"smithy.api#documentation": "<p>Whether to upgrade the storage file system configuration on the green database. This\n option migrates the green DB instance from the older 32-bit file system to the preferred\n configuration. For more information, see <a href=\"https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_PIOPS.StorageTypes.html#USER_PIOPS.UpgradeFileSystem\">Upgrading the storage file system for a DB instance</a>.</p>"
}
},
"TargetIops": {
"target": "com.amazonaws.rds#IntegerOptional",
"traits": {
"smithy.api#documentation": "<p>The amount of Provisioned IOPS (input/output operations per second) to allocate for the green DB instance.\n For information about valid IOPS values, see \n <a href=\"https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/CHAP_Storage.html\">Amazon RDS DB instance storage</a> \n in the <i>Amazon RDS User Guide</i>.</p>\n <p>This setting doesn't apply to Amazon Aurora blue/green deployments.</p>"
}
},
"TargetStorageType": {
"target": "com.amazonaws.rds#TargetStorageType",
"traits": {
"smithy.api#documentation": "<p>The storage type to associate with the green DB instance.</p>\n <p>Valid Values: <code>gp2 | gp3 | io1 | io2</code>\n </p>\n <p>This setting doesn't apply to Amazon Aurora blue/green deployments.</p>"
}
},
"TargetAllocatedStorage": {
"target": "com.amazonaws.rds#IntegerOptional",
"traits": {
"smithy.api#documentation": "<p>The amount of storage in gibibytes (GiB) to allocate for the green DB instance. You can choose to\n increase or decrease the allocated storage on the green DB instance.</p>\n <p>This setting doesn't apply to Amazon Aurora blue/green deployments.</p>"
}
},
"TargetStorageThroughput": {
"target": "com.amazonaws.rds#IntegerOptional",
"traits": {
"smithy.api#documentation": "<p>The storage throughput value for the green DB instance.</p>\n <p>This setting applies only to the <code>gp3</code> storage type.</p>\n <p>This setting doesn't apply to Amazon Aurora blue/green deployments.</p>"
}
}
},
"traits": {
Expand Down Expand Up @@ -30988,6 +31012,9 @@
}
}
},
"com.amazonaws.rds#TargetStorageType": {
"type": "string"
},
"com.amazonaws.rds#TargetType": {
"type": "enum",
"members": {
Expand Down

0 comments on commit ed19e89

Please sign in to comment.