diff --git a/src/schema-validation.jsonc b/src/schema-validation.jsonc index 1a645a8c425..b9582240d4f 100644 --- a/src/schema-validation.jsonc +++ b/src/schema-validation.jsonc @@ -151,7 +151,6 @@ "github-workflow.json", "helmfile.json", "hemtt-0.6.2.json", - "host.json", "install.json", "jest.json", "jovo-language-model.json", @@ -1211,9 +1210,6 @@ "hammerkit.json": { "externalSchema": ["base.json"] }, - "host.json": { - "unknownKeywords": ["examples"] - }, "hugo-theme.json": { "externalSchema": ["base.json"] }, diff --git a/src/schemas/json/host.json b/src/schemas/json/host.json index aa1ff6fe67b..c95ae892445 100644 --- a/src/schemas/json/host.json +++ b/src/schemas/json/host.json @@ -1,5 +1,6 @@ { - "$schema": "http://json-schema.org/draft-04/schema#", + "$schema": "http://json-schema.org/draft-07/schema#", + "$id": "https://json.schemastore.org/host.json", "definitions": { "aggregator": { "description": "Configuration settings for the function result aggregator.", @@ -11,6 +12,7 @@ "default": 1000 }, "flushTimeout": { + "type": "string", "description": "The aggregation duration. The aggregator will flush periodically based on this value.", "pattern": "^(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d$", "default": "00:00:30" @@ -34,7 +36,7 @@ "pattern": "^(-1|(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d)$" }, { - "enum": [null] + "type": "null" } ] }, @@ -52,26 +54,31 @@ "type": "object", "properties": { "lockPeriod": { + "type": "string", "description": "The period that function level locks are taken for (they will auto renew).", "pattern": "^(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d$", "default": "00:00:15" }, "listenerLockPeriod": { + "type": "string", "description": "The period that listener locks are taken for.", "pattern": "^(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d$", "default": "00:01:00" }, "listenerLockRecoveryPollingInterval": { + "type": "string", "description": "The time interval used for listener lock recovery if a listener lock couldn't be acquired on startup.", "pattern": "^(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d$", "default": "00:01:00" }, "lockAcquisitionTimeout": { + "type": "string", "description": "The maximum amount of time the runtime will try to acquire a lock.", "pattern": "^(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d$", "default": "00:01:00" }, "lockAcquisitionPollingInterval": { + "type": "string", "description": "The interval between lock acquisition attempts.", "pattern": "^(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d$" } @@ -88,11 +95,13 @@ "default": true }, "healthCheckInterval": { + "type": "string", "description": "The time interval between the periodic background health checks", "pattern": "^(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d$", "default": "00:00:10" }, "healthCheckWindow": { + "type": "string", "description": "A sliding time window used in conjunction with the healthCheckThreshold setting.", "pattern": "^(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d$", "default": "00:02:00" @@ -199,6 +208,7 @@ "type": "integer" }, "visibilityTimeout": { + "type": "string", "description": "The visibility timeout that will be applied to messages that fail processing.", "pattern": "^(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d$", "default": "00:00:00" @@ -810,6 +820,7 @@ "default": 20 }, "evaluationInterval": { + "type": "string", "description": "The interval at which the current rate of telemetry is reevaluated.", "pattern": "^(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d$", "default": "01:00:00" @@ -820,11 +831,13 @@ "default": 100 }, "samplingPercentageIncreaseTimeout": { + "type": "string", "description": "When the sampling percentage value changes, this property determines how soon afterwards Application Insights is allowed to raise sampling percentage again to capture more data.", "pattern": "^(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d$", "default": "00:00:01" }, "samplingPercentageDecreaseTimeout": { + "type": "string", "description": "When the sampling percentage value changes, this property determines how soon afterwards Application Insights is allowed to lower sampling percentage again to capture less data.", "pattern": "^(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d$", "default": "00:00:01" @@ -912,7 +925,7 @@ "type": "string" }, { - "enum": [null] + "type": "null" } ], "default": null @@ -983,6 +996,7 @@ "default": true }, "reconnectInterval": { + "type": "string", "description": "How often we reconnect to the Snapshot Debugger endpoint. Allowable range is one minute to one day.", "pattern": "^(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d$", "default": "00:15:00" @@ -994,7 +1008,7 @@ "type": "string" }, { - "enum": [null] + "type": "null" } ], "default": null @@ -1026,7 +1040,7 @@ "type": "string" }, { - "enum": [null] + "type": "null" } ], "default": null @@ -1043,7 +1057,7 @@ "type": "string" }, { - "enum": [null] + "type": "null" } ], "default": null @@ -1102,7 +1116,7 @@ "pattern": "^(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d$" }, { - "enum": [null] + "type": "null" } ] }, @@ -1114,7 +1128,7 @@ "pattern": "^(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d$" }, { - "enum": [null] + "type": "null" } ] }, @@ -1126,7 +1140,7 @@ "pattern": "^(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d$" }, { - "enum": [null] + "type": "null" } ] } @@ -1199,12 +1213,11 @@ "items": { "type": "string", "minLength": 1 - }, - "additionalProperties": false + } }, "version": { "description": "The version of the Azure Functions host.json schema. This is NOT the version of the Azure Functions host.", - "enum": ["2.0"] + "const": "2.0" }, "extensions": { "type": "object", @@ -1293,6 +1306,7 @@ "default": 1000 }, "operationTimeout": { + "type": "string", "description": "A time span value expressed in hh:mm:ss.", "pattern": "^(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d$", "default": "00:01:00" @@ -1635,7 +1649,7 @@ }, "telemetryMode": { "description": "Used to enable output of logs and traces in an OpenTelemetry output format to one or more endpoints that support OpenTelemetry.", - "enum": ["OpenTelemetry"] + "const": "OpenTelemetry" }, "configurationProfile": { "description": "Configuration profile to use for the Function App. Settings defined by the configuration profile will be implicitly applied to the Function App.", @@ -1664,7 +1678,6 @@ "additionalProperties": false } }, - "id": "https://json.schemastore.org/host.json", "oneOf": [ { "$ref": "#/definitions/version-1"