first GodDaemons group commit
This commit is contained in:
@@ -0,0 +1,119 @@
|
||||
{
|
||||
"$id": "https://nicsys.eu/god-daemons-config.schema.json",
|
||||
"title": "P42 God Daemons Configuration",
|
||||
"description": "Shared configuration for P42 God Daemons",
|
||||
"type": "object",
|
||||
"definitions": {
|
||||
"redisConnection": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"redisId": { "type": "string" },
|
||||
"role": { "type": "string", "enum": ["primary", "shard"] },
|
||||
"host": { "type": "string" },
|
||||
"tls": { "type": "boolean" },
|
||||
"port": { "type": "integer" },
|
||||
"user": { "type": "string" },
|
||||
"pass": { "type": "string" },
|
||||
"chansNamespace": { "type": "string" },
|
||||
"basePrefix": { "type": "string" }
|
||||
},
|
||||
"required": [
|
||||
"redisId",
|
||||
"chansNamespace",
|
||||
"basePrefix"
|
||||
]
|
||||
},
|
||||
"redisArray": {
|
||||
"type": "array",
|
||||
"items": { "$ref": "#/definitions/redisConnection" },
|
||||
"minItems": 1
|
||||
}
|
||||
},
|
||||
"properties": {
|
||||
"accessRights": {
|
||||
"type": "array",
|
||||
"items": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"roles": {
|
||||
"type": [
|
||||
"string",
|
||||
"array"
|
||||
],
|
||||
"items": {
|
||||
"type": "string"
|
||||
}
|
||||
},
|
||||
"canDo": {
|
||||
"type": "array",
|
||||
"items": {
|
||||
"type": "string"
|
||||
}
|
||||
}
|
||||
},
|
||||
"required": [
|
||||
"roles",
|
||||
"canDo"
|
||||
]
|
||||
}
|
||||
},
|
||||
"gps": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"gpsActionsChannel": { "type": "string" },
|
||||
"gpsActionsReply": { "type": "string" },
|
||||
"storage": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"agentHashKey": { "type": "string" },
|
||||
"agentsIndexKey": { "type": "string" },
|
||||
"positionsStream": { "type": "string" },
|
||||
"streamMaxLen": { "type": "integer", "minimum": 0 }
|
||||
},
|
||||
"required": [
|
||||
"agentHashKey",
|
||||
"agentsIndexKey",
|
||||
"positionsStream"
|
||||
]
|
||||
},
|
||||
"agentVectorChangeChannel": { "type": "string" },
|
||||
"collisionsChannel": { "type": "string" },
|
||||
"nearMissDistance": { "type": "number", "minimum": 0 },
|
||||
"prismTimeHeight": { "type": "number", "minimum": 0 },
|
||||
"collisionTickMs": { "type": "integer", "minimum": 1 },
|
||||
"prismRefreshLeadSeconds": { "type": "number", "minimum": 0 }
|
||||
},
|
||||
"required": [
|
||||
"gpsActionsChannel",
|
||||
"gpsActionsReply",
|
||||
"storage",
|
||||
"agentVectorChangeChannel",
|
||||
"collisionsChannel"
|
||||
]
|
||||
},
|
||||
"systemMesh": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"redis": { "$ref": "#/definitions/redisArray" }
|
||||
},
|
||||
"required": [
|
||||
"redis"
|
||||
]
|
||||
},
|
||||
"arenaMesh": {
|
||||
"type": "object",
|
||||
"properties": {
|
||||
"redis": { "$ref": "#/definitions/redisArray" }
|
||||
},
|
||||
"required": [
|
||||
"redis"
|
||||
]
|
||||
}
|
||||
},
|
||||
"required": [
|
||||
"accessRights",
|
||||
"systemMesh",
|
||||
"arenaMesh"
|
||||
],
|
||||
"additionalProperties": true
|
||||
}
|
||||
Reference in New Issue
Block a user