Definitions for @turbot/azure-cosmosdb

collectionAka

{
"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.DocumentDB/databaseAccounts/[a-zA-Z0-9-]{1,128}/apis/mongodb/databases/[a-zA-Z0-9-]{1,128}/collections/[a-zA-Z0-9-]{1,128}$",
"tests": [
{
"description": "base case",
"input": "azure:///subscriptions/0a55cd76-e849-43b4-a2c2-23318da500e4/resourceGroups/turbot_resource_group/providers/Microsoft.DocumentDB/databaseAccounts/rupzz-test/apis/mongodb/databases/test-db/collections/rupc01"
},
{
"description": "invalid - subscription info missing",
"input": "providers/microsoft.operationalinsights/workspaces/defaultworkspace-0a55cd76-e849-43b4-a2c2-23318da500e4-cin",
"expected": false
}
],
".turbot": {
"uri": "tmod:@turbot/azure-cosmosdb#/definitions/collectionAka",
"modUri": "tmod:@turbot/azure-cosmosdb"
}
}

collectionAkaMongoDb

{
"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.DocumentDB/databaseAccounts/[a-zA-Z0-9-]{1,128}/mongodbDatabases/[a-zA-Z0-9-]{1,128}/collections/[a-zA-Z0-9-]{1,128}$",
"tests": [
{
"description": "base case",
"input": "azure:///subscriptions/0a55cd76-e849-43b4-a2c2-23318da500e4/resourceGroups/turbot_resource_group/providers/Microsoft.DocumentDB/databaseAccounts/rupzz-test/mongodbDatabases/test-db/collections/rupc01"
},
{
"description": "invalid - subscription info missing",
"input": "providers/microsoft.operationalinsights/workspaces/defaultworkspace-0a55cd76-e849-43b4-a2c2-23318da500e4-cin",
"expected": false
}
],
".turbot": {
"uri": "tmod:@turbot/azure-cosmosdb#/definitions/collectionAkaMongoDb",
"modUri": "tmod:@turbot/azure-cosmosdb"
}
}

collectionName

{
"type": "string",
"pattern": "^[a-zA-Z0-9-]{1,128}$",
"tests": [
{
"input": "foo"
},
{
"input": "0cho5"
},
{
"description": "invalid - too short",
"input": "",
"expected": false
},
{
"description": "invalid - too long",
"input": "abcvgderfgabcvgderfgabcvgderfgabcvgderfgabcvgderfgabcvgderfgabcvgderfgabcvgderfgabcvgderfgabcvgderfgabcvgderfgabcvgderfgabcvgderfg",
"expected": false
},
{
"description": "invalid - can't end with '.'",
"input": "Test.",
"expected": false
}
],
".turbot": {
"uri": "tmod:@turbot/azure-cosmosdb#/definitions/collectionName",
"modUri": "tmod:@turbot/azure-cosmosdb"
}
}

containerAka

{
"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.DocumentDB/databaseAccounts/[a-zA-Z0-9-]{1,128}/apis/sql/databases/[a-zA-Z0-9-]{1,128}/containers/[a-zA-Z0-9-]{1,128}$",
"tests": [
{
"description": "base case",
"input": "azure:///subscriptions/0a55cd76-e849-43b4-a2c2-23318da500e4/resourceGroups/turbot_resource_group/providers/Microsoft.DocumentDB/databaseAccounts/rupzz-test/apis/sql/databases/test-db/containers/rupc01"
},
{
"description": "invalid - subscription info missing",
"input": "providers/microsoft.operationalinsights/workspaces/defaultworkspace-0a55cd76-e849-43b4-a2c2-23318da500e4-cin",
"expected": false
}
],
".turbot": {
"uri": "tmod:@turbot/azure-cosmosdb#/definitions/containerAka",
"modUri": "tmod:@turbot/azure-cosmosdb"
}
}

containerAkaSql

{
"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.DocumentDB/databaseAccounts/[a-zA-Z0-9-]{1,128}/sqlDatabases/[a-zA-Z0-9-]{1,128}/containers/[a-zA-Z0-9-]{1,128}$",
"tests": [
{
"description": "base case",
"input": "azure:///subscriptions/0a55cd76-e849-43b4-a2c2-23318da500e4/resourceGroups/turbot_resource_group/providers/Microsoft.DocumentDB/databaseAccounts/rupzz-test/sqlDatabases/test-db/containers/rupc01"
},
{
"description": "invalid - subscription info missing",
"input": "providers/microsoft.operationalinsights/workspaces/defaultworkspace-0a55cd76-e849-43b4-a2c2-23318da500e4-cin",
"expected": false
}
],
".turbot": {
"uri": "tmod:@turbot/azure-cosmosdb#/definitions/containerAkaSql",
"modUri": "tmod:@turbot/azure-cosmosdb"
}
}

