Definitions for @turbot/azure-loadbalancer

loadBalancer

{
"type": "object",
"properties": {
"name": {
"$ref": "#/definitions/loadBalancerName"
},
"id": {
"$ref": "#/definitions/loadBalancerId"
},
"tags": {
"$ref": "azure#/definitions/tags"
},
"location": {
"type": "string"
},
"sku": {
"type": "object"
},
"frontendIPConfigurations": {
"type": "array"
},
"backendAddressPools": {
"type": "array"
},
"loadBalancingRules": {
"type": "array"
},
"probes": {
"type": "array"
},
"inboundNatRules": {
"type": "array"
},
"inboundNatPools": {
"type": "array"
},
"resourceGuid": {
"type": "string"
},
"provisioningState": {
"type": "string"
},
"etag": {
"type": "string"
},
"turbot": {
"type": "object",
"properties": {
"title": {
"$ref": "#/definitions/loadBalancerName"
},
"tags": {
"$ref": "azure#/definitions/tags"
},
"akas": {
"type": "array",
"items": {
"$ref": "#/definitions/loadBalancerAka"
}
},
"custom": {
"type": "object",
"properties": {
"createTimestamp": {
"$ref": "turbot#/definitions/isoTimestamp"
},
"azure": {
"$ref": "azure#/definitions/azureMetadata"
}
}
}
}
}
},
"additionalProperties": true,
"tests": [
{
"description": "Valid - All properties given",
"input": {
"name": "test009",
"id": "/subscriptions/3510ae4d-530b-497d-8f30-53b9616fc6c1/resourceGroups/test/providers/Microsoft.Network/loadBalancers/test009",
"location": "southeastasia",
"sku": {
"name": "Basic",
"tier": "Regional"
},
"frontendIPConfigurations": [
{
"id": "/subscriptions/3510ae4d-530b-497d-8f30-53b9616fc6c1/resourceGroups/test/providers/Microsoft.Network/loadBalancers/test009/frontendIPConfigurations/LoadBalancerFrontEnd",
"privateIPAddress": "10.4.0.5",
"privateIPAllocationMethod": "Dynamic",
"subnet": {
"id": "/subscriptions/3510ae4d-530b-497d-8f30-53b9616fc6c1/resourceGroups/test/providers/Microsoft.Network/virtualNetworks/test-vnet/subnets/default"
},
"provisioningState": "Succeeded",
"name": "LoadBalancerFrontEnd",
"etag": "W/\"99516081-9d47-47e5-a80c-6df3d4047714\"",
"type": "Microsoft.Network/loadBalancers/frontendIPConfigurations"
}
],
"backendAddressPools": [],
"loadBalancingRules": [],
"probes": [],
"inboundNatRules": [],
"inboundNatPools": [],
"resourceGuid": "d5350b4b-9319-47e8-a0aa-6babe0f643cc",
"provisioningState": "Succeeded",
"etag": "W/\"99516081-9d47-47e5-a80c-6df3d4047714\"",
"turbot": {
"title": "test009",
"akas": [
"azure:///subscriptions/3510ae4d-530b-497d-8f30-53b9616fc6c1/resourceGroups/test/providers/Microsoft.Network/loadBalancers/test0001"
],
"custom": {
"azure": {
"subscriptionId": "3510ae4d-530b-497d-8f30-53b9616fc6c1",
"regionName": "southeastasia",
"resourceGroupName": "test"
}
}
}
}
},
{
"description": "Invalid - load balancer name missing",
"input": {
"id": "/subscriptions/3510ae4d-530b-497d-8f30-53b9616fc6c1/resourceGroups/test/providers/Microsoft.Network/loadBalancers/test009",
"turbot": {
"title": "test009",
"akas": [
"azure:///subscriptions/3510ae4d-530b-497d-8f30-53b9616fc6c1/resourceGroups/test/providers/Microsoft.Network/loadBalancers/test0001"
],
"custom": {
"azure": {
"subscriptionId": "3510ae4d-530b-497d-8f30-53b9616fc6c1",
"regionName": "southeastasia",
"resourceGroupName": "test"
}
}
}
}
}
],
".turbot": {
"uri": "tmod:@turbot/azure-loadbalancer#/definitions/loadBalancer",
"modUri": "tmod:@turbot/azure-loadbalancer"
}
}

