Definitions for @turbot/aws-elasticache
- cacheCluster
- cacheClusterAka
- cacheClusterId
- cacheClusterStatus
- cacheParameterGroup
- cacheParameterGroupAka
- cacheParameterGroupFamily
- cacheParameterGroupName
- clusterEngine
- elastiCache
- elasticacheAka
- elastiCacheSnapshotStatus
- replicationGroup
- replicationGroupAka
- replicationGroupStatus
- snapshot
- snapshotAka
- snapshotName
cacheCluster
Schema
{ "type": "object", "properties": { "CacheClusterId": { "$ref": "#/definitions/cacheClusterId" }, "CacheClusterName": { "$ref": "#/definitions/cacheClusterId" }, "Tags": { "$ref": "aws#/definitions/tagList" }, "CacheClusterStatus": { "$ref": "#/definitions/cacheClusterStatus" }, "Engine": { "$ref": "#/definitions/clusterEngine" }, "ConfigurationEndpoint": { "type": "object" }, "ClientDownloadLandingPage": { "type": "string" }, "CacheNodeType": { "type": "string" }, "EngineVersion": { "type": "string" }, "NumCacheNodes": { "type": "integer" }, "PreferredAvailabilityZone": { "type": "string" }, "CacheClusterCreateTime": { "$ref": "turbot#/definitions/isoTimestamp" }, "PreferredMaintenanceWindow": { "type": "string" }, "PendingModifiedValues": { "type": "object" }, "NotificationConfiguration": { "type": "object" }, "CacheSecurityGroups": { "type": "array" }, "CacheParameterGroup": { "type": "object" }, "CacheSubnetGroupName": { "type": "string" }, "CacheNodes": { "type": "array" }, "SecurityGroups": { "type": "array" }, "SnapshotRetentionLimit": { "type": "integer" }, "AtRestEncryptionEnabled": { "type": "boolean" }, "TransitEncryptionEnabled": { "type": "boolean" }, "AuthTokenEnabled": { "type": "boolean" }, "turbot": { "type": "object", "properties": { "akas": { "type": "array", "items": { "$ref": "#/definitions/cacheClusterAka" } }, "tags": { "$ref": "aws#/definitions/tagsMap" }, "title": { "$ref": "#/definitions/cacheClusterId" }, "custom": { "type": "object", "properties": { "aws": { "$ref": "aws#/definitions/awsMetadata" }, "createTimestamp": { "$ref": "turbot#/definitions/isoTimestamp" } } } } } }, "additionalProperties": true, "tests": [ { "description": "Valid - All properties", "input": { "CacheClusterId": "test01-003", "ClientDownloadLandingPage": "https://console.aws.amazon.com/elasticache/home#client-download:", "CacheNodeType": "cache.r5.large", "Engine": "redis", "EngineVersion": "5.0.4", "CacheClusterStatus": "available", "NumCacheNodes": 1, "PreferredAvailabilityZone": "us-west-2c", "CacheClusterCreateTime": "2019-05-21T11:39:21.831Z", "PreferredMaintenanceWindow": "sat:07:30-sat:08:30", "PendingModifiedValues": {}, "CacheSecurityGroups": [], "CacheParameterGroup": { "CacheParameterGroupName": "default.redis5.0", "ParameterApplyStatus": "in-sync", "CacheNodeIdsToReboot": [] }, "CacheSubnetGroupName": "default", "CacheNodes": [], "AutoMinorVersionUpgrade": true, "SecurityGroups": [ { "SecurityGroupId": "sg-0fcb1b1036fae7cb0", "Status": "active" } ], "ReplicationGroupId": "test01", "SnapshotRetentionLimit": 0, "SnapshotWindow": "08:30-09:30", "AuthTokenEnabled": false, "TransitEncryptionEnabled": false, "AtRestEncryptionEnabled": false, "Tags": [ { "Key": "Env", "Value": "Test" }, { "Key": "App", "Value": "Facebook" } ], "turbot": { "akas": [ "arn:aws:elasticache:us-east-1:123456789012:cluster:Test-01" ], "tags": { "Env": "Test", "App": "Facebook" }, "custom": { "aws": { "accountId": 123456789012, "regionName": "us-east-1" } } } } }, { "descrition": "Invalid - Missing CacheClusterId", "input": { "CacheClusterName": "Cache-Cluster", "Tags": [ { "Key": "Env", "Value": "Test" }, { "Key": "App", "Value": "Facebook" } ], "turbot": { "akas": [ "arn:aws:elasticache:us-east-1:123456789012:cluster:Test-01" ], "tags": { "Env": "Test", "App": "Facebook" }, "title": "Cache-Cluster", "custom": { "aws": { "accountId": 123456789012, "regionName": "us-east-1" } } } } } ], ".turbot": { "uri": "tmod:@turbot/aws-elasticache#/definitions/cacheCluster", "modUri": "tmod:@turbot/aws-elasticache" }}
cacheClusterAka
Schema
{ "type": "string", "pattern": "^arn:aws(-us-gov|-cn)?:elasticache:[a-z]{2}(-gov)?-[a-z]+-[0-9]:[0-9]{12}:cluster:[a-zA-Z](?:(?!.*--)[-a-zA-Z0-9]{0,18}[a-zA-Z0-9])$", "tests": [ { "description": "Valid - Base case", "input": "arn:aws:elasticache:us-east-1:123456789012:cluster:Test-01" }, { "description": "Invalid - Malformed resource collection", "input": "arn:aws:elasticache:us-east-1:123456789012:cacheClusters/Test-01", "expected": false }, { "description": "Invalid - Malformed region name", "input": "arn:aws:elasticache:use-east-12:123456789012:cacheCluster/Test-01", "expected": false }, { "description": "Invalid - Malformed account ID", "input": "arn:aws:elasticache:us-east-1:1234567890123:cacheCluster/Test-01", "expected": false } ], ".turbot": { "uri": "tmod:@turbot/aws-elasticache#/definitions/cacheClusterAka", "modUri": "tmod:@turbot/aws-elasticache" }}
cacheClusterId
Schema
{ "type": "string", "pattern": "^[a-zA-Z](?:(?!.*--)[-a-zA-Z0-9]{0,18}[a-zA-Z0-9])$", "tests": [ { "input": "Test-01" }, { "input": "Cache-Cluster" }, { "description": "invalid - should always start with alphabet", "input": "61106d4-Test", "expected": false }, { "description": "invalid - too long", "input": "Cache-Cluster-Test012", "expected": false }, { "description": "invalid - should always end with alphanumeric character", "input": "Cache-Cluster-Test012_", "expected": false } ], ".turbot": { "uri": "tmod:@turbot/aws-elasticache#/definitions/cacheClusterId", "modUri": "tmod:@turbot/aws-elasticache" }}
cacheClusterStatus
Schema
{ "type": "string", "enum": [ "available", "creating", "deleted", "deleting", "incompatible-network", "modifying", "rebooting cluster nodes", "restore-failed", "snapshotting" ], "tests": [ { "input": "deleting" }, { "input": "creating" }, { "description": "invalid - not listed in options", "input": "Reactive", "expected": false }, { "description": "invalid - null value", "input": null, "expected": false } ], ".turbot": { "uri": "tmod:@turbot/aws-elasticache#/definitions/cacheClusterStatus", "modUri": "tmod:@turbot/aws-elasticache" }}
cacheParameterGroup
Schema
{ "type": "object", "properties": { "CacheParameterGroupName": { "$ref": "#/definitions/cacheParameterGroupName" }, "CacheParameterGroupFamily": { "$ref": "#/definitions/cacheParameterGroupFamily" }, "Description": { "type": "string" }, "turbot": { "type": "object", "properties": { "akas": { "type": "array", "items": { "$ref": "#/definitions/cacheParameterGroupAka" } }, "title": { "$ref": "#/definitions/cacheParameterGroupName" }, "custom": { "type": "object", "properties": { "aws": { "$ref": "aws#/definitions/awsMetadata" }, "createTimestamp": { "$ref": "turbot#/definitions/isoTimestamp" } } } } } }, "additionalProperties": true, "tests": [ { "description": "Valid - All properties", "input": { "CacheParameterGroupName": "test", "CacheParameterGroupFamily": "memcached1.4", "Description": "testing this field", "turbot": { "akas": [ "arn:aws:elasticache:us-east-1:123456789012:pg/test" ], "title": "test", "custom": { "aws": { "accountId": 123456789012, "regionName": "us-east-1", "partition": "aws" } } } } } ], ".turbot": { "uri": "tmod:@turbot/aws-elasticache#/definitions/cacheParameterGroup", "modUri": "tmod:@turbot/aws-elasticache" }}
cacheParameterGroupAka
Schema
{ "type": "string", "pattern": "^arn:aws(-us-gov|-cn)?:elasticache:[a-z]{2}(-gov)?-[a-z]+-[0-9]:[0-9]{12}:pg/[a-zA-Z0-9-]*[^-]$", "tests": [ { "description": "Valid - Base case", "input": "arn:aws:elasticache:us-east-1:123456789012:pg/test-01" }, { "description": "Invalid - Malformed resource collection", "input": "arn:aws:elasticache:us-east-1:1234567892:pg/test", "expected": false } ], ".turbot": { "uri": "tmod:@turbot/aws-elasticache#/definitions/cacheParameterGroupAka", "modUri": "tmod:@turbot/aws-elasticache" }}
cacheParameterGroupFamily
Schema
{ "type": "string", "enum": [ "memcached1.4", "memcached1.5", "redis2.6", "redis2.8", "redis3.2", "redis4.0", "redis5.0" ], "tests": [ { "input": "redis2.6" }, { "input": "memcached1.4" }, { "description": "invalid - not listed in options", "input": "redis_2.6", "expected": false } ], ".turbot": { "uri": "tmod:@turbot/aws-elasticache#/definitions/cacheParameterGroupFamily", "modUri": "tmod:@turbot/aws-elasticache" }}
cacheParameterGroupName
Schema
{ "type": "string", "pattern": "^[a-zA-Z0-9-.]*[^-]$", "tests": [ { "input": "test" }, { "input": "param-group" } ], ".turbot": { "uri": "tmod:@turbot/aws-elasticache#/definitions/cacheParameterGroupName", "modUri": "tmod:@turbot/aws-elasticache" }}
clusterEngine
Schema
{ "type": "string", "enum": [ "memcached", "redis" ], "tests": [ { "input": "redis" }, { "description": "invalid engine", "input": "Redis", "expected": false } ], ".turbot": { "uri": "tmod:@turbot/aws-elasticache#/definitions/clusterEngine", "modUri": "tmod:@turbot/aws-elasticache" }}
elastiCache
Schema
{ "allOf": [ { "$ref": "turbot#/definitions/service" }, { "type": "object", "properties": { "name": { "const": "ElastiCache" }, "turbot": { "type": "object", "properties": { "akas": { "type": "array", "items": { "$ref": "#/definitions/elasticacheAka" } }, "title": { "const": "ElastiCache" }, "custom": { "type": "object", "properties": { "aws": { "$ref": "aws#/definitions/awsMetadata" } } } } } }, "additionalProperties": true, "tests": [ { "description": "All valid properties", "input": { "name": "ElastiCache", "turbot": { "akas": [ "arn:aws:elasticache:us-east-1:123456789012" ], "title": "ElastiCache", "custom": { "aws": { "accountId": 123456789012, "regionName": "us-east-1", "partition": "aws" } } } } }, { "description": "invalid - name is missing", "input": { "turbot": { "akas": [ "arn:aws:elasticache:us-east-1:123456789012" ], "title": "ElastiCache", "custom": { "aws": { "accountId": 123456789012, "regionName": "us-east-1", "partition": "aws" } } } }, "expected": false } ] } ], ".turbot": { "uri": "tmod:@turbot/aws-elasticache#/definitions/elastiCache", "modUri": "tmod:@turbot/aws-elasticache" }}
elasticacheAka
Schema
{ "type": "string", "pattern": "^arn:aws(-us-gov|-cn)?:elasticache:[a-z]{2}(-gov)?-[a-z]+-[0-9]{1}:[0-9]{12}$", "tests": [ { "description": "base", "input": "arn:aws:elasticache:us-east-1:123123123123" }, { "description": "invalid service name", "input": "arn:aws:xyz:us-east-1:123123123123", "expected": false }, { "description": "invalid account id", "input": "arn:aws:elasticache:us-east-1:123382743123123123", "expected": false }, { "description": "invalid region name", "input": "arn:aws:elasticache:us-eastdk-74381:123123123123", "expected": false } ], ".turbot": { "uri": "tmod:@turbot/aws-elasticache#/definitions/elasticacheAka", "modUri": "tmod:@turbot/aws-elasticache" }}
elastiCacheSnapshotStatus
Schema
{ "type": "string", "enum": [ "creating", "available", "restoring", "copying", "deleting" ], "tests": [ { "input": "creating" }, { "input": "copying" }, { "description": "invalid - not listed in options", "input": "Reactive", "expected": false }, { "description": "invalid - null value", "input": null, "expected": false } ], ".turbot": { "uri": "tmod:@turbot/aws-elasticache#/definitions/elastiCacheSnapshotStatus", "modUri": "tmod:@turbot/aws-elasticache" }}
replicationGroup
Schema
{ "type": "object", "properties": { "ReplicationGroupId": { "$ref": "#/definitions/cacheClusterId" }, "Status": { "$ref": "#/definitions/replicationGroupStatus" }, "Description": { "type": "string" }, "PendingModifiedValues": { "type": "object" }, "MemberClusters": { "type": "array" }, "NodeGroups": { "type": "array" }, "SnapshottingClusterId": { "type": "string" }, "AutomaticFailover": { "type": "string" }, "ConfigurationEndpoint": { "type": "object" }, "ClusterEnabled": { "type": "boolean" }, "CacheNodeType": { "type": "string" }, "turbot": { "type": "object", "properties": { "akas": { "type": "array", "items": { "$ref": "#/definitions/replicationGroupAka" } }, "title": { "$ref": "#/definitions/cacheClusterId" }, "custom": { "type": "object", "properties": { "aws": { "$ref": "aws#/definitions/awsMetadata" }, "createTimestamp": { "$ref": "turbot#/definitions/isoTimestamp" } } } } } }, "additionalProperties": true, "tests": [ { "description": "Valid - All properties", "input": { "ReplicationGroupId": "test-sana-30", "Status": "available", "Description": "temp", "PendingModifiedValues": {}, "MemberClusters": [ "test-sana-30-001", "test-sana-30-002" ], "NodeGroups": [ { "NodeGroupId": "0001", "Status": "available", "PrimaryEndpoint": { "Address": "test-sana-30.ji9aru.ng.0001.use1.cache.amazonaws.com", "Port": 6379 }, "ReaderEndpoint": { "Address": "test-sana-30-ro.ji9aru.ng.0001.use1.cache.amazonaws.com", "Port": 6379 }, "NodeGroupMembers": [ { "CacheClusterId": "test-sana-30-001", "CacheNodeId": "0001", "ReadEndpoint": { "Address": "test-sana-30-001.ji9aru.0001.use1.cache.amazonaws.com", "Port": 6379 }, "PreferredAvailabilityZone": "us-east-1a", "CurrentRole": "primary" }, { "CacheClusterId": "test-sana-30-002", "CacheNodeId": "0001", "ReadEndpoint": { "Address": "test-sana-30-002.ji9aru.0001.use1.cache.amazonaws.com", "Port": 6379 }, "PreferredAvailabilityZone": "us-east-1a", "CurrentRole": "replica" } ] } ], "SnapshottingClusterId": "test-sana-30-002", "AutomaticFailover": "enabled", "ClusterEnabled": false, "CacheNodeType": "cache.r5.large", "turbot": { "akas": [ "arn:aws:elasticache:us-east-1:123456789012:rg/test-sana-30" ], "title": "test-sana-30", "custom": { "aws": { "accountId": 123456789012, "regionName": "us-east-1" } } } } }, { "description": "Invalid - Missing replication group id", "input": { "Status": "available", "turbot": { "akas": [ "arn:aws:elasticache:us-east-1:123456789012:rg/test-sana-30" ], "title": "test-sana-30", "custom": { "aws": { "accountId": 123456789012, "regionName": "us-east-1" } } } } }, { "description": "Invalid - Missing turbot data", "input": { "ReplicationGroupId": "test-sana-30", "Status": "available" } } ], ".turbot": { "uri": "tmod:@turbot/aws-elasticache#/definitions/replicationGroup", "modUri": "tmod:@turbot/aws-elasticache" }}
replicationGroupAka
Schema
{ "type": "string", "pattern": "^arn:aws(-us-gov|-cn)?:elasticache:[a-z]{2}(-gov)?-[a-z]+-[0-9]:[0-9]{12}:rg/[a-zA-Z](?:(?!.*--)[-a-zA-Z0-9]{0,18}[a-zA-Z0-9])$", "tests": [ { "description": "Valid - Base case", "input": "arn:aws:elasticache:us-east-1:123456789012:rg/test-01" }, { "description": "Invalid - Malformed resource collection", "input": "arn:aws:elasticache:us-east-1:123456789012:rG/test-01", "expected": false }, { "description": "Invalid - Malformed region name", "input": "arn:aws:elasticache:use-east-1:123456789012:rg/test-01", "expected": false }, { "description": "Invalid - Malformed account ID", "input": "arn:aws:elasticache:us-east-1:1234567890123:rg/test-01", "expected": false } ], ".turbot": { "uri": "tmod:@turbot/aws-elasticache#/definitions/replicationGroupAka", "modUri": "tmod:@turbot/aws-elasticache" }}
replicationGroupStatus
Schema
{ "type": "string", "enum": [ "creating", "available", "modifying", "create-failed", "snapshotting", "deleting" ], "tests": [ { "input": "creating" }, { "input": "available" }, { "description": "invalid - not listed in options", "input": "pending", "expected": false }, { "description": "invalid - null value", "input": null, "expected": false } ], ".turbot": { "uri": "tmod:@turbot/aws-elasticache#/definitions/replicationGroupStatus", "modUri": "tmod:@turbot/aws-elasticache" }}
snapshot
Schema
{ "type": "object", "properties": { "CacheClusterId": { "$ref": "#/definitions/cacheClusterId" }, "SnapshotName": { "$ref": "#/definitions/snapshotName" }, "ReplicationGroupId": { "type": "string" }, "ReplicationGroupDescription": { "type": "string" }, "SnapshotSource": { "type": "string" }, "CacheNodeType": { "type": "string" }, "NodeSnapshots": { "type": "array" }, "NumCacheNodes": { "type": "integer" }, "SnapshotWindow": { "type": "string" }, "SnapshotRetentionLimit": { "type": "integer" }, "Tags": { "$ref": "aws#/definitions/tagList" }, "SnapshotStatus": { "$ref": "#/definitions/elastiCacheSnapshotStatus" }, "turbot": { "type": "object", "properties": { "akas": { "type": "array", "items": { "$ref": "#/definitions/snapshotAka" } }, "tags": { "$ref": "aws#/definitions/tagsMap" }, "title": { "$ref": "#/definitions/snapshotName" }, "custom": { "type": "object", "properties": { "aws": { "$ref": "aws#/definitions/awsMetadata" }, "createTimestamp": { "$ref": "turbot#/definitions/isoTimestamp" } } } } } }, "additionalProperties": true, "tests": [ { "description": "Valid - All properties", "input": { "SnapshotName": "cache-snapshot", "CacheClusterId": "Cache-Cluster", "SnapshotSource": "manual", "NumCacheNodes": 1, "SnapshotRetentionLimit": 1, "SnapshotWindow": "00:00-01:00", "NodeSnapshots": [ { "CacheNodeId": "0001", "CacheSize": "3 MB", "CacheNodeCreateTime": "2019-01-22T08:26:20.384Z", "SnapshotCreateTime": "2019-01-22T08:54:50.000Z" } ], "Tags": [ { "Key": "Env", "Value": "Test" } ], "turbot": { "akas": [ "arn:aws:elasticache:us-east-1:123456789012:snapshot:test-01" ], "tags": { "Env": "Test" }, "title": "cache-snapshot", "custom": { "aws": { "accountId": 123456789012, "regionName": "us-east-1" } } } } }, { "description": "Invalid - Missing snapshot name", "input": { "CacheClusterId": "Cache-Cluster", "Tags": [ { "Key": "Env", "Value": "Test" } ], "turbot": { "akas": [ "arn:aws:elasticache:us-east-1:123456789012:snapshot:test-01" ], "tags": { "Env": "Test" }, "title": "cache-snapshot", "custom": { "aws": { "accountId": 123456789012, "regionName": "us-east-1" } } } } }, { "description": "Invalid - Missing turbot data", "input": { "SnapshotName": "cache-snapshot", "CacheClusterId": "Cache-Cluster", "Tags": [ { "Key": "Env", "Value": "Test" } ] } } ], ".turbot": { "uri": "tmod:@turbot/aws-elasticache#/definitions/snapshot", "modUri": "tmod:@turbot/aws-elasticache" }}
snapshotAka
Schema
{ "type": "string", "pattern": "^arn:aws(-us-gov|-cn)?:elasticache:[a-z]{2}(-gov)?-[a-z]+-[0-9]:[0-9]{12}:snapshot:(?!-)(?!\\d)(?!.*--)[a-z0-9-]{1,255}(?<!-)$", "tests": [ { "description": "Valid - Base case", "input": "arn:aws:elasticache:us-east-1:123456789012:snapshot:test-01" }, { "description": "Invalid - Malformed resource collection", "input": "arn:aws:elasticache:us-east-1:123456789012:snapshots:test-01", "expected": false }, { "description": "Invalid - Malformed region name", "input": "arn:aws:elasticache:use-east-1:123456789012:snapshot:test-01", "expected": false }, { "description": "Invalid - Malformed account ID", "input": "arn:aws:elasticache:us-east-1:1234567890123:snapshot:test-01", "expected": false } ], ".turbot": { "uri": "tmod:@turbot/aws-elasticache#/definitions/snapshotAka", "modUri": "tmod:@turbot/aws-elasticache" }}
snapshotName
Schema
{ "type": "string", "pattern": "^(?!-)(?!\\d)(?!.*--)[a-z0-9-]{1,255}(?<!-)$", "tests": [ { "input": "test-01" }, { "input": "cache-snapshot" }, { "description": "invalid - must not contain two consecutive hyphens.", "input": "cache--snapshot", "expected": false }, { "description": "invalid - should always start with alphabet", "input": "61106d4-Test", "expected": false }, { "description": "invalid - too short", "input": "", "expected": false }, { "description": "invalid - too long", "input": "qwertyqwertyqwertyqwertyqwertyqwertyqwertyqwertyqwertyqwertyqwertyqwertyqwertyqwertyqwertyqwertyqwertyqwertyqwertyqwertyqwertyqwertyqwertyqwertyqwertyqwertyqwertyqwertyqwertyqwertyqwertyqwertyqwertyqwertyqwertyqwertyqwertyqwertyqwertyqwertyqwertyqwertyqwerty", "expected": false }, { "description": "invalid - must contain only ascii letters, digits, and hyphens(-)", "input": "cache_snapshot", "expected": false }, { "description": "invalid - can end with alphanumeric character only", "input": "cache-snapshot-", "expected": false } ], ".turbot": { "uri": "tmod:@turbot/aws-elasticache#/definitions/snapshotName", "modUri": "tmod:@turbot/aws-elasticache" }}