Skip to content

Commit f0d3d51

Browse files
author
awstools
committed
feat(client-elasticache): Added support for cluster mode in online migration and test migration API
1 parent 27fef8f commit f0d3d51

File tree

63 files changed

+3109
-2047
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

63 files changed

+3109
-2047
lines changed

clients/client-elasticache/README.md

Lines changed: 17 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -8,15 +8,15 @@ AWS SDK for JavaScript ElastiCache Client for Node.js, Browser and React Native.
88

99
<fullname>Amazon ElastiCache</fullname>
1010

11-
<p>Amazon ElastiCache is a web service that makes it easier to set up, operate,
12-
and scale a distributed cache in the cloud.</p>
13-
<p>With ElastiCache, customers get all of the benefits of a high-performance,
14-
in-memory cache with less of the administrative burden involved in launching and managing a distributed cache.
15-
The service makes setup, scaling,
16-
and cluster failure handling much simpler than in a self-managed cache deployment.</p>
17-
<p>In addition, through integration with Amazon CloudWatch,
18-
customers get enhanced visibility into the key performance statistics
19-
associated with their cache and can receive alarms if a part of their cache runs hot.</p>
11+
<p>Amazon ElastiCache is a web service that makes it easier to set up, operate, and scale
12+
a distributed cache in the cloud.</p>
13+
<p>With ElastiCache, customers get all of the benefits of a high-performance, in-memory
14+
cache with less of the administrative burden involved in launching and managing a
15+
distributed cache. The service makes setup, scaling, and cluster failure handling much
16+
simpler than in a self-managed cache deployment.</p>
17+
<p>In addition, through integration with Amazon CloudWatch, customers get enhanced
18+
visibility into the key performance statistics associated with their cache and can
19+
receive alarms if a part of their cache runs hot.</p>
2020

2121
## Installing
2222

@@ -733,3 +733,11 @@ TestFailover
733733
[Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/clients/client-elasticache/classes/testfailovercommand.html) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/clients/client-elasticache/interfaces/testfailovercommandinput.html) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/clients/client-elasticache/interfaces/testfailovercommandoutput.html)
734734

735735
</details>
736+
<details>
737+
<summary>
738+
TestMigration
739+
</summary>
740+
741+
[Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/clients/client-elasticache/classes/testmigrationcommand.html) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/clients/client-elasticache/interfaces/testmigrationcommandinput.html) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/clients/client-elasticache/interfaces/testmigrationcommandoutput.html)
742+
743+
</details>

clients/client-elasticache/src/ElastiCache.ts

Lines changed: 26 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -315,6 +315,11 @@ import {
315315
TestFailoverCommandInput,
316316
TestFailoverCommandOutput,
317317
} from "./commands/TestFailoverCommand";
318+
import {
319+
TestMigrationCommand,
320+
TestMigrationCommandInput,
321+
TestMigrationCommandOutput,
322+
} from "./commands/TestMigrationCommand";
318323
import { ElastiCacheClient, ElastiCacheClientConfig } from "./ElastiCacheClient";
319324

