Definitions for @turbot/aws-vpc-connect

16bitAsn

{
"type": "integer",
"minimum": 64512,
"maximum": 65534,
".turbot": {
"uri": "tmod:@turbot/aws-vpc-connect#/definitions/16bitAsn",
"modUri": "tmod:@turbot/aws-vpc-connect"
}
}

32bitAsn

{
"type": "integer",
"minimum": 4200000000,
"maximum": 4294967294,
".turbot": {
"uri": "tmod:@turbot/aws-vpc-connect#/definitions/32bitAsn",
"modUri": "tmod:@turbot/aws-vpc-connect"
}
}

amazonSideAsn

{
"type": "integer",
"oneOf": [
{
"$ref": "#/definitions/16bitAsn"
},
{
"$ref": "#/definitions/32bitAsn"
}
],
"tests": [
{
"input": 64515
},
{
"input": 4200000011
}
],
".turbot": {
"uri": "tmod:@turbot/aws-vpc-connect#/definitions/amazonSideAsn",
"modUri": "tmod:@turbot/aws-vpc-connect"
}
}

bgpAsn

{
"type": "number",
"minimum": 64512,
"maximum": 65534,
"tests": [
{
"description": "valid value",
"input": 65000
},
{
"description": "invalid - out of range",
"input": 65600,
"expected": false
}
],
".turbot": {
"uri": "tmod:@turbot/aws-vpc-connect#/definitions/bgpAsn",
"modUri": "tmod:@turbot/aws-vpc-connect"
}
}

customerGateway

{
"type": "object",
"properties": {
"CustomerGatewayId": {
"$ref": "aws-vpc-core#/definitions/customerGatewayId"
},
"BgpAsn": {
"type": "string"
},
"IpAddress": {
"type": "string"
},
"CertificateArn": {
"type": "string"
},
"Type": {
"type": "string"
},
"DeviceName": {
"type": "string"
},
"State": {
"$ref": "#/definitions/state"
},
"Tags": {
"$ref": "aws#/definitions/tagList"
},
"turbot": {
"type": "object",
"properties": {
"akas": {
"type": "array",
"items": {
"$ref": "#/definitions/customerGatewayAka"
}
},
"tags": {
"$ref": "aws#/definitions/tagsMap"
},
"title": {
"$ref": "aws-vpc-core#/definitions/customerGatewayId"
},
"custom": {
"type": "object",
"properties": {
"aws": {
"$ref": "aws#/definitions/awsMetadata"
},
"createTimestamp": {
"$ref": "turbot#/definitions/isoTimestamp"
}
}
}
}
}
},
"additionalProperties": true,
"tests": [
{
"description": "Valid - All properties",
"input": {
"CustomerGatewayId": "cgw-0dd37586ec45dfa2b",
"State": "available",
"Type": "ipsec.1",
"IpAddress": "12.1.2.3",
"Tags": [
{
"Key": "Env",
"Value": "Test"
},
{
"Key": "App",
"Value": "Facebook"
}
],
"turbot": {
"akas": [
"arn:aws:ec2:us-east-1:123456789012:customer-gateway/cgw-0dd37586ec45dfa2b"
],
"tags": {
"Env": "Test",
"App": "Facebook"
},
"title": "cgw-0dd37586ec45dfa2b",
"custom": {
"aws": {
"accountId": 123456789012,
"regionName": "us-east-1"
}
}
}
}
},
{
"description": "Invalid - Missing Customer gateway",
"input": {
"turbot": {
"akas": [
"arn:aws:ec2:us-east-1:123456789012:customer-gateway/cgw-0dd37586ec45dfa2b"
],
"tags": {},
"title": "cgw-0dd37586ec45dfa2b",
"custom": {
"aws": {
"accountId": 123456789012,
"regionName": "us-east-1"
}
}
}
}
},
{
"description": "Invalid - Missing turbot data",
"input": {
"CustomerGatewayId": "cgw-0dd37586ec45dfa2b",
"Tags": []
}
}
],
".turbot": {
"uri": "tmod:@turbot/aws-vpc-connect#/definitions/customerGateway",
"modUri": "tmod:@turbot/aws-vpc-connect"
}
}

customerGatewayAka

{
"type": "string",
"pattern": "^arn:aws(-us-gov|-cn)?:ec2:[a-z]{2}(-gov)?-[a-z]+-[0-9]{1}:[0-9]{12}:customer-gateway/cgw-[a-f0-9]{17}$",
"tests": [
{
"description": "Valid - Base case",
"input": "arn:aws:ec2:us-east-1:123456789012:customer-gateway/cgw-0dd37586ec45dfa2b"
},
{
"description": "Invalid - Malformed resource collection",
"input": "arn:aws:ec2:us-east-1:123456789012:customer-gateways/cgw-0dd37586ec45dfa2b",
"expected": false
}
],
".turbot": {
"uri": "tmod:@turbot/aws-vpc-connect#/definitions/customerGatewayAka",
"modUri": "tmod:@turbot/aws-vpc-connect"
}
}

peeringConnectionStatus

{
"type": "object",
"properties": {
"Code": {
"$ref": "#/definitions/vpcPeeringConnectionStatus"
},
"Message": {
"type": "string"
}
},
".turbot": {
"uri": "tmod:@turbot/aws-vpc-connect#/definitions/peeringConnectionStatus",
"modUri": "tmod:@turbot/aws-vpc-connect"
}
}

