UNPKG

eslint-plugin-json-schema-validator

Version:
1 lines 10.6 kB
{"title":"JSON schema for Azure Functions host.json files","$schema":"http://json-schema.org/draft-04/schema#","type":"object","definitions":{"aggregator":{"type":"object","properties":{"batchSize":{"type":"integer","default":1000},"flushTimeout":{"pattern":"^(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d$","default":"00:00:30"}},"additionalProperties":false},"functions":{"type":"array","uniqueItems":true,"items":{"type":"string"}},"functionTimeout":{"oneOf":[{"type":"string","pattern":"^(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d$"},{"enum":[null]}]},"watchDirectories":{"type":"array","uniqueItems":true,"items":{"type":"string","minLength":1}},"singleton":{"type":"object","properties":{"lockPeriod":{"pattern":"^(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d$","default":"00:00:15"},"listenerLockPeriod":{"pattern":"^(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d$","default":"00:01:00"},"listenerLockRecoveryPollingInterval":{"pattern":"^(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d$","default":"00:01:00"},"lockAcquisitionTimeout":{"pattern":"^(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d$","default":"00:01:00"},"lockAcquisitionPollingInterval":{"pattern":"^(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d$"}},"additionalProperties":false},"healthMonitor":{"type":"object","properties":{"enabled":{"type":"boolean","default":true},"healthCheckInterval":{"pattern":"^(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d$","default":"00:00:10"},"healthCheckWindow":{"pattern":"^(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d$","default":"00:02:00"},"healthCheckThreshold":{"type":"integer","default":6},"counterThreshold":{"type":"number","default":0.8}},"additionalProperties":false},"http-extension":{"type":"object","required":["routePrefix"],"properties":{"routePrefix":{"type":"string","default":"api"},"maxConcurrentRequests":{"type":"integer","default":-1},"maxOutstandingRequests":{"type":"integer","default":-1},"dynamicThrottlesEnabled":{"type":"boolean","default":false},"hsts":{"type":"object","properties":{"isEnabled":{"type":"boolean"},"excludedHosts":{"type":"array","uniqueItems":true,"items":{"type":"string"}},"includeSubDomains":{"type":"boolean"},"maxAge":{"type":"string"},"preload":{"type":"boolean"}},"additionalProperties":false},"customHeaders":{"type":"object"}},"additionalProperties":false},"queues-extension":{"type":"object","properties":{"maxPollingInterval":{"type":"integer","default":1000},"batchSize":{"type":"integer","maximum":32,"minimum":1,"default":16},"maxDequeueCount":{"type":"integer","default":5},"newBatchThreshold":{"type":"integer"},"visibilityTimeout":{"pattern":"^(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d$","default":"00:00:00"}},"additionalProperties":false},"queues-extension-v2":{"type":"object","properties":{"maxPollingInterval":{"type":"string","pattern":"^[0-9][0-9]:[0-9][0-9]:[0-9][0-9](?:\\.[0-9]+)?$","default":"00:00:02"},"visibilityTimeout":{"type":"string","pattern":"^[0-9][0-9]:[0-9][0-9]:[0-9][0-9](?:\\.[0-9]+)?$","default":"00:00:00"},"batchSize":{"type":"integer","maximum":32,"minimum":1,"default":16},"maxDequeueCount":{"type":"integer","default":5},"newBatchThreshold":{"type":"integer"}},"additionalProperties":false},"durableTask-extension":{"type":"object","properties":{"hubName":{"type":"string","default":"DurableFunctionsHub"},"storageProvider":{"type":"object","properties":{"connectionStringName":{"type":"string"},"controlQueueBatchSize":{"type":"integer","default":32},"controlQueueBufferThreshold":{"type":"integer","default":256},"controlQueueVisibilityTimeout":{"type":"string","default":"00:05:00"},"maxQueuePollingInterval":{"type":"string","default":"00:00:30"},"partitionCount":{"type":"integer","default":4},"trackingStoreConnectionStringName":{"type":"string"},"trackingStoreNamePrefix":{"type":"string"},"workItemQueueVisibilityTimeout":{"type":"string","default":"00:05:00"}},"additionalProperties":false},"tracing":{"type":"object","properties":{"traceInputsAndOutputs":{"type":"boolean","default":false},"traceReplayEvents":{"type":"boolean","default":false}},"additionalProperties":false},"notifications":{"type":"object","properties":{"eventGrid":{"type":"object","properties":{"topicEndpoint":{"type":"string"},"keySettingName":{"type":"string"},"publishRetryCount":{"type":"integer","default":0},"publishRetryInterval":{"type":"string","default":"00:05:00"},"publishEventTypes":{"type":"array","uniqueItems":true,"items":[{"type":"string","enum":["Started","Completed","Failed","Terminated"]},{"type":"string","enum":["Started","Completed","Failed","Terminated"]},{"type":"string","enum":["Started","Completed","Failed","Terminated"]},{"type":"string","enum":["Started","Completed","Failed","Terminated"]}],"additionalItems":false}},"additionalProperties":false}},"additionalProperties":false},"maxConcurrentActivityFunctions":{"type":"integer","default":10},"maxConcurrentOrchestratorFunctions":{"type":"integer","default":10},"extendedSessionsEnabled":{"type":"boolean"},"extendedSessionIdleTimeoutInSeconds":{"type":"integer"},"useGracefulShutdown":{"type":"boolean","default":false}},"additionalProperties":false},"cosmosDB-extension":{"type":"object","properties":{"connectionMode":{"enum":["Gateway","Direct"],"default":"Gateway"},"protocol":{"enum":["Https","Tcp"],"default":"Https"}},"additionalProperties":false},"version-1":{"type":"object","properties":{"aggregator":{"$ref":"#/definitions/aggregator"},"applicationInsights":{"type":"object","properties":{"sampling":{"type":"object","properties":{"isEnabled":{"type":"boolean","default":true},"maxTelemetryItemsPerSecond":{"type":"integer","default":5}}}},"additionalProperties":false},"functions":{"$ref":"#/definitions/functions"},"functionTimeout":{"$ref":"#/definitions/functionTimeout"},"healthMonitor":{"$ref":"#/definitions/healthMonitor"},"id":{"type":"string","minLength":1},"logger":{"type":"object","properties":{"defaultLevel":{"enum":["Critical","Debug","Error","Information","None","Trace","Warning"],"default":"Information"},"categoryLevels":{"type":"object","additionalProperties":{"enum":["Critical","Debug","Error","Information","None","Trace","Warning"]}}}},"singleton":{"$ref":"#/definitions/singleton"},"watchDirectories":{"$ref":"#/definitions/watchDirectories"},"tracing":{"type":"object","properties":{"consoleLevel":{"enum":["off","error","warning","info","verbose"],"default":"verbose"},"fileLoggingMode":{"enum":["never","always","debugOnly"],"default":"debugOnly"}},"additionalProperties":false},"http":{"$ref":"#/definitions/http-extension"},"queues":{"$ref":"#/definitions/queues-extension"},"serviceBus":{"type":"object","properties":{"maxConcurrentCalls":{"type":"integer","default":16},"prefetchCount":{"type":"integer"},"autoRenewTimeout":{"type":"string","pattern":"^(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d$","default":"00:05:00"},"autoComplete":{"type":"boolean","default":true}},"additionalProperties":false},"eventHub":{"type":"object","properties":{"maxBatchSize":{"type":"integer"},"prefetchCount":{"type":"integer"},"batchCheckpointFrequency":{"type":"integer","default":1}},"additionalProperties":false},"durableTask":{"$ref":"#/definitions/durableTask-extension"},"documentDB":{"$ref":"#/definitions/cosmosDB-extension"}},"additionalProperties":false},"version-2":{"type":"object","properties":{"extensionBundle":{"type":"object","properties":{"id":{"type":"string"},"version":{"type":"string"}},"additionalProperties":false},"aggregator":{"$ref":"#/definitions/aggregator"},"functions":{"$ref":"#/definitions/functions"},"functionTimeout":{"$ref":"#/definitions/functionTimeout"},"healthMonitor":{"$ref":"#/definitions/healthMonitor"},"languageWorker":{"type":"object","properties":{"workersDirectory":{"type":"string"}},"additionalProperties":false},"logging":{"type":"object","properties":{"logLevel":{"type":"object","properties":{"default":{"enum":["Critical","Debug","Error","Information","None","Trace","Warning"],"default":"Information"}},"additionalProperties":{"enum":["Critical","Debug","Error","Information","None","Trace","Warning"]}},"applicationInsights":{"type":"object","properties":{"samplingSettings":{"type":"object","properties":{"isEnabled":{"type":"boolean","default":true},"excludedTypes":{"type":"string","default":null},"maxTelemetryItemsPerSecond":{"type":"integer","default":5}}}},"additionalProperties":false},"fileLoggingMode":{"enum":["never","always","debugOnly"],"default":"debugOnly"}}},"retry":{"type":"object","properties":{"strategy":{"enum":["exponentialBackoff","fixedDelay"],"default":"exponentialBackoff"},"maxRetryCount":{"type":"integer"},"delayInterval":{"oneOf":[{"type":"string","pattern":"^(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d$"},{"enum":[null]}]},"minimumInterval":{"oneOf":[{"type":"string","pattern":"^(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d$"},{"enum":[null]}]},"maximumInterval":{"oneOf":[{"type":"string","pattern":"^(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d$"},{"enum":[null]}]}}},"customHandler":{"type":"object","properties":{"description":{"type":"object","properties":{"defaultExecutablePath":{"type":"string"},"workingDirectory":{"type":"string"},"arguments":{"type":"array","items":{"type":"string"}}}},"enableForwardingHttpRequest":{"type":"boolean","default":false}},"additionalProperties":false},"singleton":{"$ref":"#/definitions/singleton"},"watchDirectories":{"$ref":"#/definitions/watchDirectories"},"version":{"enum":["2.0"]},"extensions":{"type":"object","properties":{"http":{"$ref":"#/definitions/http-extension"},"queues":{"$ref":"#/definitions/queues-extension-v2"},"serviceBus":{"type":"object","properties":{"prefetchCount":{"type":"integer"},"messageHandlerOptions":{"type":"object","properties":{"maxConcurrentCalls":{"type":"integer","default":16},"maxAutoRenewDuration":{"type":"string","pattern":"^(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d$","default":"00:05:00"},"autoComplete":{"type":"boolean","default":true}},"additionalProperties":false}},"additionalProperties":false},"eventHubs":{"type":"object","properties":{"eventProcessorOptions":{"type":"object","properties":{"maxBatchSize":{"type":"integer"},"receiveTimeout":{"type":"string","pattern":"^\\d\\d:\\d\\d:\\d\\d$","default":"00:01:00"},"enableReceiverRuntimeMetric":{"type":"boolean"},"prefetchCount":{"type":"integer"},"invokeProcessorAfterReceiveTimeout":{"type":"boolean"}},"additionalProperties":false},"batchCheckpointFrequency":{"type":"integer","default":1}},"additionalProperties":false},"durableTask":{"$ref":"#/definitions/durableTask-extension"},"cosmosDB":{"$ref":"#/definitions/cosmosDB-extension"}}}},"required":["version"],"additionalProperties":false}},"oneOf":[{"$ref":"#/definitions/version-1"},{"$ref":"#/definitions/version-2"}]}