320325
const commands = {
@@ -383,6 +388,7 @@ const commands = {
383388
RevokeCacheSecurityGroupIngressCommand,
384389
StartMigrationCommand,
385390
TestFailoverCommand,
391+
TestMigrationCommand,
386392
};
387393

388394
export interface ElastiCache {
@@ -1433,20 +1439,31 @@ export interface ElastiCache {
14331439
options: __HttpHandlerOptions,
14341440
cb: (err: any, data?: TestFailoverCommandOutput) => void
14351441
): void;
1442+
1443+
/**
1444+
* @see {@link TestMigrationCommand}
1445+
*/
1446+
testMigration(args: TestMigrationCommandInput, options?: __HttpHandlerOptions): Promise<TestMigrationCommandOutput>;
1447+
testMigration(args: TestMigrationCommandInput, cb: (err: any, data?: TestMigrationCommandOutput) => void): void;
1448+
testMigration(
1449+
args: TestMigrationCommandInput,
1450+
options: __HttpHandlerOptions,
1451+
cb: (err: any, data?: TestMigrationCommandOutput) => void
1452+
): void;
14361453
}
14371454

14381455
/**
14391456
* @public
14401457
* <fullname>Amazon ElastiCache</fullname>
1441-
* <p>Amazon ElastiCache is a web service that makes it easier to set up, operate,
1442-
* and scale a distributed cache in the cloud.</p>
1443-
* <p>With ElastiCache, customers get all of the benefits of a high-performance,
1444-
* in-memory cache with less of the administrative burden involved in launching and managing a distributed cache.
1445-
* The service makes setup, scaling,
1446-
* and cluster failure handling much simpler than in a self-managed cache deployment.</p>
1447-
* <p>In addition, through integration with Amazon CloudWatch,
1448-
* customers get enhanced visibility into the key performance statistics
1449-
* associated with their cache and can receive alarms if a part of their cache runs hot.</p>
1458+
* <p>Amazon ElastiCache is a web service that makes it easier to set up, operate, and scale
1459+
* a distributed cache in the cloud.</p>
1460+
* <p>With ElastiCache, customers get all of the benefits of a high-performance, in-memory
1461+
* cache with less of the administrative burden involved in launching and managing a
1462+
* distributed cache. The service makes setup, scaling, and cluster failure handling much
1463+
* simpler than in a self-managed cache deployment.</p>
1464+
* <p>In addition, through integration with Amazon CloudWatch, customers get enhanced
1465+
* visibility into the key performance statistics associated with their cache and can
1466+
* receive alarms if a part of their cache runs hot.</p>
14501467
*/
14511468
export class ElastiCache extends ElastiCacheClient implements ElastiCache {}
14521469
createAggregatedClient(commands, ElastiCache);

clients/client-elasticache/src/ElastiCacheClient.ts

Lines changed: 14 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -247,6 +247,7 @@ import {
247247
} from "./commands/RevokeCacheSecurityGroupIngressCommand";
248248
import { StartMigrationCommandInput, StartMigrationCommandOutput } from "./commands/StartMigrationCommand";
249249
import { TestFailoverCommandInput, TestFailoverCommandOutput } from "./commands/TestFailoverCommand";
250+
import { TestMigrationCommandInput, TestMigrationCommandOutput } from "./commands/TestMigrationCommand";
250251
import {
251252
ClientInputEndpointParameters,
252253
ClientResolvedEndpointParameters,
@@ -325,7 +326,8 @@ export type ServiceInputTypes =
325326
| ResetCacheParameterGroupCommandInput
326327
| RevokeCacheSecurityGroupIngressCommandInput
327328
| StartMigrationCommandInput
328-
| TestFailoverCommandInput;
329+
| TestFailoverCommandInput
330+
| TestMigrationCommandInput;
329331

330332
/**
331333
* @public
@@ -395,7 +397,8 @@ export type ServiceOutputTypes =
395397
| ResetCacheParameterGroupCommandOutput
396398
| RevokeCacheSecurityGroupIngressCommandOutput
397399
| StartMigrationCommandOutput
398-
| TestFailoverCommandOutput;
400+
| TestFailoverCommandOutput
401+
| TestMigrationCommandOutput;
399402

400403
/**
401404
* @public
@@ -562,15 +565,15 @@ export interface ElastiCacheClientResolvedConfig extends ElastiCacheClientResolv
562565
/**
563566
* @public
564567
* <fullname>Amazon ElastiCache</fullname>
565-
* <p>Amazon ElastiCache is a web service that makes it easier to set up, operate,
566-
* and scale a distributed cache in the cloud.</p>
567-
* <p>With ElastiCache, customers get all of the benefits of a high-performance,
568-
* in-memory cache with less of the administrative burden involved in launching and managing a distributed cache.
569-
* The service makes setup, scaling,
570-
* and cluster failure handling much simpler than in a self-managed cache deployment.</p>
571-
* <p>In addition, through integration with Amazon CloudWatch,
572-
* customers get enhanced visibility into the key performance statistics
573-
* associated with their cache and can receive alarms if a part of their cache runs hot.</p>
568+
* <p>Amazon ElastiCache is a web service that makes it easier to set up, operate, and scale
569+
* a distributed cache in the cloud.</p>
570+
* <p>With ElastiCache, customers get all of the benefits of a high-performance, in-memory
571+
* cache with less of the administrative burden involved in launching and managing a
572+
* distributed cache. The service makes setup, scaling, and cluster failure handling much
573+
* simpler than in a self-managed cache deployment.</p>
574+
* <p>In addition, through integration with Amazon CloudWatch, customers get enhanced
575+
* visibility into the key performance statistics associated with their cache and can
576+
* receive alarms if a part of their cache runs hot.</p>
574577
*/
575578
export class ElastiCacheClient extends __Client<
576579
__HttpHandlerOptions,

clients/client-elasticache/src/commands/AddTagsToResourceCommand.ts

Lines changed: 23 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -36,18 +36,18 @@ export interface AddTagsToResourceCommandOutput extends TagListMessage, __Metada
3636

3737
/**
3838
* @public
39-
* <p>A tag is a key-value pair where the key and value are case-sensitive.
40-
* You can use tags to categorize and track all your ElastiCache resources, with the exception of global replication group. When you add or remove tags on replication groups, those actions will be replicated to all nodes in the replication group.
41-
* For more information, see <a href="http://docs.aws.amazon.com/AmazonElastiCache/latest/red-ug/IAM.ResourceLevelPermissions.html">Resource-level permissions</a>.</p>
42-
* <p>
43-
* For example, you can use cost-allocation tags to your ElastiCache resources,
44-
* Amazon generates a cost allocation report as a comma-separated value (CSV) file
45-
* with your usage and costs aggregated by your tags.
46-
* You can apply tags that represent business categories (such as cost centers, application names, or owners)
47-
* to organize your costs across multiple services.</p>
48-
* <p>For more information,
49-
* see <a href="https://docs.aws.amazon.com/AmazonElastiCache/latest/red-ug/Tagging.html">Using Cost Allocation Tags in Amazon ElastiCache</a>
50-
* in the <i>ElastiCache User Guide</i>.</p>
39+
* <p>A tag is a key-value pair where the key and value are case-sensitive. You can use tags
40+
* to categorize and track all your ElastiCache resources, with the exception of global
41+
* replication group. When you add or remove tags on replication groups, those actions will
42+
* be replicated to all nodes in the replication group. For more information, see <a href="http://docs.aws.amazon.com/AmazonElastiCache/latest/red-ug/IAM.ResourceLevelPermissions.html">Resource-level permissions</a>.</p>
43+
* <p> For example, you can use cost-allocation tags to your ElastiCache resources, Amazon
44+
* generates a cost allocation report as a comma-separated value (CSV) file with your usage
45+
* and costs aggregated by your tags. You can apply tags that represent business categories
46+
* (such as cost centers, application names, or owners) to organize your costs across
47+
* multiple services.</p>
48+
* <p>For more information, see <a href="https://docs.aws.amazon.com/AmazonElastiCache/latest/red-ug/Tagging.html">Using Cost Allocation Tags in
49+
* Amazon ElastiCache</a> in the <i>ElastiCache User
50+
* Guide</i>.</p>
5151
* @example
5252
* Use a bare-bones client and the command you need to make an API call.
5353
* ```javascript
@@ -86,16 +86,20 @@ export interface AddTagsToResourceCommandOutput extends TagListMessage, __Metada
8686
* <p>The requested cluster ID does not refer to an existing cluster.</p>
8787
*
8888
* @throws {@link CacheParameterGroupNotFoundFault} (client fault)
89-
* <p>The requested cache parameter group name does not refer to an existing cache parameter group.</p>
89+
* <p>The requested cache parameter group name does not refer to an existing cache parameter
90+
* group.</p>
9091
*
9192
* @throws {@link CacheSecurityGroupNotFoundFault} (client fault)
92-
* <p>The requested cache security group name does not refer to an existing cache security group.</p>
93+
* <p>The requested cache security group name does not refer to an existing cache security
94+
* group.</p>
9395
*
9496
* @throws {@link CacheSubnetGroupNotFoundFault} (client fault)
95-
* <p>The requested cache subnet group name does not refer to an existing cache subnet group.</p>
97+
* <p>The requested cache subnet group name does not refer to an existing cache subnet
98+
* group.</p>
9699
*
97100
* @throws {@link InvalidARNFault} (client fault)
98-
* <p>The requested Amazon Resource Name (ARN) does not refer to an existing resource.</p>
101+
* <p>The requested Amazon Resource Name (ARN) does not refer to an existing
102+
* resource.</p>
99103
*
100104
* @throws {@link InvalidReplicationGroupStateFault} (client fault)
101105
* <p>The requested replication group is not in the <code>available</code> state.</p>
@@ -110,7 +114,9 @@ export interface AddTagsToResourceCommandOutput extends TagListMessage, __Metada
110114
* <p>The requested snapshot name does not refer to an existing snapshot.</p>
111115
*
112116
* @throws {@link TagQuotaPerResourceExceeded} (client fault)
113-
* <p>The request cannot be processed because it would cause the resource to have more than the allowed number of tags. The maximum number of tags permitted on a resource is 50.</p>
117+
* <p>The request cannot be processed because it would cause the resource to have more than
118+
* the allowed number of tags. The maximum number of tags permitted on a resource is
119+
* 50.</p>
114120
*
115121
* @throws {@link UserGroupNotFoundFault} (client fault)
116122
* <p>The user group was not found or does not exist</p>

clients/client-elasticache/src/commands/AuthorizeCacheSecurityGroupIngressCommand.ts

Lines changed: 8 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -44,12 +44,12 @@ export interface AuthorizeCacheSecurityGroupIngressCommandOutput
4444

4545
/**
4646
* @public
47-
* <p>Allows network ingress to a cache
48-
* security group. Applications using ElastiCache must be running on Amazon EC2, and Amazon EC2
49-
* security groups are used as the authorization mechanism.</p>
47+
* <p>Allows network ingress to a cache security group. Applications using ElastiCache must
48+
* be running on Amazon EC2, and Amazon EC2 security groups are used as the authorization
49+
* mechanism.</p>
5050
* <note>
5151
* <p>You cannot authorize ingress from an Amazon EC2 security group in one region to an
52-
* ElastiCache cluster in another region.</p>
52+
* ElastiCache cluster in another region.</p>
5353
* </note>
5454
* @example
5555
* Use a bare-bones client and the command you need to make an API call.
@@ -89,10 +89,12 @@ export interface AuthorizeCacheSecurityGroupIngressCommandOutput
8989
* @see {@link ElastiCacheClientResolvedConfig | config} for ElastiCacheClient's `config` shape.
9090
*
9191
* @throws {@link AuthorizationAlreadyExistsFault} (client fault)
92-
* <p>The specified Amazon EC2 security group is already authorized for the specified cache security group.</p>
92+
* <p>The specified Amazon EC2 security group is already authorized for the specified cache
93+
* security group.</p>
9394
*
9495
* @throws {@link CacheSecurityGroupNotFoundFault} (client fault)
95-
* <p>The requested cache security group name does not refer to an existing cache security group.</p>
96+
* <p>The requested cache security group name does not refer to an existing cache security
97+
* group.</p>
9698
*
9799
* @throws {@link InvalidCacheSecurityGroupStateFault} (client fault)
98100
* <p>The current state of the cache security group does not allow deletion.</p>

clients/client-elasticache/src/commands/BatchApplyUpdateActionCommand.ts

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -36,7 +36,9 @@ export interface BatchApplyUpdateActionCommandOutput extends UpdateActionResults
3636

3737
/**
3838
* @public
39-
* <p>Apply the service update. For more information on service updates and applying them, see <a href="https://docs.aws.amazon.com/AmazonElastiCache/latest/red-ug/applying-updates.html">Applying Service Updates</a>.</p>
39+
* <p>Apply the service update. For more information on service updates and applying them,
40+
* see <a href="https://docs.aws.amazon.com/AmazonElastiCache/latest/red-ug/applying-updates.html">Applying Service
41+
* Updates</a>.</p>
4042
* @example
4143
* Use a bare-bones client and the command you need to make an API call.
4244
* ```javascript

clients/client-elasticache/src/commands/BatchStopUpdateActionCommand.ts

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -36,7 +36,9 @@ export interface BatchStopUpdateActionCommandOutput extends UpdateActionResultsM
3636

3737
/**
3838
* @public
39-
* <p>Stop the service update. For more information on service updates and stopping them, see <a href="https://docs.aws.amazon.com/AmazonElastiCache/latest/red-ug/stopping-self-service-updates.html">Stopping Service Updates</a>.</p>
39+
* <p>Stop the service update. For more information on service updates and stopping them,
40+
* see <a href="https://docs.aws.amazon.com/AmazonElastiCache/latest/red-ug/stopping-self-service-updates.html">Stopping
41+
* Service Updates</a>.</p>
4042
* @example
4143
* Use a bare-bones client and the command you need to make an API call.
4244
* ```javascript

0 commit comments

Comments
 (0)