Definitions for @turbot/aws-vpc-core

associationId

{
"type": "string",
"pattern": "^vpc-cidr-assoc-[0-9a-f]{8}(?:[0-9a-f]{9})?$",
"tests": [
{
"input": "vpc-cidr-assoc-dbd28eb3"
},
{
"input": "vpc-cidr-assoc-0c3e2130d180c9962"
},
{
"description": "invalid - characters allowed from a to f only",
"input": "vpc-cidr-assoc-42d6132bz",
"expected": false
},
{
"description": "invalid - should always start with vpc-cidr-assoc",
"input": "id-b61106d4",
"expected": false
}
],
".turbot": {
"uri": "tmod:@turbot/aws-vpc-core#/definitions/associationId",
"modUri": "tmod:@turbot/aws-vpc-core"
}
}

AttributeType

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

AttributeValue

{
"type": "object",
"properties": {
"Value": {
"$ref": "#/definitions/AttributeType"
}
},
".turbot": {
"uri": "tmod:@turbot/aws-vpc-core#/definitions/AttributeValue",
"modUri": "tmod:@turbot/aws-vpc-core"
}
}

availabilityZone

{
"type": "string",
"tests": [
{
"input": "eu-central-1a"
},
{
"input": "us-east-2c"
}
],
".turbot": {
"uri": "tmod:@turbot/aws-vpc-core#/definitions/availabilityZone",
"modUri": "tmod:@turbot/aws-vpc-core"
}
}

availableIpAddressCount

{
"type": "integer",
"minimum": 0,
"maximum": 16777216,
"tests": [
{
"input": 1
},
{
"description": "invalid - higher than max value",
"input": 16777217,
"expected": false
},
{
"description": "invalid - empty string",
"input": "",
"expected": false
},
{
"input": null
},
{
"description": "invalid - lower than the minimum",
"input": -2,
"expected": false
}
],
".turbot": {
"uri": "tmod:@turbot/aws-vpc-core#/definitions/availableIpAddressCount",
"modUri": "tmod:@turbot/aws-vpc-core"
}
}

availableState

{
"type": "string",
"enum": [
"pending",
"available"
],
"tests": [
{
"input": "pending"
},
{
"input": "available"
},
{
"description": "invalid - not in the list",
"input": "hello123",
"expected": false
},
{
"description": "invalid - upper case",
"input": "PENDING",
"expected": false
},
{
"description": "invalid - array type provided",
"input": [
"pending",
"available"
],
"expected": false
}
],
".turbot": {
"uri": "tmod:@turbot/aws-vpc-core#/definitions/availableState",
"modUri": "tmod:@turbot/aws-vpc-core"
}
}

baseString

{
"type": "string",
"tests": [
{
"input": "test"
},
{
"input": "foo.bar.baz"
},
{
"input": 111111111
},
{
"input": "00123"
},
{
"input": "ab@cde"
},
{
"input": "Test.The-KitchenSink"
},
{
"description": "empty string",
"input": ""
},
{
"description": "null value",
"input": null
}
],
".turbot": {
"uri": "tmod:@turbot/aws-vpc-core#/definitions/baseString",
"modUri": "tmod:@turbot/aws-vpc-core"
}
}

cidrBlockState

{
"type": "object",
"properties": {
"state": {
"$ref": "#/definitions/cidrState"
}
},
"tests": [
{
"description": "base case",
"input": {
"state": "associating"
}
}
],
".turbot": {
"uri": "tmod:@turbot/aws-vpc-core#/definitions/cidrBlockState",
"modUri": "tmod:@turbot/aws-vpc-core"
}
}

cidrState

{
"type": "string",
"enum": [
"associating",
"associated",
"disassociating",
"disassociated",
"failing",
"failed"
],
"tests": [
{
"input": "failed"
},
{
"input": "failing"
},
{
"description": "invalid - not in the list",
"input": "hello123",
"expected": false
},
{
"description": "invalid - upper case",
"input": "ASSOCIATED",
"expected": false
},
{
"description": "invalid - array type provided",
"input": [
"associating",
"associated"
],
"expected": false
}
],
".turbot": {
"uri": "tmod:@turbot/aws-vpc-core#/definitions/cidrState",
"modUri": "tmod:@turbot/aws-vpc-core"
}
}

customerGatewayId

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

DhcpConfiguration

{
"type": "object",
"properties": {
"Key": {
"type": "string"
},
"Values": {
"$ref": "#/definitions/DhcpConfigurationValueList"
}
},
".turbot": {
"uri": "tmod:@turbot/aws-vpc-core#/definitions/DhcpConfiguration",
"modUri": "tmod:@turbot/aws-vpc-core"
}
}

DhcpConfigurationList

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

DhcpConfigurationValueList

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

dhcpOptions

{
"type": "object",
"properties": {
"DhcpOptionsId": {
"$ref": "#/definitions/dhcpOptionsId"
},
"DhcpConfigurations": {
"$ref": "#/definitions/DhcpConfigurationList"
},
"OwnerId": {
"type": "string"
},
"Tags": {
"type": "array",
"items": {
"$ref": "#/definitions/dhcpTags"
}
},
"turbot": {
"type": "object",
"properties": {
"akas": {
"type": "array",
"items": {
"$ref": "#/definitions/dhcpOptionsIdArn"
}
},
"title": {
"$ref": "#/definitions/dhcpOptionsId"
},
"tags": {
"$ref": "aws#/definitions/tagsMap"
},
"custom": {
"type": "object",
"properties": {
"aws": {
"$ref": "aws#/definitions/awsMetadata"
},
"createTimestamp": {
"$ref": "turbot#/definitions/isoTimestamp"
}
}
}
}
}
},
"tests": [
{
"description": "base case",
"input": {
"DhcpOptionsId": "dopt-7a8b9c2d",
"turbot": {
"akas": [
"arn:aws:ec2:us-east-1:123456789012:dhcp-options/dopt-a9237aaa"
],
"title": "dopt-7a8b9c2d",
"tags": {
"MYDHCP": "bar",
"MYDHCP2": "bar2"
},
"custom": {
"aws": {
"accountId": 123456789012,
"regionName": "us-east-1",
"partition": "aws"
},
"createTimestamp": "2019-03-10T05:15:21.493Z"
}
}
}
}
],
".turbot": {
"uri": "tmod:@turbot/aws-vpc-core#/definitions/dhcpOptions",
"modUri": "tmod:@turbot/aws-vpc-core"
}
}

dhcpOptionsId

{
"type": "string",
"pattern": "^dopt-[0-9a-f]{8}(?:[0-9a-f]{9})?$",
"tests": [
{
"input": "dopt-7a8b9c2d"
},
{
"input": "dopt-031e50a9a62a70e91"
},
{
"description": "invalid - characters allowed from a to f only",
"input": "dopt-7a8b9c2z",
"expected": false
},
{
"description": "invalid - should always start with dopt",
"input": "id-b61106d4",
"expected": false
}
],
".turbot": {
"uri": "tmod:@turbot/aws-vpc-core#/definitions/dhcpOptionsId",
"modUri": "tmod:@turbot/aws-vpc-core"
}
}