containerName

{
"type": "string",
"pattern": "^[a-zA-Z0-9-]{1,128}$",
"tests": [
{
"input": "foo"
},
{
"input": "0cho5"
},
{
"description": "invalid - too short",
"input": "",
"expected": false
},
{
"description": "invalid - too long",
"input": "abcvgderfgabcvgderfgabcvgderfgabcvgderfgabcvgderfgabcvgderfgabcvgderfgabcvgderfgabcvgderfgabcvgderfgabcvgderfgabcvgderfgabcvgderfg",
"expected": false
},
{
"description": "invalid - can't end with '.'",
"input": "Test.",
"expected": false
}
],
".turbot": {
"uri": "tmod:@turbot/azure-cosmosdb#/definitions/containerName",
"modUri": "tmod:@turbot/azure-cosmosdb"
}
}

cosmosDb

{
"allOf": [
{
"$ref": "turbot#/definitions/service"
},
{
"type": "object",
"properties": {
"name": {
"const": "Cosmos DB"
},
"turbot": {
"type": "object",
"properties": {
"akas": {
"type": "array",
"items": {
"$ref": "#/definitions/cosmosDbAka"
}
},
"title": {
"const": "Cosmos DB"
},
"custom": {
"type": "object",
"properties": {
"azure": {
"$ref": "azure#/definitions/azureMetadata"
}
}
}
}
}
},
"required": [
"name",
"turbot"
],
"additionalProperties": true,
"tests": [
{
"description": "Base - All Valid properties",
"input": {
"name": "Cosmos DB",
"turbot": {
"akas": [
"azure:///subscriptions/9e3548cf-17e2-4751-b87e-b72bdd2c77f7/providers/Microsoft.DocumentDB/services/cosmosDb"
],
"title": "Cosmos DB",
"custom": {
"azure": {
"subscriptionId": "9e3548cf-17e2-4751-b87e-b72bdd2c77f7"
}
}
}
}
},
{
"description": "Invalid - sql",
"input": {
"name": "sql",
"turbot": {
"akas": [
"azure:///subscriptions/9e3548cf-17e2-4751-b87e-b72bdd2c77f7/providers/Microsoft.DocumentDB/services/cosmosDb"
],
"title": "sql",
"custom": {
"azure": {
"subscriptionId": "9e3548cf-17e2-4751-b87e-b72bdd2c77f7"
}
}
}
},
"expected": false
},
{
"description": "Invalid - Service name missing",
"input": {
"turbot": {
"akas": [
"azure:///subscriptions/9e3548cf-17e2-4751-b87e-b72bdd2c77f7/providers/Microsoft.DocumentDB/services/cosmosDb"
],
"title": "Operational Insights",
"custom": {
"azure": {
"subscriptionId": "9e3548cf-17e2-4751-b87e-b72bdd2c77f7"
}
}
}
},
"expected": false
}
]
}
],
".turbot": {
"uri": "tmod:@turbot/azure-cosmosdb#/definitions/cosmosDb",
"modUri": "tmod:@turbot/azure-cosmosdb"
}
}

cosmosDbAka

{
"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.DocumentDB/services/cosmosDb$",
"tests": [
{
"description": "base",
"input": "azure:///subscriptions/9e3548cf-17e2-4751-b87e-b72bdd2c77f7/providers/Microsoft.DocumentDB/services/cosmosDb"
},
{
"description": "invalid service name",
"input": "azure:///subscriptions/9e3548cf-17e2-4751-b87e-b72bdd2c77f7/providers/Microsoft.DocumentDB1/services/cosmosDb",
"expected": false
},
{
"description": "invalid subscription id",
"input": "azure:///subscriptions/9e3548-17e2-4751-b87e-b72bdd2c77f7/providers/Microsoft.DocumentDB/services/cosmosDb",
"expected": false
},
{
"description": "invalid provider name",
"input": "gcp:///subscriptions/9e3548-17e2-4751-b87e-b72bdd2c77f7/providers/Microsoft.DocumentDB/services/cosmosDb",
"expected": false
}
],
".turbot": {
"uri": "tmod:@turbot/azure-cosmosdb#/definitions/cosmosDbAka",
"modUri": "tmod:@turbot/azure-cosmosdb"
}
}

databaseAccount