state

{
"type": "string",
"enum": [
"pending",
"available",
"deleting",
"deleted"
],
"tests": [
{
"description": "Vaild case",
"input": "deleting"
},
{
"input": "started",
"expected": false
}
],
".turbot": {
"uri": "tmod:@turbot/aws-vpc-connect#/definitions/state",
"modUri": "tmod:@turbot/aws-vpc-connect"
}
}

subnetIDs

{
"type": "array",
"items": {
"$ref": "aws-vpc-core#/definitions/subnetId"
},
".turbot": {
"uri": "tmod:@turbot/aws-vpc-connect#/definitions/subnetIDs",
"modUri": "tmod:@turbot/aws-vpc-connect"
}
}

transitGateway

{
"type": "object",
"properties": {
"TransitGatewayId": {
"$ref": "#/definitions/transitGatewayId"
},
"TransitGatewayArn": {
"$ref": "#/definitions/transitGatewayAka"
},
"State": {
"$ref": "#/definitions/transitGatewayState"
},
"OwnerId": {
"$ref": "#/definitions/transitGatewayOwnerId"
},
"Description": {
"type": "string"
},
"CreationTime": {
"$ref": "turbot#/definitions/isoTimestamp"
},
"Options": {
"$ref": "#/definitions/TransitGatewayOptions"
},
"Tags": {
"$ref": "aws#/definitions/tagList"
},
"turbot": {
"type": "object",
"properties": {
"akas": {
"type": "array",
"items": {
"$ref": "#/definitions/transitGatewayAka"
},
"createTimestamp": {
"$ref": "turbot#/definitions/isoTimestamp"
}
},
"custom": {
"type": "object",
"properties": {
"aws": {
"$ref": "aws#/definitions/awsMetadata"
},
"createTimestamp": {
"$ref": "turbot#/definitions/isoTimestamp"
}
}
}
}
}
},
"additionalProperties": true,
"tests": [
{
"description": "Valid - All properties",
"input": {
"TransitGatewayId": "tgw-0c48b47d890f33904",
"State": "available",
"Options": {
"AmazonSideAsn": 123456
},
"Tags": [
{
"Key": "Name",
"Value": "testsharedemo123"
}
],
"turbot": {
"akas": [
"arn:aws:ec2:ap-south-1:560741234067:transit-gateway/tgw-0c48b47d890f33904"
],
"custom": {
"aws": {
"accountId": 560741234067,
"regionName": "ap-south-1",
"partition": "aws"
}
}
}
}
},
{
"description": "Invalid - missing transitGatewayId",
"input": {
"State": "available",
"turbot": {
"akas": [
"arn:aws:ec2:ap-south-1:560741234067:transit-gateway/tgw-0c48b47d890f33904"
],
"custom": {
"aws": {
"accountId": 560741234067,
"regionName": "ap-south-1",
"partition": "aws"
}
}
}
}
},
{
"description": "Invalid - missing turbot data",
"input": {
"TransitGatewayId": "tgw-0c48b47d890f33904",
"State": "available"
}
}
],
".turbot": {
"uri": "tmod:@turbot/aws-vpc-connect#/definitions/transitGateway",
"modUri": "tmod:@turbot/aws-vpc-connect"
}
}

transitGatewayAka

{
"type": "string",
"pattern": "^arn:aws(-us-gov|-cn)?:ec2:[a-z]{2}(-gov)?-[a-z]+-[0-9]:[0-9]{12}:transit-gateway/tgw-[A-Za-z0-9]",
"tests": [
{
"description": "Valid - Base case",
"input": "arn:aws:ec2:ap-south-1:560741234067:transit-gateway/tgw-0c48b47d890f33904"
}
],
".turbot": {
"uri": "tmod:@turbot/aws-vpc-connect#/definitions/transitGatewayAka",
"modUri": "tmod:@turbot/aws-vpc-connect"
}
}

transitGatewayAttachment