dhcpOptionsIdArn

{
"type": "string",
"pattern": "^arn:aws(-us-gov|-cn)?:ec2:[a-z]{2}(-gov)?-[a-z]+-[0-9]{1}:[0-9]{12}:dhcp-options/dopt-[0-9a-f]{8}(?:[0-9a-f]{9})?$",
"tests": [
{
"input": "arn:aws:ec2:us-east-1:123456789012:dhcp-options/dopt-a9237aaa"
},
{
"description": "invalid - wrong account id provided",
"input": "arn:aws:ec2:us-east-1:12356789012:dhcp-options/dopt-a9237aaa",
"expected": false
},
{
"description": "invalid - too short dhcp options id",
"input": "arn:aws:ec2:us-east-1:123456789012:dhcp-options/dopt-a923",
"expected": false
}
],
".turbot": {
"uri": "tmod:@turbot/aws-vpc-core#/definitions/dhcpOptionsIdArn",
"modUri": "tmod:@turbot/aws-vpc-core"
}
}

dhcpTags

{
"type": "object",
"properties": {
"Key": {
"type": "string"
},
"Value": {
"type": "string"
}
},
".turbot": {
"uri": "tmod:@turbot/aws-vpc-core#/definitions/dhcpTags",
"modUri": "tmod:@turbot/aws-vpc-core"
}
}

egressOnlyIGId

{
"type": "string",
"pattern": "^eigw-[0-9a-f]{8}(?:[0-9a-f]{9})?$",
"tests": [
{
"input": "eigw-0f89a33420c1931d7"
},
{
"input": "eigw-032a826a"
},
{
"description": "invalid - should always start with eigw",
"input": "id-b61106d4",
"expected": false
},
{
"description": "invalid - too short",
"input": "eigw-63a540",
"expected": false
},
{
"description": "invalid - too long",
"input": "eigw-63a5400a63a5400a63a5400a",
"expected": false
}
],
".turbot": {
"uri": "tmod:@turbot/aws-vpc-core#/definitions/egressOnlyIGId",
"modUri": "tmod:@turbot/aws-vpc-core"
}
}

fromPort

{
"type": "integer",
".turbot": {
"uri": "tmod:@turbot/aws-vpc-core#/definitions/fromPort",
"modUri": "tmod:@turbot/aws-vpc-core"
}
}

genericBoolean

{
"type": "boolean",
"tests": [
{
"input": true
},
{
"input": false
},
{
"description": "null value",
"input": null
},
{
"description": "invalid - empty string",
"input": "",
"expected": false
},
{
"description": "invalid - array type",
"input": [
true,
false
],
"expected": false
}
],
".turbot": {
"uri": "tmod:@turbot/aws-vpc-core#/definitions/genericBoolean",
"modUri": "tmod:@turbot/aws-vpc-core"
}
}

instanceTenancy

{
"type": "string",
"enum": [
"default",
"dedicated",
"host"
],
"tests": [
{
"input": "default"
},
{
"input": "host"
},
{
"description": "invalid - not in the list",
"input": "hello123",
"expected": false
},
{
"description": "invalid - upper case",
"input": "HOST",
"expected": false
},
{
"description": "invalid - array type provided",
"input": [
"default",
"host"
],
"expected": false
}
],
".turbot": {
"uri": "tmod:@turbot/aws-vpc-core#/definitions/instanceTenancy",
"modUri": "tmod:@turbot/aws-vpc-core"
}
}

natGatewayId

{
"type": "string",
"pattern": "^nat-[0-9a-f]{8}(?:[0-9a-f]{9})?$",
"tests": [
{
"input": "nat-1f382e7d"
},
{
"input": "nat-05dba92075d71c408"
},
{
"description": "invalid - characters allowed from a to f only",
"input": "nat-b611064z",
"expected": false
},
{
"description": "invalid - should always start with nat",
"input": "id-b61106d4",
"expected": false
}
],
".turbot": {
"uri": "tmod:@turbot/aws-vpc-core#/definitions/natGatewayId",
"modUri": "tmod:@turbot/aws-vpc-core"
}
}

networkInterfaceId

{
"type": "string",
"pattern": "^eni-[0-9a-f]{8}(?:[0-9a-f]{9})?$",
"tests": [
{
"input": "eni-e5aa89a3"
},
{
"input": "eni-f9ba99bf75d71c408"
},
{
"description": "invalid - characters allowed from a to f only",
"input": "eni-b611064z",
"expected": false
},
{
"description": "invalid - should always start with eni",
"input": "id-b61106d4",
"expected": false
}
],
".turbot": {
"uri": "tmod:@turbot/aws-vpc-core#/definitions/networkInterfaceId",
"modUri": "tmod:@turbot/aws-vpc-core"
}
}

origin

{
"type": "string",
"enum": [
"CreateRouteTable",
"CreateRoute",
"EnableVgwRoutePropagation"
],
"tests": [
{
"input": "CreateRoute"
},
{
"description": "invalid - not in the list",
"input": "hello123",
"expected": false
},
{
"description": "invalid - upper case",
"input": "CREATEROUTE",
"expected": false
},
{
"description": "invalid - array type provided",
"input": [
"CreateRouteTable",
"CreateRoute"
],
"expected": false
}
],
".turbot": {
"uri": "tmod:@turbot/aws-vpc-core#/definitions/origin",
"modUri": "tmod:@turbot/aws-vpc-core"
}
}

propagatingVgwSet

{
"type": "object",
"properties": {
"GatewayId": {
"$ref": "#/definitions/virtualGatewayId"
}
},
"tests": [
{
"description": "base case",
"input": {
"GatewayId": "vgw-f211f09b"
}
}
],
".turbot": {
"uri": "tmod:@turbot/aws-vpc-core#/definitions/propagatingVgwSet",
"modUri": "tmod:@turbot/aws-vpc-core"
}
}

route