{
"type": "object",
"properties": {
"name": {
"$ref": "#/definitions/databaseAccountName"
},
"id": {
"$ref": "#/definitions/databaseAccountId"
},
"tags": {
"$ref": "azure#/definitions/tags"
},
"location": {
"type": "string"
},
"provisioningState": {
"$ref": "#/definitions/databaseAccountStatus"
},
"kind": {
"$ref": "#/definitions/databaseKind"
},
"documentEndpoint": {
"type": "string"
},
"ipRangeFilter": {
"type": "string"
},
"databaseAccountOfferType": {
"type": "string"
},
"consistencyPolicy": {
"type": "object",
"properties": {
"defaultConsistencyLevel": {
"type": "string"
},
"maxIntervalInSeconds": {
"type": "integer"
},
"maxStalenessPrefix": {
"type": "integer"
}
}
},
"writeLocations": {
"type": "array",
"items": {
"$ref": "#/definitions/writeLocationValue"
}
},
"readLocations": {
"type": "array",
"items": {
"$ref": "#/definitions/readLocationValue"
}
},
"failoverPolicies": {
"ttype": "array",
"items": {
"$ref": "#/definitions/failOverPolicy"
}
},
"turbot": {
"type": "object",
"properties": {
"title": {
"$ref": "#/definitions/databaseAccountName"
},
"tags": {
"$ref": "azure#/definitions/tags"
},
"akas": {
"type": "array",
"items": {
"$ref": "#/definitions/databaseAccountAka"
}
},
"custom": {
"type": "object",
"properties": {
"azure": {
"$ref": "azure#/definitions/azureMetadata"
},
"createTimestamp": {
"$ref": "turbot#/definitions/isoTimestamp"
}
}
}
}
}
},
"additionalProperties": true,
"tests": [
{
"description": "Base - All Valid properties",
"input": {
"name": "rupzz-test",
"id": "/subscriptions/0a55cd76-e849-43b4-a2c2-23318da500e4/resourceGroups/turbot_resource_group/providers/Microsoft.DocumentDB/databaseAccounts/rupzz-test",
"type": "Microsoft.DocumentDB/databaseAccounts",
"location": "centralindia",
"turbot": {
"akas": [
"azure:///subscriptions/0a55cd76-e849-43b4-a2c2-23318da500e4/resourceGroups/turbot_resource_group/providers/Microsoft.DocumentDB/databaseAccounts/rupzz-test"
],
"title": "rupzz-test",
"custom": {
"azure": {
"subscriptionId": "0a55cd76-e849-43b4-a2c2-23318da500e4",
"resourceGroupName": "turbot_resource_group"
}
}
}
}
},
{
"description": "invalid - databaseAccounts property is missing",
"input": {
"name": "rupzz-test",
"id": "/subscriptions/0a55cd76-e849-43b4-a2c2-23318da500e4/resourceGroups/turbot_resource_group/providers/Microsoft.DocumentDB/rupzz-test",
"type": "Microsoft.DocumentDB/databaseAccounts",
"location": "centralindia",
"turbot": {
"akas": [
"azure:///subscriptions/0a55cd76-e849-43b4-a2c2-23318da500e4/resourceGroups/turbot_resource_group/providers/Microsoft.DocumentDB/databaseAccounts/rupzz-test"
],
"title": "rupzz-test",
"custom": {
"azure": {
"subscriptionId": "0a55cd76-e849-43b4-a2c2-23318da500e4",
"resourceGroupName": "turbot_resource_group"
}
}
}
},
"expected": false
},
{
"description": "invalid - turbot metadata property is missing",
"input": {
"id": "/subscriptions/0a55cd76-e849-43b4-a2c2-23318da500e4/resourceGroups/defaultresourcegroup-cin/providers/microsoft.operationalinsights/workspaces/defaultworkspace-0a55cd76-e849-43b4-a2c2-23318da500e4-cin",
"type": "Microsoft.OperationalInsights/workspaces",
"location": "centralindia"
},
"expected": false
}
],
".turbot": {
"uri": "tmod:@turbot/azure-cosmosdb#/definitions/databaseAccount",
"modUri": "tmod:@turbot/azure-cosmosdb"
}
}

databaseAccountAka

{
"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.DocumentDB/databaseAccounts/[a-zA-Z0-9-]{1,128}$",
"tests": [
{
"description": "base case",
"input": "azure:///subscriptions/0a55cd76-e849-43b4-a2c2-23318da500e4/resourceGroups/turbot_resource_group/providers/Microsoft.DocumentDB/databaseAccounts/rupzz-test"
},
{
"description": "invalid - subsription info missing",
"input": "providers/microsoft.operationalinsights/workspaces/defaultworkspace-0a55cd76-e849-43b4-a2c2-23318da500e4-cin",
"expected": false
}
],
".turbot": {
"uri": "tmod:@turbot/azure-cosmosdb#/definitions/databaseAccountAka",
"modUri": "tmod:@turbot/azure-cosmosdb"
}
}

databaseAccountId

