@altostra/core
Version:
Core library for shared types and logic
1 lines • 1.93 kB
JavaScript
;Object.defineProperty(exports,"__esModule",{value:!0}),exports.instanceClassSupport=exports.isDocDBCluster=void 0;const NonEmptyString_1=require("../../../common/CustomTypes/NonEmptyString"),Numerics_1=require("../../../common/CustomTypes/Numerics"),type_validations_1=require("@altostra/type-validations"),primitives_1=require("@altostra/type-validations/lib/primitives"),Common_1=require("../Common");exports.isDocDBCluster=(0,type_validations_1.objectOf)(Object.assign(Object.assign({},Common_1.resourceBaseValidators),{type:(0,type_validations_1.is)("resource.docdb.cluster"),masterUsername:NonEmptyString_1.isNonEmptyString,instanceClass:NonEmptyString_1.isNonEmptyString,numberOfInstances:Numerics_1.isNaturalNumber,storageEncryption:(0,type_validations_1.maybe)(Common_1.isStorageEncryption),port:Numerics_1.isNaturalNumber,backupRetentionDays:(0,type_validations_1.maybe)(Numerics_1.isNaturalNumber),vpc:(0,type_validations_1.maybe)(Common_1.isVPC),deletionProtection:primitives_1.boolean}));const T4G_MEDIUM="db.t4g.medium",T3_MEDIUM="db.t3.medium",R6G_LARGE="db.r6g.large",R6G_XLARGE="db.r6g.xlarge",R6G_2XLARGE="db.r6g.2xlarge",R6G_4XLARGE="db.r6g.4xlarge",R6G_8XLARGE="db.r6g.8xlarge",R6G_12XLARGE="db.r6g.12xlarge",R6G_16XLARGE="db.r6g.16xlarge",R5_LARGE="db.r5.large",R5_XLARGE="db.r5.xlarge",R5_2XLARGE="db.r5.2xlarge",R5_4XLARGE="db.r5.4xlarge",R5_8XLARGE="db.r5.8xlarge",R5_12XLARGE="db.r5.12xlarge",R5_16XLARGE="db.r5.16xlarge",R5_24XLARGE="db.r5.24xlarge",R4_LARGE="db.r4.large",R4_XLARGE="db.r4.xlarge",R4_2XLARGE="db.r4.2xlarge",R4_4XLARGE="db.r4.4xlarge",R4_8XLARGE="db.r4.8xlarge",R4_16XLARGE="db.r4.16xlarge";exports.instanceClassSupport=[T4G_MEDIUM,T3_MEDIUM,R6G_LARGE,R6G_XLARGE,R6G_2XLARGE,R6G_4XLARGE,R6G_8XLARGE,R6G_12XLARGE,R6G_16XLARGE,R5_LARGE,R5_XLARGE,R5_2XLARGE,R5_4XLARGE,R5_8XLARGE,R5_12XLARGE,R5_16XLARGE,R5_24XLARGE,R4_LARGE,R4_XLARGE,R4_2XLARGE,R4_4XLARGE,R4_8XLARGE,R4_16XLARGE];