Skip to content

Commit

Permalink
feat(client-cost-explorer): This release extends the GetReservationPu…
Browse files Browse the repository at this point in the history
…rchaseRecommendation API to support recommendations for Amazon MemoryDB reservations.
  • Loading branch information
awstools committed Nov 6, 2023
1 parent 2ff8bce commit fbbd361
Show file tree
Hide file tree
Showing 4 changed files with 128 additions and 27 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -214,6 +214,13 @@ export interface GetReservationPurchaseRecommendationCommandOutput
* // CurrentGeneration: true || false,
* // SizeFlexEligible: true || false,
* // },
* // MemoryDBInstanceDetails: { // MemoryDBInstanceDetails
* // Family: "STRING_VALUE",
* // NodeType: "STRING_VALUE",
* // Region: "STRING_VALUE",
* // CurrentGeneration: true || false,
* // SizeFlexEligible: true || false,
* // },
* // },
* // RecommendedNumberOfInstancesToPurchase: "STRING_VALUE",
* // RecommendedNormalizedUnitsToPurchase: "STRING_VALUE",
Expand Down
74 changes: 60 additions & 14 deletions clients/client-cost-explorer/src/models/models_0.ts
Original file line number Diff line number Diff line change
Expand Up @@ -2009,7 +2009,7 @@ export interface ReservationPurchaseRecommendationMetadata {

/**
* @public
* <p>Details about the Amazon EC2 instances that Amazon Web Services recommends that you
* <p>Details about the Amazon EC2 reservations that Amazon Web Services recommends that you
* purchase.</p>
*/
export interface EC2InstanceDetails {
Expand Down Expand Up @@ -2065,8 +2065,8 @@ export interface EC2InstanceDetails {

/**
* @public
* <p>Details about the Amazon ElastiCache instances that Amazon Web Services recommends that
* you purchase.</p>
* <p>Details about the Amazon ElastiCache reservations that Amazon Web Services recommends
* that you purchase.</p>
*/
export interface ElastiCacheInstanceDetails {
/**
Expand Down Expand Up @@ -2108,8 +2108,8 @@ export interface ElastiCacheInstanceDetails {

/**
* @public
* <p>Details about the Amazon OpenSearch Service instances that Amazon Web Services recommends
* that you purchase.</p>
* <p>Details about the Amazon OpenSearch Service reservations that Amazon Web Services
* recommends that you purchase.</p>
*/
export interface ESInstanceDetails {
/**
Expand Down Expand Up @@ -2145,7 +2145,44 @@ export interface ESInstanceDetails {

/**
* @public
* <p>Details about the Amazon RDS instances that Amazon Web Services recommends that you
* <p>Details about the MemoryDB reservations that Amazon Web Services recommends that you
* purchase.</p>
*/
export interface MemoryDBInstanceDetails {
/**
* @public
* <p>The instance family of the recommended reservation.</p>
*/
Family?: string;

/**
* @public
* <p>The node type of the recommended reservation.</p>
*/
NodeType?: string;

/**
* @public
* <p>The Amazon Web Services Region of the recommended reservation.</p>
*/
Region?: string;

/**
* @public
* <p>Determines whether the recommendation is for a current generation instance.</p>
*/
CurrentGeneration?: boolean;

/**
* @public
* <p>Determines whether the recommended reservation is size flexible.</p>
*/
SizeFlexEligible?: boolean;
}

/**
* @public
* <p>Details about the Amazon RDS reservations that Amazon Web Services recommends that you
* purchase.</p>
*/
export interface RDSInstanceDetails {
Expand Down Expand Up @@ -2207,7 +2244,7 @@ export interface RDSInstanceDetails {

/**
* @public
* <p>Details about the Amazon Redshift instances that Amazon Web Services recommends that
* <p>Details about the Amazon Redshift reservations that Amazon Web Services recommends that
* you purchase.</p>
*/
export interface RedshiftInstanceDetails {
Expand Down Expand Up @@ -2244,41 +2281,50 @@ export interface RedshiftInstanceDetails {

/**
* @public
* <p>Details about the instances that Amazon Web Services recommends that you
* <p>Details about the reservations that Amazon Web Services recommends that you
* purchase.</p>
*/
export interface InstanceDetails {
/**
* @public
* <p>The Amazon EC2 instances that Amazon Web Services recommends that you purchase.</p>
* <p>The Amazon EC2 reservations that Amazon Web Services recommends that you
* purchase.</p>
*/
EC2InstanceDetails?: EC2InstanceDetails;

/**
* @public
* <p>The Amazon RDS instances that Amazon Web Services recommends that you purchase.</p>
* <p>The Amazon RDS reservations that Amazon Web Services recommends that you
* purchase.</p>
*/
RDSInstanceDetails?: RDSInstanceDetails;

/**
* @public
* <p>The Amazon Redshift instances that Amazon Web Services recommends that you
* <p>The Amazon Redshift reservations that Amazon Web Services recommends that you
* purchase.</p>
*/
RedshiftInstanceDetails?: RedshiftInstanceDetails;

/**
* @public
* <p>The ElastiCache instances that Amazon Web Services recommends that you purchase.</p>
* <p>The ElastiCache reservations that Amazon Web Services recommends that you
* purchase.</p>
*/
ElastiCacheInstanceDetails?: ElastiCacheInstanceDetails;

/**
* @public
* <p>The Amazon OpenSearch Service instances that Amazon Web Services recommends that you
* <p>The Amazon OpenSearch Service reservations that Amazon Web Services recommends that you
* purchase.</p>
*/
ESInstanceDetails?: ESInstanceDetails;

/**
* @public
* <p>The MemoryDB reservations that Amazon Web Services recommends that you purchase.</p>
*/
MemoryDBInstanceDetails?: MemoryDBInstanceDetails;
}

/**
Expand All @@ -2294,7 +2340,7 @@ export interface ReservationPurchaseRecommendationDetail {

/**
* @public
* <p>Details about the instances that Amazon Web Services recommends that you
* <p>Details about the reservations that Amazon Web Services recommends that you
* purchase.</p>
*/
InstanceDetails?: InstanceDetails;
Expand Down
2 changes: 2 additions & 0 deletions clients/client-cost-explorer/src/protocols/Aws_json1_1.ts
Original file line number Diff line number Diff line change
Expand Up @@ -3738,6 +3738,8 @@ const de_Impact = (output: any, context: __SerdeContext): Impact => {

// de_MatchOptions omitted.

// de_MemoryDBInstanceDetails omitted.

// de_Metrics omitted.

// de_MetricsOverLookbackPeriod omitted.
Expand Down
72 changes: 59 additions & 13 deletions codegen/sdk-codegen/aws-models/cost-explorer.json
Original file line number Diff line number Diff line change
Expand Up @@ -2987,7 +2987,7 @@
}
},
"traits": {
"smithy.api#documentation": "<p>Details about the Amazon EC2 instances that Amazon Web Services recommends that you\n purchase.</p>"
"smithy.api#documentation": "<p>Details about the Amazon EC2 reservations that Amazon Web Services recommends that you\n purchase.</p>"
}
},
"com.amazonaws.costexplorer#EC2ResourceDetails": {
Expand Down Expand Up @@ -3147,7 +3147,7 @@
}
},
"traits": {
"smithy.api#documentation": "<p>Details about the Amazon OpenSearch Service instances that Amazon Web Services recommends\n that you purchase.</p>"
"smithy.api#documentation": "<p>Details about the Amazon OpenSearch Service reservations that Amazon Web Services\n recommends that you purchase.</p>"
}
},
"com.amazonaws.costexplorer#ElastiCacheInstanceDetails": {
Expand Down Expand Up @@ -3193,7 +3193,7 @@
}
},
"traits": {
"smithy.api#documentation": "<p>Details about the Amazon ElastiCache instances that Amazon Web Services recommends that\n you purchase.</p>"
"smithy.api#documentation": "<p>Details about the Amazon ElastiCache reservations that Amazon Web Services recommends\n that you purchase.</p>"
}
},
"com.amazonaws.costexplorer#Entity": {
Expand Down Expand Up @@ -5485,36 +5485,42 @@
"EC2InstanceDetails": {
"target": "com.amazonaws.costexplorer#EC2InstanceDetails",
"traits": {
"smithy.api#documentation": "<p>The Amazon EC2 instances that Amazon Web Services recommends that you purchase.</p>"
"smithy.api#documentation": "<p>The Amazon EC2 reservations that Amazon Web Services recommends that you\n purchase.</p>"
}
},
"RDSInstanceDetails": {
"target": "com.amazonaws.costexplorer#RDSInstanceDetails",
"traits": {
"smithy.api#documentation": "<p>The Amazon RDS instances that Amazon Web Services recommends that you purchase.</p>"
"smithy.api#documentation": "<p>The Amazon RDS reservations that Amazon Web Services recommends that you\n purchase.</p>"
}
},
"RedshiftInstanceDetails": {
"target": "com.amazonaws.costexplorer#RedshiftInstanceDetails",
"traits": {
"smithy.api#documentation": "<p>The Amazon Redshift instances that Amazon Web Services recommends that you\n purchase.</p>"
"smithy.api#documentation": "<p>The Amazon Redshift reservations that Amazon Web Services recommends that you\n purchase.</p>"
}
},
"ElastiCacheInstanceDetails": {
"target": "com.amazonaws.costexplorer#ElastiCacheInstanceDetails",
"traits": {
"smithy.api#documentation": "<p>The ElastiCache instances that Amazon Web Services recommends that you purchase.</p>"
"smithy.api#documentation": "<p>The ElastiCache reservations that Amazon Web Services recommends that you\n purchase.</p>"
}
},
"ESInstanceDetails": {
"target": "com.amazonaws.costexplorer#ESInstanceDetails",
"traits": {
"smithy.api#documentation": "<p>The Amazon OpenSearch Service instances that Amazon Web Services recommends that you\n purchase.</p>"
"smithy.api#documentation": "<p>The Amazon OpenSearch Service reservations that Amazon Web Services recommends that you\n purchase.</p>"
}
},
"MemoryDBInstanceDetails": {
"target": "com.amazonaws.costexplorer#MemoryDBInstanceDetails",
"traits": {
"smithy.api#documentation": "<p>The MemoryDB reservations that Amazon Web Services recommends that you purchase.</p>"
}
}
},
"traits": {
"smithy.api#documentation": "<p>Details about the instances that Amazon Web Services recommends that you\n purchase.</p>"
"smithy.api#documentation": "<p>Details about the reservations that Amazon Web Services recommends that you\n purchase.</p>"
}
},
"com.amazonaws.costexplorer#InvalidNextTokenException": {
Expand Down Expand Up @@ -5916,6 +5922,46 @@
}
}
},
"com.amazonaws.costexplorer#MemoryDBInstanceDetails": {
"type": "structure",
"members": {
"Family": {
"target": "com.amazonaws.costexplorer#GenericString",
"traits": {
"smithy.api#documentation": "<p>The instance family of the recommended reservation.</p>"
}
},
"NodeType": {
"target": "com.amazonaws.costexplorer#GenericString",
"traits": {
"smithy.api#documentation": "<p>The node type of the recommended reservation.</p>"
}
},
"Region": {
"target": "com.amazonaws.costexplorer#GenericString",
"traits": {
"smithy.api#documentation": "<p>The Amazon Web Services Region of the recommended reservation.</p>"
}
},
"CurrentGeneration": {
"target": "com.amazonaws.costexplorer#GenericBoolean",
"traits": {
"smithy.api#default": false,
"smithy.api#documentation": "<p>Determines whether the recommendation is for a current generation instance.</p>"
}
},
"SizeFlexEligible": {
"target": "com.amazonaws.costexplorer#GenericBoolean",
"traits": {
"smithy.api#default": false,
"smithy.api#documentation": "<p>Determines whether the recommended reservation is size flexible.</p>"
}
}
},
"traits": {
"smithy.api#documentation": "<p>Details about the MemoryDB reservations that Amazon Web Services recommends that you\n purchase.</p>"
}
},
"com.amazonaws.costexplorer#Metric": {
"type": "enum",
"members": {
Expand Down Expand Up @@ -6126,7 +6172,7 @@
"type": "double",
"traits": {
"smithy.api#range": {
"min": 0
"min": 0.0
}
}
},
Expand Down Expand Up @@ -6415,7 +6461,7 @@
}
},
"traits": {
"smithy.api#documentation": "<p>Details about the Amazon RDS instances that Amazon Web Services recommends that you\n purchase.</p>"
"smithy.api#documentation": "<p>Details about the Amazon RDS reservations that Amazon Web Services recommends that you\n purchase.</p>"
}
},
"com.amazonaws.costexplorer#RICostForUnusedHours": {
Expand Down Expand Up @@ -6715,7 +6761,7 @@
}
},
"traits": {
"smithy.api#documentation": "<p>Details about the Amazon Redshift instances that Amazon Web Services recommends that\n you purchase.</p>"
"smithy.api#documentation": "<p>Details about the Amazon Redshift reservations that Amazon Web Services recommends that\n you purchase.</p>"
}
},
"com.amazonaws.costexplorer#RequestChangedException": {
Expand Down Expand Up @@ -6934,7 +6980,7 @@
"InstanceDetails": {
"target": "com.amazonaws.costexplorer#InstanceDetails",
"traits": {
"smithy.api#documentation": "<p>Details about the instances that Amazon Web Services recommends that you\n purchase.</p>"
"smithy.api#documentation": "<p>Details about the reservations that Amazon Web Services recommends that you\n purchase.</p>"
}
},
"RecommendedNumberOfInstancesToPurchase": {
Expand Down

0 comments on commit fbbd361

Please sign in to comment.