{
"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-_().]*[A-Za-z0-9-_()]/providers/Microsoft.DocumentDB/databaseAccounts/[a-zA-Z0-9-]{1,128}$",
"tests": [
{
"description": "base case",
"input": "/subscriptions/9e3548cf-17e2-4751-b87e-b72bdd2c77f7/resourceGroups/turbot_resource_group/providers/Microsoft.DocumentDB/databaseAccounts/rupzz-test"
},
{
"description": "invalid - subsription info missing",
"input": "providers/microsoft.operationalinsights/workspaces/defaultworkspace-0a55cd76-e849-43b4-a2c2-23318da500e4-cin",
"expected": false
}
],
".turbot": {
"uri": "tmod:@turbot/azure-cosmosdb#/definitions/databaseAccountId",
"modUri": "tmod:@turbot/azure-cosmosdb"
}
}

databaseAccountName

{
"type": "string",
"pattern": "^[a-zA-Z0-9-]{1,128}$",
"tests": [
{
"description": "base case",
"input": "rupzz-test"
},
{
"description": "invalid - should not have (.) in the name",
"input": "test.01",
"expected": false
}
],
".turbot": {
"uri": "tmod:@turbot/azure-cosmosdb#/definitions/databaseAccountName",
"modUri": "tmod:@turbot/azure-cosmosdb"
}
}

databaseAccountServiceNow

{
"defaultColumns": {
"connector_offer": {
"column": "enabled",
"label": "Connector Offer"
},
"consistency_policy_default_consistency_level": {
"column": "enabled",
"label": "Default Consistency Level",
"path": "data.consistencyPolicy.defaultConsistencyLevel"
},
"consistency_policy_max_staleness_prefix": {
"column": "enabled",
"label": "Consistency Policy Max Staleness Prefix",
"path": "data.consistencyPolicy.maxStalenessPrefix"
},
"consistency_policy_max_interval": {
"column": "enabled",
"label": "Consistency Policy Max Interval",
"path": "data.consistencyPolicy.maxIntervalInSeconds"
},
"database_account_offer_type": {
"column": "enabled",
"label": "Database Account Offer Type"
},
"document_endpoint": {
"column": "enabled",
"label": "Document Endpoint"
},
"enable_automatic_failover": {
"column": "enabled",
"label": "Enable Automatic Failover",
"type": "boolean"
},
"enable_cassandra_connector": {
"column": "enabled",
"label": "Enable Cassandra Connector",
"type": "boolean"
},
"enable_multiple_write_locations": {
"column": "enabled",
"label": "Enable Multiple Write Locations",
"type": "boolean"
},
"failover_policies": {
"column": "enabled",
"label": "Failover Policies",
"type": "string",
"size": 1000
},
"id": {
"column": "enabled",
"label": "ID"
},
"is_virtual_network_filter_enabled": {
"column": "enabled",
"label": "Is Virtual Network Filter Enabled",
"type": "boolean"
},
"kind": {
"column": "enabled",
"label": "Kind"
},
"database_account_location": {
"column": "enabled",
"label": "Locations",
"path": "data.location"
},
"database_account_name": {
"column": "enabled",
"label": "Name",
"path": "data.name"
},
"provisioning_state": {
"column": "enabled",
"label": "Provisioning State"
},
"read_locations": {
"column": "enabled",
"label": "Read Locations",
"type": "string",
"size": 1000
},
"resource_group": {
"column": "enabled",
"label": "Resource Group",
"path": "metadata.azure.resourceGroupName"
},
"subscription_id": {
"column": "enabled",
"label": "Subscription ID",
"path": "metadata.azure.subscriptionId"
},
"tags": {
"column": "enabled",
"label": "Tags",
"type": "string",
"size": 1000
},
"virtual_network_rules": {
"column": "enabled",
"label": "Virtual Network Rules",
"type": "string",
"size": 1000
},
"write_locations": {
"column": "enabled",
"label": "Write Locations",
"type": "string",
"size": 1000
}
},
".turbot": {
"uri": "tmod:@turbot/azure-cosmosdb#/definitions/databaseAccountServiceNow",
"modUri": "tmod:@turbot/azure-cosmosdb"
}
}

databaseAccountStatus

{
"type": "string",
"enum": [
"Creating",
"Succeeded",
"Failed",
"Deleting",
"Updating"
],
".turbot": {
"uri": "tmod:@turbot/azure-cosmosdb#/definitions/databaseAccountStatus",
"modUri": "tmod:@turbot/azure-cosmosdb"
}
}

databaseAka