{
"type": "object",
"properties": {
"RouteTableId": {
"$ref": "#/definitions/routeTableId"
},
"DestinationCidrBlock": {
"oneOf": [
{
"type": "null"
},
{
"$ref": "aws#/definitions/cidrBlock"
}
]
},
"DestinationIpv6CidrBlock": {
"oneOf": [
{
"type": "null"
},
{
"$ref": "aws#/definitions/ipv6CidrBlock"
}
]
},
"EgressOnlyInternetGatewayId": {
"oneOf": [
{
"type": "null"
},
{
"$ref": "#/definitions/egressOnlyIGId"
}
]
},
"GatewayId": {
"oneOf": [
{
"type": "null"
},
{
"$ref": "#/definitions/baseString"
}
]
},
"InstanceId": {
"oneOf": [
{
"type": "null"
},
{
"$ref": "aws-ec2#/definitions/instanceId"
}
]
},
"NatGatewayId": {
"oneOf": [
{
"type": "null"
},
{
"$ref": "#/definitions/natGatewayId"
}
]
},
"NetworkInterfaceId": {
"oneOf": [
{
"type": "null"
},
{
"$ref": "#/definitions/networkInterfaceId"
}
]
},
"TransitGatewayId": {
"oneOf": [
{
"type": "null"
},
{
"$ref": "#/definitions/vpcPeeringConnectionId"
}
]
},
"VpcPeeringConnectionId": {
"oneOf": [
{
"type": "null"
},
{
"$ref": "#/definitions/vpcPeeringConnectionId"
}
]
},
"Origin": {
"oneOf": [
{
"type": "null"
},
{
"$ref": "#/definitions/origin"
}
]
},
"State": {
"oneOf": [
{
"type": "null"
},
{
"$ref": "#/definitions/routeSetState"
}
]
},
"turbot": {
"type": "object",
"properties": {
"akas": {
"type": "array",
"items": {
"$ref": "#/definitions/routeAka"
}
},
"title": {
"type": "string"
},
"metadata": {
"type": "object",
"properties": {
"aws": {
"$ref": "aws#/definitions/awsMetadata"
},
"createTimestamp": {
"$ref": "turbot#/definitions/isoTimestamp"
}
}
}
}
}
},
"additionalProperties": true,
"tests": [
{
"description": "base case",
"input": {
"RouteTableId": "rtb-0a59c28f047dba02f",
"DestinationCidrBlock": "172.30.0.0/16",
"GatewayId": "igw-0f210095e0e0c53a3",
"Origin": "CreateRouteTable",
"State": "active",
"turbot": {
"akas": [
"arn:aws:ec2:us-east-1:123456789012:route-table/rtb-0a59c28f047dba02f:172.30.0.0/16\""
],
"custom": {
"aws": {
"accountId": 123456789012,
"regionName": "us-east-1"
}
}
}
}
},
{
"description": "invalid - missing required routetableid",
"input": {
"DestinationCidrBlock": "172.30.0.0/16",
"GatewayId": "igw-0f210095e0e0c53a3",
"Origin": "CreateRouteTable",
"State": "active",
"turbot": {
"akas": [
"arn:aws:ec2:ap-south-1:123456789012:route-table/rtb-0a59c28f047dba02f:igw-0f210095e0e0c53a3_172.30.0.016"
],
"tags": {
"Env": "Test",
"App": "Turbot"
},
"metadata": {
"aws": {
"accountId": 123456789012,
"regionName": "us-east-1"
}
}
}
},
"expected": false
}
],
".turbot": {
"uri": "tmod:@turbot/aws-vpc-core#/definitions/route",
"modUri": "tmod:@turbot/aws-vpc-core"
}
}

routeAka

{
"type": "string",
"pattern": "^arn:aws(-us-gov|-cn)?:ec2:[a-z]{2}((-gov)|(-iso(b?)))?-[a-z]+-[0-9]{1}:[0-9]{12}:route-table/rtb-[0-9a-f]{8}(?:[0-9a-f]{9})?:[/a-z0-9.]+$",
"test": [
{
"description": "Valid - Base case ipv4",
"input": "arn:aws:ec2:ap-south-1:123456789012:route-table/rtb-ca5becb5:172.30.0.0/16"
},
{
"description": "Valid - Base case ipv6",
"input": "arn:aws:ec2:ap-south-1:123456789012:route-table/rtb-ca5becb5:172.20.0.0/16"
},
{
"description": "Invalid - Malformed resource collection",
"input": "arn:aws:ec2:ap-south-1:123456789012:routeTable/rtb-ca5becb5",
"expected": false
},
{
"description": "Invalid - Malformed region name",
"input": "arn:aws:ec2:asouth-1:123456789012:route-table/rtb-ca5becb5",
"expected": false
}
],
".turbot": {
"uri": "tmod:@turbot/aws-vpc-core#/definitions/routeAka",
"modUri": "tmod:@turbot/aws-vpc-core"
}
}

routeSet

{
"type": "object",
"properties": {
"DestinationCidrBlock": {
"$ref": "aws#/definitions/cidrBlock"
},
"DestinationIpv6CidrBlock": {
"$ref": "aws#/definitions/ipv6CidrBlock"
},
"EgressOnlyInternetGatewayId": {
"$ref": "#/definitions/egressOnlyIGId"
},
"GatewayId": {
"$ref": "#/definitions/baseString"
},
"InstanceId": {
"$ref": "aws-ec2#/definitions/instanceId"
},
"InstanceOwnerId": {
"$ref": "aws#/definitions/accountId"
},
"NatGatewayId": {
"$ref": "#/definitions/natGatewayId"
},
"NetworkInterfaceId": {
"$ref": "#/definitions/networkInterfaceId"
},
"Origin": {
"$ref": "#/definitions/origin"
},
"State": {
"$ref": "#/definitions/routeSetState"
},
"VpcPeeringConnectionId": {
"$ref": "#/definitions/vpcPeeringConnectionId"
}
},
"tests": [
{
"description": "base case",
"input": {
"DestinationCidrBlock": "172.31.0.0/16",
"DestinationIpv6CidrBlock": "2600:1f18:2368:f300::/56",
"GatewayId": "local",
"InstanceId": "i-1234567890abcdef0",
"InstanceOwnerId": 123456789012,
"NatGatewayId": "nat-22574640",
"NetworkInterfaceId": "eni-f9ba99bf",
"Origin": "CreateRoute",
"State": "active",
"VpcPeeringConnectionId": "pcx-111aaa22"
}
}
],
".turbot": {
"uri": "tmod:@turbot/aws-vpc-core#/definitions/routeSet",
"modUri": "tmod:@turbot/aws-vpc-core"
}
}

routeSetState

{
"type": "string",
"enum": [
"active",
"blackhole"
],
"tests": [
{
"input": "active"
},
{
"input": "blackhole"
},
{
"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",
"blackhole"
],
"expected": false
}
],
".turbot": {
"uri": "tmod:@turbot/aws-vpc-core#/definitions/routeSetState",
"modUri": "tmod:@turbot/aws-vpc-core"
}
}

routeTable

