Definitions for @turbot/aws-dms

AuthMechanism

{
"type": "string",
"enum": [
"default",
"mongodb_cr",
"scram_sha_1"
],
".turbot": {
"uri": "tmod:@turbot/aws-dms#/definitions/AuthMechanism",
"modUri": "tmod:@turbot/aws-dms"
}
}

AuthType

{
"type": "string",
"enum": [
"no",
"password"
],
".turbot": {
"uri": "tmod:@turbot/aws-dms#/definitions/AuthType",
"modUri": "tmod:@turbot/aws-dms"
}
}

CompressionType

{
"type": "string",
"enum": [
"none",
"gzip"
],
".turbot": {
"uri": "tmod:@turbot/aws-dms#/definitions/CompressionType",
"modUri": "tmod:@turbot/aws-dms"
}
}

DataFormat

{
"type": "string",
"enum": [
"csv",
"parquet"
],
".turbot": {
"uri": "tmod:@turbot/aws-dms#/definitions/DataFormat",
"modUri": "tmod:@turbot/aws-dms"
}
}

dms

{
"allOf": [
{
"$ref": "turbot#/definitions/service"
},
{
"type": "object",
"properties": {
"name": {
"const": "DMS"
},
"turbot": {
"type": "object",
"properties": {
"akas": {
"type": "array",
"items": {
"$ref": "#/definitions/dmsAka"
}
},
"title": {
"const": "DMS"
},
"custom": {
"type": "object",
"properties": {
"aws": {
"$ref": "aws#/definitions/awsMetadata"
}
}
}
}
}
},
"additionalProperties": true,
"tests": [
{
"description": "Valid - All properties",
"input": {
"name": "DMS",
"turbot": {
"akas": [
"arn:aws:dms:us-east-1:123456789012"
],
"title": "DMS",
"custom": {
"aws": {
"accountId": 123456789012,
"regionName": "us-east-1",
"partition": "aws"
}
}
}
}
}
]
}
],
".turbot": {
"uri": "tmod:@turbot/aws-dms#/definitions/dms",
"modUri": "tmod:@turbot/aws-dms"
}
}

dmsAka

{
"type": "string",
"pattern": "^arn:aws(-us-gov|-cn)?:dms:[a-z]{2}(-gov)?-[a-z]+-[0-9]{1}:[0-9]{12}$",
"tests": [
{
"description": "Base",
"input": "arn:aws:dms:us-east-1:123456789012"
},
{
"description": "Valid - gov partition",
"input": "arn:aws-us-gov:dms:us-gov-east-1:123456786354"
},
{
"description": "Valid - china partition",
"input": "arn:aws-cn:dms:cn-north-1:123456786354"
},
{
"description": "Invalid us gov partition",
"input": "arn:aws-cn-gov:dms:us-gov-east-1:123456786354",
"expected": false
},
{
"description": "Invalid china partition",
"input": "arn:aws-us-cn:dms:cn-north-1:123456786354",
"expected": false
},
{
"description": "Invalid service name",
"input": "arn:aws:amplifye:us-east-1:123456789012",
"expected": false
},
{
"description": "Invalid region name",
"input": "arn:aws:dms:us-eastdk-74381:123456786354",
"expected": false
},
{
"description": "Invalid us gov region",
"input": "arn:aws-us-gov:dms:us-east-2-74381:123456786354",
"expected": false
},
{
"description": "Invalid china region",
"input": "arn:aws-cn:dms:us-east-2-74381:123456786354",
"expected": false
}
],
".turbot": {
"uri": "tmod:@turbot/aws-dms#/definitions/dmsAka",
"modUri": "tmod:@turbot/aws-dms"
}
}

EncodingType

{
"type": "string",
"enum": [
"plain",
"plain-dictionary",
"rle-dictionary"
],
".turbot": {
"uri": "tmod:@turbot/aws-dms#/definitions/EncodingType",
"modUri": "tmod:@turbot/aws-dms"
}
}

EncryptionMode

{
"type": "string",
"enum": [
"sse-s3",
"sse-kms"
],
".turbot": {
"uri": "tmod:@turbot/aws-dms#/definitions/EncryptionMode",
"modUri": "tmod:@turbot/aws-dms"
}
}

endpoint