{
"type": "object",
"properties": {
"TransitGatewayAttachmentId": {
"$ref": "#/definitions/transitGatewayAttachmentId"
},
"TransitGatewayId": {
"$ref": "#/definitions/transitGatewayId"
},
"State": {
"$ref": "#/definitions/transitGatewayAttachmentState"
},
"CreationTime": {
"$ref": "turbot#/definitions/isoTimestamp"
},
"Association": {
"$ref": "#/definitions/transitGatewayAttachmentAssociation"
},
"ResourceId": {
"type": "string"
},
"ResourceOwnerId": {
"type": "string"
},
"TransitGatewayOwnerId": {
"type": "string"
},
"ResourceType": {
"$ref": "#/definitions/transitGatewayAttachmentResourceType"
},
"Tags": {
"$ref": "aws#/definitions/tagList"
},
"turbot": {
"type": "object",
"properties": {
"akas": {
"type": "array",
"items": {
"$ref": "#/definitions/transitGatewayAttachmentAka"
},
"createTimestamp": {
"$ref": "turbot#/definitions/isoTimestamp"
}
},
"custom": {
"type": "object",
"properties": {
"aws": {
"$ref": "aws#/definitions/awsMetadata"
},
"createTimestamp": {
"$ref": "turbot#/definitions/isoTimestamp"
}
}
}
}
}
},
"additionalProperties": true,
"tests": [
{
"description": "Valid - All properties",
"input": {
"TransitGatewayAttachmentId": "tgw-attach-03834b9e53ae45e86",
"TransitGatewayId": "tgw-0d3ff1e6f55ce4093",
"TransitGatewayOwnerId": "986325076436",
"ResourceOwnerId": "986325076436",
"ResourceType": "vpn",
"ResourceId": "vpn-0a746a9ef8148af16",
"State": "available",
"Association": {
"TransitGatewayRouteTableId": "tgw-rtb-02208059b81d93648",
"State": "associated"
},
"CreationTime": "2020-04-28T16:17:03.000Z",
"Tags": [
{
"Key": "Name",
"Value": "testsharedemo123"
}
],
"turbot": {
"akas": [
"arn:aws:ec2:ap-south-1:560741234067:transit-gateway-attachment/tgw-attach-03834b9e53ae45e86"
],
"custom": {
"aws": {
"accountId": 560741234067,
"regionName": "ap-south-1",
"partition": "aws"
}
}
}
}
}
],
".turbot": {
"uri": "tmod:@turbot/aws-vpc-connect#/definitions/transitGatewayAttachment",
"modUri": "tmod:@turbot/aws-vpc-connect"
}
}

transitGatewayAttachmentAka

{
"type": "string",
"pattern": "^arn:aws(-us-gov|-cn)?:ec2:[a-z]{2}(-gov)?-[a-z]+-[0-9]:[0-9]{12}:transit-gateway-attachment/tgw-attach-[0-9a-f]{8}(?:[0-9a-f]{9})?",
"tests": [
{
"description": "Valid - Base case",
"input": "arn:aws:ec2:ap-south-1:560741234067:transit-gateway-attachment/tgw-attach-0c48b47d80f3"
}
],
".turbot": {
"uri": "tmod:@turbot/aws-vpc-connect#/definitions/transitGatewayAttachmentAka",
"modUri": "tmod:@turbot/aws-vpc-connect"
}
}

transitGatewayAttachmentAssociation

{
"type": "object",
"properties": {
"TransitGatewayRouteTableId": {
"type": "string"
},
"State": {
"type": "string",
"enum": [
"associating",
"associated",
"disassociating",
"disassociated"
]
}
},
".turbot": {
"uri": "tmod:@turbot/aws-vpc-connect#/definitions/transitGatewayAttachmentAssociation",
"modUri": "tmod:@turbot/aws-vpc-connect"
}
}

transitGatewayAttachmentId

{
"type": "string",
"pattern": "^tgw-attach-[0-9a-f]{8}(?:[0-9a-f]{9})?$",
"tests": [
{
"description": "base case",
"input": "tgw-attach-0c48b47d890f33904"
},
{
"description": "invalid - incorrect type",
"input": [],
"expected": false
},
{
"description": "invalid - should always star with tgw",
"input": "ghy-attach-c48b47d890f33904",
"expected": false
},
{
"description": "invalid - should contains alphabet between a and f",
"input": "tgw-attach-y48m47d890v",
"expected": false
}
],
".turbot": {
"uri": "tmod:@turbot/aws-vpc-connect#/definitions/transitGatewayAttachmentId",
"modUri": "tmod:@turbot/aws-vpc-connect"
}
}

transitGatewayAttachmentResourceType

{
"type": "string",
"enum": [
"vpc",
"vpn",
"direct-connect-gateway",
"peering"
],
".turbot": {
"uri": "tmod:@turbot/aws-vpc-connect#/definitions/transitGatewayAttachmentResourceType",
"modUri": "tmod:@turbot/aws-vpc-connect"
}
}

transitGatewayAttachmentState

{
"type": "string",
"enum": [
"available",
"deleting",
"deleted",
"failed",
"failing",
"initiating",
"modifying",
"pendingAcceptance",
"pending",
"rollingBack",
"rejected",
"rejecting"
],
".turbot": {
"uri": "tmod:@turbot/aws-vpc-connect#/definitions/transitGatewayAttachmentState",
"modUri": "tmod:@turbot/aws-vpc-connect"
}
}

transitGatewayId

{
"type": "string",
"pattern": "^tgw-[0-9a-f]{8}(?:[0-9a-f]{9})?$",
"tests": [
{
"description": "base case",
"input": "tgw-0c48b47d890f33904"
},
{
"description": "invalid - incorrect type",
"input": [],
"expected": false
},
{
"description": "invalid - should always star with tgw",
"input": "ghy-c48b47d890f33904",
"expected": false
},
{
"description": "invalid - should contains alphabet between a and f",
"input": "tgw-y48m47d890v",
"expected": false
},
{
"description": "invalid - no uppercase alphabet",
"input": "TGW-0A48D890F",
"expected": false
}
],
".turbot": {
"uri": "tmod:@turbot/aws-vpc-connect#/definitions/transitGatewayId",
"modUri": "tmod:@turbot/aws-vpc-connect"
}
}

TransitGatewayOptions