{
"type": "object",
"properties": {
"Associations": {
"type": "array",
"items": {
"$ref": "#/definitions/routeTableAssociationSet"
}
},
"PropagatingVgws": {
"type": "array",
"items": {
"$ref": "#/definitions/propagatingVgwSet"
}
},
"Routes": {
"type": "array",
"items": {
"$ref": "#/definitions/routeSet"
}
},
"RouteTableId": {
"$ref": "#/definitions/routeTableId"
},
"Tags": {
"$ref": "#/definitions/tagList"
},
"VpcId": {
"$ref": "#/definitions/vpcId"
},
"OwnerId": {
"type": "string"
},
"turbot": {
"type": "object",
"properties": {
"akas": {
"type": "array",
"items": {
"$ref": "#/definitions/routeTableAka"
}
},
"title": {
"$ref": "#/definitions/routeTableId"
},
"tags": {
"$ref": "#/definitions/tagsMap"
},
"metadata": {
"type": "object",
"properties": {
"aws": {
"$ref": "aws#/definitions/awsMetadata"
},
"createTimestamp": {
"$ref": "turbot#/definitions/isoTimestamp"
}
}
}
}
}
},
"tests": [
{
"description": "base case",
"input": {
"RouteTableId": "rtb-ca5becb5",
"Associations": [
{
"Main": true,
"RouteTableAssociationId": "rtbassoc-9b4985e5",
"RouteTableId": "rtb-ca5becb5"
}
],
"PropagatingVgws": [],
"Routes": [
{
"DestinationCidrBlock": "172.31.0.0/16",
"GatewayId": "local",
"Origin": "CreateRouteTable",
"State": "active"
},
{
"DestinationCidrBlock": "0.0.0.0/0",
"GatewayId": "igw-b394bdcb",
"Origin": "CreateRoute",
"State": "blackhole"
},
{
"DestinationIpv6CidrBlock": "2600:1f18:2368:f300::/56",
"GatewayId": "local",
"Origin": "CreateRouteTable",
"State": "blackhole"
}
],
"Tags": [
{
"Key": "Env",
"Value": "Test"
},
{
"Key": "App",
"Value": "Turbot"
}
],
"turbot": {
"akas": [
"arn:aws:ec2:ap-south-1:123456789012:route-table/rtb-ca5becb5"
],
"tags": {
"Env": "Test",
"App": "Turbot"
},
"custom": {
"aws": {
"accountId": 123456789012,
"regionName": "us-east-1"
}
}
}
}
},
{
"description": "invalid - missing required turbot data",
"input": {
"RouteTableId": "rtb-ca5becb5",
"title": "rtb-ca5becb5",
"VpcId": "vpc-27eb185d",
"Tags": [
{
"Key": "Env",
"Value": "Test"
},
{
"Key": "App",
"Value": "Turbot"
}
],
"tagsMap": {
"Env": "Test",
"App": "Turbot"
}
}
},
{
"description": "invalid - missing required routetableid",
"input": {
"title": "rtb-ca5becb5",
"VpcId": "vpc-27eb185d",
"Tags": [
{
"Key": "Env",
"Value": "Test"
},
{
"Key": "App",
"Value": "Turbot"
}
],
"tagsMap": {
"Env": "Test",
"App": "Turbot"
},
"turbot": {
"akas": [
"arn:aws:ec2:ap-south-1:123456789012:route-table/rtb-ca5becb5"
],
"tags": {
"Env": "Test",
"App": "Turbot"
},
"custom": {
"aws": {
"accountId": 123456789012,
"regionName": "us-east-1"
}
}
}
}
}
],
".turbot": {
"uri": "tmod:@turbot/aws-vpc-core#/definitions/routeTable",
"modUri": "tmod:@turbot/aws-vpc-core"
}
}

routeTableAka

{
"type": "string",
"pattern": "^arn:aws(-us-gov|-cn)?:ec2:[a-z]{2}((-gov)|(-iso(b?)))?-[a-z]+-[0-9]{1}:[0-9]{12}:route-table/rtb-[0-9a-f]{8}(?:[0-9a-f]{9})?$",
"test": [
{
"description": "Valid - Base case",
"input": "arn:aws:ec2:ap-south-1:123456789012:route-table/rtb-ca5becb5"
},
{
"description": "Invalid - Malformed resource collection",
"input": "arn:aws:ec2:ap-south-1:123456789012:routeTable/rtb-ca5becb5",
"expected": false
},
{
"description": "Invalid - Malformed region name",
"input": "arn:aws:ec2:asouth-1:123456789012:route-table/rtb-ca5becb5",
"expected": false
}
],
".turbot": {
"uri": "tmod:@turbot/aws-vpc-core#/definitions/routeTableAka",
"modUri": "tmod:@turbot/aws-vpc-core"
}
}

routeTableAssociationId

{
"type": "string",
"pattern": "^rtbassoc-[0-9a-f]{8}(?:[0-9a-f]{9})?$",
"tests": [
{
"input": "rtbassoc-1f382e7d"
},
{
"input": "rtbassoc-00c1130ca50e94283"
},
{
"description": "invalid - characters allowed from a to f only",
"input": "rtbassoc-b611064z",
"expected": false
},
{
"description": "invalid - should always start with rtbassoc",
"input": "id-b61106d4",
"expected": false
}
],
".turbot": {
"uri": "tmod:@turbot/aws-vpc-core#/definitions/routeTableAssociationId",
"modUri": "tmod:@turbot/aws-vpc-core"
}
}

routeTableAssociationSet

{
"type": "object",
"properties": {
"Main": {
"$ref": "#/definitions/genericBoolean"
},
"RouteTableAssociationId": {
"$ref": "#/definitions/routeTableAssociationId"
},
"RouteTableId": {
"$ref": "#/definitions/routeTableId"
},
"SubnetId": {
"$ref": "#/definitions/subnetId"
}
},
"tests": [
{
"description": "base case",
"input": {
"Main": true,
"RouteTableAssociationId": "rtbassoc-91fbacf5",
"RouteTableId": "rtb-1a459c7e",
"SubnetId": "subnet-b61f49f0"
}
}
],
".turbot": {
"uri": "tmod:@turbot/aws-vpc-core#/definitions/routeTableAssociationSet",
"modUri": "tmod:@turbot/aws-vpc-core"
}
}

routeTableId

{
"type": "string",
"pattern": "^rtb-[0-9a-f]{8}(?:[0-9a-f]{9})?$",
"tests": [
{
"input": "rtb-1f382e7d"
},
{
"input": "rtb-0ad0275d05f6020ef"
},
{
"description": "invalid - characters allowed from a to f only",
"input": "rtb-b611064z",
"expected": false
},
{
"description": "invalid - should always start with rtb",
"input": "id-b61106d4",
"expected": false
}
],
".turbot": {
"uri": "tmod:@turbot/aws-vpc-core#/definitions/routeTableId",
"modUri": "tmod:@turbot/aws-vpc-core"
}
}

routeTableServiceNow

{
"defaultColumns": {
"account_id": {
"column": "enabled",
"path": "metadata.aws.accountId",
"label": "Account ID"
},
"arn": {
"column": "enabled",
"path": "turbot.akas[0]",
"label": "ARN"
},
"associations": {
"column": "enabled",
"label": "Associations",
"type": "string",
"size": 1000
},
"owner_id": {
"column": "enabled",
"label": "Owner ID"
},
"propagating_vgws": {
"column": "enabled",
"label": "Propagating VGWs",
"type": "string",
"size": 1000
},
"region": {
"column": "enabled",
"path": "metadata.aws.regionName",
"label": "Region"
},
"route_table_id": {
"column": "enabled",
"label": "Route Table ID"
},
"routes": {
"column": "enabled",
"label": "Routes",
"type": "string",
"size": 1000
},
"tags": {
"column": "enabled",
"label": "Tags",
"type": "string",
"size": 1000
},
"title": {
"column": "enabled",
"path": "turbot.title",
"label": "Title"
},
"vpc_id": {
"column": "enabled",
"label": "VPC ID"
}
},
".turbot": {
"uri": "tmod:@turbot/aws-vpc-core#/definitions/routeTableServiceNow",
"modUri": "tmod:@turbot/aws-vpc-core"
}
}

securityGroupId