loadBalancerAka

{
"type": "string",
"pattern": "^azure:///subscriptions/[a-f0-9]{8}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{12}/resourceGroups/[A-Za-z0-9-_().]*[A-Za-z0-9-_()]/providers/Microsoft.Network/loadBalancers/[a-zA-Z0-9]{1}[a-zA-Z0-9_.-]{0,80}[a-zA-Z0-9_]$",
"tests": [
{
"description": "base case",
"input": "azure:///subscriptions/3510ae4d-530b-497d-8f30-53b9616fc6c1/resourceGroups/test/providers/Microsoft.Network/loadBalancers/test"
},
{
"description": "invalid - subsription info missing",
"input": "providers/microsoft.network/loadBalancers/test",
"expected": false
}
],
".turbot": {
"uri": "tmod:@turbot/azure-loadbalancer#/definitions/loadBalancerAka",
"modUri": "tmod:@turbot/azure-loadbalancer"
}
}

loadBalancerId

{
"type": "string",
"pattern": "^/subscriptions/[a-f0-9]{8}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{12}/resourceGroups/[A-Za-z0-9_.-]{0,89}[A-Za-z0-9_-]/providers/Microsoft.Network/loadBalancers/[a-zA-Z0-9]{1}[a-zA-Z0-9_.-]{0,80}[a-zA-Z0-9_]$",
"tests": [
{
"description": "base",
"input": "/subscriptions/3510ae4d-530b-497d-8f30-53b9616fc6c1/resourceGroups/test/providers/Microsoft.Network/loadBalancers/test01"
},
{
"description": "invalid service name",
"input": "//subscriptions/3510ae4d-530b-497d-8f30-53b9616fc6c1/resourceGroups/test/providers/Microsoft.Network/loadBalancers/test",
"expected": false
}
],
".turbot": {
"uri": "tmod:@turbot/azure-loadbalancer#/definitions/loadBalancerId",
"modUri": "tmod:@turbot/azure-loadbalancer"
}
}

loadBalancerName

{
"type": "string",
"pattern": "^[a-zA-Z0-9]{1}[a-zA-Z0-9_.-]{0,80}[a-zA-Z0-9_]$",
"tests": [
{
"description": "base case",
"input": "test099"
},
{
"description": "invalid - must not start with underscore",
"input": "_terss",
"expected": false
}
],
".turbot": {
"uri": "tmod:@turbot/azure-loadbalancer#/definitions/loadBalancerName",
"modUri": "tmod:@turbot/azure-loadbalancer"
}
}

loadBalancerService

{
"allOf": [
{
"$ref": "turbot#/definitions/service"
},
{
"type": "object",
"properties": {
"name": {
"const": "Load Balancer Service"
},
"namespace": {
"const": "Microsoft.Network"
},
"registrationState": {
"type": "string"
},
"turbot": {
"type": "object",
"properties": {
"akas": {
"type": "array",
"items": {
"$ref": "#/definitions/loadBalancerServiceAka"
}
},
"title": {
"const": "Load Balancer Service"
},
"custom": {
"type": "object",
"properties": {
"azure": {
"$ref": "azure#/definitions/azureMetadata"
}
}
}
}
}
},
"required": [
"name",
"turbot"
],
"additionalProperties": true,
"tests": [
{
"description": "All details provided",
"input": {
"name": "Load Balancer Service",
"turbot": {
"akas": [
"azure:///subscriptions/3510ae4d-530b-497d-8f30-53b9616fc6c1/providers/Microsoft.Network/services/loadBalancers"
],
"title": "Network",
"custom": {
"azure": {
"subscriptionId": "3510ae4d-530b-497d-8f30-53b9616fc6c1"
}
}
}
}
},
{
"description": "Invalid - Name is not as declared",
"input": {
"name": "LOAD BALANCER",
"turbot": {
"akas": [
"azure:///subscriptions/3510ae4d-530b-497d-8f30-53b9616fc6c1/providers/Microsoft.Network/services/loadBalancers"
],
"title": "Load Balancer Service",
"custom": {
"azure": {
"subscriptionId": "3510ae4d-530b-497d-8f30-53b9616fc6c1"
}
}
}
},
"expected": false
},
{
"description": "Invalid - Service name missing",
"input": {
"turbot": {
"akas": [
"azure:///subscriptions/3510ae4d-530b-497d-8f30-53b9616fc6c1/providers/Microsoft.Network/services/loadBalancers"
]
},
"title": "Load Balancer Service",
"custom": {
"azure": {
"subscriptionId": "3510ae4d-530b-497d-8f30-53b9616fc6c1"
}
}
},
"expected": false
}
]
}
],
".turbot": {
"uri": "tmod:@turbot/azure-loadbalancer#/definitions/loadBalancerService",
"modUri": "tmod:@turbot/azure-loadbalancer"
}
}