{
"type": "object",
"properties": {
"CertificateArn": {
"type": "string"
},
"DatabaseName": {
"type": "string"
},
"DmsTransferSettings": {
"type": "object",
"properties": {
"BucketName": {
"type": "string"
},
"ServiceAccessRoleArn": {
"type": "string"
}
}
},
"DynamoDbSettings": {
"type": "object",
"properties": {
"ServiceAccessRoleArn": {
"type": "string"
}
}
},
"ElasticsearchSettings": {
"type": "object",
"properties": {
"EndpointUri": {
"type": "string"
},
"ErrorRetryDuration": {
"type": "integer"
},
"FullLoadErrorPercentage": {
"type": "integer"
},
"ServiceAccessRoleArn": {
"type": "string"
}
}
},
"EndpointArn": {
"type": "string"
},
"EndpointIdentifier": {
"type": "string"
},
"EndpointType": {
"$ref": "#/definitions/EndpointType"
},
"EngineDisplayName": {
"type": "string"
},
"EngineName": {
"$ref": "#/definitions/EngineName"
},
"ExternalId": {
"type": "string"
},
"ExternalTableDefinition": {
"type": "string"
},
"ExtraConnectionAttributes": {
"type": "string"
},
"KafkaSettings": {
"type": "object",
"properties": {
"Broker": {
"type": "string"
},
"Topic": {
"type": "string"
}
}
},
"KinesisSettings": {
"type": "object",
"properties": {
"IncludeControlDetails": {
"type": "boolean"
},
"IncludePartitionValue": {
"type": "boolean"
},
"IncludeTableAlterOperations": {
"type": "boolean"
},
"IncludeTransactionDetails": {
"type": "boolean"
},
"MessageFormat": {
"$ref": "#/definitions/MessageFormat"
},
"PartitionIncludeSchemaTable": {
"type": "boolean"
},
"ServiceAccessRoleArn": {
"type": "string"
},
"StreamArn": {
"type": "string"
}
}
},
"KmsKeyId": {
"type": "string"
},
"MongoDbSettings": {
"type": "object",
"properties": {
"AuthMechanism": {
"$ref": "#/definitions/AuthMechanism"
},
"AuthSource": {
"type": "string"
},
"AuthType": {
"$ref": "#/definitions/AuthType"
},
"DatabaseName": {
"type": "string"
},
"DocsToInvestigate": {
"type": "string"
},
"ExtractDocId": {
"type": "string"
},
"KmsKeyId": {
"type": "string"
},
"NestingLevel": {
"$ref": "#/definitions/NestingLevel"
},
"Password": {
"type": "string"
},
"Port": {
"type": "integer"
},
"ServerName": {
"type": "string"
},
"Username": {
"type": "string"
}
}
},
"NeptuneSettings": {
"type": "object",
"properties": {
"ErrorRetryDuration": {
"type": "integer"
},
"IamAuthEnabled": {
"type": "boolean"
},
"MaxFileSize": {
"type": "integer"
},
"MaxRetryCount": {
"type": "integer"
},
"S3BucketFolder": {
"type": "string"
},
"S3BucketName": {
"type": "string"
},
"ServiceAccessRoleArn": {
"type": "string"
}
}
},
"Password": {
"type": "string"
},
"Port": {
"type": "integer"
},
"RedshiftSettings": {
"type": "object",
"properties": {
"AcceptAnyDate": {
"type": "boolean"
},
"AfterConnectScript": {
"type": "string"
},
"BucketFolder": {
"type": "string"
},
"BucketName": {
"type": "string"
},
"ConnectionTimeout": {
"type": "integer"
},
"DatabaseName": {
"type": "string"
},
"DateFormat": {
"type": "string"
},
"EmptyAsNull": {
"type": "boolean"
},
"EncryptionMode": {
"$ref": "#/definitions/EncryptionMode"
},
"FileTransferUploadStreams": {
"type": "integer"
},
"LoadTimeout": {
"type": "integer"
},
"MaxFileSize": {
"type": "integer"
},
"Password": {
"type": "string"
},
"Port": {
"type": "integer"
},
"RemoveQuotes": {
"type": "boolean"
},
"ReplaceChars": {
"type": "string"
},
"ReplaceInvalidChars": {
"type": "string"
},
"ServerName": {
"type": "string"
},
"ServerSideEncryptionKmsKeyId": {
"type": "string"
},
"ServiceAccessRoleArn": {
"type": "string"
},
"TimeFormat": {
"$ref": "#/definitions/TimeFormat"
},
"TrimBlanks": {
"type": "boolean"
},
"TruncateColumns": {
"type": "boolean"
},
"Username": {
"type": "string"
},
"WriteBufferSize": {
"type": "integer"
}
}
},
"S3Settings": {
"type": "object",
"properties": {
"BucketFolder": {
"type": "string"
},
"BucketName": {
"type": "string"
},
"CdcInsertsAndUpdates": {
"type": "boolean"
},
"CdcInsertsOnly": {
"type": "boolean"
},
"CompressionType": {
"$ref": "#/definitions/CompressionType"
},
"CsvDelimiter": {
"type": "string"
},
"CsvRowDelimiter": {
"type": "string"
},
"DataFormat": {
"$ref": "#/definitions/DataFormat"
},
"DataPageSize": {
"type": "integer"
},
"DictPageSizeLimit": {
"type": "integer"
},
"EnableStatistics": {
"type": "boolean"
},
"EncodingType": {
"$ref": "#/definitions/EncodingType"
},
"EncryptionMode": {
"$ref": "#/definitions/EncryptionMode"
},
"ExternalTableDefinition": {
"type": "string"
},
"IncludeOpForFullLoad": {
"type": "boolean"
},
"ParquetTimestampInMillisecond": {
"type": "boolean"
},
"ParquetVersion": {
"$ref": "#/definitions/ParquetVersion"
},
"RowGroupLength": {
"type": "integer"
},
"ServerSideEncryptionKmsKeyId": {
"type": "string"
},
"ServiceAccessRoleArn": {
"type": "string"
},
"TimestampColumnName": {
"type": "string"
}
}
},
"ServerName": {
"type": "string"
},
"ServiceAccessRoleArn": {
"type": "string"
},
"SslMode": {
"$ref": "#/definitions/SslMode"
},
"Status": {
"type": "string"
},
"Tags": {
"type": "array",
"items": {
"type": "object"
}
},
"Username": {
"type": "string"
},
"turbot": {
"type": "object",
"properties": {
"metadata": {
"type": "object",
"properties": {
"createTimestamp": {
"$ref": "turbot#/definitions/isoTimestamp"
},
"aws": {
"$ref": "aws#/definitions/awsMetadata"
}
}
},
"tags": {
"$ref": "aws#/definitions/tagsMap"
}
}
}
},
"additionalProperties": true,
".turbot": {
"uri": "tmod:@turbot/aws-dms#/definitions/endpoint",
"modUri": "tmod:@turbot/aws-dms"
}
}