{
"type": "string",
"pattern": "^sg-[0-9a-f]{8}(?:[0-9a-f]{9})?$",
"tests": [
{
"input": "sg-cc7a7387"
},
{
"input": "sg-094881c6fa6cea7dc"
},
{
"description": "invalid - characters allowed from a to f only",
"input": "sg-094881c6fa6cea7dz",
"expected": false
},
{
"description": "invalid - should always start with sg",
"input": "id-b61106d4",
"expected": false
}
],
".turbot": {
"uri": "tmod:@turbot/aws-vpc-core#/definitions/securityGroupId",
"modUri": "tmod:@turbot/aws-vpc-core"
}
}

subnet

{
"type": "object",
"properties": {
"AssignIpv6AddressOnCreation": {
"type": "boolean"
},
"AvailabilityZoneId": {
"type": "string"
},
"AvailabilityZone": {
"$ref": "#/definitions/availabilityZone"
},
"AvailableIpAddressCount": {
"$ref": "#/definitions/availableIpAddressCount"
},
"CidrBlock": {
"$ref": "aws#/definitions/cidrBlock"
},
"DefaultForAz": {
"type": "boolean"
},
"Ipv6CidrBlockAssociationSet": {
"type": "array",
"items": {
"$ref": "#/definitions/vpcIpv6CidrBlockAssociationSet"
}
},
"MapPublicIpOnLaunch": {
"type": "boolean"
},
"State": {
"$ref": "#/definitions/availableState"
},
"SubnetId": {
"$ref": "#/definitions/subnetId"
},
"SubnetArn": {
"$ref": "#/definitions/subnetAka"
},
"Tags": {
"$ref": "aws#/definitions/tagList"
},
"VpcId": {
"$ref": "#/definitions/vpcId"
},
"OwnerId": {
"type": "string"
},
"OutpostArn": {
"type": "string"
},
"turbot": {
"type": "object",
"properties": {
"akas": {
"type": "array",
"items": {
"$ref": "#/definitions/subnetAka"
}
},
"title": {
"$ref": "#/definitions/subnetId"
},
"tags": {
"$ref": "#/definitions/tagsMap"
},
"custom": {
"type": "object",
"properties": {
"aws": {
"$ref": "aws#/definitions/awsMetadata"
},
"createTimestamp": {
"$ref": "turbot#/definitions/isoTimestamp"
}
}
}
}
}
},
"additionalProperties": true,
"tests": [
{
"description": "Valid - All properties",
"input": {
"SubnetId": "subnet-61f88a2b",
"AssignIpv6AddressOnCreation": false,
"AvailabilityZone": "us-east-1b",
"AvailableIpAddressCount": 4091,
"CidrBlock": "172.31.32.0/20",
"DefaultForAz": true,
"Ipv6CidrBlockAssociationSet": [],
"MapPublicIpOnLaunch": true,
"SubnetArn": "arn:aws:ec2:us-east-1:111122223333:subnet/subnet-61f88a2b",
"State": "available",
"Tags": [
{
"Key": "Env",
"Value": "Test"
},
{
"Key": "App",
"Value": "turbot"
}
],
"VpcId": "vpc-27eb185d",
"turbot": {
"akas": [
"arn:aws:ec2:us-east-1:111122223333:subnet/subnet-61f88a2b"
],
"tags": {
"Env": "Test",
"App": "Facebook"
},
"custom": {
"aws": {
"accountId": 123456789012,
"regionName": "us-east-1"
}
}
}
}
},
{
"description": "Invalid - missing subnetId",
"input": {
"AssignIpv6AddressOnCreation": false,
"AvailabilityZone": "us-east-1b",
"AvailableIpAddressCount": 4091,
"CidrBlock": "172.31.32.0/20",
"DefaultForAz": true,
"Ipv6CidrBlockAssociationSet": [],
"MapPublicIpOnLaunch": true,
"State": "available",
"Tags": [
{
"Key": "Env",
"Value": "Test"
},
{
"Key": "App",
"Value": "turbot"
}
],
"VpcId": "vpc-27eb185d",
"turbot": {
"akas": [
"arn:aws:ec2:us-east-1:111122223333:subnet/subnet-61f88a2b"
],
"tags": {
"Env": "Test",
"App": "Facebook"
},
"custom": {
"aws": {
"accountId": 123456789012,
"regionName": "us-east-1"
}
}
}
}
},
{
"description": "Invalid - missing vpcid",
"input": {
"SubnetId": "subnet-61f88a2b",
"AssignIpv6AddressOnCreation": false,
"AvailabilityZone": "us-east-1b",
"AvailableIpAddressCount": 4091,
"CidrBlock": "172.31.32.0/20",
"DefaultForAz": true,
"Ipv6CidrBlockAssociationSet": [],
"MapPublicIpOnLaunch": true,
"State": "available",
"Tags": [
{
"Key": "Env",
"Value": "Test"
},
{
"Key": "App",
"Value": "turbot"
}
],
"turbot": {
"akas": [
"arn:aws:ec2:us-east-1:111122223333:subnet/subnet-61f88a2b"
],
"tags": {
"Env": "Test",
"App": "Facebook"
},
"custom": {
"aws": {
"accountId": 123456789012,
"regionName": "us-east-1"
}
}
}
}
}
],
".turbot": {
"uri": "tmod:@turbot/aws-vpc-core#/definitions/subnet",
"modUri": "tmod:@turbot/aws-vpc-core"
}
}

subnetAka

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

subnetId

{
"type": "string",
"pattern": "^subnet-[0-9a-f]{8}(?:[0-9a-f]{9})?$",
"tests": [
{
"input": "subnet-4204d234"
},
{
"input": "subnet-00c1130ca50e94283"
},
{
"description": "invalid - characters allowed from a to f only",
"input": "subnet-b611064z",
"expected": false
},
{
"description": "invalid - should always start with subnet",
"input": "id-b61106d4",
"expected": false
}
],
".turbot": {
"uri": "tmod:@turbot/aws-vpc-core#/definitions/subnetId",
"modUri": "tmod:@turbot/aws-vpc-core"
}
}

subnetServiceNow

{
"defaultColumns": {
"account_id": {
"column": "enabled",
"label": "Account ID",
"path": "metadata.aws.accountId"
},
"assign_ipv6_address_on_creation": {
"column": "enabled",
"label": "Assign Ipv6 Address On Creation",
"type": "boolean"
},
"availability_zone": {
"column": "enabled",
"label": "Availability Zone"
},
"availability_zone_id": {
"column": "enabled",
"label": "Availability Zone ID"
},
"available_ip_address_count": {
"column": "enabled",
"label": "Available IP Address Count"
},
"cidr_block": {
"column": "enabled",
"label": "CIDR Block"
},
"default_for_az": {
"column": "enabled",
"label": "Default For AZ",
"type": "boolean"
},
"ipv6_cidr_block_association_set": {
"column": "enabled",
"label": "Ipv6 CIDR Block Association Set",
"type": "string",
"size": 1000
},
"map_customer_owned_ip_on_launch": {
"column": "enabled",
"label": "Map Customer Owned IP On Launch",
"type": "boolean"
},
"map_public_ip_on_launch": {
"column": "enabled",
"label": "Map Public IP On Launch",
"type": "boolean"
},
"owner_id": {
"column": "enabled",
"label": "Owner ID"
},
"region": {
"column": "enabled",
"path": "metadata.aws.regionName",
"label": "Region"
},
"state": {
"column": "enabled",
"label": "State"
},
"subnet_arn": {
"column": "enabled",
"label": "Subnet ARN"
},
"subnet_id": {
"column": "enabled",
"label": "Subnet ID"
},
"tags": {
"column": "enabled",
"label": "Tags",
"type": "string",
"size": 1000
},
"title": {
"column": "enabled",
"label": "Title",
"path": "turbot.title"
},
"vpc_id": {
"column": "enabled",
"label": "VPC ID"
}
},
".turbot": {
"uri": "tmod:@turbot/aws-vpc-core#/definitions/subnetServiceNow",
"modUri": "tmod:@turbot/aws-vpc-core"
}
}