{
"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.DocumentDB/databaseAccounts/[a-zA-Z0-9-]{1,128}/apis/sql/databases/[a-zA-Z0-9-]{1,128}$",
"tests": [
{
"description": "base case",
"input": "azure:///subscriptions/0a55cd76-e849-43b4-a2c2-23318da500e4/resourceGroups/turbot_resource_group/providers/Microsoft.DocumentDB/databaseAccounts/rupzz-test/apis/sql/databases/test-db"
},
{
"description": "invalid - subscription info missing",
"input": "providers/microsoft.operationalinsights/workspaces/defaultworkspace-0a55cd76-e849-43b4-a2c2-23318da500e4-cin",
"expected": false
}
],
".turbot": {
"uri": "tmod:@turbot/azure-cosmosdb#/definitions/databaseAka",
"modUri": "tmod:@turbot/azure-cosmosdb"
}
}

databaseAkaMongoDB

{
"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.DocumentDB/databaseAccounts/[a-zA-Z0-9-]{1,128}/mongodbDatabases/[a-zA-Z0-9-]{1,128}$",
"tests": [
{
"description": "base case",
"input": "azure:///subscriptions/0a55cd76-e849-43b4-a2c2-23318da500e4/resourceGroups/turbot_resource_group/providers/Microsoft.DocumentDB/databaseAccounts/rupzz-test/mongodbDatabases/test-db"
},
{
"description": "invalid - subscription info missing",
"input": "providers/microsoft.operationalinsights/workspaces/defaultworkspace-0a55cd76-e849-43b4-a2c2-23318da500e4-cin",
"expected": false
}
],
".turbot": {
"uri": "tmod:@turbot/azure-cosmosdb#/definitions/databaseAkaMongoDB",
"modUri": "tmod:@turbot/azure-cosmosdb"
}
}

databaseAkaMongoDBApi

{
"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.DocumentDB/databaseAccounts/[a-zA-Z0-9-]{1,128}/apis/mongodb/databases/[a-zA-Z0-9-]{1,128}$",
"tests": [
{
"description": "base case",
"input": "azure:///subscriptions/0a55cd76-e849-43b4-a2c2-23318da500e4/resourceGroups/turbot_resource_group/providers/Microsoft.DocumentDB/databaseAccounts/rupzz-test/apis/mongodb/databases/test-db"
},
{
"description": "invalid - subscription info missing",
"input": "providers/microsoft.operationalinsights/workspaces/defaultworkspace-0a55cd76-e849-43b4-a2c2-23318da500e4-cin",
"expected": false
}
],
".turbot": {
"uri": "tmod:@turbot/azure-cosmosdb#/definitions/databaseAkaMongoDBApi",
"modUri": "tmod:@turbot/azure-cosmosdb"
}
}

databaseAkaSql

{
"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.DocumentDB/databaseAccounts/[a-zA-Z0-9-]{1,128}/sqlDatabases/[a-zA-Z0-9-]{1,128}$",
"tests": [
{
"description": "base case",
"input": "azure:///subscriptions/0a55cd76-e849-43b4-a2c2-23318da500e4/resourceGroups/turbot_resource_group/providers/Microsoft.DocumentDB/databaseAccounts/rupzz-test/sqlDatabases/test-db"
},
{
"description": "invalid - subscription info missing",
"input": "providers/microsoft.operationalinsights/workspaces/defaultworkspace-0a55cd76-e849-43b4-a2c2-23318da500e4-cin",
"expected": false
}
],
".turbot": {
"uri": "tmod:@turbot/azure-cosmosdb#/definitions/databaseAkaSql",
"modUri": "tmod:@turbot/azure-cosmosdb"
}
}

databaseKind

{
"type": "string",
"enum": [
"MongoDB",
"GlobalDocumentDB"
],
".turbot": {
"uri": "tmod:@turbot/azure-cosmosdb#/definitions/databaseKind",
"modUri": "tmod:@turbot/azure-cosmosdb"
}
}

databaseName

{
"type": "string",
"pattern": "^[a-z0-9-]{3,50}$",
"tests": [
{
"input": "foo"
},
{
"input": "0cho5"
},
{
"description": "invalid - too short",
"input": "",
"expected": false
},
{
"description": "invalid - too long",
"input": "abcvgderfgabcvgderfgabcvgderfgabcvgderfgabcvgderfgabcvgderfgabcvgderfgabcvgderfgabcvgderfgabcvgderfgabcvgderfgabcvgderfgabcvgderfg",
"expected": false
},
{
"description": "invalid - can't end with '.'",
"input": "Test.",
"expected": false
}
],
".turbot": {
"uri": "tmod:@turbot/azure-cosmosdb#/definitions/databaseName",
"modUri": "tmod:@turbot/azure-cosmosdb"
}
}

failOverPolicy

{
"type": "object",
"properties": {
"id": {
"type": "string"
},
"locationName": {
"type": "string"
},
"failoverPriority": {
"type": "integer"
}
},
".turbot": {
"uri": "tmod:@turbot/azure-cosmosdb#/definitions/failOverPolicy",
"modUri": "tmod:@turbot/azure-cosmosdb"
}
}

