@pulumi/aws-native
Version:
The Pulumi AWS Cloud Control Provider enables you to build, deploy, and manage [any AWS resource that's supported by the AWS Cloud Control API](https://github.com/pulumi/pulumi-aws-native/blob/master/provider/cmd/pulumi-gen-aws-native/supported-types.txt)
99 lines • 5.51 kB
JavaScript
;
// *** WARNING: this file was generated by pulumi-language-nodejs. ***
// *** Do not edit by hand unless you're certain you know what you are doing! ***
Object.defineProperty(exports, "__esModule", { value: true });
exports.ServerlessCache = void 0;
const pulumi = require("@pulumi/pulumi");
const utilities = require("../utilities");
/**
* The AWS::ElastiCache::ServerlessCache resource creates an Amazon ElastiCache Serverless Cache.
*/
class ServerlessCache extends pulumi.CustomResource {
/**
* Get an existing ServerlessCache resource's state with the given name, ID, and optional extra
* properties used to qualify the lookup.
*
* @param name The _unique_ name of the resulting resource.
* @param id The _unique_ provider ID of the resource to lookup.
* @param opts Optional settings to control the behavior of the CustomResource.
*/
static get(name, id, opts) {
return new ServerlessCache(name, undefined, Object.assign(Object.assign({}, opts), { id: id }));
}
/**
* Returns true if the given object is an instance of ServerlessCache. This is designed to work even
* when multiple copies of the Pulumi SDK have been loaded into the same process.
*/
static isInstance(obj) {
if (obj === undefined || obj === null) {
return false;
}
return obj['__pulumiType'] === ServerlessCache.__pulumiType;
}
/**
* Create a ServerlessCache resource with the given unique name, arguments, and options.
*
* @param name The _unique_ name of the resource.
* @param args The arguments to use to populate this resource's properties.
* @param opts A bag of options that control this resource's behavior.
*/
constructor(name, args, opts) {
let resourceInputs = {};
opts = opts || {};
if (!opts.id) {
if ((!args || args.engine === undefined) && !opts.urn) {
throw new Error("Missing required property 'engine'");
}
resourceInputs["cacheUsageLimits"] = args ? args.cacheUsageLimits : undefined;
resourceInputs["dailySnapshotTime"] = args ? args.dailySnapshotTime : undefined;
resourceInputs["description"] = args ? args.description : undefined;
resourceInputs["endpoint"] = args ? args.endpoint : undefined;
resourceInputs["engine"] = args ? args.engine : undefined;
resourceInputs["finalSnapshotName"] = args ? args.finalSnapshotName : undefined;
resourceInputs["kmsKeyId"] = args ? args.kmsKeyId : undefined;
resourceInputs["majorEngineVersion"] = args ? args.majorEngineVersion : undefined;
resourceInputs["readerEndpoint"] = args ? args.readerEndpoint : undefined;
resourceInputs["securityGroupIds"] = args ? args.securityGroupIds : undefined;
resourceInputs["serverlessCacheName"] = args ? args.serverlessCacheName : undefined;
resourceInputs["snapshotArnsToRestore"] = args ? args.snapshotArnsToRestore : undefined;
resourceInputs["snapshotRetentionLimit"] = args ? args.snapshotRetentionLimit : undefined;
resourceInputs["subnetIds"] = args ? args.subnetIds : undefined;
resourceInputs["tags"] = args ? args.tags : undefined;
resourceInputs["userGroupId"] = args ? args.userGroupId : undefined;
resourceInputs["arn"] = undefined /*out*/;
resourceInputs["createTime"] = undefined /*out*/;
resourceInputs["fullEngineVersion"] = undefined /*out*/;
resourceInputs["status"] = undefined /*out*/;
}
else {
resourceInputs["arn"] = undefined /*out*/;
resourceInputs["cacheUsageLimits"] = undefined /*out*/;
resourceInputs["createTime"] = undefined /*out*/;
resourceInputs["dailySnapshotTime"] = undefined /*out*/;
resourceInputs["description"] = undefined /*out*/;
resourceInputs["endpoint"] = undefined /*out*/;
resourceInputs["engine"] = undefined /*out*/;
resourceInputs["finalSnapshotName"] = undefined /*out*/;
resourceInputs["fullEngineVersion"] = undefined /*out*/;
resourceInputs["kmsKeyId"] = undefined /*out*/;
resourceInputs["majorEngineVersion"] = undefined /*out*/;
resourceInputs["readerEndpoint"] = undefined /*out*/;
resourceInputs["securityGroupIds"] = undefined /*out*/;
resourceInputs["serverlessCacheName"] = undefined /*out*/;
resourceInputs["snapshotArnsToRestore"] = undefined /*out*/;
resourceInputs["snapshotRetentionLimit"] = undefined /*out*/;
resourceInputs["status"] = undefined /*out*/;
resourceInputs["subnetIds"] = undefined /*out*/;
resourceInputs["tags"] = undefined /*out*/;
resourceInputs["userGroupId"] = undefined /*out*/;
}
opts = pulumi.mergeOptions(utilities.resourceOptsDefaults(), opts);
const replaceOnChanges = { replaceOnChanges: ["kmsKeyId", "serverlessCacheName", "snapshotArnsToRestore[*]", "subnetIds[*]"] };
opts = pulumi.mergeOptions(opts, replaceOnChanges);
super(ServerlessCache.__pulumiType, name, resourceInputs, opts);
}
}
exports.ServerlessCache = ServerlessCache;
/** @internal */
ServerlessCache.__pulumiType = 'aws-native:elasticache:ServerlessCache';
//# sourceMappingURL=serverlessCache.js.map