tag

{
"type": "object",
"properties": {
"Key": {
"$ref": "#/definitions/tagKey"
},
"Value": {
"$ref": "#/definitions/tagValue"
}
},
"required": [
"Key",
"Value"
],
"tests": [
{
"description": "valid - base case",
"input": {
"Key": "foo",
"Value": "bar"
}
},
{
"description": "invalid - empty key",
"input": {
"Key": "",
"Value": "bar"
},
"expected": false
},
{
"description": "invalid - no key",
"input": {
"Value": "bar"
},
"expected": false
},
{
"description": "invalid - no value",
"input": {
"Key": "foo"
},
"expected": false
}
],
".turbot": {
"uri": "tmod:@turbot/aws-vpc-core#/definitions/tag",
"modUri": "tmod:@turbot/aws-vpc-core"
}
}

tagKey

{
"allOf": [
{
"$ref": "#/definitions/tagString"
},
{
"type": "string",
"minLength": 1,
"maxLength": 127
}
],
"tests": [
{
"description": "valid - min length",
"input": "a"
},
{
"description": "valid - max length",
"input": "123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 1234567"
},
{
"description": "invalid - empty string",
"input": "",
"expected": false
},
{
"description": "invalid - too long",
"input": "123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 12345678",
"expected": false
}
],
".turbot": {
"uri": "tmod:@turbot/aws-vpc-core#/definitions/tagKey",
"modUri": "tmod:@turbot/aws-vpc-core"
}
}

tagList

{
"type": "array",
"items": {
"$ref": "#/definitions/tag"
},
"minLength": 0,
"tests": [
{
"description": "valid - empty list",
"input": []
},
{
"description": "valid - single item",
"input": [
{
"Key": "foo",
"Value": "bar"
}
]
},
{
"description": "valid - multiple items",
"input": [
{
"Key": "one",
"Value": 1
},
{
"Key": "two",
"Value": 2
},
{
"Key": "three",
"Value": 3
},
{
"Key": "four",
"Value": 4
}
]
},
{
"description": "invalid - missing value",
"input": [
{
"Key": "one"
},
{
"Key": "two",
"Value": 2
}
],
"expected": false
},
{
"description": "invalid - empty item",
"input": [
{
"Key": "one",
"Value": 1
},
null,
{
"Key": "two",
"Value": 2
}
],
"expected": false
}
],
".turbot": {
"uri": "tmod:@turbot/aws-vpc-core#/definitions/tagList",
"modUri": "tmod:@turbot/aws-vpc-core"
}
}

tagsMap

{
"type": "object",
"patternProperties": {
"^.{1,127}$": {
"$ref": "#/definitions/tagValue"
}
},
"additionalProperties": false,
"tests": [
{
"description": "valid - base case",
"input": {
"foo": "bar"
}
},
{
"description": "valid - kitchen sink",
"input": {
"küßîAbc123!@#$": "küßîAbc123!@#$",
"test": ""
}
},
{
"description": "valid - key min length",
"input": {
"a": "bar"
}
},
{
"description": "invalid - empty key",
"input": {
"": "bar"
},
"expected": false
},
{
"description": "valid - key max length",
"input": {
"123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 1234567": "bar"
}
},
{
"description": "invalid - key too long",
"input": {
"123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 12345678": "bar"
},
"expected": false
},
{
"description": "valid - empty",
"input": {}
}
],
".turbot": {
"uri": "tmod:@turbot/aws-vpc-core#/definitions/tagsMap",
"modUri": "tmod:@turbot/aws-vpc-core"
}
}

tagsTemplateTag

{
"type": "object",
"patternProperties": {
"^(?!aws:).{1,127}$": {
"$ref": "#/definitions/tagValue"
}
},
"minProperties": 1,
"maxProperties": 1,
"additionalProperties": false,
"tests": [
{
"description": "valid - base case",
"input": {
"foo": "bar"
}
},
{
"description": "invalid - starts with \"aws:\"",
"input": {
"aws:test": "bar"
},
"expected": false
},
{
"description": "invalid - below min properties",
"input": {},
"expected": false
},
{
"description": "invalid - above max properties",
"input": {
"foo": "bar",
"foo1": "bar1"
},
"expected": false
}
],
".turbot": {
"uri": "tmod:@turbot/aws-vpc-core#/definitions/tagsTemplateTag",
"modUri": "tmod:@turbot/aws-vpc-core"
}
}

tagsTemplateTagList

{
"type": "array",
"items": {
"$ref": "#/definitions/tagsTemplateTag"
},
"minLength": 0,
"tests": [
{
"description": "valid - empty list",
"input": []
},
{
"description": "valid - single item",
"input": [
{
"foo": "bar"
}
]
},
{
"description": "valid - multiple items",
"input": [
{
"foo": "bar"
},
{
"foo1": "bar1"
},
{
"foo2": "bar2"
}
]
},
{
"description": "invalid - empty item",
"input": [
{
"foo": "bar"
},
null,
{
"foo2": "bar2"
}
],
"expected": false
}
],
".turbot": {
"uri": "tmod:@turbot/aws-vpc-core#/definitions/tagsTemplateTagList",
"modUri": "tmod:@turbot/aws-vpc-core"
}
}

tagString

{
"type": "string",
"pattern": "^.*$",
"tests": [
{
"input": "küßî"
},
{
"input": "Peter Dinklage as Tyrion Lannister"
},
{
"input": "Filip Lozić as Young Nobleman"
},
{
"input": "Abc123 !@#$%^&*()_+"
}
],
".turbot": {
"uri": "tmod:@turbot/aws-vpc-core#/definitions/tagString",
"modUri": "tmod:@turbot/aws-vpc-core"
}
}

tagValue

{
"allOf": [
{
"$ref": "#/definitions/tagString"
},
{
"type": "string",
"minLength": 0,
"maxLength": 255
}
],
"tests": [
{
"description": "valid - empty string",
"input": ""
},
{
"description": "valid - max length",
"input": "123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 12345"
},
{
"description": "invalid - too long",
"input": "123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456",
"expected": false
}
],
".turbot": {
"uri": "tmod:@turbot/aws-vpc-core#/definitions/tagValue",
"modUri": "tmod:@turbot/aws-vpc-core"
}
}