EndpointType

{
"type": "string",
"enum": [
"source",
"target"
],
".turbot": {
"uri": "tmod:@turbot/aws-dms#/definitions/EndpointType",
"modUri": "tmod:@turbot/aws-dms"
}
}

EngineName

{
"type": "string",
"enum": [
"mysql",
"oracle",
"postgres",
"mariadb",
"aurora",
"aurora-postgresql",
"redshift",
"s3",
"db2",
"azuredb",
"sybase",
"dynamodb",
"mongodb",
"kinesis",
"kafka",
"elasticsearch",
"documentdb",
"sqlserver"
],
".turbot": {
"uri": "tmod:@turbot/aws-dms#/definitions/EngineName",
"modUri": "tmod:@turbot/aws-dms"
}
}

MessageFormat

{
"type": "string",
"enum": [
"json",
"json-unformatted"
],
".turbot": {
"uri": "tmod:@turbot/aws-dms#/definitions/MessageFormat",
"modUri": "tmod:@turbot/aws-dms"
}
}

NestingLevel

{
"type": "string",
"enum": [
"none",
"one"
],
".turbot": {
"uri": "tmod:@turbot/aws-dms#/definitions/NestingLevel",
"modUri": "tmod:@turbot/aws-dms"
}
}

ParquetVersion

{
"type": "string",
"enum": [
"parquet-1-0",
"parquet-2-0"
],
".turbot": {
"uri": "tmod:@turbot/aws-dms#/definitions/ParquetVersion",
"modUri": "tmod:@turbot/aws-dms"
}
}

replicationInstance