{
"type": "object",
"properties": {
"AmazonSideAsn": {
"type": "integer"
},
"AutoAcceptSharedAttachments": {
"type": "string",
"enum": [
"enable",
"disable"
]
},
"DefaultRouteTableAssociation": {
"type": "string",
"enum": [
"enable",
"disable"
]
},
"AssociationDefaultRouteTableId": {
"type": "string"
},
"DefaultRouteTablePropagation": {
"type": "string",
"enum": [
"enable",
"disable"
]
},
"PropagationDefaultRouteTableId": {
"type": "string"
},
"VpnEcmpSupport": {
"type": "string",
"enum": [
"enable",
"disable"
]
},
"DnsSupport": {
"type": "string",
"enum": [
"enable",
"disable"
]
},
"MulticastSupport": {
"type": "string",
"enum": [
"enable",
"disable"
]
}
},
".turbot": {
"uri": "tmod:@turbot/aws-vpc-connect#/definitions/TransitGatewayOptions",
"modUri": "tmod:@turbot/aws-vpc-connect"
}
}

transitGatewayOwnerId

{
"type": "string",
"pattern": "^[0-9]{12}$",
"tests": [
{
"description": "valid-Base case",
"input": "560741234067"
},
{
"description": "InValid - empty string",
"input": "",
"expected": false
},
{
"description": "Invalid - more than 12 digits",
"input": "560741234067560741234067",
"expected": false
},
{
"description": "Invalid - less than 12 digits",
"input": "5607",
"expected": false
},
{
"description": "Invalid - alpha numeric data",
"input": "gyh12377888988",
"expected": false
}
],
".turbot": {
"uri": "tmod:@turbot/aws-vpc-connect#/definitions/transitGatewayOwnerId",
"modUri": "tmod:@turbot/aws-vpc-connect"
}
}

transitGatewayRouteTable

{
"type": "object",
"properties": {
"TransitGatewayRouteTableId": {
"$ref": "#/definitions/transitGatewayRouteTableId"
},
"TransitGatewayId": {
"type": "string"
},
"DefaultAssociationRouteTable": {
"type": "boolean"
},
"DefaultPropagationRouteTable": {
"type": "boolean"
},
"Tags": {
"$ref": "aws#/definitions/tagList"
},
"State": {
"$ref": "#/definitions/transitGatewayRouteTableState"
},
"CreationTime": {
"$ref": "turbot#/definitions/isoTimestamp"
},
"turbot": {
"type": "object",
"properties": {
"tags": {
"$ref": "aws#/definitions/tagsMap"
},
"title": {
"$ref": "#/definitions/transitGatewayRouteTableId"
},
"akas": {
"type": "array",
"items": {
"$ref": "#/definitions/transitGatewayRouteTableAka"
},
"createTimestamp": {
"$ref": "turbot#/definitions/isoTimestamp"
}
},
"custom": {
"type": "object",
"properties": {
"aws": {
"$ref": "aws#/definitions/awsMetadata"
},
"createTimestamp": {
"$ref": "turbot#/definitions/isoTimestamp"
}
}
}
}
}
},
"additionalProperties": true,
"tests": [
{
"description": "base case",
"input": {
"TransitGatewayRouteTableId": "tgw-rtb-07bd2515bdb0c00c9",
"State": "available",
"Tags": [
{
"Key": "Env",
"Value": "Test"
},
{
"Key": "App",
"Value": "turbot"
}
],
"turbot": {
"tags": {
"Env": "Test",
"App": "turbot"
},
"title": "tgw-rtb-07bd2515bdb0c00c9",
"akas": [
"arn:aws:ec2:ap-south-1:560741234067:transit-gateway-route-table/tgw-rtb-008cefe2351cb6cbf"
],
"custom": {
"aws": {
"accountId": 560741234067,
"regionName": "ap-south-1"
}
}
}
}
},
{
"description": "Invalid - missing transitGatewayRouteTableId",
"input": {
"State": "available",
"Tags": [
{
"Key": "Env",
"Value": "Test"
},
{
"Key": "App",
"Value": "turbot"
}
],
"turbot": {
"tags": {
"Env": "Test",
"App": "Facebook"
},
"akas": [
"arn:aws:ec2:ap-south-1:560741234067:transit-gateway-route-table/tgw-rtb-008cefe2351cb6cbf"
],
"custom": {
"aws": {
"accountId": 560741234067,
"regionName": "ap-south-1"
}
}
}
}
},
{
"description": "Invalid - missing turbot data",
"input": {
"TransitGatewayRouteTableId": "tgw-rtb-008cefe2351cb6cbf",
"State": "available",
"Tags": [
{
"Key": "Env",
"Value": "Test"
},
{
"Key": "App",
"Value": "turbot"
}
]
}
}
],
".turbot": {
"uri": "tmod:@turbot/aws-vpc-connect#/definitions/transitGatewayRouteTable",
"modUri": "tmod:@turbot/aws-vpc-connect"
}
}

transitGatewayRouteTableAka

{
"type": "string",
"pattern": "^arn:aws:ec2:[a-z]{2}-[a-z]+-[0-9]:[0-9]{12}:transit-gateway-route-table/tgw-rtb-[0-9a-f]{8}(?:[0-9a-f]{9})",
"tests": [
{
"description": "Valid - Base case",
"input": "arn:aws:ec2:ap-south-1:560741234067:transit-gateway-route-table/tgw-rtb-008cefe2351cb6cbf"
},
{
"description": "Invalid - aka",
"input": "arn:aws:ec2:ap-south-1:560741234067:transit-gateway-route-table/tgw-008cefe2351cb6cbf",
"expected": false
}
],
".turbot": {
"uri": "tmod:@turbot/aws-vpc-connect#/definitions/transitGatewayRouteTableAka",
"modUri": "tmod:@turbot/aws-vpc-connect"
}
}