toPort

{
"type": "integer",
".turbot": {
"uri": "tmod:@turbot/aws-vpc-core#/definitions/toPort",
"modUri": "tmod:@turbot/aws-vpc-core"
}
}

type

{
"type": "string",
"enum": [
"ipsec.1"
],
"tests": [
{
"description": "valid case",
"input": "ipsec.1"
},
{
"description": "invalid case",
"input": "Ipsec.1",
"expected": false
}
],
".turbot": {
"uri": "tmod:@turbot/aws-vpc-core#/definitions/type",
"modUri": "tmod:@turbot/aws-vpc-core"
}
}

virtualGatewayId

{
"type": "string",
"pattern": "^vgw-[0-9a-f]{8}(?:[0-9a-f]{9})?$",
"tests": [
{
"input": "vgw-f211f09b"
},
{
"input": "vgw-0fcefe5155c9023ce"
},
{
"description": "invalid - characters allowed from a to f only",
"input": "vgw-b611064z",
"expected": false
},
{
"description": "invalid - should always start with vgw",
"input": "id-b61106d4",
"expected": false
}
],
".turbot": {
"uri": "tmod:@turbot/aws-vpc-core#/definitions/virtualGatewayId",
"modUri": "tmod:@turbot/aws-vpc-core"
}
}

vpc

{
"type": "object",
"properties": {
"VpcId": {
"$ref": "#/definitions/vpcId"
},
"CidrBlock": {
"$ref": "aws#/definitions/cidrBlock"
},
"CidrBlockAssociationSet": {
"type": "array",
"items": {
"$ref": "#/definitions/vpcCidrBlockAssociationSet"
}
},
"DhcpOptionsId": {
"$ref": "#/definitions/dhcpOptionsId"
},
"InstanceTenancy": {
"$ref": "#/definitions/instanceTenancy"
},
"Ipv6CidrBlockAssociationSet": {
"type": "array",
"items": {
"$ref": "#/definitions/vpcIpv6CidrBlockAssociationSet"
}
},
"IsDefault": {
"$ref": "#/definitions/genericBoolean"
},
"State": {
"$ref": "#/definitions/availableState"
},
"Tags": {
"$ref": "#/definitions/tagList"
},
"EnableDnsSupport": {
"$ref": "#/definitions/vpcEnableDnsSupport"
},
"EnableDnsHostnames": {
"$ref": "#/definitions/vpcEnableDnsHostnames"
},
"OwnerId": {
"type": "string"
},
"turbot": {
"type": "object",
"properties": {
"akas": {
"type": "array",
"items": {
"$ref": "#/definitions/vpcAka"
}
},
"title": {
"$ref": "#/definitions/vpcId"
},
"tags": {
"$ref": "#/definitions/tagsMap"
},
"custom": {
"type": "object",
"properties": {
"aws": {
"$ref": "aws#/definitions/awsMetadata"
},
"createTimestamp": {
"$ref": "turbot#/definitions/isoTimestamp"
}
}
}
}
}
},
"additionalProperties": true,
"tests": [
{
"description": "Valid - All properties",
"input": {
"VpcId": "vpc-a01106c2",
"CidrBlock": "172.31.0.0/16",
"DhcpOptionsId": "dopt-97eb5efa",
"InstanceTenancy": "dedicated",
"IsDefault": false,
"State": "available",
"CidrBlockAssociationSet": [
{
"AssociationId": "vpc-cidr-assoc-0280ab6b",
"CidrBlock": "172.31.0.0/16",
"CidrBlockState": {
"State": "associating"
}
}
],
"Ipv6CidrBlockAssociationSet": [
{
"Ipv6CidrBlock": "2001:db8:1234:8800::/56",
"AssociationId": "vpc-cidr-assoc-0c3e2130d180c9962",
"Ipv6CidrBlockState": {
"State": "associated"
}
}
],
"Tags": [
{
"Key": "Env",
"Value": "Test"
},
{
"Key": "App",
"Value": "Facebook"
}
],
"EnableDnsSupport": {
"Value": true
},
"EnableDnsHostnames": {
"Value": true
},
"turbot": {
"akas": [
"arn:aws:ec2:us-east-1:111122223333:vpc/vpc-12345678"
],
"tags": {
"Env": "Test",
"App": "Facebook"
},
"custom": {
"aws": {
"accountId": 123456789012,
"regionName": "us-east-1"
}
}
}
}
},
{
"description": "invalid - Missing VpcId",
"input": {
"CidrBlock": "172.31.0.0/16",
"DhcpOptionsId": "dopt-97eb5efa",
"InstanceTenancy": "dedicated",
"IsDefault": false,
"State": "available",
"CidrBlockAssociationSet": [
{
"AssociationId": "vpc-cidr-assoc-0280ab6b",
"CidrBlock": "172.31.0.0/16",
"CidrBlockState": {
"State": "associating"
}
}
],
"Ipv6CidrBlockAssociationSet": [
{
"Ipv6CidrBlock": "2001:db8:1234:8800::/56",
"AssociationId": "vpc-cidr-assoc-0c3e2130d180c9962",
"Ipv6CidrBlockState": {
"State": "associated"
}
}
],
"Tags": [
{
"Key": "Env",
"Value": "Test"
},
{
"Key": "App",
"Value": "Facebook"
}
],
"turbot": {
"akas": [
"arn:aws:ec2:us-east-1:111122223333:vpc/vpc-12345678"
],
"tags": {
"Env": "Test",
"App": "Facebook"
},
"custom": {
"aws": {
"accountId": 123456789012,
"regionName": "us-east-1"
}
}
}
}
}
],
".turbot": {
"uri": "tmod:@turbot/aws-vpc-core#/definitions/vpc",
"modUri": "tmod:@turbot/aws-vpc-core"
}
}

vpcAka

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

vpcCidrBlockAssociationSet

{
"type": "object",
"properties": {
"AssociationId": {
"$ref": "#/definitions/associationId"
},
"CidrBlock": {
"$ref": "aws#/definitions/cidrBlock"
},
"CidrBlockState": {
"$ref": "#/definitions/cidrBlockState"
}
},
"tests": [
{
"description": "base case",
"input": {
"AssociationId": "vpc-cidr-assoc-0280ab6b",
"CidrBlock": "10.2.0.0/16",
"CidrBlockState": {
"State": "associating"
}
}
}
],
".turbot": {
"uri": "tmod:@turbot/aws-vpc-core#/definitions/vpcCidrBlockAssociationSet",
"modUri": "tmod:@turbot/aws-vpc-core"
}
}

vpcEnableDnsHostnames

{
"type": "object",
"properties": {
"Value": {
"type": "boolean"
}
},
"tests": [
{
"description": "Valid - Base case",
"input": {
"Value": true
}
},
{
"description": "Invalid - not a boolean property",
"input": {
"Value": "foo:bar"
},
"expected": false
}
],
".turbot": {
"uri": "tmod:@turbot/aws-vpc-core#/definitions/vpcEnableDnsHostnames",
"modUri": "tmod:@turbot/aws-vpc-core"
}
}

