summaryrefslogtreecommitdiffstats
path: root/src/orchestrator/api/json-schemas/controller.json
blob: 3263ff210a343cba5f96c4883a33d682eb8a9c26 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
{
    "$schema": "http://json-schema.org/schema#",
    "type": "object",
    "properties": {
      "spec": {
        "required": [
          "host",
          "port",
          "type",
          "priority"
        ],
        "type": "object",
        "properties": {
          "priority": {
            "description": "Priority of controller to be called",
            "type": "integer",
            "example": 4,
            "minimum": 0,
            "maximum": 100
          },
          "host": {
            "description": "Controller reachibility information",
            "type": "string",
            "example": "10.7.100.4",
            "maxLength": 128
          },
          "type": {
            "description": "Type of controller (placement, action are 2 types supported)",
            "type": "string",
            "example": "placement",
            "maxLength": 48
          },
          "port": {
            "description": "Port for controller",
            "type": "integer",
            "minimum": 0,
            "maximum": 50000,
            "example": 9029
          }
        }
      },
      "metadata": {
        "required": ["name"],
        "properties": {
          "userData2": {
            "description": "User relevant data for the resource",
            "type": "string",
            "example": "Some more data",
            "maxLength": 512
          },
          "userData1": {
            "description": "User relevant data for the resource",
            "type": "string",
            "example": "Some data",
            "maxLength": 512
          },
          "name": {
            "description": "Name of the resource",
            "type": "string",
            "example": "ResName",
            "maxLength": 128,
            "pattern": "[-_0-9a-zA-Z]+$"
          },
          "description": {
            "description": "Description for the resource",
            "type": "string",
            "example": "Resource description",
            "maxLength": 1024
          }
        }
      }
    }
  }