mongoDbCollection

{
"type": "object",
"properties": {
"name": {
"$ref": "#/definitions/collectionName"
},
"indexingPolicy": {
"type": "object"
},
"partitionKey": {
"type": "object"
},
"_conflicts": {
"type": "string"
},
"_rid": {
"type": "string"
},
"_ts": {
"type": "string"
},
"_self": {
"type": "string"
},
"_etag": {
"type": "string"
},
"_docs": {
"type": "string"
},
"_sprocs": {
"type": "string"
},
"_triggers": {
"type": "string"
},
"_udfs": {
"type": "string"
},
"turbot": {
"type": "object",
"properties": {
"title": {
"$ref": "#/definitions/collectionName"
},
"akas": {
"type": "array",
"items": {
"anyOf": [
{
"$ref": "#/definitions/collectionAka"
},
{
"$ref": "#/definitions/collectionAkaMongoDb"
}
]
}
},
"custom": {
"type": "object",
"properties": {
"databaseAccountName": {
"$ref": "#/definitions/databaseAccountName"
},
"databaseName": {
"$ref": "#/definitions/databaseName"
},
"databaseType": {
"$ref": "#/definitions/databaseKind"
},
"azure": {
"$ref": "azure#/definitions/azureMetadata"
},
"createTimestamp": {
"$ref": "turbot#/definitions/isoTimestamp"
}
}
}
}
}
},
"additionalProperties": true,
"tests": [
{
"description": "Base - All Valid properties",
"input": {
"name": "container01",
"turbot": {
"akas": [
"azure:///subscriptions/0a55cd76-e849-43b4-a2c2-23318da500e4/resourceGroups/turbot_resource_group/providers/Microsoft.DocumentDB/databaseAccounts/rupzz-test/apis/mongodb/databases/rup-base/collections/rupc"
],
"title": "test-db",
"custom": {
"databaseAccountName": "please-work",
"databaseName": "rupzz-test",
"azure": {
"subscriptionId": "0a55cd76-e849-43b4-a2c2-23318da500e4",
"resourceGroupName": "turbot_resource_group"
}
}
}
}
}
],
".turbot": {
"uri": "tmod:@turbot/azure-cosmosdb#/definitions/mongoDbCollection",
"modUri": "tmod:@turbot/azure-cosmosdb"
}
}

mongoDbCollectionServiceNow

{
"defaultColumns": {
"id": {
"column": "enabled",
"label": "ID"
},
"indexes": {
"column": "enabled",
"label": "Indexes",
"type": "string",
"size": 5000
},
"mongo_db_collection_name": {
"column": "enabled",
"label": "Name",
"path": "data.name"
},
"resource_group": {
"column": "enabled",
"label": "Resource Group",
"path": "metadata.azure.resourceGroupName"
},
"shard_key": {
"column": "enabled",
"label": "Shard Key",
"type": "string",
"size": 1000
},
"subscription_id": {
"column": "enabled",
"label": "Subscription Id",
"path": "metadata.azure.subscriptionId"
}
},
".turbot": {
"uri": "tmod:@turbot/azure-cosmosdb#/definitions/mongoDbCollectionServiceNow",
"modUri": "tmod:@turbot/azure-cosmosdb"
}
}

mongoDbDatabase

{
"type": "object",
"properties": {
"name": {
"$ref": "#/definitions/databaseName"
},
"_rid": {
"type": "string"
},
"_ts": {
"type": "string"
},
"_etag": {
"type": "string"
},
"_colls": {
"type": "string"
},
"_users": {
"type": "string"
},
"turbot": {
"type": "object",
"properties": {
"title": {
"$ref": "#/definitions/databaseName"
},
"akas": {
"type": "array",
"items": {
"anyOf": [
{
"$ref": "#/definitions/databaseAkaMongoDBApi"
},
{
"$ref": "#/definitions/databaseAkaMongoDB"
}
]
}
},
"custom": {
"type": "object",
"properties": {
"databaseAccountName": {
"$ref": "#/definitions/databaseAccountName"
},
"databaseType": {
"$ref": "#/definitions/databaseKind"
},
"azure": {
"$ref": "azure#/definitions/azureMetadata"
},
"createTimestamp": {
"$ref": "turbot#/definitions/isoTimestamp"
}
}
}
}
}
},
"additionalProperties": true,
"tests": [
{
"description": "Base - All Valid properties",
"input": {
"name": "rupzz-test",
"turbot": {
"akas": [
"azure:///subscriptions/0a55cd76-e849-43b4-a2c2-23318da500e4/resourceGroups/turbot_resource_group/providers/Microsoft.DocumentDB/databaseAccounts/rupzz-test/apis/mongodb/databases/rup-base"
],
"title": "test-db",
"custom": {
"databaseAccountName": "please-work",
"azure": {
"subscriptionId": "0a55cd76-e849-43b4-a2c2-23318da500e4",
"resourceGroupName": "turbot_resource_group"
}
}
}
}
}
],
".turbot": {
"uri": "tmod:@turbot/azure-cosmosdb#/definitions/mongoDbDatabase",
"modUri": "tmod:@turbot/azure-cosmosdb"
}
}