vpcEnableDnsSupport

{
"type": "object",
"properties": {
"Value": {
"type": "boolean"
}
},
"tests": [
{
"description": "Valid - Base case",
"input": {
"Value": true
}
},
{
"description": "Invalid - not a boolean property",
"input": {
"Value": "foo:bar"
},
"expected": false
}
],
".turbot": {
"uri": "tmod:@turbot/aws-vpc-core#/definitions/vpcEnableDnsSupport",
"modUri": "tmod:@turbot/aws-vpc-core"
}
}

vpcId

{
"type": "string",
"pattern": "^vpc-[0-9a-f]{8}(?:[0-9a-f]{9})?$",
"tests": [
{
"input": "vpc-27eb185d"
},
{
"input": "vpc-0563c4222b385087c"
},
{
"description": "invalid - characters allowed from a to f only",
"input": "vpc-b611064z",
"expected": false
},
{
"description": "invalid - should always start with vpc",
"input": "id-b61106d4",
"expected": false
}
],
".turbot": {
"uri": "tmod:@turbot/aws-vpc-core#/definitions/vpcId",
"modUri": "tmod:@turbot/aws-vpc-core"
}
}

vpcIpv6CidrBlockAssociationSet

{
"type": "object",
"properties": {
"AssociationId": {
"$ref": "#/definitions/associationId"
},
"Ipv6CidrBlock": {
"$ref": "aws#/definitions/ipv6CidrBlock"
},
"Ipv6CidrBlockState": {
"$ref": "#/definitions/cidrBlockState"
}
},
"tests": [
{
"description": "base case",
"input": {
"AssociationId": "vpc-cidr-assoc-0280ab6b",
"Ipv6CidrBlock": "2001:db8:1234:8800::/56",
"Ipv6CidrBlockState": {
"State": "associating"
}
}
}
],
".turbot": {
"uri": "tmod:@turbot/aws-vpc-core#/definitions/vpcIpv6CidrBlockAssociationSet",
"modUri": "tmod:@turbot/aws-vpc-core"
}
}

vpcPeeringConnectionId

{
"type": "string",
"pattern": "^pcx-[0-9a-f]{8}(?:[0-9a-f]{9})?$",
"tests": [
{
"input": "pcx-111aaa22"
},
{
"input": "pcx-0f98d7f13030ec59f"
},
{
"description": "invalid - characters allowed from a to f only",
"input": "pcx-b611064z",
"expected": false
},
{
"description": "invalid - should always start with pcx",
"input": "id-b61106d4",
"expected": false
}
],
".turbot": {
"uri": "tmod:@turbot/aws-vpc-core#/definitions/vpcPeeringConnectionId",
"modUri": "tmod:@turbot/aws-vpc-core"
}
}

vpcService

{
"allOf": [
{
"$ref": "turbot#/definitions/service"
},
{
"type": "object",
"properties": {
"name": {
"const": "VPC"
},
"turbot": {
"type": "object",
"properties": {
"akas": {
"type": "array",
"items": {
"$ref": "#/definitions/vpcServiceAka"
}
},
"title": {
"const": "VPC"
},
"custom": {
"type": "object",
"properties": {
"aws": {
"$ref": "aws#/definitions/awsMetadata"
}
}
}
}
}
},
"additionalProperties": true,
"tests": [
{
"description": "Valid - all properties provided",
"input": {
"name": "VPC",
"turbot": {
"akas": [
"arn:aws:vpc::123456789012"
],
"title": "VPC",
"custom": {
"aws": {
"accountId": 123456789012
}
}
}
}
},
{
"description": "invalid - service provider name prefixed",
"input": {
"name": "AWS VPC",
"turbot": {
"akas": [
"arn:aws:vpc::123456789012"
],
"title": "VPC",
"custom": {
"aws": {
"accountId": 123456789012
}
}
}
}
}
]
}
],
".turbot": {
"uri": "tmod:@turbot/aws-vpc-core#/definitions/vpcService",
"modUri": "tmod:@turbot/aws-vpc-core"
}
}

vpcServiceAka

{
"type": "string",
"pattern": "^arn:aws(-us-gov|-cn)?:ec2:[a-z]{2}-[a-z]+-[0-9]{1}:[0-9]{12}:vpc$",
"tests": [
{
"description": "base",
"input": "arn:aws:ec2:us-east-1:123123123123:vpc"
},
{
"description": "Invalid - service name not valid",
"input": "arn:aws:datasync111::123123123123",
"expected": false
},
{
"description": "Invalid - account id is not valid",
"input": "arn:aws:vpc::123382743123123123",
"expected": false
}
],
".turbot": {
"uri": "tmod:@turbot/aws-vpc-core#/definitions/vpcServiceAka",
"modUri": "tmod:@turbot/aws-vpc-core"
}
}

vpcServiceNow

{
"defaultColumns": {
"account_id": {
"column": "enabled",
"path": "metadata.aws.accountId",
"label": "Account ID"
},
"arn": {
"column": "enabled",
"path": "turbot.akas[0]",
"label": "ARN"
},
"cidr_block": {
"column": "enabled",
"label": "CIDR Block"
},
"cidr_block_association_set": {
"column": "enabled",
"label": "CIDR Block Association Set",
"type": "string",
"size": 1000
},
"dhcp_options_id": {
"column": "enabled",
"label": "DHCP Options ID"
},
"instance_tenancy": {
"column": "enabled",
"label": "Instance Tenancy"
},
"ipv6_cidr_block_association_set": {
"column": "enabled",
"label": "Ipv6 CIDR Block Association Set",
"type": "string",
"size": 1000
},
"is_default": {
"column": "enabled",
"label": "Is Default",
"type": "boolean"
},
"owner_id": {
"column": "enabled",
"label": "Owner ID"
},
"region": {
"column": "enabled",
"path": "metadata.aws.regionName",
"label": "Region"
},
"state": {
"column": "enabled",
"label": "State"
},
"tags": {
"column": "enabled",
"label": "Tags",
"type": "string",
"size": 1000
},
"title": {
"column": "enabled",
"path": "turbot.title",
"label": "Title"
},
"vpc_id": {
"column": "enabled",
"label": "VPC ID"
}
},
".turbot": {
"uri": "tmod:@turbot/aws-vpc-core#/definitions/vpcServiceNow",
"modUri": "tmod:@turbot/aws-vpc-core"
}
}

vpnGatewayId

{
"type": "string",
"pattern": "^vgw-[0-9a-f]{8}(?:[0-9a-f]{9})?$",
"tests": [
{
"input": "vgw-f211f09b"
},
{
"input": "vgw-9a4cacf3"
},
{
"description": "invalid - should always start with vgw",
"input": "id-b61106d4",
"expected": false
},
{
"description": "invalid - too short",
"input": "vgw-63a540",
"expected": false
},
{
"description": "invalid - too long",
"input": "vgw-63a5400a63a5400a63a5400a",
"expected": false
}
],
".turbot": {
"uri": "tmod:@turbot/aws-vpc-core#/definitions/vpnGatewayId",
"modUri": "tmod:@turbot/aws-vpc-core"
}
}