loadBalancerServiceAka

{
"type": "string",
"pattern": "^azure:///subscriptions/[a-f0-9]{8}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{12}/providers/Microsoft.Network/services/loadBalancers",
"tests": [
{
"description": "base",
"input": "azure:///subscriptions/3510ae4d-530b-497d-8f30-53b9616fc6c1/providers/Microsoft.Network/services/loadBalancers"
},
{
"description": "invalid service name",
"input": "azure:///subscriptions/3510ae4d-530b-497d-8f30-53b9616fc6c1/providers/Microsoft.Network/services/loadBalancer",
"expected": false
},
{
"description": "invalid subscription id",
"input": "azure:///subscriptions/9e3548cf-17e2-4751-12345-b7/providers/Microsoft.Network/services/loadBalancers",
"expected": false
}
],
".turbot": {
"uri": "tmod:@turbot/azure-loadbalancer#/definitions/loadBalancerServiceAka",
"modUri": "tmod:@turbot/azure-loadbalancer"
}
}

loadBalancerServiceNow

{
"defaultColumns": {
"backend_address_pools": {
"column": "enabled",
"label": "Backend Address Pools",
"type": "string",
"size": 1000
},
"extended_location_name": {
"column": "enabled",
"label": "Extended Location Name",
"path": "data.extendedLocation.name"
},
"extended_location_type": {
"column": "enabled",
"label": "Extended Location Type",
"path": "data.extendedLocation.type"
},
"frontend_ip_configurations": {
"column": "enabled",
"label": "Frontend IP Configurations",
"type": "string",
"size": 1000,
"path": "data.frontendIPConfiguration"
},
"id": {
"column": "enabled",
"label": "ID"
},
"inbound_nat_pools": {
"column": "enabled",
"label": "Inbound Nat Pools",
"type": "string",
"size": 1000
},
"inbound_nat_rules": {
"column": "enabled",
"label": "Inbound Nat Rules",
"type": "string",
"size": 1000
},
"load_balancing_rules": {
"column": "enabled",
"label": "Load Balancing Rules",
"type": "string",
"size": 1000
},
"load_balancer_name": {
"column": "enabled",
"label": "Load Balancer Name"
},
"outbound_rules": {
"column": "enabled",
"label": "Outbound Rules",
"type": "string",
"size": 1000
},
"probes": {
"column": "enabled",
"label": "Probes",
"type": "string",
"size": 1000
},
"provisioning_state": {
"column": "enabled",
"label": "Provisioning State"
},
"region": {
"column": "enabled",
"label": "Region",
"path": "data.location"
},
"resource_group": {
"column": "enabled",
"label": "Resource Group",
"path": "metadata.azure.resourceGroupName"
},
"resource_guid": {
"column": "enabled",
"label": "Resource GUID"
},
"sku_name": {
"column": "enabled",
"label": "SKU Name",
"path": "data.sku.name"
},
"sku_tier": {
"column": "enabled",
"label": "SKU Tier",
"path": "data.sku.tier"
},
"subscription_id": {
"column": "enabled",
"label": "Subscription ID",
"path": "metadata.azure.subscriptionId"
},
"tags": {
"column": "enabled",
"label": "Tags",
"type": "string",
"size": 1000
},
"type": {
"column": "enabled",
"label": "Type"
}
},
".turbot": {
"uri": "tmod:@turbot/azure-loadbalancer#/definitions/loadBalancerServiceNow",
"modUri": "tmod:@turbot/azure-loadbalancer"
}
}