mongoDbDatabaseServiceNow

{
"defaultColumns": {
"id": {
"column": "enabled",
"label": "ID"
},
"mongo_db_database_name": {
"column": "enabled",
"label": "Name",
"path": "data.name"
},
"resource_group": {
"column": "enabled",
"label": "Resource Group",
"path": "metadata.azure.resourceGroupName"
},
"subscription_id": {
"column": "enabled",
"label": "Subscription ID",
"path": "metadata.azure.subscriptionId"
}
},
".turbot": {
"uri": "tmod:@turbot/azure-cosmosdb#/definitions/mongoDbDatabaseServiceNow",
"modUri": "tmod:@turbot/azure-cosmosdb"
}
}

readLocationValue

{
"type": "object",
"properties": {
"id": {
"type": "string"
},
"locationName": {
"type": "string"
},
"documentEndpoint": {
"type": "string"
},
"provisioningState": {
"type": "string"
},
"failoverPriority": {
"type": "integer"
}
},
".turbot": {
"uri": "tmod:@turbot/azure-cosmosdb#/definitions/readLocationValue",
"modUri": "tmod:@turbot/azure-cosmosdb"
}
}

sqlContainer

{
"type": "object",
"properties": {
"name": {
"$ref": "#/definitions/containerName"
},
"indexingPolicy": {
"type": "object"
},
"partitionKey": {
"type": "object"
},
"conflictResolutionPolicy": {
"type": "object"
},
"_rid": {
"type": "string"
},
"_ts": {
"type": "string"
},
"_etag": {
"type": "string"
},
"turbot": {
"type": "object",
"properties": {
"title": {
"$ref": "#/definitions/containerName"
},
"akas": {
"type": "array",
"items": {
"anyOf": [
{
"$ref": "#/definitions/containerAka"
},
{
"$ref": "#/definitions/containerAkaSql"
}
]
}
},
"custom": {
"type": "object",
"properties": {
"databaseAccountName": {
"$ref": "#/definitions/databaseAccountName"
},
"databaseName": {
"$ref": "#/definitions/databaseName"
},
"databaseType": {
"$ref": "#/definitions/databaseKind"
},
"azure": {
"$ref": "azure#/definitions/azureMetadata"
},
"createTimestamp": {
"$ref": "turbot#/definitions/isoTimestamp"
}
}
}
}
}
},
"additionalProperties": true,
"tests": [
{
"description": "Base - All Valid properties",
"input": {
"name": "container01",
"turbot": {
"akas": [
"azure:///subscriptions/0a55cd76-e849-43b4-a2c2-23318da500e4/resourceGroups/turbot_resource_group/providers/Microsoft.DocumentDB/databaseAccounts/rupzz-test/apis/sql/databases/rup-base/containers/rupc"
],
"title": "test-db",
"custom": {
"databaseAccountName": "please-work",
"databaseName": "rupzz-test",
"azure": {
"subscriptionId": "0a55cd76-e849-43b4-a2c2-23318da500e4",
"resourceGroupName": "turbot_resource_group"
}
}
}
}
}
],
".turbot": {
"uri": "tmod:@turbot/azure-cosmosdb#/definitions/sqlContainer",
"modUri": "tmod:@turbot/azure-cosmosdb"
}
}

sqlContainerServiceNow