{
"type": "object",
"properties": {
"ReplicationInstanceIdentifier": {
"$ref": "#/definitions/ReplicationInstanceId"
},
"ReplicationInstanceClass": {
"type": "string"
},
"ReplicationInstanceStatus": {
"$ref": "#/definitions/ReplicationInstanceStatus"
},
"AllocatedStorage": {
"type": "integer"
},
"InstanceCreateTime": {
"$ref": "turbot#/definitions/isoTimestamp"
},
"VpcSecurityGroups": {
"type": "array",
"items": {
"type": "object",
"properties": {
"VpcSecurityGroupId": {
"type": "string"
},
"Status": {
"type": "string"
}
}
}
},
"AvailabilityZone": {
"type": "string"
},
"ReplicationSubnetGroup": {
"type": "object",
"properties": {
"ReplicationSubnetGroupIdentifier": {
"type": "string"
},
"ReplicationSubnetGroupDescription": {
"type": "string"
},
"VpcId": {
"type": "string"
},
"SubnetGroupStatus": {
"type": "string"
},
"Subnets": {
"type": "array",
"items": {
"type": "object"
},
"properties": {
"SubnetIdentifier": {
"type": "string"
},
"SubnetAvailabilityZone": {
"type": "object",
"properties": {
"Name": {
"type": "string"
}
}
},
"SubnetStatus": {
"type": "string"
}
}
}
}
},
"PreferredMaintenanceWindow": {
"type": "string"
},
"PendingModifiedValues": {
"type": "object",
"properties": {
"ReplicationInstanceClass": {
"type": "string"
},
"AllocatedStorage": {
"type": "integer"
},
"MultiAZ": {
"type": "boolean"
},
"EngineVersion": {
"type": "string"
}
}
},
"MultiAZ": {
"type": "boolean"
},
"EngineVersion": {
"type": "string"
},
"AutoMinorVersionUpgrade": {
"type": "boolean"
},
"KmsKeyId": {
"type": "string"
},
"ReplicationInstanceArn": {
"$ref": "#/definitions/replicationInstanceAka"
},
"ReplicationInstancePublicIpAddress": {
"type": "string"
},
"ReplicationInstancePrivateIpAddress": {
"type": "string"
},
"ReplicationInstancePublicIpAddresses": {
"type": "array",
"items": {
"type": "string"
}
},
"ReplicationInstancePrivateIpAddresses": {
"type": "array",
"items": {
"type": "string"
}
},
"PubliclyAccessible": {
"type": "boolean"
},
"SecondaryAvailabilityZone": {
"type": "string"
},
"FreeUntil": {
"$ref": "turbot#/definitions/isoTimestamp"
},
"DnsNameServers": {
"type": "string"
},
"ReplicationTasks": {
"type": "array",
"items": {
"type": "object"
}
},
"turbot": {
"type": "object",
"properties": {
"akas": {
"type": "array",
"items": {
"$ref": "#/definitions/replicationInstanceAka"
}
},
"title": {
"$ref": "#/definitions/ReplicationInstanceId"
},
"tags": {
"$ref": "aws#/definitions/tagsMap"
},
"metadata": {
"type": "object",
"properties": {
"createTimestamp": {
"$ref": "turbot#/definitions/isoTimestamp"
},
"aws": {
"$ref": "aws#/definitions/awsMetadata"
}
}
}
}
}
},
"additionalProperties": true,
"tests": [
{
"description": "Valid - All properties",
"input": {
"ReplicationTasks": [],
"ReplicationInstanceIdentifier": "testreplication02",
"ReplicationInstanceClass": "dms.t2.micro",
"ReplicationInstanceStatus": "available",
"AllocatedStorage": 20,
"InstanceCreateTime": "2020-10-22T13:32:14.045Z",
"VpcSecurityGroups": [
{
"VpcSecurityGroupId": "sg-042d76d49c7065b70",
"Status": "active"
}
],
"AvailabilityZone": "us-east-2b",
"ReplicationSubnetGroup": {
"ReplicationSubnetGroupIdentifier": "test-dms-replication-subnet-group-tf",
"ReplicationSubnetGroupDescription": "Test replication subnet group",
"VpcId": "vpc-01ac86f9fb4878207",
"SubnetGroupStatus": "Complete",
"Subnets": [
{
"SubnetIdentifier": "subnet-045bfdbbe5e61fde4",
"SubnetAvailabilityZone": {
"Name": "us-east-2a"
},
"SubnetStatus": "Active"
},
{
"SubnetIdentifier": "subnet-0a6593825fcf649d9",
"SubnetAvailabilityZone": {
"Name": "us-east-2b"
},
"SubnetStatus": "Active"
}
]
},
"PreferredMaintenanceWindow": "sun:10:30-sun:14:30",
"PendingModifiedValues": {},
"MultiAZ": false,
"EngineVersion": "3.3.4",
"AutoMinorVersionUpgrade": true,
"KmsKeyId": "arn:aws:kms:us-east-2:123456789012:key/c693e07d-a6f6-48d4-ab70-4c0a0a3a5266",
"ReplicationInstanceArn": "arn:aws:dms:us-east-2:123456789012:rep:PA2XYN7SN5VEV5UA4OCB7SV4W7EYSR2K6PAZOZY",
"ReplicationInstancePublicIpAddress": "18.222.18.190",
"ReplicationInstancePrivateIpAddress": "10.1.2.122",
"ReplicationInstancePublicIpAddresses": [
"18.222.18.190"
],
"ReplicationInstancePrivateIpAddresses": [
"10.1.2.122"
],
"PubliclyAccessible": true,
"turbot": {
"akas": [
"arn:aws:dms:us-east-2:123456789012:rep:PA2XYN7SN5VEV5UA4OCB7SV4W7EYSR2K6PAZOZY"
],
"title": "testreplication02",
"tags": {
"testKey": "testValue"
},
"metadata": {
"createTimestamp": "2015-03-19T03:24:02.650Z",
"aws": {
"accountId": 123456789012,
"regionName": "us-east-2"
}
}
}
}
}
],
".turbot": {
"uri": "tmod:@turbot/aws-dms#/definitions/replicationInstance",
"modUri": "tmod:@turbot/aws-dms"
}
}

