From a999daf22b6a84f4b8388030c4ceca69b76760a8 Mon Sep 17 00:00:00 2001 From: slinkydeveloper Date: Tue, 20 Feb 2024 16:26:48 +0100 Subject: [PATCH] Deployment manifest (this should replace the old service discovery protobuf). --- deployment_manifest_schema.json | 59 +++++++++++++++++++++++++++++++++ 1 file changed, 59 insertions(+) create mode 100644 deployment_manifest_schema.json diff --git a/deployment_manifest_schema.json b/deployment_manifest_schema.json new file mode 100644 index 0000000..ae6e57b --- /dev/null +++ b/deployment_manifest_schema.json @@ -0,0 +1,59 @@ +{ + "$id": "https://restate.dev/deployment.manifest.json", + "$schema": "https://json-schema.org/draft/2020-12/schema", + "type": "object", + "title": "Deployment", + "description": "Restate deployment manifest", + "properties": { + "protocolMode": { + "title": "ProtocolMode", + "enum": ["BIDI_STREAM", "REQUEST_RESPONSE"] + }, + "minProtocolVersion": { + "type": "integer", + "minimum": 0 + }, + "maxProtocolVersion": { + "type": "integer", + "maximum": 0 + }, + "components": { + "type": "array", + "items": { + "type": "object", + "title": "Component", + "properties": { + "fullyQualifiedComponentName": { + "type": "string", + "pattern": "^[a-zA-Z]+[a-zA-Z0-9._-]*$" + }, + "componentType": { + "title": "ComponentType", + "enum": ["VIRTUAL_OBJECT", "SERVICE"] + }, + "handlers": { + "type": "array", + "items": { + "type": "object", + "title": "Handler", + "properties": { + "name": { + "type": "string", + "pattern": "^[a-zA-Z]+[a-zA-Z0-9_-]*$" + }, + "inputSchema": {}, + "outputSchema": {} + }, + "required": [ "name" ], + "additionalProperties": false + } + } + }, + "required": [ "fullyQualifiedComponentName","componentType", "handlers" ], + "additionalProperties": false + } + } + }, + "required": [ "minProtocolVersion", "maxProtocolVersion", "components" ], + "additionalProperties": false +} \ No newline at end of file