transitGatewayRouteTableId

{
"type": "string",
"pattern": "^tgw-rtb-[0-9a-f]{8}(?:[0-9a-f]{9})?$",
"tests": [
{
"description": "base case",
"input": "tgw-rtb-008cefe2351cb6cbf"
},
{
"description": "invalid - incorrect type",
"input": [],
"expected": false
},
{
"description": "invalid - should always star with tgw",
"input": "ghy-c48b47d890f33904",
"expected": false
},
{
"description": "invalid - should contains alphabet between a and f",
"input": "tgw-rtb-y48m47d890v",
"expected": false
},
{
"description": "invalid - no uppercase alphabet",
"input": "TGW-RTB-0A48D890F",
"expected": false
}
],
".turbot": {
"uri": "tmod:@turbot/aws-vpc-connect#/definitions/transitGatewayRouteTableId",
"modUri": "tmod:@turbot/aws-vpc-connect"
}
}

transitGatewayRouteTableState

{
"type": "string",
".turbot": {
"uri": "tmod:@turbot/aws-vpc-connect#/definitions/transitGatewayRouteTableState",
"modUri": "tmod:@turbot/aws-vpc-connect"
}
}

transitGatewayState

{
"type": "string",
"enum": [
"pending",
"available",
"modifying",
"deleting",
"deleted"
],
".turbot": {
"uri": "tmod:@turbot/aws-vpc-connect#/definitions/transitGatewayState",
"modUri": "tmod:@turbot/aws-vpc-connect"
}
}

vpcAttachments

{
"type": "object",
"properties": {
"State": {
"$ref": "#/definitions/vpcAttachmentState"
},
"VpcId": {
"$ref": "aws-vpc-core#/definitions/vpcId"
}
},
"tests": [
{
"description": "base case",
"input": {
"State": "attaching",
"VpcId": "vpc-a01106c2"
}
}
],
".turbot": {
"uri": "tmod:@turbot/aws-vpc-connect#/definitions/vpcAttachments",
"modUri": "tmod:@turbot/aws-vpc-connect"
}
}

vpcAttachmentState

{
"type": "string",
"enum": [
"attaching",
"attached",
"detaching",
"detached"
],
"tests": [
{
"input": "attaching"
},
{
"description": "invalid - not in the list",
"input": "deleting",
"expected": false
}
],
".turbot": {
"uri": "tmod:@turbot/aws-vpc-connect#/definitions/vpcAttachmentState",
"modUri": "tmod:@turbot/aws-vpc-connect"
}
}

vpcPeeringConnection