replicationInstanceAka

{
"type": "string",
"pattern": "^arn:aws(-us-gov|-cn)?:dms:[a-z]{2}(-gov)?-[a-z]+-[0-9]:[0-9]{12}:rep:[a-zA-Z-][a-zA-Z0-9]{0,99}$",
"tests": [
{
"description": "Valid - Base case",
"input": "arn:aws:dms:us-east-1:123456789012:rep:AEGRPLMYRKWALZH77R7MIOYURCKKIZNOZ3KLSGY"
},
{
"description": "Invalid - Replication Instance length",
"input": "arn:aws:dms:us-east-1:123456789012:rep:AEGRPLMYRKWALZH77R7MIOYURCKKIZN",
"expected": false
},
{
"description": "Invalid - Malformed region name",
"input": "arn:aws:dms:use-east-1:123456789012:rep:AEGRPLMYRKWALZH77R7MIOYURCKKIZNOZ3KLSGY",
"expected": false
},
{
"description": "Invalid - Malformed account ID",
"input": "arn:aws:dms:use-east-1:1234567890123:rep:AEGRPLMYRKWALZH77R7MIOYURCKKIZNOZ3KLSGY",
"expected": false
}
],
".turbot": {
"uri": "tmod:@turbot/aws-dms#/definitions/replicationInstanceAka",
"modUri": "tmod:@turbot/aws-dms"
}
}

ReplicationInstanceId

{
"type": "string",
"pattern": "^[a-zA-Z-][a-zA-Z0-9-]{0,99}$",
"tests": [
{
"description": "Valid - Base case",
"input": "testreplication02"
},
{
"description": "Invalid - Empty string",
"input": "",
"expected": false
}
],
".turbot": {
"uri": "tmod:@turbot/aws-dms#/definitions/ReplicationInstanceId",
"modUri": "tmod:@turbot/aws-dms"
}
}

ReplicationInstanceStatus

{
"type": "string",
"enum": [
"available",
"creating",
"deleted",
"deleting",
"failed",
"modifying",
"upgrading",
"rebooting",
"resetting-master-credentials",
"storage-full",
"incompatible-credentials",
"incompatible-network",
"maintenance"
],
".turbot": {
"uri": "tmod:@turbot/aws-dms#/definitions/ReplicationInstanceStatus",
"modUri": "tmod:@turbot/aws-dms"
}
}

SslMode

{
"type": "string",
"enum": [
"none",
"require",
"verify-ca",
"verify-full"
],
".turbot": {
"uri": "tmod:@turbot/aws-dms#/definitions/SslMode",
"modUri": "tmod:@turbot/aws-dms"
}
}

TimeFormat

{
"type": "string",
"enum": [
"auto",
"timeformat_string",
"epochsecs",
"epochmillisecs"
],
".turbot": {
"uri": "tmod:@turbot/aws-dms#/definitions/TimeFormat",
"modUri": "tmod:@turbot/aws-dms"
}
}