{
"defaultColumns": {
"container_id": {
"column": "enabled",
"label": "ID",
"path": "data.sqlContainerId"
},
"default_ttl": {
"column": "enabled",
"label": "Default TTL",
"path": "data.defaultTtl"
},
"container_rid": {
"column": "enabled",
"label": "Container RID",
"path": "data._rid"
},
"last_updated_timestamp": {
"column": "enabled",
"label": "Last Updated Timestamp",
"path": "data._ts"
},
"partition_key_paths": {
"column": "enabled",
"label": "Partition Key Paths",
"path": "data.partitionKey.paths",
"type": "string",
"size": 1000
},
"partition_key_kind": {
"column": "enabled",
"label": "Partition Key Kind",
"path": "data.partitionKey.kind"
},
"unique_key_policy": {
"column": "enabled",
"label": "Unique Key Policy",
"path": "data.uniqueKeyPolicy",
"type": "string",
"size": 1000
},
"conflict_resolution_policy_mode": {
"column": "enabled",
"label": "Conflict Resolution Policy Mode",
"path": "data.conflictResolutionPolicy.mode"
},
"conflict_resolution_policy_path": {
"column": "enabled",
"label": "Conflict Resolution Policy Path",
"path": "data.conflictResolutionPolicy.conflictResolutionPath"
},
"conflict_resolution_policy_procedure": {
"column": "enabled",
"label": "Conflict Resolution Policy Procedure",
"path": "data.conflictResolutionPolicy.conflictResolutionProcedure"
},
"indexing_policy": {
"column": "enabled",
"label": "Indexing Policy",
"path": "data.indexingPolicy",
"type": "string",
"size": 2000
},
"resource_group": {
"column": "enabled",
"label": "Resource Group",
"path": "metadata.azure.resourceGroupName"
},
"subscription_id": {
"column": "enabled",
"label": "Subscription ID",
"path": "metadata.azure.subscriptionId"
},
"database_account": {
"column": "enabled",
"label": "Database Account",
"data": "metadata.databaseAccountName"
}
},
".turbot": {
"uri": "tmod:@turbot/azure-cosmosdb#/definitions/sqlContainerServiceNow",
"modUri": "tmod:@turbot/azure-cosmosdb"
}
}

sqlDatabase

{
"type": "object",
"properties": {
"name": {
"$ref": "#/definitions/databaseName"
},
"_rid": {
"type": "string"
},
"_ts": {
"type": "string"
},
"_etag": {
"type": "string"
},
"_colls": {
"type": "string"
},
"_users": {
"type": "string"
},
"turbot": {
"type": "object",
"properties": {
"title": {
"$ref": "#/definitions/databaseName"
},
"akas": {
"type": "array",
"items": {
"anyOf": [
{
"$ref": "#/definitions/databaseAka"
},
{
"$ref": "#/definitions/databaseAkaSql"
}
]
}
},
"custom": {
"type": "object",
"properties": {
"databaseAccountName": {
"$ref": "#/definitions/databaseAccountName"
},
"databaseType": {
"$ref": "#/definitions/databaseKind"
},
"azure": {
"$ref": "azure#/definitions/azureMetadata"
},
"createTimestamp": {
"$ref": "turbot#/definitions/isoTimestamp"
}
}
}
}
}
},
"additionalProperties": true,
"tests": [
{
"description": "Base - All Valid properties",
"input": {
"sqlDatabaseId": "rupzz-test",
"turbot": {
"akas": [
"azure:///subscriptions/0a55cd76-e849-43b4-a2c2-23318da500e4/resourceGroups/turbot_resource_group/providers/Microsoft.DocumentDB/databaseAccounts/rupzz-test/apis/sql/databases/rup-base"
],
"title": "test-db",
"custom": {
"databaseAccountName": "please-work",
"azure": {
"subscriptionId": "0a55cd76-e849-43b4-a2c2-23318da500e4",
"resourceGroupName": "turbot_resource_group"
}
}
}
}
}
],
".turbot": {
"uri": "tmod:@turbot/azure-cosmosdb#/definitions/sqlDatabase",
"modUri": "tmod:@turbot/azure-cosmosdb"
}
}

sqlDatabaseServiceNow

{
"defaultColumns": {
"database_colls": {
"column": "enabled",
"label": "Collections",
"path": "data._colls"
},
"sql_database_id": {
"column": "enabled",
"label": "ID",
"path": "data.sqlDatabaseId"
},
"database_rid": {
"column": "enabled",
"label": "Database RID",
"path": "data._rid"
},
"last_updated_timestamp": {
"column": "enabled",
"label": "Last Updated Timestamp",
"path": "data._ts"
},
"database_users": {
"column": "enabled",
"label": "Users",
"path": "data._users"
},
"resource_group": {
"column": "enabled",
"label": "Resource Group",
"path": "metadata.azure.resourceGroupName"
},
"subscription_id": {
"column": "enabled",
"label": "Subscription ID",
"path": "metadata.azure.subscriptionId"
},
"database_account": {
"column": "enabled",
"label": "Database Account",
"data": "metadata.databaseAccountName"
}
},
".turbot": {
"uri": "tmod:@turbot/azure-cosmosdb#/definitions/sqlDatabaseServiceNow",
"modUri": "tmod:@turbot/azure-cosmosdb"
}
}

writeLocationValue

{
"type": "object",
"properties": {
"id": {
"type": "string"
},
"locationName": {
"type": "string"
},
"documentEndpoint": {
"type": "string"
},
"provisioningState": {
"type": "string"
},
"failoverPriority": {
"type": "integer"
}
},
".turbot": {
"uri": "tmod:@turbot/azure-cosmosdb#/definitions/writeLocationValue",
"modUri": "tmod:@turbot/azure-cosmosdb"
}
}