{
"type": "object",
"properties": {
"AccepterVpcInfo": {
"$ref": "#/definitions/vpcPeeringConnectionVpcInfo"
},
"ExpirationTime": {
"$ref": "turbot#/definitions/isoTimestamp"
},
"RequesterVpcInfo": {
"$ref": "#/definitions/vpcPeeringConnectionVpcInfo"
},
"Status": {
"$ref": "#/definitions/peeringConnectionStatus"
},
"VpcPeeringConnectionId": {
"$ref": "aws-vpc-core#/definitions/vpcPeeringConnectionId"
},
"Tags": {
"$ref": "aws#/definitions/tagList"
},
"turbot": {
"type": "object",
"properties": {
"akas": {
"type": "array",
"items": {
"$ref": "#/definitions/vpcPeeringConnectionAka"
}
},
"title": {
"$ref": "aws-vpc-core#/definitions/vpcPeeringConnectionId"
},
"tags": {
"$ref": "aws#/definitions/tagsMap"
},
"custom": {
"type": "object",
"properties": {
"aws": {
"$ref": "aws#/definitions/awsMetadata"
},
"createTimestamp": {
"$ref": "turbot#/definitions/isoTimestamp"
}
}
}
}
}
},
"additionalProperties": true,
"tests": [
{
"description": "Valid - All properties",
"input": {
"VpcPeeringConnectionId": "pcx-abababab",
"AccepterVpcInfo": {
"CidrBlock": "10.0.1.0/28",
"CidrBlockSet": [
"10.0.1.0/28",
"172.16.0.0/8"
],
"OwnerId": 111122223333,
"Region": "us-east-1",
"VpcId": "vpc-1a2b3c4d",
"PeeringOptions": {
"AllowEgressFromLocalVpcToRemoteClassicLink": false,
"AllowEgressFromLocalClassicLinkToRemoteVpc": false
}
},
"ExpirationTime": "2014-04-03T09:12:43.000Z",
"Status": {
"Code": "deleted",
"Message": "Successfully Deleted"
},
"Tags": [
{
"Key": "Env",
"Value": "Test"
},
{
"Key": "App",
"Value": "Facebook"
}
],
"turbot": {
"title": "pcx-abababab",
"akas": [
"arn:aws:ec2:ap-south-1:123456789012:vpc-peering-connection/pcx-abababab"
],
"tags": {
"Env": "Test",
"App": "Facebook"
},
"custom": {
"aws": {
"accountId": 123456789012,
"regionName": "us-east-1"
}
}
}
}
},
{
"description": "invalid - Missing VpcPeeringConnectionId",
"input": {
"AccepterVpcInfo": {
"CidrBlock": "10.0.1.0/28",
"CidrBlockSet": [
"10.0.1.0/28",
"172.16.0.0/8"
],
"OwnerId": 111122223333,
"Region": "us-east-1",
"VpcId": "vpc-1a2b3c4d",
"PeeringOptions": {
"AllowEgressFromLocalVpcToRemoteClassicLink": false,
"AllowEgressFromLocalClassicLinkToRemoteVpc": false
}
},
"ExpirationTime": "2014-04-03T09:12:43.000Z",
"Status": {
"Code": "deleted",
"Message": "Successfully Deleted"
},
"Tags": [
{
"Key": "Env",
"Value": "Test"
},
{
"Key": "App",
"Value": "Facebook"
}
],
"turbot": {
"title": "pcx-abababab",
"akas": [
"arn:aws:ec2:ap-south-1:123456789012:vpc-peering-connection/pcx-abababab"
],
"tags": {
"Env": "Test",
"App": "Facebook"
},
"custom": {
"aws": {
"accountId": 123456789012,
"regionName": "us-east-1"
}
}
}
}
},
{
"description": "invalid - Missing turbot data",
"input": {
"VpcPeeringConnectionId": "pcx-abababab",
"AccepterVpcInfo": {
"CidrBlock": "10.0.1.0/28",
"CidrBlockSet": [
"10.0.1.0/28",
"172.16.0.0/8"
],
"OwnerId": 111122223333,
"Region": "us-east-1",
"VpcId": "vpc-1a2b3c4d",
"PeeringOptions": {
"AllowEgressFromLocalVpcToRemoteClassicLink": false,
"AllowEgressFromLocalClassicLinkToRemoteVpc": false
}
},
"ExpirationTime": "2014-04-03T09:12:43.000Z",
"Status": {
"Code": "deleted",
"Message": "Successfully Deleted"
},
"Tags": [
{
"Key": "Env",
"Value": "Test"
},
{
"Key": "App",
"Value": "Facebook"
}
]
}
}
],
".turbot": {
"uri": "tmod:@turbot/aws-vpc-connect#/definitions/vpcPeeringConnection",
"modUri": "tmod:@turbot/aws-vpc-connect"
}
}

vpcPeeringConnectionAka

{
"type": "string",
"pattern": "^arn:aws(-us-gov|-cn)?:ec2:[a-z]{2}(-gov)?-[a-z]+-[0-9]{1}:[0-9]{12}:vpc-peering-connection/pcx-[0-9a-f]{8}(?:[0-9a-f]{9})?$",
"test": [
{
"description": "Valid - Base case",
"input": "arn:aws:ec2:ap-south-1:123456789012:vpc-peering-connection/pcx-abababab"
},
{
"description": "Invalid - Malformed resource collection",
"input": "arn:aws:ec2:ap-south-1:123456789012:vpcs-peering-connection/pcx-abababab",
"expected": false
},
{
"description": "Invalid - Malformed region name",
"input": "arn:aws:ec2:apsouthw-1:123456789012:vpc-peering-connection/pcx-abababab",
"expected": false
}
],
".turbot": {
"uri": "tmod:@turbot/aws-vpc-connect#/definitions/vpcPeeringConnectionAka",
"modUri": "tmod:@turbot/aws-vpc-connect"
}
}

vpcPeeringConnectionOptionsDescription

{
"type": "object",
"properties": {
"AllowDnsResolutionFromRemoteVpc": {
"type": "boolean"
},
"AllowEgressFromLocalClassicLinkToRemoteVpc": {
"type": "boolean"
},
"AllowEgressFromLocalVpcToRemoteClassicLink": {
"type": "boolean"
}
},
"tests": [
{
"description": "base case",
"input": {
"AllowDnsResolutionFromRemoteVpc": false,
"AllowEgressFromLocalClassicLinkToRemoteVpc": true,
"AllowEgressFromLocalVpcToRemoteClassicLink": false
}
}
],
".turbot": {
"uri": "tmod:@turbot/aws-vpc-connect#/definitions/vpcPeeringConnectionOptionsDescription",
"modUri": "tmod:@turbot/aws-vpc-connect"
}
}

vpcPeeringConnectionStatus

{
"type": "string",
"enum": [
"initiating-request",
"pending-acceptance",
"active",
"deleted",
"rejected",
"failed",
"expired",
"provisioning",
"deleting"
],
"tests": [
{
"input": "active"
},
{
"input": "deleted"
},
{
"description": "invalid - not in the list",
"input": "hello123",
"expected": false
},
{
"description": "invalid - upper case",
"input": "ACTIVE",
"expected": false
},
{
"description": "invalid - array type provided",
"input": [
"active",
"failed"
],
"expected": false
}
],
".turbot": {
"uri": "tmod:@turbot/aws-vpc-connect#/definitions/vpcPeeringConnectionStatus",
"modUri": "tmod:@turbot/aws-vpc-connect"
}
}

vpcPeeringConnectionVpcInfo

