dokytree/samples/it_v2/schemas/subnet.json

173 lines
2.5 KiB
JSON

{
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "YAML Schema for computer",
"type": "object",
"additionalProperties": false,
"properties": {
"todo": {
"type": "array",
"items": {
"type": "object",
"properties": {
"msg": {
"anyOf": [
{"type": "string"},
{"enum": [
"''"
]}
]
},
"priority": { "type": "integer" },
"duration": {
"anyOf": [
{"type": "integer"},
{"type": "string"},
{"enum": [
"''"
]}
]
}
}
}
},
"name": {
"oneOf": [
{"type": "string"},
{"enum": [
"''",
"'LAN'",
"'LAN01'",
"'LAN02'",
"'LAN03'",
"'LAN04'",
"'LAN06'",
"'LAN07'",
"'LAN08'",
"'LAN09'",
"'LAN10'",
"'WAN'",
"'WIFI'",
"'GUEST'",
"'DMZ'",
"'VPN'"
]}
]
},
"subnet": {
"type": "string",
"oneOf": [
{ "type": "string" },
{ "enum": [
"''",
"'192.168.0.0/24'",
"'192.168.1.0/24'"
]}
]
},
"gw": {
"oneOf": [
{ "type": "string" },
{ "enum": [
"''",
"'192.168.0.1'",
"'192.168.1.1'"
]}
]
},
"dns": {
"type": "array",
"items": {
"oneOf": [
{ "type": "string" },
{ "enum": [
"''",
"'192.168.0.1'",
"'192.168.1.1'"
]}
]
}
},
"vlans": {
"type": "array",
"items": {
"type": "integer"
}
},
"dhcp": {
"type": "object",
"properties": {
"server": {
"oneOf": [
{ "type": "string" },
{ "enum": [
"''",
"'192.168.0.1'",
"'192.168.1.1'"
]}
]
},
"ranges": {
"type": "array",
"items": {
"properties": {
"from": {
"oneOf": [
{ "type": "string" },
{ "enum": [
"''",
"'192.168.0.20'",
"'192.168.1.20'"
]}
]
},
"to": {
"oneOf": [
{ "type": "string" },
{ "enum": [
"''",
"'192.168.0.99'",
"'192.168.1.99'"
]}
]
}
}
}
}
}
},
"headfiles": {
"type": "array",
"items": {
"anyOf": [
{ "type": "string" },
{ "enum": [
"''"
]}
]
}
},
"files": {
"type": "array",
"items": {
"anyOf": [
{ "type": "string" },
{ "enum": [
"''"
]}
]
}
},
"footfiles": {
"type": "array",
"items": {
"anyOf": [
{ "type": "string" },
{ "enum": [
"''"
]}
]
}
}
}
}