Definitions for @turbot/aws-ec2
- accountLevelAttributes
- additionalAttributes
- allocationId
- ami
- amiAka
- amiIdMatcher
- amiIdMatcherLockdownList
- amiStatus
- appCookieStickinessPolicies
- appCookieStickinessPolicy
- applicationListenerArn
- applicationLoadBalancer
- applicationLoadBalancingArn
- association
- attachmentStatus
- attributeBooleanValue
- attributes
- autoScalingGroup
- autoScalingGroupAka
- autoScalingGroupName
- availabilityZone
- availabilityZones
- backendServerDescription
- backendServerDescriptions
- canonicalHostedZoneId
- canonicalHostedZoneName
- capacityReservationSpecificationResponse
- certificateArn
- classicLoadBalancer
- classicLoadBalancerListener
- classicLoadBalancingArn
- code
- Code
- cpuOptions
- createdTime
- crossZoneLoadBalancing
- dnsName
- ebsInstanceBlockDevice
- ec2
- ec2AccountAttributes
- ec2AccountAttributesAka
- ec2Aka
- ec2NetworkLoadbalancerStatus
- ec2SupportedRegions
- elasticGpuAssociation
- elasticGpuAssociationList
- elasticInferenceAcceleratorAssociation
- elasticInferenceAcceleratorAssociationList
- eniAttachmentStatus
- eniStatus
- gatewayLoadBalancer
- gatewayLoadBalancerArn
- groupIdentifier
- groupIdentifierList
- healthCheck
- healthCheckIntervalSeconds
- healthCheckPath
- healthCheckPort
- healthCheckProtocol
- healthCheckTimeoutSeconds
- healthyThresholdCount
- hibernationOptions
- httpCode
- httpTokensState
- iamInstanceProfile
- imageEnaSupport
- imageHypervisor
- imageId
- imagePublic
- imageRootDeviceType
- imageType
- instance
- instanceAka
- instanceAttribute
- instanceAttributeValue
- instanceBlockDeviceMapping
- instanceHypervisorType
- instanceId
- instanceIpv6Address
- instanceLifecycleType
- instanceMetadataEndpointState
- instanceMetadataOptionsResponse
- instanceMetadataOptionsState
- instanceMonitoring
- instanceNetworkInterface
- instanceNetworkInterfaceAssociation
- InstanceNetworkInterfaceAssociation
- instanceNetworkInterfaceAttachment
- instanceNetworkInterfaceList
- instanceNetworkInterfaceStatus
- instancePlacement
- instancePrivateIpAddress
- instanceProductCodeList
- InstanceProtocol
- instanceState
- instanceType
- instanceTypeMatcher
- instanceTypeMatcherList
- instanceTypeMatcherLockdownList
- ipAddress
- ipAddressType
- IpAddressType
- isDefault
- keyAka
- keyName
- keyPair
- launchConfiguration
- launchConfigurationAka
- launchConfigurationName
- launchTemplate
- launchTemplateAka
- launchTemplateIamInstanceProfileSpecification
- launchTemplateId
- launchTemplateName
- launchTemplateVersion
- launchTemplateVersionAka
- lBCookieStickinessPolicies
- licenseConfiguration
- listener
- ListenerArn
- listenerArn
- listenerDescription
- listenerDescriptions
- listenerRule
- listenerRuleArn
- loadBalancerAddress
- loadBalancerArn
- loadBalancerArns
- loadBalancerAttributes
- loadBalancerCode
- loadbalancerId
- loadBalancerListener
- loadBalancerName
- loadBalanceState
- matcher
- networkInterface
- networkInterfaceAka
- networkInterfaceId
- networkInterfaceIpv6Address
- networkInterfaceIpv6AddressesList
- networkInterfaceStatus
- networkInterfaceType
- networkListenerArn
- networkLoadBalancer
- networkLoadbalancerStatus
- networkLoadBalancingArn
- policies
- policyName
- policyNames
- port
- protocol
- Protocol
- reason
- regionName
- responseLaunchTemplateData
- rootDeviceType
- scheme
- securityGroup
- securityGroups
- sgIdentifierList
- snapshot
- snapshotAka
- snapshotId
- snapshotStatus
- sourceSecurityGroup
- sslPolicy
- state
- stateReason
- subnet
- subnets
- tag
- tagKey
- tagList
- tagsMap
- tagsTemplateTag
- tagsTemplateTagList
- tagString
- tagValue
- Target
- targetGroup
- targetGroupArn
- targetGroupName
- TargetHealth
- TargetHealthDescriptions
- targetType
- type
- Type
- unhealthyThresholdCount
- versionNumber
- volume
- volumeAka
- volumeAttachments
- volumeId
- volumeStatus
- volumeType
- volumeTypeMatcher
- volumeTypeMatcherList
- vpcId
- zoneName
accountLevelAttributes
Schema
{ "type": "array", "items": { "AttributeName": { "type": "string" }, "AttributeValues": { "type": "array" }, "AttributeValue": { "type": "string" } }, ".turbot": { "uri": "tmod:@turbot/aws-ec2#/definitions/accountLevelAttributes", "modUri": "tmod:@turbot/aws-ec2" }}
additionalAttributes
Schema
{ "type": "object", "properties": { "Key": { "type": "string" }, "Value": { "type": "string" } }, ".turbot": { "uri": "tmod:@turbot/aws-ec2#/definitions/additionalAttributes", "modUri": "tmod:@turbot/aws-ec2" }}
allocationId
Schema
{ "type": "string", "tests": [ { "input": "foo" }, { "input": "usasdss" }, { "description": "invalid - passed array instead of string", "input": [ "foo" ], "expected": false } ], ".turbot": { "uri": "tmod:@turbot/aws-ec2#/definitions/allocationId", "modUri": "tmod:@turbot/aws-ec2" }}
ami
Schema
{ "type": "object", "properties": { "Architecture": { "type": "string" }, "ImageId": { "$ref": "#/definitions/imageId" }, "ImageLocation": { "type": "string" }, "ImageType": { "$ref": "#/definitions/imageType" }, "Public": { "$ref": "#/definitions/imagePublic" }, "EnaSupport": { "$ref": "#/definitions/imageEnaSupport" }, "Hypervisor": { "$ref": "#/definitions/imageHypervisor" }, "Name": { "type": "string" }, "RootDeviceName": { "type": "string" }, "RootDeviceType": { "$ref": "#/definitions/imageRootDeviceType" }, "SriovNetSupport": { "type": "string" }, "CreationDate": { "$ref": "turbot#/definitions/isoTimestamp" }, "State": { "$ref": "#/definitions/amiStatus" }, "Tags": { "$ref": "#/definitions/tagList" }, "OwnerId": { "$ref": "aws#/definitions/accountId" }, "Platform": { "type": "string" }, "ProductCodes": { "$ref": "#/definitions/instanceProductCodeList" }, "BlockDeviceMappings": { "type": "array" }, "StateReason": { "$ref": "#/definitions/stateReason" }, "VirtualizationType": { "type": "string" }, "KernelId": { "$ref": "#/definitions/instanceAttributeValue" }, "RamdiskId": { "$ref": "#/definitions/instanceAttributeValue" }, "Description": { "type": "string", "description": "The description of the AMI that was provided during image creation." }, "ImageOwnerAlias": { "type": "string" }, "turbot": { "type": "object", "properties": { "akas": { "type": "array", "items": { "$ref": "#/definitions/amiAka" } }, "tags": { "$ref": "aws#/definitions/tagsMap" }, "title": { "$ref": "#/definitions/imageId" }, "custom": { "type": "object", "properties": { "aws": { "$ref": "aws#/definitions/awsMetadata" }, "createTimestamp": { "$ref": "turbot#/definitions/isoTimestamp" } } } } } }, "additionalProperties": true, "tests": [ { "description": "all properties given", "input": { "ImageId": "ami-0022c769", "OwnerId": 123456789012, "Tags": [ { "Key": "foo", "Value": "bar" } ], "turbot": { "akas": [ "arn:aws:ec2:us-east-1:123456789012:image/ami-0022c769" ], "tags": { "Env": "Test", "App": "Facebook" }, "title": "ami-0022c769", "custom": { "aws": { "accountId": 123456789012, "regionName": "us-east-1" } } } } } ], ".turbot": { "uri": "tmod:@turbot/aws-ec2#/definitions/ami", "modUri": "tmod:@turbot/aws-ec2" }}
amiAka
Schema
{ "type": "string", "pattern": "^arn:aws(-us-gov|-cn)?:ec2:[a-z]{2}(-gov)?-[a-z]+-[0-9]:[0-9]{12}:image/ami-[0-9a-f]{8}(?:[0-9a-f]{9})?$", "tests": [ { "description": "Valid - Base case", "input": "arn:aws:ec2:us-east-1:123456789012:image/ami-0022c769" }, { "description": "Invalid - Malformed resource collection", "input": "arn:aws:ec2:us-east-1:123456789012:images/ami-0022c769", "expected": false }, { "description": "Invalid - Malformed region name", "input": "arn:aws:ec2:use-east-1:123456789012:image/ami-0022c769", "expected": false } ], ".turbot": { "uri": "tmod:@turbot/aws-ec2#/definitions/amiAka", "modUri": "tmod:@turbot/aws-ec2" }}
amiIdMatcher
Schema
{ "type": "string", "pattern": "^[a-z0-9.?*-]+$", "tests": [ { "input": "*" }, { "input": "ami-ff81a385" }, { "input": "ami-12345678" }, { "description": "invalid - empty string", "input": "", "expected": false }, { "description": "invalid - contains special characters", "input": "ami=ff81a385", "expected": false } ], ".turbot": { "uri": "tmod:@turbot/aws-ec2#/definitions/amiIdMatcher", "modUri": "tmod:@turbot/aws-ec2" }}
amiIdMatcherLockdownList
Schema
{ "type": "array", "items": { "type": "string", "pattern": "^[a-z0-9.?*-]+$", "tests": [ { "input": "*" }, { "input": "ami-ff81a385" }, { "input": "ami-12345678" }, { "description": "invalid - empty string", "input": "", "expected": false }, { "description": "invalid - contains special characters", "input": "ami=ff81a385", "expected": false } ], ".turbot": { "uri": "tmod:@turbot/aws-ec2#/definitions/amiIdMatcher", "modUri": "tmod:@turbot/aws-ec2" } }, "example": [ [ "ami-ff81a385", "ami-12345678" ] ], ".turbot": { "uri": "tmod:@turbot/aws-ec2#/definitions/amiIdMatcherLockdownList", "modUri": "tmod:@turbot/aws-ec2" }}
amiStatus
Schema
{ "type": "string", "enum": [ "pending", "available", "invalid", "deregistered", "transient", "failed", "error" ], "tests": [ { "input": "available" }, { "description": "invalid - not listed in options", "input": "RUNNABLE", "expected": false }, { "description": "invalid - null value", "input": null, "expected": false } ], ".turbot": { "uri": "tmod:@turbot/aws-ec2#/definitions/amiStatus", "modUri": "tmod:@turbot/aws-ec2" }}
appCookieStickinessPolicies
Schema
{ "type": "array", "items": { "$ref": "#/definitions/appCookieStickinessPolicy" }, ".turbot": { "uri": "tmod:@turbot/aws-ec2#/definitions/appCookieStickinessPolicies", "modUri": "tmod:@turbot/aws-ec2" }}
appCookieStickinessPolicy
Schema
{ "type": "object", "properties": { "PolicyName": { "type": "string" }, "CookieName": { "type": "string" } }, ".turbot": { "uri": "tmod:@turbot/aws-ec2#/definitions/appCookieStickinessPolicy", "modUri": "tmod:@turbot/aws-ec2" }}
applicationListenerArn
Schema
{ "type": "string", "pattern": "^arn:aws(-us-gov|-cn)?:elasticloadbalancing:[a-z]{2}(-gov)?-[a-z]+-[0-9]{1}:[0-9]{12}:listener/app/[a-zA-Z0-9-]{1,32}/[0-9a-f]{16}/[0-9a-f]{16}$", "tests": [ { "input": "arn:aws:elasticloadbalancing:us-west-2:123456789012:listener/app/my-load-balancer/50dc6c495c0c9188/f2f7dc8efc522ab2" }, { "input": "arn:aws-us-gov:elasticloadbalancing:us-gov-west-1:123456789101:listener/app/my-load-balancer/50dc6c495c0c9188/f2f7dc8efc522ab2" }, { "description": "invalid - account id", "input": "arn:aws:elasticloadbalancing:us-west-2:12345789101:listener/app/my-load-balancer/50dc6c495c0c9188/f2f7dc8efc522ab2", "expected": false }, { "description": "invalid - region", "input": "arn:aws:elasticloadbalancing:usa-west-2:12345789101:listener/app/my-load-balancer/50dc6c495c0c9188/f2f7dc8efc522ab2", "expected": false }, { "description": "invalid - load balancer id", "input": "arn:aws:elasticloadbalancing:us-west-2:123456789012:listener/app/my-load-balancer/50dc6c495c0c9188/f2f7dc8efc522", "expected": false } ], ".turbot": { "uri": "tmod:@turbot/aws-ec2#/definitions/applicationListenerArn", "modUri": "tmod:@turbot/aws-ec2" }}
applicationLoadBalancer
Schema
{ "type": "object", "properties": { "LoadBalancerArn": { "$ref": "#/definitions/applicationLoadBalancingArn", "description": "The Amazon Resource Name (ARN) of the load balancer." }, "DNSName": { "$ref": "#/definitions/dnsName", "description": "The public DNS name of the load balancer." }, "CanonicalHostedZoneId": { "$ref": "#/definitions/canonicalHostedZoneId", "description": "The ID of the Amazon Route 53 hosted zone associated with the load balancer." }, "CreatedTime": { "$ref": "#/definitions/createdTime", "description": "The date and time the load balancer was created." }, "LoadBalancerName": { "$ref": "#/definitions/loadBalancerName", "description": "The name of the load balancer." }, "Scheme": { "$ref": "#/definitions/scheme", "description": "The nodes of an Internet-facing load balancer have public IP addresses. The DNS name of an Internet-facing load balancer is publicly resolvable to the public IP addresses of the nodes. Therefore, Internet-facing load balancers can route requests from clients over the internet. The nodes of an internal load balancer have only private IP addresses. The DNS name of an internal load balancer is publicly resolvable to the private IP addresses of the nodes. Therefore, internal load balancers can route requests only from clients with access to the VPC for the load balancer." }, "VpcId": { "$ref": "#/definitions/vpcId", "description": "The ID of the VPC for the load balancer." }, "State": { "$ref": "#/definitions/loadBalanceState", "description": "The state of the load balancer." }, "Type": { "$ref": "#/definitions/type", "description": "The type of load balancer." }, "AvailabilityZones": { "$ref": "#/definitions/availabilityZones", "description": "The Availability Zones for the load balancer." }, "SecurityGroups": { "$ref": "#/definitions/securityGroups", "description": "The IDs of the security groups for the load balancer." }, "IpAddressType": { "$ref": "#/definitions/ipAddressType", "description": "The type of IP addresses used by the subnets for your load balancer. The possible values are ipv4 (for IPv4 addresses) and dualstack (for IPv4 and IPv6 addresses)." }, "Tags": { "$ref": "#/definitions/tagList" }, "LoadBalancerId": { "$ref": "#/definitions/loadbalancerId" }, "Attributes": { "$ref": "#/definitions/loadBalancerAttributes" }, "turbot": { "type": "object", "properties": { "akas": { "type": "array", "items": { "$ref": "#/definitions/applicationLoadBalancingArn" } }, "title": { "$ref": "#/definitions/loadBalancerName" }, "tags": { "$ref": "aws#/definitions/tagsMap" }, "custom": { "type": "object", "properties": { "createTimestamp": { "$ref": "turbot#/definitions/isoTimestamp" }, "aws": { "$ref": "aws#/definitions/awsMetadata" } } } } } }, "additionalProperties": true, "tests": [ { "description": "Valid - all properties given", "input": { "LoadBalancerName": "foo", "LoadBalancerId": "50dc6c495c0c9188", "LoadBalancerArn": "arn:aws:elasticloadbalancing:us-east-1:123456789012:loadbalancer/app/my-load-balancer/50dc6c495c0c9188", "CanonicalHostedZoneId": "Z3DZXE0EXAMPLE", "DNSName": "my-load-balancer-1234567890.us-west-2.elb.amazonaws.com", "SecurityGroups": [ "sg-a61988c3" ], "CreatedTime": "2015-03-19T03:24:02.650Z", "AvailabilityZones": [ { "ZoneName": "us-west-2a" } ], "Type": "application", "Scheme": "internet-facing", "IpAddressType": "ipv4", "VpcId": "vpc-3ac0fb5f", "State": { "Code": "active" }, "Tags": [ { "Key": "Env", "Value": "Test" }, { "Key": "App", "Value": "Facebook" } ], "turbot": { "akas": [ "arn:aws:elasticloadbalancing:us-east-1:123456789012:loadbalancer/app/my-load-balancer/50dc6c495c0c9188" ], "title": "foo", "tags": { "Env": "Test", "App": "Facebook" }, "custom": { "createTimestamp": "2015-03-19T03:24:02.650Z", "aws": { "accountId": 123456789012, "regionName": "us-east-1", "partition": "aws" } } } } } ], ".turbot": { "uri": "tmod:@turbot/aws-ec2#/definitions/applicationLoadBalancer", "modUri": "tmod:@turbot/aws-ec2" }}
applicationLoadBalancingArn
Schema
{ "type": "string", "pattern": "^arn:aws(-us-gov|-cn)?:elasticloadbalancing:[a-z]{2}(-gov)?-[a-z]+-[0-9]{1}:[0-9]{12}:loadbalancer/app/[a-zA-Z0-9-]{1,32}/[0-9a-f]{16}$", "tests": [ { "input": "arn:aws:elasticloadbalancing:us-east-1:123456789012:loadbalancer/app/my-load-balancer/50dc6c495c0c9188" }, { "input": "arn:aws-us-gov:elasticloadbalancing:us-gov-west-1:123456789101:loadbalancer/app/my-load-balancer/50dc6c495c0c9188" }, { "description": "invalid - account id", "input": "arn:aws:elasticloadbalancing:us-west-2:12345789101:loadbalancer/app/my-load-balancer/50dc6c495c0c9188", "expected": false }, { "description": "invalid - region", "input": "arn:aws:elasticloadbalancing:usa-west-2:12345789101:loadbalancer/app/my-load-balancer/50dc6c495c0c9188", "expected": false }, { "description": "invalid - load balancer id", "input": "arn:aws:elasticloadbalancing:us-west-2:12345789101:loadbalancer/app/my-load-balancer/50dc6c495c0c9188", "expected": false } ], ".turbot": { "uri": "tmod:@turbot/aws-ec2#/definitions/applicationLoadBalancingArn", "modUri": "tmod:@turbot/aws-ec2" }}
association
Schema
{ "type": "object", "properties": { "AllocationId": { "type": "string" }, "AssociationId": { "type": "string" }, "IpOwnerId": { "type": "string" }, "PublicDnsName": { "type": "string" }, "PublicIp": { "type": "string" } }, ".turbot": { "uri": "tmod:@turbot/aws-ec2#/definitions/association", "modUri": "tmod:@turbot/aws-ec2" }}
attachmentStatus
Schema
{ "type": "object", "properties": { "Status": { "$ref": "#/definitions/networkInterfaceStatus" } }, ".turbot": { "uri": "tmod:@turbot/aws-ec2#/definitions/attachmentStatus", "modUri": "tmod:@turbot/aws-ec2" }}
attributeBooleanValue
Schema
{ "type": "object", "properties": { "Value": { "type": "boolean" } }, ".turbot": { "uri": "tmod:@turbot/aws-ec2#/definitions/attributeBooleanValue", "modUri": "tmod:@turbot/aws-ec2" }}
attributes
Schema
{ "type": "object", "properties": { "Key": { "type": "string" }, "Value": { "type": "string" } }, ".turbot": { "uri": "tmod:@turbot/aws-ec2#/definitions/attributes", "modUri": "tmod:@turbot/aws-ec2" }}
autoScalingGroup
Schema
{ "type": "object", "properties": { "AutoScalingGroupName": { "$ref": "#/definitions/autoScalingGroupName" }, "AutoScalingGroupARN": { "$ref": "#/definitions/autoScalingGroupAka" }, "LaunchConfigurationName": { "$ref": "#/definitions/launchConfigurationName" }, "LaunchTemplate": { "type": "object" }, "MixedInstancesPolicy": { "type": "object" }, "MinSize": { "type": "integer" }, "MaxSize": { "type": "integer" }, "DesiredCapacity": { "type": "integer" }, "DefaultCooldown": { "type": "integer" }, "AvailabilityZones": { "$ref": "#/definitions/availabilityZones" }, "LoadBalancerNames": { "type": "array", "items": { "$ref": "#/definitions/loadBalancerName" } }, "TargetGroupARNs": { "type": "array" }, "HealthCheckType": { "type": "string", "minLength": 1, "maxLength": 32 }, "HealthCheckGracePeriod": { "type": "integer" }, "Instances": { "type": "array" }, "CreatedTime": { "$ref": "turbot#/definitions/isoTimestamp" }, "SuspendedProcesses": { "type": "array" }, "PlacementGroup": { "type": "string", "minLength": 1, "maxLength": 255 }, "VPCZoneIdentifier": { "type": "string", "minLength": 1, "maxLength": 2047 }, "EnabledMetrics": { "type": "array" }, "Status": { "type": "string", "minLength": 1, "maxLength": 255 }, "TerminationPolicies": { "type": "array" }, "NewInstancesProtectedFromScaleIn": { "type": "boolean" }, "ServiceLinkedRoleARN": { "type": "string", "minLength": 1, "maxLength": 1600 }, "MaxInstanceLifetime": { "type": "integer" }, "Tags": { "$ref": "aws#/definitions/tagList" }, "turbot": { "type": "object", "properties": { "akas": { "type": "array", "items": { "$ref": "#/definitions/autoScalingGroupAka" } }, "title": { "$ref": "#/definitions/autoScalingGroupName" }, "tags": { "$ref": "aws#/definitions/tagsMap" }, "custom": { "type": "object", "properties": { "aws": { "$ref": "aws#/definitions/awsMetadata" }, "createTimestamp": { "$ref": "turbot#/definitions/isoTimestamp" } } } } } }, "additionalProperties": true, "tests": [ { "description": "All properties given", "input": { "AutoScalingGroupName": "test01", "AutoScalingGroupARN": "arn:aws:autoscaling:us-west-2:492552618977:autoScalingGroup:402b2ef5-4968-4ccb-9208-c7980983b2bc:autoScalingGroupName/test03", "Tags": [ { "Key": "Test01", "Value": "Test01" }, { "Key": "Test02", "Value": "Test02" } ], "turbot": { "akas": [ "arn:aws:autoscaling:us-west-2:492552618977:autoScalingGroup:402b2ef5-4968-4ccb-9208-c7980983b2bc:autoScalingGroupName/test03" ], "title": "test01", "tags": { "Env": "Test", "App": "Facebook" }, "custom": { "aws": { "accountId": 123456789012, "regionName": "us-east-1", "partition": "aws" } } } } } ], ".turbot": { "uri": "tmod:@turbot/aws-ec2#/definitions/autoScalingGroup", "modUri": "tmod:@turbot/aws-ec2" }}
autoScalingGroupAka
Schema
{ "type": "string", "pattern": "^arn:aws(-us-gov|-cn)?:autoscaling:[a-z]{2}(-gov)?-[a-z]+-[0-9]{1}:[0-9]{12}:autoScalingGroup:[0-9a-z]{8}-[0-9]{4}-[0-9a-z]{4}-[0-9]{4}-[a-z0-9]{12}:autoScalingGroupName/(.{1,255})$", "tests": [ { "description": "base", "input": "arn:aws:autoscaling:us-west-2:492552618977:autoScalingGroup:402b2ef5-4968-4ccb-9208-c7980983b2bc:autoScalingGroupName/test03" }, { "description": "invalid service name", "input": "arn:aws:autoscaling:us-west-2:492552618977:iam:402b2ef5-4968-4ccb-9208-c7980983b2bc:autoScalingGroupName/test03", "expected": false }, { "description": "invalid account id", "input": "arn:aws:autoscaling:us-west-2:49255266573818977:autoScalingGroup:402b2ef5-4968-4ccb-9208-c7980983b2bc:autoScalingGroupName/test03", "expected": false } ], ".turbot": { "uri": "tmod:@turbot/aws-ec2#/definitions/autoScalingGroupAka", "modUri": "tmod:@turbot/aws-ec2" }}
autoScalingGroupName
Schema
{ "type": "string", "pattern": "^(.{1,255})$", "tests": [ { "input": "Test.The-Kitchen_Sink" }, { "description": "invalid - too long", "input": "a1234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567891234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567", "expected": false }, { "description": "invalid - line termination is not allowed in regex", "input": "\n", "expected": false } ], ".turbot": { "uri": "tmod:@turbot/aws-ec2#/definitions/autoScalingGroupName", "modUri": "tmod:@turbot/aws-ec2" }}
availabilityZone
Schema
{ "type": "object", "properties": { "ZoneName": { "type": "string" }, "SubnetId": { "type": "string" }, "LoadBalancerAddresses": { "type": "array" } }, ".turbot": { "uri": "tmod:@turbot/aws-ec2#/definitions/availabilityZone", "modUri": "tmod:@turbot/aws-ec2" }}
availabilityZones
Schema
{ "type": "array", "items": { "$ref": "#/definitions/availabilityZone" }, ".turbot": { "uri": "tmod:@turbot/aws-ec2#/definitions/availabilityZones", "modUri": "tmod:@turbot/aws-ec2" }}
backendServerDescription
Schema
{ "type": "object", "properties": { "InstancePort": { "type": "integer", "minimum": 1, "maximum": 65535 }, "PolicyNames": { "type": "array", "items": { "$ref": "#/definitions/policyName" } } }, ".turbot": { "uri": "tmod:@turbot/aws-ec2#/definitions/backendServerDescription", "modUri": "tmod:@turbot/aws-ec2" }}
backendServerDescriptions
Schema
{ "type": "array", "items": { "$ref": "#/definitions/backendServerDescription" }, ".turbot": { "uri": "tmod:@turbot/aws-ec2#/definitions/backendServerDescriptions", "modUri": "tmod:@turbot/aws-ec2" }}
canonicalHostedZoneId
Schema
{ "type": "string", "maxLength": 32, "tests": [ { "input": "hello@hi.com" }, { "input": "foo@123" }, { "input": "00123" }, { "input": "Test.The-Kitchen_Sink" }, { "description": "empty string", "input": "" }, { "description": "max length", "input": "12345678901234567890123456789012" }, { "description": "route53 example", "input": "Z2YQB5RD63NC85" }, { "description": "cloudfront distribution example", "input": "Z2FDTNDATAQYW2" }, { "description": "Elastic Beanstalk example", "input": "ZL327KTPIQFUL" }, { "description": "ELB load balancer example", "input": "ZZZZZZZZZZZ123X" }, { "description": "Amazon S3 example", "input": "Z2O1EMRO9K5GLX" }, { "description": "invalid - too long", "input": "1234567890123456789012345678901234567890123456789012345678", "expected": false } ], ".turbot": { "uri": "tmod:@turbot/aws-ec2#/definitions/canonicalHostedZoneId", "modUri": "tmod:@turbot/aws-ec2" }}
canonicalHostedZoneName
Schema
{ "type": "string", "maxLength": 1024, "tests": [ { "input": "hello@hi.com" }, { "input": "foo123" }, { "input": "images.example.com" }, { "input": "example-com-234567890.sa-east-1.elb.amazonaws.com" }, { "description": "cloudfront example", "input": "d123rk29d0stfj.cloudfront.net" }, { "description": "Elastic Beanstalk example", "input": "my-env.elasticbeanstalk.com" }, { "description": "ELB load balancer example", "input": "example-com-987654321.us-west-2.elb.amazonaws.com" }, { "description": "Amazon S3 bucket example", "input": "s3-website-us-east-2.amazonaws.com" }, { "description": "empty string", "input": "" }, { "description": "null value", "input": null } ], ".turbot": { "uri": "tmod:@turbot/aws-ec2#/definitions/canonicalHostedZoneName", "modUri": "tmod:@turbot/aws-ec2" }}
capacityReservationSpecificationResponse
Schema
{ "type": "object", "properties": { "CapacityReservationPreference": { "type": "string", "enum": [ "open", "none" ] }, "CapacityReservationTarget": { "type": "object", "properties": { "CapacityReservationId": { "type": "string" } } } }, ".turbot": { "uri": "tmod:@turbot/aws-ec2#/definitions/capacityReservationSpecificationResponse", "modUri": "tmod:@turbot/aws-ec2" }}
certificateArn
Schema
{ "type": "string", "pattern": "^arn:aws(-us-gov|-cn)?:iam::[0-9]{12}:server-certificate/[a-zA-Z0-9-]+$", "tests": [ { "input": "arn:aws:iam::123456789012:server-certificate/my-server-cert" }, { "input": "arn:aws:iam::123456789012:server-certificate/myservercert1" }, { "description": "invalid - region", "input": "arn:aws:iam:us-east-1:123456789012:server-certificate/myservercert1", "expected": false }, { "description": "invalid - missing account id", "input": "arn:aws:iam:::server-certificate/myservercert1", "expected": false } ], ".turbot": { "uri": "tmod:@turbot/aws-ec2#/definitions/certificateArn", "modUri": "tmod:@turbot/aws-ec2" }}
classicLoadBalancer
Schema
{ "type": "object", "properties": { "AvailabilityZones": { "$ref": "#/definitions/availabilityZones" }, "CanonicalHostedZoneId": { "$ref": "#/definitions/canonicalHostedZoneId" }, "CanonicalHostedZoneName": { "$ref": "#/definitions/canonicalHostedZoneName" }, "VpcId": { "$ref": "#/definitions/vpcId" }, "DNSName": { "$ref": "#/definitions/dnsName" }, "IpAddressType": { "$ref": "#/definitions/ipAddressType" }, "LoadBalancerArn": { "$ref": "#/definitions/classicLoadBalancingArn" }, "LoadBalancerName": { "$ref": "#/definitions/loadBalancerName" }, "CreatedTime": { "$ref": "#/definitions/createdTime" }, "Scheme": { "$ref": "#/definitions/scheme" }, "SecurityGroups": { "$ref": "#/definitions/securityGroups" }, "Subnets": { "$ref": "#/definitions/subnets" }, "Type": { "$ref": "#/definitions/type" }, "ListenerDescriptions": { "$ref": "#/definitions/listenerDescriptions" }, "Policies": { "$ref": "#/definitions/policies" }, "BackendServerDescriptions": { "$ref": "#/definitions/backendServerDescriptions" }, "Instances": { "type": "object" }, "HealthCheck": { "$ref": "#/definitions/healthCheck" }, "SourceSecurityGroup": { "$ref": "#/definitions/sourceSecurityGroup" }, "Tags": { "$ref": "aws#/definitions/tagList" }, "LoadBalancerAttributes": { "$ref": "#/definitions/loadBalancerAttributes" }, "turbot": { "type": "object", "properties": { "akas": { "type": "array", "items": { "$ref": "#/definitions/classicLoadBalancingArn" } }, "title": { "$ref": "#/definitions/loadBalancerName" }, "tags": { "$ref": "aws#/definitions/tagsMap" }, "custom": { "type": "object", "properties": { "aws": { "$ref": "aws#/definitions/awsMetadata" }, "createTimestamp": { "$ref": "turbot#/definitions/isoTimestamp" } } } } } }, "tests": [ { "description": "all properties given", "input": { "turbot": { "akas": [ "arn:aws:elasticloadbalancing:us-east-1:123456789012:loadbalancer/my-load-balancer" ], "title": "my-load-balancer", "tags": { "Env": "Test", "App": "Facebook" }, "custom": { "aws": { "accountId": 123456789012, "regionName": "us-east-1", "partition": "aws" } } }, "LoadBalancerName": "foo", "LoadBalancerArn": "arn:aws:elasticloadbalancing:us-east-1:123456789012:loadbalancer/my-load-balancer", "CanonicalHostedZoneId": "Z3DZXE0EXAMPLE", "CanonicalHostedZoneName": "my-load-balancer-1234567890.us-west-2.elb.amazonaws.com", "VpcId": "vpc-3ac0fb5f", "ListenerDescriptions": [ { "Listener": { "InstancePort": 80, "LoadBalancerPort": 80, "Protocol": "HTTP", "InstanceProtocol": "HTTP" }, "PolicyNames": [ "hi", "hello" ] } ], "DNSName": "my-load-balancer-1234567890.us-west-2.elb.amazonaws.com", "SecurityGroups": [ "sg-a61988c3" ], "CreatedTime": "2015-03-19T03:24:02.650Z", "Tags": [ { "Key": "Env", "Value": "Test" }, { "Key": "App", "Value": "Facebook" } ], "AvailabilityZones": [ { "ZoneName": "us-west-2a" } ] } } ], ".turbot": { "uri": "tmod:@turbot/aws-ec2#/definitions/classicLoadBalancer", "modUri": "tmod:@turbot/aws-ec2" }}
classicLoadBalancerListener
Schema
{ "type": "object", "properties": { "LoadBalancerName": { "type": "string" }, "Protocol": { "$ref": "#/definitions/Protocol" }, "InstancePort": { "type": "integer" }, "InstanceProtocol": { "$ref": "#/definitions/InstanceProtocol" }, "LoadBalancerPort": { "type": "integer" }, "SSLCertificateId": { "type": "string" }, "PolicyNames": { "type": "array", "items": { "type": "string" } }, "turbot": { "type": "object", "properties": { "metadata": { "type": "object", "properties": { "createTimestamp": { "$ref": "turbot#/definitions/isoTimestamp" }, "aws": { "$ref": "aws#/definitions/awsMetadata" } } } } } }, "additionalProperties": true, ".turbot": { "uri": "tmod:@turbot/aws-ec2#/definitions/classicLoadBalancerListener", "modUri": "tmod:@turbot/aws-ec2" }}
classicLoadBalancingArn
Schema
{ "type": "string", "pattern": "^arn:aws(-us-gov|-cn)?:elasticloadbalancing:[a-z]{2}(-gov)?-[a-z]+-[0-9]{1}:[0-9]{12}:loadbalancer/[a-zA-Z0-9](?:[-a-zA-Z0-9]{0,30}[a-zA-Z0-9])?$", "tests": [ { "input": "arn:aws:elasticloadbalancing:us-east-1:123456789012:loadbalancer/my-load-balancer" }, { "input": "arn:aws-us-gov:elasticloadbalancing:us-gov-west-1:123456789101:loadbalancer/my-load-balancer" }, { "description": "invalid - account id", "input": "arn:aws:elasticloadbalancing:us-west-2:12345789101:loadbalancer/my-load-balancer", "expected": false }, { "description": "invalid - region", "input": "arn:aws:elasticloadbalancing:usa-west-2:12345789101:loadbalancer/my-load-balancer", "expected": false }, { "description": "invalid - load balancer id", "input": "arn:aws:elasticloadbalancing:us-west-2:12345789101:loadbalancer/my-load-balancer", "expected": false } ], ".turbot": { "uri": "tmod:@turbot/aws-ec2#/definitions/classicLoadBalancingArn", "modUri": "tmod:@turbot/aws-ec2" }}
code
Schema
{ "type": "string", "enum": [ "active", "provisioning", "active_impaired", "failed" ], "tests": [ { "input": "active" }, { "input": "provisioning" }, { "description": "invalid - uppercase value", "input": "ACTIVE", "expected": false }, { "description": "invalid - not listed in the options", "input": "foo", "expected": false } ], ".turbot": { "uri": "tmod:@turbot/aws-ec2#/definitions/code", "modUri": "tmod:@turbot/aws-ec2" }}
Code
Schema
{ "type": "string", "enum": [ "active", "provisioning", "active_impaired", "failed" ], ".turbot": { "uri": "tmod:@turbot/aws-ec2#/definitions/Code", "modUri": "tmod:@turbot/aws-ec2" }}
cpuOptions
Schema
{ "type": "object", "properties": { "CoreCount": { "type": "integer" }, "ThreadsPerCore": { "type": "integer" } }, ".turbot": { "uri": "tmod:@turbot/aws-ec2#/definitions/cpuOptions", "modUri": "tmod:@turbot/aws-ec2" }}
createdTime
Schema
{ "$ref": "turbot#/definitions/isoTimestamp", ".turbot": { "uri": "tmod:@turbot/aws-ec2#/definitions/createdTime", "modUri": "tmod:@turbot/aws-ec2" }}
crossZoneLoadBalancing
Schema
{ "type": "object", "properties": { "Enabled": { "type": "boolean" } }, ".turbot": { "uri": "tmod:@turbot/aws-ec2#/definitions/crossZoneLoadBalancing", "modUri": "tmod:@turbot/aws-ec2" }}
dnsName
Schema
{ "$ref": "#/definitions/canonicalHostedZoneName", ".turbot": { "uri": "tmod:@turbot/aws-ec2#/definitions/dnsName", "modUri": "tmod:@turbot/aws-ec2" }}
ebsInstanceBlockDevice
Schema
{ "type": "object", "properties": { "AttachTime": { "$ref": "turbot#/definitions/isoTimestamp" }, "DeleteOnTermination": { "type": "boolean" }, "Status": { "$ref": "#/definitions/eniAttachmentStatus" }, "VolumeId": { "type": "string" } }, ".turbot": { "uri": "tmod:@turbot/aws-ec2#/definitions/ebsInstanceBlockDevice", "modUri": "tmod:@turbot/aws-ec2" }}
ec2
Schema
{ "allOf": [ { "$ref": "turbot#/definitions/service" }, { "type": "object", "properties": { "name": { "const": "EC2" }, "turbot": { "type": "object", "properties": { "akas": { "type": "array", "items": { "$ref": "#/definitions/ec2Aka" } }, "title": { "const": "EC2" }, "custom": { "type": "object", "properties": { "aws": { "$ref": "aws#/definitions/awsMetadata" } } } } } }, "additionalProperties": true, "tests": [ { "description": "EC2", "input": { "name": "EC2", "turbot": { "akas": [ "arn:aws:ec2:us-east-1:123456789012" ], "title": "EC2", "custom": { "aws": { "accountId": 123456789012, "regionName": "us-east-1" } } } } }, { "description": "Invalid - elasticcomputecloud", "input": { "name": "elasticcomputecloud", "turbot": null, "akas": [ "arn:aws:ec2:us-east-1:123456789012" ], "title": "EC2", "custom": { "aws": { "accountId": 123456789012, "regionName": "us-east-1" } } }, "expected": false }, { "description": "Invalid - Service name missing", "input": { "turbot": null, "akas": [ "arn:aws:ec2:us-east-1:123456789012" ], "title": "EC2", "custom": { "aws": { "accountId": 123456789012, "regionName": "us-east-1" } } }, "expected": false } ] } ], ".turbot": { "uri": "tmod:@turbot/aws-ec2#/definitions/ec2", "modUri": "tmod:@turbot/aws-ec2" }}
ec2AccountAttributes
Schema
{ "type": "object", "properties": { "AccountAttributes": { "$ref": "#/definitions/accountLevelAttributes" }, "KmsKeyId": { "type": "string" }, "RegionName": { "type": "string" }, "OptInStatus": { "type": "string" }, "Endpoint": { "type": "string" }, "EbsEncryptionByDefault": { "type": "boolean" }, "turbot": { "type": "object", "properties": { "akas": { "type": "array", "items": { "$ref": "#/definitions/ec2AccountAttributesAka" } }, "title": { "const": "Account Attributes" }, "custom": { "type": "object", "properties": { "aws": { "$ref": "aws#/definitions/awsMetadata" }, "createTimestamp": { "$ref": "turbot#/definitions/isoTimestamp" } } } } } }, "additionalProperties": true, "tests": [ { "description": "Valid - All properties", "input": { "AccountAttributes": [ { "AttributeName": "supported-platforms", "AttributeValues": [ { "AttributeValue": "5" } ] } ], "Endpoint": "ec2.sa-east-1.amazonaws.com", "RegionName": "sa-east-1", "OptInStatus": "opt-in-not-required", "KmsKeyId": "alias/aws/ebs", "EbsEncryptionByDefault": false, "turbot": { "akas": [ "arn:aws:ec2:us-west-2:492552618977:accountAttribute" ], "title": "Account Attributes", "custom": { "aws": { "accountId": 123456789012 }, "createTimestamp": "2018-12-05T14:53:33.000Z" } } } } ], ".turbot": { "uri": "tmod:@turbot/aws-ec2#/definitions/ec2AccountAttributes", "modUri": "tmod:@turbot/aws-ec2" }}
ec2AccountAttributesAka
Schema
{ "type": "string", "pattern": "^arn:aws(-us-gov|-cn)?:ec2:[a-z]{2}(-gov)?-[a-z]+-[0-9]{1}:[0-9]{12}:accountattributes$", "tests": [ { "description": "Valid - Base case", "input": "arn:aws:ec2:us-west-2:492552618977:accountattributes" }, { "description": "Invalid - account Id", "input": "arn:aws:s3::1116660:account", "expected": false } ], ".turbot": { "uri": "tmod:@turbot/aws-ec2#/definitions/ec2AccountAttributesAka", "modUri": "tmod:@turbot/aws-ec2" }}
ec2Aka
Schema
{ "type": "string", "pattern": "^arn:aws(-us-gov|-cn)?:ec2:[a-z]{2}(-gov)?-[a-z]+-[0-9]{1}:[0-9]{12}$", "tests": [ { "description": "base", "input": "arn:aws:ec2:us-east-1:123123123123" }, { "description": "base", "input": "arn:aws-us-gov:ec2:us-gov-east-1:123123123123" }, { "description": "invalid service name", "input": "arn:aws:xyz:us-east-1:123123123123", "expected": false }, { "description": "invalid account id", "input": "arn:aws:ec2:us-east-1:123382743123123123", "expected": false }, { "description": "invalid region name", "input": "arn:aws:ec2:us-eastdk-74381:123123123123", "expected": false } ], ".turbot": { "uri": "tmod:@turbot/aws-ec2#/definitions/ec2Aka", "modUri": "tmod:@turbot/aws-ec2" }}
ec2NetworkLoadbalancerStatus
Schema
{ "type": "string", "enum": [ "active", "provisioning", "active_impaired", "failed" ], "tests": [ { "description": "valid - correct status type", "input": "active" }, { "description": "invalid - empty string", "input": "", "expected": false } ], ".turbot": { "uri": "tmod:@turbot/aws-ec2#/definitions/ec2NetworkLoadbalancerStatus", "modUri": "tmod:@turbot/aws-ec2" }}
ec2SupportedRegions
Schema
{ "type": "array", "items": { "$ref": "#/definitions/regionName" }, "minItems": 1, "example": [ [ "us-east-2", "us-east-1" ] ], "default": [ "ap-northeast-1", "ap-northeast-2", "ap-northeast-3", "ap-south-1", "ap-southeast-1", "ap-southeast-2", "ca-central-1", "cn-north-1", "cn-northwest-1", "eu-central-1", "eu-west-1", "eu-west-2", "eu-west-3", "sa-east-1", "us-east-1", "us-east-2", "us-gov-west-1", "us-west-1", "us-west-2" ], "tests": [ { "description": "one region", "input": [ "us-east-1" ] }, { "description": "all supported regions", "input": [ "ap-northeast-1", "ap-northeast-2", "ap-northeast-3", "ap-south-1", "ap-southeast-1", "ap-southeast-2", "ca-central-1", "cn-north-1", "cn-northwest-1", "eu-central-1", "eu-west-1", "eu-west-2", "eu-west-3", "sa-east-1", "us-east-1", "us-east-2", "us-gov-west-1", "us-west-1", "us-west-2" ] }, { "description": "invalid - no regions", "input": [], "expected": false } ], ".turbot": { "uri": "tmod:@turbot/aws-ec2#/definitions/ec2SupportedRegions", "modUri": "tmod:@turbot/aws-ec2" }}
elasticGpuAssociation
Schema
{ "type": "object", "properties": { "ElasticGpuId": { "type": "string" }, "ElasticGpuAssociationId": { "type": "string" }, "ElasticGpuAssociationState": { "type": "string" }, "ElasticGpuAssociationTime": { "type": "string" } }, ".turbot": { "uri": "tmod:@turbot/aws-ec2#/definitions/elasticGpuAssociation", "modUri": "tmod:@turbot/aws-ec2" }}
elasticGpuAssociationList
Schema
{ "type": "array", "items": { "$ref": "#/definitions/elasticGpuAssociation" }, ".turbot": { "uri": "tmod:@turbot/aws-ec2#/definitions/elasticGpuAssociationList", "modUri": "tmod:@turbot/aws-ec2" }}
elasticInferenceAcceleratorAssociation
Schema
{ "type": "object", "properties": { "ElasticInferenceAcceleratorArn": { "type": "string" }, "ElasticInferenceAcceleratorAssociationId": { "type": "string" }, "ElasticInferenceAcceleratorAssociationState": { "type": "string" }, "ElasticInferenceAcceleratorAssociationTime": { "$ref": "turbot#/definitions/isoTimestamp" } }, ".turbot": { "uri": "tmod:@turbot/aws-ec2#/definitions/elasticInferenceAcceleratorAssociation", "modUri": "tmod:@turbot/aws-ec2" }}
elasticInferenceAcceleratorAssociationList
Schema
{ "type": "array", "items": { "$ref": "#/definitions/elasticInferenceAcceleratorAssociation" }, ".turbot": { "uri": "tmod:@turbot/aws-ec2#/definitions/elasticInferenceAcceleratorAssociationList", "modUri": "tmod:@turbot/aws-ec2" }}
eniAttachmentStatus
Schema
{ "type": "string", "enum": [ "attaching", "attached", "detaching", "detached" ], ".turbot": { "uri": "tmod:@turbot/aws-ec2#/definitions/eniAttachmentStatus", "modUri": "tmod:@turbot/aws-ec2" }}
eniStatus
Schema
{ "type": "string", "enum": [ "available", "associated", "attaching", "in-use", "detaching" ], ".turbot": { "uri": "tmod:@turbot/aws-ec2#/definitions/eniStatus", "modUri": "tmod:@turbot/aws-ec2" }}
gatewayLoadBalancer
Schema
{ "type": "object", "properties": { "AvailabilityZones": { "type": "array", "items": { "type": "object" } }, "CanonicalHostedZoneId": { "type": "string" }, "CreatedTime": { "$ref": "turbot#/definitions/isoTimestamp" }, "DNSName": { "type": "string" }, "IpAddressType": { "$ref": "#/definitions/IpAddressType" }, "LoadBalancerAddresses": { "type": "array", "items": { "type": "object", "properties": { "AllocationId": { "type": "string" }, "AvailabilityZones": { "type": "array", "items": { "type": "object", "properties": { "SubnetId": { "type": "string" }, "ZoneName": { "type": "string" } } } }, "IpAddress": { "type": "string" }, "PrivateIPv4Address": { "type": "string" } } } }, "LoadBalancerArn": { "$ref": "#/definitions/gatewayLoadBalancerArn" }, "LoadBalancerName": { "$ref": "#/definitions/loadBalancerName" }, "Scheme": { "type": "string" }, "SecurityGroups": { "type": "array", "items": { "type": "string" } }, "State": { "type": "object", "properties": { "Code": { "$ref": "#/definitions/Code" }, "Reason": { "type": "string" } } }, "Type": { "$ref": "#/definitions/Type" }, "VpcId": { "type": "string" }, "Tags": { "$ref": "aws#/definitions/tagList", "type": "object", "properties": { "Value": { "type": "string" } } }, "turbot": { "type": "object", "properties": { "akas": { "type": "array", "items": { "$ref": "#/definitions/gatewayLoadBalancerArn" } }, "tags": { "$ref": "aws#/definitions/tagsMap" }, "title": { "$ref": "#/definitions/loadBalancerName" }, "metadata": { "type": "object", "properties": { "createTimestamp": { "$ref": "turbot#/definitions/isoTimestamp" }, "aws": { "$ref": "aws#/definitions/awsMetadata" } } } } } }, "additionalProperties": true, ".turbot": { "uri": "tmod:@turbot/aws-ec2#/definitions/gatewayLoadBalancer", "modUri": "tmod:@turbot/aws-ec2" }}
gatewayLoadBalancerArn
Schema
{ "type": "string", "pattern": "^arn:aws(-us-gov|-cn)?:elasticloadbalancing:[a-z]{2}(-gov)?-[a-z]+-[0-9]{1}:[0-9]{12}:loadbalancer/gwy/[a-zA-Z0-9](?:[-a-zA-Z0-9]{0,30}[a-zA-Z0-9])?/[0-9a-f]{16}$", "tests": [ { "input": "arn:aws:elasticloadbalancing:us-east-1:123456789012:loadbalancer/gwy/my-load-balancer/50dc6c495c0c9188" }, { "input": "arn:aws-us-gov:elasticloadbalancing:us-gov-west-1:123456789101:loadbalancer/gwy/my-load-balancer/50dc6c495c0c9188" }, { "description": "invalid - account id", "input": "arn:aws:elasticloadbalancing:us-west-2:12345789101:loadbalancer/gwy/my-load-balancer/50dc6c495c0c9188", "expected": false }, { "description": "invalid - region", "input": "arn:aws:elasticloadbalancing:usa-west-2:12345789101:loadbalancer/gwy/my-load-balancer/50dc6c495c0c9188", "expected": false }, { "description": "invalid - load balancer id", "input": "arn:aws:elasticloadbalancing:us-west-2:12345789101:loadbalancer/gwy/my-load-balancer/50dc6c495c0c9188", "expected": false } ], ".turbot": { "uri": "tmod:@turbot/aws-ec2#/definitions/gatewayLoadBalancerArn", "modUri": "tmod:@turbot/aws-ec2" }}
groupIdentifier
Schema
{ "type": "object", "properties": { "GroupName": { "type": "string" }, "GroupId": { "type": "string" } }, ".turbot": { "uri": "tmod:@turbot/aws-ec2#/definitions/groupIdentifier", "modUri": "tmod:@turbot/aws-ec2" }}
groupIdentifierList
Schema
{ "type": "array", "properties": { "GroupName": { "type": "string" }, "GroupId": { "type": "string" } }, "items": { "$ref": "#/definitions/groupIdentifier" }, ".turbot": { "uri": "tmod:@turbot/aws-ec2#/definitions/groupIdentifierList", "modUri": "tmod:@turbot/aws-ec2" }}
healthCheck
Schema
{ "type": "object", "properties": { "Target": { "type": "string" }, "Interval": { "type": "integer", "minimum": 5, "maximum": 300 }, "Timeout": { "type": "integer", "minimum": 2, "maximum": 60 }, "UnhealthyThreshold": { "type": "integer", "minimum": 2, "maximum": 10 }, "HealthyThreshold": { "type": "integer", "minimum": 2, "maximum": 10 } }, ".turbot": { "uri": "tmod:@turbot/aws-ec2#/definitions/healthCheck", "modUri": "tmod:@turbot/aws-ec2" }}
healthCheckIntervalSeconds
Schema
{ "type": "integer", "minimum": 5, "maximum": 300, "tests": [ { "input": 10 }, { "input": 90 }, { "description": "minimum", "input": 5 }, { "description": "maximum", "input": 300 }, { "description": "invalid - decimal value provided", "input": 4.5, "expected": false }, { "description": "invalid - string tpye provided", "input": "three", "expected": false }, { "description": "invalid - less than minimum", "input": 4, "expected": false }, { "description": "invalid - greater than maximum", "input": 301, "expected": false } ], ".turbot": { "uri": "tmod:@turbot/aws-ec2#/definitions/healthCheckIntervalSeconds", "modUri": "tmod:@turbot/aws-ec2" }}
healthCheckPath
Schema
{ "type": "string", "minLength": 1, "maxLength": 1024, "tests": [ { "input": "a" }, { "input": "gdghdhhd" }, { "description": "minimum", "input": "/" }, { "description": "invalid - null", "input": null, "expected": false }, { "description": "invalid - passed array instead of string", "input": [ "foo" ], "expected": false } ], ".turbot": { "uri": "tmod:@turbot/aws-ec2#/definitions/healthCheckPath", "modUri": "tmod:@turbot/aws-ec2" }}
healthCheckPort
Schema
{ "type": "string", "pattern": "^[a-z0-9-]+$", "tests": [ { "input": "traffic-port" }, { "input": 80 }, { "description": "invalid - uppercase value", "input": "TRAFFIC-PORT", "expected": false }, { "description": "invalid - passed array instead of string", "input": [], "expected": false } ], ".turbot": { "uri": "tmod:@turbot/aws-ec2#/definitions/healthCheckPort", "modUri": "tmod:@turbot/aws-ec2" }}
healthCheckProtocol
Schema
{ "type": "string", "enum": [ "HTTP", "HTTPS", "TCP" ], "tests": [ { "input": "HTTP" }, { "input": "TCP" }, { "description": "invalid - lowercase value", "input": "tcp", "expected": false }, { "description": "invalid - not listed in the options", "input": "foo", "expected": false } ], ".turbot": { "uri": "tmod:@turbot/aws-ec2#/definitions/healthCheckProtocol", "modUri": "tmod:@turbot/aws-ec2" }}
healthCheckTimeoutSeconds
Schema
{ "type": "integer", "minimum": 2, "maximum": 60, "tests": [ { "input": 10 }, { "input": 30 }, { "description": "minimum", "input": 2 }, { "description": "maximum", "input": 60 }, { "description": "invalid - decimal value provided", "input": 4.5, "expected": false }, { "description": "invalid - string tpye provided", "input": "three", "expected": false }, { "description": "invalid - less than minimum", "input": 1, "expected": false }, { "description": "invalid - greater than maximum", "input": 301, "expected": false } ], ".turbot": { "uri": "tmod:@turbot/aws-ec2#/definitions/healthCheckTimeoutSeconds", "modUri": "tmod:@turbot/aws-ec2" }}
healthyThresholdCount
Schema
{ "type": "integer", "minimum": 2, "maximum": 10, "tests": [ { "input": 5 }, { "input": 7 }, { "description": "minimum", "input": 2 }, { "description": "maximum", "input": 10 }, { "description": "invalid - decimal value provided", "input": 4.5, "expected": false }, { "description": "invalid - string tpye provided", "input": "three", "expected": false }, { "description": "invalid - less than minimum", "input": 1, "expected": false }, { "description": "invalid - greater than maximum", "input": 11, "expected": false } ], ".turbot": { "uri": "tmod:@turbot/aws-ec2#/definitions/healthyThresholdCount", "modUri": "tmod:@turbot/aws-ec2" }}
hibernationOptions
Schema
{ "type": "object", "properties": { "Configured": { "type": "boolean" } }, ".turbot": { "uri": "tmod:@turbot/aws-ec2#/definitions/hibernationOptions", "modUri": "tmod:@turbot/aws-ec2" }}
httpCode
Schema
{ "type": "string", "pattern": "^[0-9]{3}$", "tests": [ { "input": 404 }, { "input": 200 }, { "description": "invalid - greater than max length", "input": 4044, "expected": false } ], ".turbot": { "uri": "tmod:@turbot/aws-ec2#/definitions/httpCode", "modUri": "tmod:@turbot/aws-ec2" }}
httpTokensState
Schema
{ "type": "string", "enum": [ "optional", "required" ], ".turbot": { "uri": "tmod:@turbot/aws-ec2#/definitions/httpTokensState", "modUri": "tmod:@turbot/aws-ec2" }}
iamInstanceProfile
Schema
{ "type": "object", "properties": { "Arn": { "type": "string" }, "Id": { "type": "string" } }, ".turbot": { "uri": "tmod:@turbot/aws-ec2#/definitions/iamInstanceProfile", "modUri": "tmod:@turbot/aws-ec2" }}
imageEnaSupport
Schema
{ "type": "boolean", "tests": [ { "input": true }, { "input": false }, { "input": "true" }, { "input": 0 }, { "input": "false" }, { "description": "invalid - string", "input": "foo", "expected": false } ], ".turbot": { "uri": "tmod:@turbot/aws-ec2#/definitions/imageEnaSupport", "modUri": "tmod:@turbot/aws-ec2" }}
imageHypervisor
Schema
{ "type": "string", "enum": [ "ovm", "xen" ], "tests": [ { "input": "xen" }, { "input": "ovm" }, { "description": "Invalid - not listed in options", "input": "grey", "expected": false } ], ".turbot": { "uri": "tmod:@turbot/aws-ec2#/definitions/imageHypervisor", "modUri": "tmod:@turbot/aws-ec2" }}
imageId
Schema
{ "type": "string", "pattern": "^ami-[a-f0-9]{8}(?:[0-9a-f]{9})?$", "tests": [ { "input": "ami-df90ecb0" }, { "input": "ami-df8dd2b0df8dd2b01" }, { "description": "invalid - image id is invalid if more than 12 char and less than 21", "input": "ami-df8dd2b01", "expected": false }, { "description": "invalid - empty string", "input": "", "expected": false }, { "description": "invalid - image id beyond the regex", "input": "Hello@123", "expected": false }, { "description": "invalid - $ in image id", "input": "Hello$123", "expected": false }, { "description": "invalid - image id is invalid if 2 or less chars", "input": 12, "expected": false } ], ".turbot": { "uri": "tmod:@turbot/aws-ec2#/definitions/imageId", "modUri": "tmod:@turbot/aws-ec2" }}
imagePublic
Schema
{ "type": "boolean", "tests": [ { "input": true }, { "input": false }, { "input": "true" }, { "input": 0 }, { "input": "false" }, { "description": "invalid - string", "input": "foo", "expected": false } ], ".turbot": { "uri": "tmod:@turbot/aws-ec2#/definitions/imagePublic", "modUri": "tmod:@turbot/aws-ec2" }}
imageRootDeviceType
Schema
{ "type": "string", "enum": [ "ebs", "instance-store" ], "tests": [ { "input": "instance-store" }, { "input": "ebs" }, { "description": "Invalid - not listed in options", "input": "grey", "expected": false } ], ".turbot": { "uri": "tmod:@turbot/aws-ec2#/definitions/imageRootDeviceType", "modUri": "tmod:@turbot/aws-ec2" }}
imageType
Schema
{ "type": "string", "enum": [ "machine", "kernel", "ramdisk" ], "tests": [ { "description": "Valid - Base case", "input": "machine" }, { "description": "Invalid - not listed in options", "input": "grey", "expected": false } ], ".turbot": { "uri": "tmod:@turbot/aws-ec2#/definitions/imageType", "modUri": "tmod:@turbot/aws-ec2" }}
instance
Schema
{ "type": "object", "properties": { "AmiLaunchIndex": { "type": "integer" }, "ImageId": { "type": "string" }, "InstanceId": { "$ref": "#/definitions/instanceId" }, "InstanceType": { "$ref": "#/definitions/instanceType" }, "EnclaveOptions": { "type": "object" }, "KeyName": { "type": "string" }, "LaunchTime": { "$ref": "turbot#/definitions/isoTimestamp" }, "Monitoring": { "$ref": "#/definitions/instanceMonitoring" }, "Placement": { "$ref": "#/definitions/instancePlacement" }, "Platform": { "type": "string", "enum": [ "Windows" ] }, "PrivateDnsName": { "type": "string" }, "PrivateIpAddress": { "type": "string" }, "ProductCodes": { "type": "array", "items": { "$ref": "#/definitions/instanceProductCodeList" } }, "PublicDnsName": { "type": "string" }, "PublicIpAddress": { "type": "string" }, "State": { "$ref": "#/definitions/instanceState" }, "StateTransitionReason": { "type": "string" }, "SubnetId": { "type": "string" }, "VpcId": { "type": "string" }, "Architecture": { "type": "string", "enum": [ "i386", "x86_64", "arm64" ] }, "BlockDeviceMappings": { "type": "array", "items": { "$ref": "#/definitions/instanceBlockDeviceMapping" } }, "ClientToken": { "type": "string" }, "EbsOptimized": { "type": "boolean" }, "EnaSupport": { "type": "boolean" }, "Hypervisor": { "$ref": "#/definitions/instanceHypervisorType" }, "IamInstanceProfile": { "$ref": "#/definitions/iamInstanceProfile" }, "InstanceLifecycle": { "$ref": "#/definitions/instanceLifecycleType" }, "ElasticGpuAssociations": { "$ref": "#/definitions/elasticGpuAssociationList" }, "ElasticInferenceAcceleratorAssociations": { "$ref": "#/definitions/elasticInferenceAcceleratorAssociationList" }, "NetworkInterfaces": { "$ref": "#/definitions/instanceNetworkInterfaceList" }, "OutpostArn": { "type": "string" }, "RootDeviceName": { "type": "string" }, "RootDeviceType": { "$ref": "#/definitions/rootDeviceType" }, "SecurityGroups": { "type": "array", "items": { "$ref": "#/definitions/sgIdentifierList" } }, "SourceDestCheck": { "type": "boolean" }, "SpotInstanceRequestId": { "type": "string" }, "StateReason": { "$ref": "#/definitions/stateReason" }, "Tags": { "$ref": "#/definitions/tagList" }, "VirtualizationType": { "type": "string", "enum": [ "hvm", "paravirtual" ] }, "CpuOptions": { "$ref": "#/definitions/cpuOptions" }, "CapacityReservationId": { "type": "string" }, "CapacityReservationSpecification": { "$ref": "#/definitions/capacityReservationSpecificationResponse" }, "HibernationOptions": { "$ref": "#/definitions/hibernationOptions" }, "Licenses": { "type": "array", "items": { "$ref": "#/definitions/licenseConfiguration" } }, "MetadataOptions": { "$ref": "#/definitions/instanceMetadataOptionsResponse" }, "Groups": { "$ref": "#/definitions/groupIdentifierList" }, "DisableApiTermination": { "$ref": "#/definitions/attributeBooleanValue" }, "InstanceInitiatedShutdownBehavior": { "$ref": "#/definitions/instanceAttributeValue" }, "KernelId": { "$ref": "#/definitions/instanceAttributeValue" }, "RamdiskId": { "$ref": "#/definitions/instanceAttributeValue" }, "SriovNetSupport": { "$ref": "#/definitions/instanceAttributeValue" }, "UserData": { "$ref": "#/definitions/instanceAttributeValue" }, "RootDeviceEncrypted": { "type": "boolean" }, "Attribute": { "$ref": "#/definitions/instanceAttribute" }, "turbot": { "type": "object", "properties": { "akas": { "type": "array", "items": { "$ref": "#/definitions/instanceAka" } }, "tags": { "$ref": "#/definitions/tagsMap" }, "title": { "$ref": "#/definitions/instanceId" }, "custom": { "type": "object", "properties": { "aws": { "$ref": "aws#/definitions/awsMetadata" }, "createTimestamp": { "$ref": "turbot#/definitions/isoTimestamp" } } } } } }, "additionalProperties": true, "tests": [ { "description": "Valid - All properties", "input": { "InstanceId": "i-a2345678", "InstanceType": "t3.medium", "RootDeviceName": "/dev/xvda", "RootDeviceType": "ebs", "BlockDeviceMappings": [ { "DeviceName": "/dev/xvda", "Ebs": { "AttachTime": "2018-08-16T19:43:39.000Z", "DeleteOnTermination": true, "Status": "attached", "VolumeId": "vol-0b116439a12abc34d" } } ], "Tags": [ { "Key": "Env", "Value": "Test" }, { "Key": "App", "Value": "Facebook" } ], "turbot": { "akas": [ "arn:aws:ec2:us-east-1:123456789012:instance/i-a2345678" ], "tags": { "Env": "Test", "App": "Facebook" }, "title": "i-a2345678", "custom": { "aws": { "accountId": 123456789012, "regionName": "us-east-1" } } } } } ], ".turbot": { "uri": "tmod:@turbot/aws-ec2#/definitions/instance", "modUri": "tmod:@turbot/aws-ec2" }}
instanceAka
Schema
{ "type": "string", "pattern": "^arn:aws(-us-gov|-cn)?:ec2:[a-z]{2}(-gov)?-[a-z]+-[0-9]:[0-9]{12}:instance/i-[0-9a-f]{8}(?:[0-9a-f]{9})?$", "tests": [ { "description": "Valid - Base case", "input": "arn:aws:ec2:us-east-1:123456789012:instance/i-a2345678" }, { "description": "Invalid - Malformed resource collection", "input": "arn:aws:ec2:us-east-1:123456789012:instances/i-a2345678", "expected": false }, { "description": "Invalid - Malformed region name", "input": "arn:aws:ec2:use-east-1:123456789012:instances/i-a2345678", "expected": false }, { "description": "Invalid - Malformed account ID", "input": "arn:aws:ec2:us-east-1:1234567890123:instances/i-a2345678", "expected": false } ], ".turbot": { "uri": "tmod:@turbot/aws-ec2#/definitions/instanceAka", "modUri": "tmod:@turbot/aws-ec2" }}
instanceAttribute
Schema
{ "type": "string", "enum": [ "instanceType", "kernel", "ramdisk", "userData", "disableApiTermination", "instanceInitiatedShutdownBehavior", "rootDeviceName", "blockDeviceMapping", "productCodes", "sourceDestCheck", "groupSet", "ebsOptimized", "sriovNetSupport", "enaSupport" ], "tests": [ { "description": "valid - correct status type", "input": "userData" }, { "description": "invalid - empty string", "input": "", "expected": false } ], ".turbot": { "uri": "tmod:@turbot/aws-ec2#/definitions/instanceAttribute", "modUri": "tmod:@turbot/aws-ec2" }}
instanceAttributeValue
Schema
{ "type": "object", "properties": { "Value": { "type": "string" } }, ".turbot": { "uri": "tmod:@turbot/aws-ec2#/definitions/instanceAttributeValue", "modUri": "tmod:@turbot/aws-ec2" }}
instanceBlockDeviceMapping
Schema
{ "type": "object", "properties": { "DeviceName": { "type": "string" }, "Ebs": { "$ref": "#/definitions/ebsInstanceBlockDevice" } }, ".turbot": { "uri": "tmod:@turbot/aws-ec2#/definitions/instanceBlockDeviceMapping", "modUri": "tmod:@turbot/aws-ec2" }}
instanceHypervisorType
Schema
{ "type": "string", "enum": [ "ovm", "xen" ], ".turbot": { "uri": "tmod:@turbot/aws-ec2#/definitions/instanceHypervisorType", "modUri": "tmod:@turbot/aws-ec2" }}
instanceId
Schema
{ "type": "string", "pattern": "^i-[0-9a-f]{8}(?:[0-9a-f]{9})?$", "tests": [ { "input": "i-a2345678" }, { "input": "i-1234567890abcdef0" }, { "description": "invalid - characters allowed from a to f only", "input": "i-1234567890abcdefz", "expected": false }, { "description": "invalid - should always start with i", "input": "id-b61106d4", "expected": false } ], ".turbot": { "uri": "tmod:@turbot/aws-ec2#/definitions/instanceId", "modUri": "tmod:@turbot/aws-ec2" }}