{
"type": "object",
"properties": {
"CidrBlock": {
"$ref": "aws#/definitions/cidrBlock"
},
"CidrBlockSet": {
"type": "array",
"items": {
"CidrBlock": {
"$ref": "aws#/definitions/cidrBlock"
}
}
},
"Ipv6CidrBlockSet": {
"type": "array",
"items": {
"Ipv6CidrBlock": {
"$ref": "aws#/definitions/ipv6CidrBlock"
}
}
},
"OwnerId": {
"$ref": "aws#/definitions/accountId"
},
"PeeringOptions": {
"$ref": "#/definitions/vpcPeeringConnectionOptionsDescription"
},
"Region": {
"$ref": "aws#/definitions/regionName"
},
"VpcId": {
"$ref": "aws-vpc-core#/definitions/vpcId"
}
},
"tests": [
{
"description": "base case",
"input": {
"CidrBlock": "10.0.1.0/28",
"CidrBlockSet": [
{
"CidrBlock": "10.0.1.0/28"
}
],
"Ipv6CidrBlockSet": [
{
"Ipv6CidrBlock": "10.0.1.0/28"
}
],
"OwnerId": 111122223333,
"Region": "us-east-1",
"VpcId": "vpc-1a2b3c4d",
"PeeringOptions": {
"AllowEgressFromLocalVpcToRemoteClassicLink": false,
"AllowEgressFromLocalClassicLinkToRemoteVpc": false
}
}
}
],
".turbot": {
"uri": "tmod:@turbot/aws-vpc-connect#/definitions/vpcPeeringConnectionVpcInfo",
"modUri": "tmod:@turbot/aws-vpc-connect"
}
}

vpnConnection

{
"type": "object",
"properties": {
"VpnConnectionId": {
"$ref": "#/definitions/vpnConnectionId"
},
"State": {
"$ref": "#/definitions/state"
},
"CustomerGatewayId": {
"$ref": "aws-vpc-core#/definitions/customerGatewayId"
},
"VpnGatewayId": {
"$ref": "aws-vpc-core#/definitions/vpnGatewayId"
},
"Type": {
"$ref": "aws-vpc-core#/definitions/type"
},
"CustomerGatewayConfiguration": {
"type": "string"
},
"Category": {
"type": "string"
},
"TransitGatewayId": {
"type": "string"
},
"Options": {
"type": "object"
},
"Routes": {
"type": "array"
},
"VgwTelemetry": {
"type": "array"
},
"Tags": {
"$ref": "aws#/definitions/tagList"
},
"turbot": {
"type": "object",
"properties": {
"akas": {
"type": "array",
"items": {
"$ref": "#/definitions/vpnConnectionAka"
}
},
"title": {
"$ref": "#/definitions/vpnConnectionId"
},
"tags": {
"$ref": "aws#/definitions/tagsMap"
},
"custom": {
"type": "object",
"properties": {
"aws": {
"$ref": "aws#/definitions/awsMetadata"
},
"createTimestamp": {
"$ref": "turbot#/definitions/isoTimestamp"
}
}
}
}
}
},
"additionalProperties": true,
"tests": [
{
"description": "Valid - All properties",
"input": {
"CustomerGatewayId": "cgw-032d98340e0bfe636",
"Category": "VPN",
"State": "available",
"Type": "ipsec.1",
"VpnConnectionId": "vpn-0f2963a8cc82f4c42",
"VpnGatewayId": "vgw-0e6dbb323c545278b",
"Options": {
"StaticRoutesOnly": false
},
"Routes": [],
"Tags": [
{
"Key": "Name",
"Value": "test-1810"
}
],
"turbot": {
"title": "vpn-0f2963a8cc82f4c42",
"akas": [
"arn:aws:ec2:us-east-1:560741234067:vpn-connection/vpn-0f2963a8cc82f4c42"
],
"tags": {
"Name": "test-1810"
},
"custom": {
"aws": {
"accountId": 560741234067,
"regionName": "us-east-1"
}
}
}
}
}
],
".turbot": {
"uri": "tmod:@turbot/aws-vpc-connect#/definitions/vpnConnection",
"modUri": "tmod:@turbot/aws-vpc-connect"
}
}

vpnConnectionAka

{
"type": "string",
"pattern": "^arn:aws(-us-gov|-cn)?:ec2:[a-z]{2}(-gov)?-[a-z]+-[0-9]:[0-9]{12}:vpn-connection/vpn-[a-f0-9]{17}$",
"tests": [
{
"description": "Valid - Base case",
"input": "arn:aws:ec2:us-east-1:123456789012:vpn-connection/vpn-0dd37586ec45dfa2b"
},
{
"description": "Invalid - Malformed resource collection",
"input": "arn:aws:ec2:us-east-1:123456789012:vpn-connections/vpn-0dd37586ec45dfa2b",
"expected": false
}
],
".turbot": {
"uri": "tmod:@turbot/aws-vpc-connect#/definitions/vpnConnectionAka",
"modUri": "tmod:@turbot/aws-vpc-connect"
}
}

vpnConnectionId

{
"type": "string",
"pattern": "^vpn-[a-f0-9]{17}$",
"tests": [
{
"description": "Valid - Base case",
"input": "vpn-0dd37586ec45dfa2b"
}
],
".turbot": {
"uri": "tmod:@turbot/aws-vpc-connect#/definitions/vpnConnectionId",
"modUri": "tmod:@turbot/aws-vpc-connect"
}
}

vpnGateway

{
"type": "object",
"properties": {
"AmazonSideAsn": {
"$ref": "#/definitions/amazonSideAsn"
},
"VpcAttachments": {
"type": "array",
"items": {
"$ref": "#/definitions/vpcAttachments"
}
},
"AvailabilityZone": {
"$ref": "aws-vpc-core#/definitions/availabilityZone"
},
"State": {
"$ref": "#/definitions/vpnGatewayState"
},
"Tags": {
"$ref": "aws#/definitions/tagList"
},
"VpnGatewayId": {
"$ref": "aws-vpc-core#/definitions/vpnGatewayId"
},
"Type": {
"type": "string"
},
"turbot": {
"type": "object",
"properties": {
"akas": {
"type": "array",
"items": {
"$ref": "#/definitions/vpnGatewayAka"
}
},
"title": {
"$ref": "aws-vpc-core#/definitions/vpnGatewayId"
},
"tags": {
"$ref": "aws#/definitions/tagsMap"
},
"custom": {
"type": "object",
"properties": {
"aws": {
"$ref": "aws#/definitions/awsMetadata"
},
"createTimestamp": {
"$ref": "turbot#/definitions/isoTimestamp"
}
}
}
}
}
},
"additionalProperties": true,
"tests": [
{
"description": "Valid - All properties",
"input": {
"VpnGatewayId": "vgw-9a4cacf3",
"AmazonSideAsn": 64515,
"VpcAttachments": [
{
"State": "attached",
"VpcId": "vpc-98eb5ef5"
}
],
"AvailabilityZone": "us-east-1a",
"State": "available",
"Tags": [
{
"Key": "Env",
"Value": "Test"
},
{
"Key": "App",
"Value": "Facebook"
}
],
"turbot": {
"title": "vgw-9a4cacf3",
"akas": [
"arn:aws:ec2:us-east-1:111122223333:vpn-gateway/vgw-9a4cacf3"
],
"tags": {
"Env": "Test",
"App": "Facebook"
},
"custom": {
"aws": {
"accountId": 123456789012,
"regionName": "us-east-1"
}
}
}
}
},
{
"description": "invalid - Missing VpnGatewayId",
"input": {
"AmazonSideAsn": 64515,
"VpcAttachments": [
{
"State": "attached",
"VpcId": "vpc-98eb5ef5"
}
],
"AvailabilityZone": "us-east-1a",
"State": "available",
"Tags": [
{
"Key": "Env",
"Value": "Test"
},
{
"Key": "App",
"Value": "Facebook"
}
],
"turbot": {
"title": "vgw-9a4cacf3",
"akas": [
"arn:aws:ec2:us-east-1:111122223333:vpn-gateway/vgw-9a4cacf3"
],
"tags": {
"Env": "Test",
"App": "Facebook"
},
"custom": {
"aws": {
"accountId": 111122223333
}
}
}
}
},
{
"description": "invalid - Missing turbot data",
"input": {
"VpnGatewayId": "vgw-9a4cacf3",
"AmazonSideAsn": 64515,
"VpcAttachments": [
{
"State": "attached",
"VpcId": "vpc-98eb5ef5"
}
],
"AvailabilityZone": "us-east-1a",
"State": "available",
"Tags": [
{
"Key": "Env",
"Value": "Test"
},
{
"Key": "App",
"Value": "Facebook"
}
]
}
}
],
".turbot": {
"uri": "tmod:@turbot/aws-vpc-connect#/definitions/vpnGateway",
"modUri": "tmod:@turbot/aws-vpc-connect"
}
}

vpnGatewayAka

{
"type": "string",
"pattern": "^arn:aws(-us-gov|-cn)?:ec2:[a-z]{2}(-gov)?-[a-z]+-[0-9]:[0-9]{12}:vpn-gateway/vgw-[0-9a-f]{8}(?:[0-9a-f]{9})?$",
"tests": [
{
"description": "Valid - Base case",
"input": "arn:aws:ec2:us-east-1:111122223333:vpn-gateway/vgw-9a4cacf3"
},
{
"description": "Invalid - Malformed resource collection",
"input": "arn:aws:ec2:us-east-1:111122223333:vpn-gateways/vgw-9a4cacf3",
"expected": false
},
{
"description": "Invalid - Malformed region name",
"input": "arn:aws:ec2:use-east-1:111122223333:vpn-gateways/vgw-9a4cacf3",
"expected": false
},
{
"description": "Invalid - Malformed account ID",
"input": "arn:aws:ec2:us-east-1:111122223333hhfh:vpn-gateways/vgw-9a4cacf3",
"expected": false
}
],
".turbot": {
"uri": "tmod:@turbot/aws-vpc-connect#/definitions/vpnGatewayAka",
"modUri": "tmod:@turbot/aws-vpc-connect"
}
}

vpnGatewayState

{
"type": "string",
"enum": [
"pending",
"available",
"deleting",
"deleted"
],
"tests": [
{
"input": "pending"
},
{
"input": "deleted"
}
],
".turbot": {
"uri": "tmod:@turbot/aws-vpc-connect#/definitions/vpnGatewayState",
"modUri": "tmod:@turbot/aws-vpc-connect"
}
}