diff --git a/junos/.gitkeep b/junos/.gitkeep new file mode 100644 index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391 diff --git a/junos/policy-options/prefix-list.json b/junos/policy-options/prefix-list.json new file mode 100644 index 0000000000000000000000000000000000000000..676bb292838af51cd790d2b96e8cf304f5a71195 --- /dev/null +++ b/junos/policy-options/prefix-list.json @@ -0,0 +1,34 @@ +{ + "$id": "https://example.com/arrays.schema.json", + "$schema": "http://json-schema.org/draft-03/schema#", + "description": "A representation of a prefix-list on Geant routers", + "type": "array", + "items": { "$ref": "#/$defs/prefix_list" }, + "$defs": { + "prefix_list": { + "type": "object", + "required": [ "name" ], + "oneOf": [ + {"required": ["prefixes"]}, + {"required": ["apply-path"]} + ], + "properties": { + "name": { + "type": "string", + "description": "The name of the prefix-list." + }, + "prefixes": { + "type": "array", + "items": { + "type": "string" + }, + "description": "Prefixes of the prefix list - for now no strict IP validation" + }, + "apply-path": { + "type": "string", + "description": "Apply path for dynamic prefix-lists" + } + } + } + } +} diff --git a/junos/snmp/snmp-community.json b/junos/snmp/snmp-community.json new file mode 100644 index 0000000000000000000000000000000000000000..700d22533ea5f6beb0787814540429a85d96c48d --- /dev/null +++ b/junos/snmp/snmp-community.json @@ -0,0 +1,42 @@ +{ + "$id": "https://example.com/arrays.schema.json", + "$schema": "http://json-schema.org/draft-03/schema#", + "description": "A representation of a SNMP community on Geant routers", + "type": "array", + "items": { "$ref": "#/$defs/snmp_community" }, + "$defs": { + "snmp_community": { + "type": "object", + "required": [ "name" , "authorization", "clients"], + "properties": { + "name": { + "type": "string", + "description": "The name of the community" + }, + "authorization": { + "type": "string", + "description": "The name of the community", + "enum":["read-only"] + }, + "clients": { + "type": "array", + "description": "Clients for a community", + "items": { + "type": "object", + "required": [ "client" , "description"], + "properties": { + "client": { + "type": "string", + "description": "The IP address" + }, + "description": { + "type": "string", + "description": "A meaningful description for a client" + } + } + } + } + } + } +} +} diff --git a/junos/system/login-class.json b/junos/system/login-class.json new file mode 100644 index 0000000000000000000000000000000000000000..d3f09232f9502087ea94b1a7c0316ad31ca5edd1 --- /dev/null +++ b/junos/system/login-class.json @@ -0,0 +1,38 @@ +{ + "$id": "https://example.com/arrays.schema.json", + "$schema": "https://json-schema.org/draft/2020-12/schema", + "description": "A representation of a user class on Geant routers", + "type": "array", + "items": { "$ref": "#/$defs/system_login_class" }, + "$defs": { + "system_login_class": { + "type": "object", + "required": [ "name", "permissions" ], + "properties": { + "name": { + "type": "string", + "description": "The name of the user." + }, + "idle-timeout": { + "type": "integer", + "description": "The timeout for a session in minutes" + }, + "allow-commands": { + "type": "string", + "description": "The list of allowed commands" + }, + "deny-commands": { + "type": "string", + "description": "The list of denied commands" + }, + "permissions": { + "type": "array", + "description": "The permissions for a user class", + "items": { + "type":"string" + } + } + } + } + } +} diff --git a/junos/system/login-user.json b/junos/system/login-user.json new file mode 100644 index 0000000000000000000000000000000000000000..39048d3304573f9ef8d13be59980e0fc51b81b4d --- /dev/null +++ b/junos/system/login-user.json @@ -0,0 +1,52 @@ +{ + "$id": "https://example.com/arrays.schema.json", + "$schema": "https://json-schema.org/draft/2020-12/schema", + "description": "A representation of a local user on Geant routers", + "type": "array", + "items": { "$ref": "#/$defs/system_login_user" }, + "$defs": { + "system_login_user": { + "type": "object", + "required": [ "name", "class" ], + "properties": { + "name": { + "type": "string", + "description": "The name of the user." + }, + "class": { + "type": "string", + "description": "The class of the user" + }, + "uid": { + "type": "integer", + + "description": "The uid of the user" + }, + "authentication": { + "type": "object", + "description": "The authentication methods for a user", + "properties": { + "ssh_rsa": { + "type": "array", + "description": "The ssh-rsa keys of the user", + "items":{ + "type": "string" + } + }, + "ssh_dsa": { + "type": "array", + "description": "The ssh-dsa keys of the user", + "items":{ + "type": "string" + } + }, + "encrypted_password": { + "type": "string", + "description": "The password of the user" + } + } + } + } + } + } +} diff --git a/validated_json_schemas/cfg_backup_password.json b/validated_json_schemas/cfg_backup_password.json new file mode 100644 index 0000000000000000000000000000000000000000..8ac71041ccdbe8bda15012d4e69012edf3412384 --- /dev/null +++ b/validated_json_schemas/cfg_backup_password.json @@ -0,0 +1,17 @@ +{ + "$schema": "https://json-schema.org/draft/2020-12/schema", + "$id": "http://example.com/example.json", + "type": "object", + "default": {}, + "title": "Root Schema", + "required": [ + "cfg_bakcup_password" + ], + "properties": { + "cfg_bakcup_password": { + "type": "string", + "default": "", + "title": "The cfg_bakcup_password Schema" + } + } +} diff --git a/validated_json_schemas/cfg_backup_path.json b/validated_json_schemas/cfg_backup_path.json new file mode 100644 index 0000000000000000000000000000000000000000..4e549e259f2549198921ae1577d745eb33e085a2 --- /dev/null +++ b/validated_json_schemas/cfg_backup_path.json @@ -0,0 +1,17 @@ +{ + "$schema": "https://json-schema.org/draft/2020-12/schema", + "$id": "http://example.com/example.json", + "type": "string", + "default": {}, + "title": "Root Schema", + "required": [ + "cfg_backup_path" + ], + "properties": { + "cfg_backup_path": { + "type": "string", + "default": "", + "title": "The cfg_backup_path Schema" + } + } +} diff --git a/validated_json_schemas/cfg_backup_username.json b/validated_json_schemas/cfg_backup_username.json new file mode 100644 index 0000000000000000000000000000000000000000..9d3313b20fa66a46d3bce82577bc595681d070a1 --- /dev/null +++ b/validated_json_schemas/cfg_backup_username.json @@ -0,0 +1,17 @@ +{ + "$schema": "https://json-schema.org/draft/2020-12/schema", + "$id": "http://example.com/example.json", + "type": "string", + "default": {}, + "title": "Root Schema", + "required": [ + "cfg_backup_username" + ], + "properties": { + "cfg_backup_username": { + "type": "string", + "default": "", + "title": "The cfg_backup_username Schema" + } + } +} diff --git a/validated_json_schemas/chassis_aggredated_ethernet_count.json b/validated_json_schemas/chassis_aggredated_ethernet_count.json new file mode 100644 index 0000000000000000000000000000000000000000..d197e1c96ef77a87bc0c94ce0242188e0a831a96 --- /dev/null +++ b/validated_json_schemas/chassis_aggredated_ethernet_count.json @@ -0,0 +1,17 @@ +{ + "$schema": "https://json-schema.org/draft/2020-12/schema", + "$id": "http://example.com/example.json", + "type": "integer", + "default": {}, + "title": "Root Schema", + "required": [ + "chassis_aggredated_ethernet_count" + ], + "properties": { + "chassis_aggredated_ethernet_count": { + "type": "integer", + "default": 0, + "title": "The chassis_aggredated_ethernet_count Schema" + } + } +} diff --git a/validated_json_schemas/chassis_enhanced_ip.json b/validated_json_schemas/chassis_enhanced_ip.json new file mode 100644 index 0000000000000000000000000000000000000000..614399ef84262d61bb2f213278c8dda89e8d163d --- /dev/null +++ b/validated_json_schemas/chassis_enhanced_ip.json @@ -0,0 +1,17 @@ +{ + "$schema": "https://json-schema.org/draft/2020-12/schema", + "$id": "http://example.com/example.json", + "type": "boolean", + "default": {}, + "title": "Root Schema", + "required": [ + "chassis_enhanced_ip" + ], + "properties": { + "chassis_enhanced_ip": { + "type": "boolean", + "default": false, + "title": "The chassis_enhanced_ip Schema" + } + } +} diff --git a/validated_json_schemas/chassis_graceful_switchover_inactive.json b/validated_json_schemas/chassis_graceful_switchover_inactive.json new file mode 100644 index 0000000000000000000000000000000000000000..22cef1130483fb21a4c4ad27493df8f6e9d97770 --- /dev/null +++ b/validated_json_schemas/chassis_graceful_switchover_inactive.json @@ -0,0 +1,17 @@ +{ + "$schema": "https://json-schema.org/draft/2020-12/schema", + "$id": "http://example.com/example.json", + "type": "boolean", + "default": {}, + "title": "Root Schema", + "required": [ + "chassis_graceful_switchover_inactive" + ], + "properties": { + "chassis_graceful_switchover_inactive": { + "type": "boolean", + "default": false, + "title": "The chassis_graceful_switchover_inactive Schema" + } + } +} diff --git a/validated_json_schemas/cos_classifiers.json b/validated_json_schemas/cos_classifiers.json new file mode 100644 index 0000000000000000000000000000000000000000..677c29436d876051508ed1de546de891209cfd79 --- /dev/null +++ b/validated_json_schemas/cos_classifiers.json @@ -0,0 +1,78 @@ +{ + "$schema": "https://json-schema.org/draft/2020-12/schema", + "$id": "http://example.com/example.json", + "type": "array", + "default": {}, + "title": "Root Schema", + "required": [ + "cos_classifiers" + ], + "properties": { + "cos_classifiers": { + "type": "array", + "default": [], + "title": "The cos_classifiers Schema", + "items": { + "type": "object", + "title": "A Schema", + "required": [ + "name", + "type", + "import", + "forwarding_classes" + ], + "properties": { + "name": { + "type": "string", + "title": "The name Schema" + }, + "type": { + "type": "string", + "title": "The type Schema" + }, + "import": { + "type": "string", + "title": "The import Schema" + }, + "forwarding_classes": { + "type": "array", + "title": "The forwarding_classes Schema", + "items": { + "type": "object", + "title": "A Schema", + "required": [ + "name", + "loss_priority", + "code_points" + ], + "properties": { + "name": { + "type": "string", + "title": "The name Schema" + }, + "loss_priority": { + "type": "string", + "title": "The loss_priority Schema" + }, + "code_points": { + "type": "array", + "title": "The code_points Schema", + "items": { + "anyOf": [{ + "type": "string", + "title": "A Schema" + }, + { + "type": "integer", + "title": "A Schema" + }] + } + } + } + } + } + } + } + } + } +} diff --git a/validated_json_schemas/cos_drop_profiles.json b/validated_json_schemas/cos_drop_profiles.json new file mode 100644 index 0000000000000000000000000000000000000000..d1080ed6ca3cdb0bed7038db473717e709f7cb3d --- /dev/null +++ b/validated_json_schemas/cos_drop_profiles.json @@ -0,0 +1,52 @@ +{ + "$schema": "https://json-schema.org/draft/2020-12/schema", + "$id": "http://example.com/example.json", + "type": "array", + "default": {}, + "title": "Root Schema", + "required": [ + "cos_drop_profiles" + ], + "properties": { + "cos_drop_profiles": { + "type": "array", + "default": [], + "title": "The cos_drop_profiles Schema", + "items": { + "type": "object", + "default": {}, + "title": "A Schema", + "required": [ + "name", + "fill_levels", + "drop_probabilities" + ], + "properties": { + "name": { + "type": "string", + "default": "", + "title": "The name Schema" + }, + "fill_levels": { + "type": "array", + "default": [], + "title": "The fill_levels Schema", + "items": { + "type": "integer", + "title": "A Schema" + } + }, + "drop_probabilities": { + "type": "array", + "default": [], + "title": "The drop_probabilities Schema", + "items": { + "type": "integer", + "title": "A Schema" + } + } + } + } + } + } +} diff --git a/validated_json_schemas/cos_forwarding_classes.json b/validated_json_schemas/cos_forwarding_classes.json new file mode 100644 index 0000000000000000000000000000000000000000..02f9ab8a64224b7036c1897e9a92de9ff84760c9 --- /dev/null +++ b/validated_json_schemas/cos_forwarding_classes.json @@ -0,0 +1,44 @@ +{ + "$schema": "https://json-schema.org/draft/2020-12/schema", + "$id": "http://example.com/example.json", + "type": "array", + "default": {}, + "title": "Root Schema", + "required": [ + "cos_forwarding_classes" + ], + "properties": { + "cos_forwarding_classes": { + "type": "array", + "default": [], + "title": "The cos_forwarding_classes Schema", + "items": { + "type": "object", + "default": {}, + "title": "A Schema", + "required": [ + "name", + "queue_num", + "priority" + ], + "properties": { + "name": { + "type": "string", + "default": "", + "title": "The name Schema" + }, + "queue_num": { + "type": "integer", + "default": 0, + "title": "The queue_num Schema" + }, + "priority": { + "type": "string", + "default": "", + "title": "The priority Schema" + } + } + } + } + } +} diff --git a/validated_json_schemas/cos_interfaces.json b/validated_json_schemas/cos_interfaces.json new file mode 100644 index 0000000000000000000000000000000000000000..fa87289d23a911ed0766b78e9aa6626bf66439d6 --- /dev/null +++ b/validated_json_schemas/cos_interfaces.json @@ -0,0 +1,86 @@ +{ + "$schema": "https://json-schema.org/draft/2020-12/schema", + "$id": "http://example.com/example.json", + "type": "array", + "default": {}, + "title": "Root Schema", + "required": [ + "cos_interfaces" + ], + "properties": { + "cos_interfaces": { + "type": "array", + "default": [], + "title": "The cos_interfaces Schema", + "items": { + "type": "object", + "title": "A Schema", + "required": [ + "regex", + "scheduler_map", + "classifiers", + "rewrite_rules" + ], + "properties": { + "regex": { + "type": "string", + "title": "The regex Schema" + }, + "scheduler_map": { + "type": "string", + "title": "The scheduler_map Schema" + }, + "classifiers": { + "type": "array", + "title": "The classifiers Schema", + "items": { + "type": "object", + "title": "A Schema", + "required": [ + "type", + "name" + ], + "properties": { + "type": { + "type": "string", + "title": "The type Schema" + }, + "name": { + "type": "string", + "title": "The name Schema" + } + } + } + }, + "rewrite_rules": { + "type": "array", + "title": "The rewrite_rules Schema", + "items": { + "type": "object", + "title": "A Schema", + "required": [ + "type", + "name", + "protocol" + ], + "properties": { + "type": { + "type": "string", + "title": "The type Schema" + }, + "name": { + "type": "string", + "title": "The name Schema" + }, + "protocol": { + "type": "string", + "title": "The protocol Schema" + } + } + } + } + } + } + } + } +} diff --git a/validated_json_schemas/cos_rewrite_rules.json b/validated_json_schemas/cos_rewrite_rules.json new file mode 100644 index 0000000000000000000000000000000000000000..38b574fe4cb8f4549bbf6919c7b63ca9f222d4cc --- /dev/null +++ b/validated_json_schemas/cos_rewrite_rules.json @@ -0,0 +1,89 @@ +{ + "$schema": "https://json-schema.org/draft/2020-12/schema", + "$id": "http://example.com/example.json", + "type": "array", + "default": {}, + "title": "Root Schema", + "required": [ + "cos_rewrite_rules" + ], + "properties": { + "cos_rewrite_rules": { + "type": "array", + "default": [], + "title": "The cos_rewrite_rules Schema", + "items": { + "type": "object", + "default": {}, + "title": "A Schema", + "required": [ + "name", + "type", + "import", + "forwarding_classes" + ], + "properties": { + "name": { + "type": "string", + "default": "", + "title": "The name Schema" + }, + "type": { + "type": "string", + "default": "", + "title": "The type Schema" + }, + "import": { + "type": "string", + "default": "", + "title": "The import Schema" + }, + "forwarding_classes": { + "type": "array", + "default": [], + "title": "The forwarding_classes Schema", + "items": { + "type": "object", + "default": {}, + "title": "A Schema", + "required": [ + "name", + "loss_priorities" + ], + "properties": { + "name": { + "type": "string", + "default": "", + "title": "The name Schema" + }, + "loss_priorities": { + "type": "array", + "default": [], + "title": "The loss_priorities Schema", + "items": { + "type": "object", + "title": "A Schema", + "required": [ + "type", + "code_point" + ], + "properties": { + "type": { + "type": "string", + "title": "The type Schema" + }, + "code_point": { + "type": "string", + "title": "The code_point Schema" + } + } + } + } + } + } + } + } + } + } + } +} diff --git a/validated_json_schemas/cos_scheduler_maps.json b/validated_json_schemas/cos_scheduler_maps.json new file mode 100644 index 0000000000000000000000000000000000000000..ee1a7907d0650c417ce2af17f15361b622153073 --- /dev/null +++ b/validated_json_schemas/cos_scheduler_maps.json @@ -0,0 +1,56 @@ +{ + "$schema": "https://json-schema.org/draft/2020-12/schema", + "$id": "http://example.com/example.json", + "type": "array", + "default": {}, + "title": "Root Schema", + "required": [ + "cos_scheduler_maps" + ], + "properties": { + "cos_scheduler_maps": { + "type": "array", + "default": [], + "title": "The cos_scheduler_maps Schema", + "items": { + "type": "object", + "default": {}, + "title": "A Schema", + "required": [ + "name", + "mappings" + ], + "properties": { + "name": { + "type": "string", + "default": "", + "title": "The name Schema" + }, + "mappings": { + "type": "array", + "default": [], + "title": "The mappings Schema", + "items": { + "type": "object", + "title": "A Schema", + "required": [ + "class", + "scheduler" + ], + "properties": { + "class": { + "type": "string", + "title": "The class Schema" + }, + "scheduler": { + "type": "string", + "title": "The scheduler Schema" + } + } + } + } + } + } + } + } +} diff --git a/validated_json_schemas/cos_schedulers.json b/validated_json_schemas/cos_schedulers.json new file mode 100644 index 0000000000000000000000000000000000000000..9d4689a280452e5a137d6f10bfffb58d0f3707c4 --- /dev/null +++ b/validated_json_schemas/cos_schedulers.json @@ -0,0 +1,104 @@ +{ + "$schema": "https://json-schema.org/draft/2020-12/schema", + "$id": "http://example.com/example.json", + "type": "array", + "default": {}, + "title": "Root Schema", + "required": [ + "cos_schedulers" + ], + "properties": { + "cos_schedulers": { + "type": "array", + "default": [], + "title": "The cos_schedulers Schema", + "items": { + "type": "object", + "title": "A Schema", + "required": [ + "name", + "transmit_rate", + "buffer_size", + "priority", + "drop_profile_map" + ], + "properties": { + "name": { + "type": "string", + "title": "The name Schema" + }, + "transmit_rate": { + "type": "object", + "title": "The transmit_rate Schema", + "required": [ + "unit", + "value" + ], + "properties": { + "unit": { + "type": "string", + "title": "The unit Schema" + }, + "value": { + "type": "integer", + "title": "The value Schema" + } + } + }, + "buffer_size": { + "type": "object", + "title": "The buffer_size Schema", + "required": [ + "unit", + "value" + ], + "properties": { + "unit": { + "type": "string", + "title": "The unit Schema" + }, + "value": { + "type": [ + "string", + "integer" + ], + "title": "The value Schema" + } + } + }, + "priority": { + "type": "string", + "title": "The priority Schema" + }, + "drop_profile_map": { + "type": "object", + "default": {}, + "title": "The drop_profile_map Schema", + "required": [ + "loss_priority", + "protocol", + "drop_profile" + ], + "properties": { + "loss_priority": { + "type": "string", + "default": "", + "title": "The loss_priority Schema" + }, + "protocol": { + "type": "string", + "default": "", + "title": "The protocol Schema" + }, + "drop_profile": { + "type": "string", + "default": "", + "title": "The drop_profile Schema" + } + } + } + } + } + } + } +} diff --git a/validated_json_schemas/family_inet_filters.json b/validated_json_schemas/family_inet_filters.json new file mode 100644 index 0000000000000000000000000000000000000000..d87a0c0de517e903f9f186ecba95821c5f9b873e --- /dev/null +++ b/validated_json_schemas/family_inet_filters.json @@ -0,0 +1,149 @@ +{ + "$schema": "https://json-schema.org/draft/2020-12/schema", + "$id": "http://example.com/example.json", + "type": "object", + "default": {}, + "title": "Root Schema", + "required": [ + "family_inet_filters" + ], + "properties": { + "family_inet_filters": { + "type": "array", + "default": [], + "title": "The family_inet_filters Schema", + "items": { + "type": "object", + "default": {}, + "title": "A Schema", + "required": [ + "name", + "terms", + "interface" + ], + "properties": { + "name": { + "type": "string", + "default": "", + "title": "The name Schema" + }, + "terms": { + "type": "array", + "default": [], + "title": "The terms Schema", + "items": { + "type": "object", + "title": "A Schema", + "required": [ + "name", + "from", + "then" + ], + "properties": { + "name": { + "type": "string", + "title": "The name Schema" + }, + "from": { + "type": "object", + "title": "The from Schema", + "required": [ + "protocol", + "tcp_established", + "source_prefix_lists", + "destination_ports", + "source_ports" + ], + "properties": { + "protocol": { + "type": "string", + "title": "The protocol Schema" + }, + "tcp_established": { + "type": "string", + "default": "", + "title": "The tcp_established Schema" + }, + "source_prefix_lists": { + "type": "array", + "title": "The source_prefix_lists Schema", + "items": { + "type": "string", + "title": "A Schema" + } + }, + "destination_ports": { + "type": "array", + "title": "The destination_ports Schema", + "items": { + "anyOf": [{ + "type": "integer", + "title": "A Schema" + }, + { + "type": "string", + "default": "", + "title": "A Schema" + }] + } + }, + "source_ports": { + "type": "array", + "title": "The source_ports Schema", + "items": { + "anyOf": [{ + "type": "string", + "default": "", + "title": "A Schema" + }, + { + "type": "integer", + "default": 0, + "title": "A Schema" + }] + } + } + } + }, + "then": { + "type": "object", + "title": "The then Schema", + "required": [ + "action" + ], + "properties": { + "action": { + "type": "string", + "title": "The action Schema" + } + } + } + } + } + }, + "interface": { + "type": "object", + "default": {}, + "title": "The interface Schema", + "required": [ + "name", + "direction" + ], + "properties": { + "name": { + "type": "string", + "default": "", + "title": "The name Schema" + }, + "direction": { + "type": "string", + "default": "", + "title": "The direction Schema" + } + } + } + } + } + } + } +} diff --git a/validated_json_schemas/firewall.json b/validated_json_schemas/firewall.json new file mode 100644 index 0000000000000000000000000000000000000000..ea93f4404a0afc2abe592f8e22d60fa8ecde67a3 --- /dev/null +++ b/validated_json_schemas/firewall.json @@ -0,0 +1,162 @@ +{ + "$schema": "https://json-schema.org/draft/2020-12/schema", + "$id": "http://example.com/example.json", + "type": "object", + "default": {}, + "title": "Root Schema", + "required": [ ], + "properties": { + "firewall": { + "type": "object", + "default": {}, + "title": "The firewall Schema", + "required": [ + "inet" + ], + "properties": { + "inet": { + "type": "object", + "default": {}, + "title": "The inet Schema", + "required": [ + "ROUTER_access" + ], + "properties": { + "ROUTER_access": { + "type": "object", + "default": {}, + "title": "The ROUTER_access Schema", + "required": [ + "terms" + ], + "properties": { + "terms": { + "type": "array", + "default": [], + "title": "The terms Schema", + "items": { + "type": "object", + "title": "A Schema", + "required": [ + "name", + "from", + "then" + ], + "properties": { + "name": { + "type": "string", + "title": "The name Schema" + }, + "from": { + "type": "object", + "title": "The from Schema", + "required": [ + "protocol", + "tcp-established", + "source-prefix-list", + "destination-port", + "port", + "icmp-type" + ], + "properties": { + "protocol": { + "type": "string", + "title": "The protocol Schema" + }, + "tcp-established": { + "type": "null", + "default": null, + "title": "The tcp-established Schema" + }, + "source-prefix-list": { + "type": "array", + "title": "The source-prefix-list Schema", + "items": { + "type": "string", + "title": "A Schema" + } + }, + "destination-port": { + "type": [ + "string", + "array", + "integer" + ], + "title": "The destination-port Schema", + "items": { + "type": "string", + "title": "A Schema" + } + }, + "port": { + "type": [ + "string", + "array", + "integer" + ], + "title": "The port Schema", + "items": { + "anyOf": [{ + "type": "integer", + "title": "A Schema" + }, + { + "type": "string", + "title": "A Schema" + }] + } + }, + "icmp-type": { + "type": "array", + "default": [], + "title": "The icmp-type Schema", + "items": { + "type": "string", + "title": "A Schema" + } + } + } + }, + "then": { + "type": [ + "string", + "array" + ], + "title": "The then Schema", + "items": { + "anyOf": [{ + "type": "object", + "title": "A Schema", + "required": [ + "count", + "policer" + ], + "properties": { + "count": { + "type": "string", + "default": "", + "title": "The count Schema" + }, + "policer": { + "type": "string", + "title": "The policer Schema" + } + } + }, + { + "type": "string", + "title": "A Schema" + }] + } + } + } + } + } + } + } + } + } + } + } + } +} diff --git a/validated_json_schemas/forwarding_options_families.json b/validated_json_schemas/forwarding_options_families.json new file mode 100644 index 0000000000000000000000000000000000000000..64e80a477f87d4da61c5f74a3d0aa7f73570fb36 --- /dev/null +++ b/validated_json_schemas/forwarding_options_families.json @@ -0,0 +1,35 @@ +{ + "$schema": "https://json-schema.org/draft/2020-12/schema", + "$id": "http://example.com/example.json", + "type": "array", + "default": {}, + "title": "Root Schema", + "required": [ + "forwarding_options_families" + ], + "properties": { + "forwarding_options_families": { + "type": "array", + "default": [], + "title": "The forwarding_options_families Schema", + "items": { + "type": "object", + "title": "A Schema", + "required": [ + "name", + "template" + ], + "properties": { + "name": { + "type": "string", + "title": "The name Schema" + }, + "template": { + "type": "string", + "title": "The template Schema" + } + } + } + } + } +} diff --git a/validated_json_schemas/forwarding_options_flow_servers.json b/validated_json_schemas/forwarding_options_flow_servers.json new file mode 100644 index 0000000000000000000000000000000000000000..702753933a8ac771495f505e3fdbcdc321df7aa9 --- /dev/null +++ b/validated_json_schemas/forwarding_options_flow_servers.json @@ -0,0 +1,36 @@ +{ + "$schema": "https://json-schema.org/draft/2020-12/schema", + "$id": "http://example.com/example.json", + "type": "array", + "default": {}, + "title": "Root Schema", + "required": [ + "forwarding_options_flow_servers" + ], + "properties": { + "forwarding_options_flow_servers": { + "type": "array", + "default": [], + "title": "The forwarding_options_flow_servers Schema", + "items": { + "type": "object", + "title": "A Schema", + "required": [ + "address", + "port" + ], + "properties": { + "address": { + "type": "string", + "pattern": "^(([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\\.){3}([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])$", + "title": "The address Schema" + }, + "port": { + "type": "integer", + "title": "The port Schema" + } + } + } + } + } +} diff --git a/validated_json_schemas/forwarding_options_inline_jflow.json b/validated_json_schemas/forwarding_options_inline_jflow.json new file mode 100644 index 0000000000000000000000000000000000000000..a0e1694624a18d9c8497aefac51782abb9b630e3 --- /dev/null +++ b/validated_json_schemas/forwarding_options_inline_jflow.json @@ -0,0 +1,32 @@ +{ + "$schema": "https://json-schema.org/draft/2020-12/schema", + "$id": "http://example.com/example.json", + "type": "object", + "default": {}, + "title": "Root Schema", + "required": [ ], + "properties": { + "forwarding_options_inline_jflow": { + "type": "object", + "default": {}, + "title": "The forwarding_options_inline_jflow Schema", + "required": [ + "source_address", + "flow_export_rate" + ], + "properties": { + "source_address": { + "type": "string", + "pattern": "^(([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\\.){3}([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])$", + "default": "", + "title": "The source_address Schema" + }, + "flow_export_rate": { + "type": "integer", + "default": 0, + "title": "The flow_export_rate Schema" + } + } + } + } +} diff --git a/validated_json_schemas/global_snmp_communities.json b/validated_json_schemas/global_snmp_communities.json new file mode 100644 index 0000000000000000000000000000000000000000..8990ce79ab138f282cb5c9cf740ee193e2d673f6 --- /dev/null +++ b/validated_json_schemas/global_snmp_communities.json @@ -0,0 +1,49 @@ +{ + "$schema": "https://json-schema.org/draft/2020-12/schema", + "$id": "http://example.com/example.json", + "type": "object", + "default": {}, + "title": "Root Schema", + "required": [ + "global_snmp_communities" + ], + "properties": { + "global_snmp_communities": { + "type": "object", + "default": {}, + "title": "The global_snmp_communities Schema", + "required": [ + "librenms-community" + ], + "properties": { + "librenms-community": { + "type": "object", + "default": {}, + "title": "The librenms-community Schema", + "required": [ + "auth", + "clients" + ], + "properties": { + "auth": { + "type": "string", + "default": "", + "title": "The auth Schema" + }, + "clients": { + "type": "array", + "default": [], + "title": "The clients Schema", + "items": { + "type": "string", + "pattern": "^(([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\\.){3}([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])(\\/(3[0-2]|[1-2][0-9]|[0-9]))$", + "default": "", + "title": "A Schema" + } + } + } + } + } + } + } +} diff --git a/validated_json_schemas/po_prefix_lists.json b/validated_json_schemas/po_prefix_lists.json new file mode 100644 index 0000000000000000000000000000000000000000..d5f9fc57a814e73c5d176634281991027f27696c --- /dev/null +++ b/validated_json_schemas/po_prefix_lists.json @@ -0,0 +1,40 @@ +{ + "$schema": "https://json-schema.org/draft/2020-12/schema", + "$id": "http://example.com/example.json", + "type": "object", + "default": {}, + "title": "Root Schema", + "required": [ + "po_prefix_lists" + ], + "properties": { + "po_prefix_lists": { + "type": "array", + "default": [], + "title": "The po_prefix_lists Schema", + "items": { + "type": "object", + "title": "A Schema", + "required": [ + "name", + "prefixes" + ], + "properties": { + "name": { + "type": "string", + "title": "The name Schema" + }, + "prefixes": { + "type": "array", + "title": "The prefixes Schema", + "items": { + "type": "string", + "pattern": "^(([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\\.){3}([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])(\\/(3[0-2]|[1-2][0-9]|[0-9]))$", + "title": "A Schema" + } + } + } + } + } + } +} diff --git a/validated_json_schemas/service_rpm.json b/validated_json_schemas/service_rpm.json new file mode 100644 index 0000000000000000000000000000000000000000..9399b4dbaad47956f1a51c62c46287f1e0703744 --- /dev/null +++ b/validated_json_schemas/service_rpm.json @@ -0,0 +1,143 @@ +{ + "$schema": "https://json-schema.org/draft/2020-12/schema", + "$id": "http://example.com/example.json", + "type": "object", + "default": {}, + "title": "Root Schema", + "required": [ ], + "properties": { + "service_rpm": { + "type": "object", + "default": {}, + "title": "The service_rpm Schema", + "required": [ + "traceoptions", + "twamp" + ], + "properties": { + "traceoptions": { + "type": "object", + "default": {}, + "title": "The traceoptions Schema", + "required": [ + "filename", + "filesize", + "flags" + ], + "properties": { + "filename": { + "type": "string", + "default": "", + "title": "The filename Schema" + }, + "filesize": { + "type": "string", + "default": "", + "title": "The filesize Schema" + }, + "flags": { + "type": "array", + "default": [], + "title": "The flags Schema", + "items": { + "type": "string", + "default": "", + "title": "A Schema" + } + } + } + }, + "twamp": { + "type": "object", + "default": {}, + "title": "The twamp Schema", + "required": [ + "server", + "client_lists" + ], + "properties": { + "server": { + "type": "object", + "default": {}, + "title": "The server Schema", + "required": [ + "auth_mode", + "max_duration", + "max_sessions", + "max_sessions_per_conn", + "max_connections", + "max_connections_per_client", + "port" + ], + "properties": { + "auth_mode": { + "type": "string", + "default": "", + "title": "The auth_mode Schema" + }, + "max_duration": { + "type": "integer", + "default": 0, + "title": "The max_duration Schema" + }, + "max_sessions": { + "type": "integer", + "default": 0, + "title": "The max_sessions Schema" + }, + "max_sessions_per_conn": { + "type": "integer", + "default": 0, + "title": "The max_sessions_per_conn Schema" + }, + "max_connections": { + "type": "integer", + "default": 0, + "title": "The max_connections Schema" + }, + "max_connections_per_client": { + "type": "integer", + "default": 0, + "title": "The max_connections_per_client Schema" + }, + "port": { + "type": "integer", + "default": 0, + "title": "The port Schema" + } + } + }, + "client_lists": { + "type": "array", + "default": [], + "title": "The client_lists Schema", + "items": { + "type": "object", + "title": "A Schema", + "required": [ + "name", + "address" + ], + "properties": { + "name": { + "type": "string", + "title": "The name Schema" + }, + "address": { + "type": "array", + "pattern": "^(([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\\.){3}([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])(\\/(3[0-2]|[1-2][0-9]|[0-9]))$", + "title": "The address Schema", + "items": { + "type": "string", + "title": "A Schema" + } + } + } + } + } + } + } + } + } + } +} diff --git a/validated_json_schemas/service_version_ipfix.json b/validated_json_schemas/service_version_ipfix.json new file mode 100644 index 0000000000000000000000000000000000000000..960be918b563c5ff78e968f1a4ab26fc977d0731 --- /dev/null +++ b/validated_json_schemas/service_version_ipfix.json @@ -0,0 +1,68 @@ +{ + "$schema": "https://json-schema.org/draft/2020-12/schema", + "$id": "http://example.com/example.json", + "type": "object", + "default": {}, + "title": "Root Schema", + "required": [ ], + "properties": { + "service_version_ipfix": { + "type": "object", + "default": {}, + "title": "The service_version_ipfix Schema", + "required": [ + "templates" + ], + "properties": { + "templates": { + "type": "array", + "default": [], + "title": "The templates Schema", + "items": { + "type": "object", + "title": "A Schema", + "required": [ + "proto", + "flow_active_timeout", + "flow_inactive_timeout", + "next_hop_learning", + "template_refresh_rate", + "option_refresh_rate", + "protocol_template" + ], + "properties": { + "proto": { + "type": "string", + "title": "The proto Schema" + }, + "flow_active_timeout": { + "type": "integer", + "title": "The flow_active_timeout Schema" + }, + "flow_inactive_timeout": { + "type": "integer", + "title": "The flow_inactive_timeout Schema" + }, + "next_hop_learning": { + "type": "string", + "title": "The next_hop_learning Schema" + }, + "template_refresh_rate": { + "type": "integer", + "title": "The template_refresh_rate Schema" + }, + "option_refresh_rate": { + "type": "integer", + "title": "The option_refresh_rate Schema" + }, + "protocol_template": { + "type": "string", + "title": "The protocol_template Schema" + } + } + } + } + } + } + } +} diff --git a/validated_json_schemas/snmp_contact.json b/validated_json_schemas/snmp_contact.json new file mode 100644 index 0000000000000000000000000000000000000000..64fcca33492fc9a48403503c6ade50f70f78f9a9 --- /dev/null +++ b/validated_json_schemas/snmp_contact.json @@ -0,0 +1,17 @@ +{ + "$schema": "https://json-schema.org/draft/2020-12/schema", + "$id": "http://example.com/snmp_contact.json", + "type": "string", + "default": {}, + "title": "Root Schema", + "required": [ + "snmp_contact" + ], + "properties": { + "snmp_contact": { + "type": "string", + "default": "", + "title": "The snmp_contact Schema" + } + } +} diff --git a/validated_json_schemas/snmp_location.json b/validated_json_schemas/snmp_location.json new file mode 100644 index 0000000000000000000000000000000000000000..f80604e7c662f3177460cf51dde74db43f9d89a3 --- /dev/null +++ b/validated_json_schemas/snmp_location.json @@ -0,0 +1,17 @@ +{ + "$schema": "https://json-schema.org/draft/2020-12/schema", + "$id": "http://example.com/example.json", + "type": "string", + "default": {}, + "title": "Root Schema", + "required": [ + "snmp_location" + ], + "properties": { + "snmp_location": { + "type": "string", + "default": "", + "title": "The snmp_location Schema" + } + } +} diff --git a/validated_json_schemas/snmp_trap_groups__to_merge.json b/validated_json_schemas/snmp_trap_groups__to_merge.json new file mode 100644 index 0000000000000000000000000000000000000000..936a1cc11b7dc7ed102298d9bbdd2b3f740a7c4e --- /dev/null +++ b/validated_json_schemas/snmp_trap_groups__to_merge.json @@ -0,0 +1,71 @@ +{ + "$schema": "https://json-schema.org/draft/2020-12/schema", + "$id": "http://example.com/example.json", + "type": "object", + "default": {}, + "title": "Root Schema", + "required": [ ], + "properties": { + "snmp_trap_groups__to_merge": { + "type": "object", + "default": {}, + "title": "The snmp_trap_groups__to_merge Schema", + "required": [ + "geantnms" + ], + "properties": { + "geantnms": { + "type": "object", + "default": {}, + "title": "The geantnms Schema", + "required": [ + "version", + "categories", + "targets" + ], + "properties": { + "version": { + "type": "string", + "default": "", + "title": "The version Schema" + }, + "categories": { + "type": "array", + "default": [], + "title": "The categories Schema", + "items": { + "type": "string", + "title": "A Schema" + } + }, + "targets": { + "type": "array", + "default": [], + "title": "The targets Schema", + "items": { + "type": "object", + "title": "A Schema", + "required": [ + "target", + "description" + ], + "properties": { + "target": { + "type": "string", + "pattern": "^(([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\\.){3}([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])$", + "title": "The target Schema" + }, + "description": { + "type": "string", + "pattern": "^(([a-zA-Z]|[a-zA-Z][a-zA-Z0-9-]*[a-zA-Z0-9])\\.)*([A-Za-z]|[A-Za-z][A-Za-z0-9-]*[A-Za-z0-9])\\.$", + "title": "The description Schema" + } + } + } + } + } + } + } + } + } +} diff --git a/validated_json_schemas/snmp_trap_source_address.json b/validated_json_schemas/snmp_trap_source_address.json new file mode 100644 index 0000000000000000000000000000000000000000..b4c37361940ce72341f78c37a6ac110b43b53799 --- /dev/null +++ b/validated_json_schemas/snmp_trap_source_address.json @@ -0,0 +1,18 @@ +{ + "$schema": "https://json-schema.org/draft/2020-12/schema", + "$id": "http://example.com/example.json", + "type": "string", + "default": {}, + "title": "Root Schema", + "required": [ + "snmp_trap_source_address" + ], + "properties": { + "snmp_trap_source_address": { + "type": "string", + "pattern": "^(([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\\.){3}([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])(\\/(3[0-2]|[1-2][0-9]|[0-9]))$", + "default": "", + "title": "The snmp_trap_source_address Schema" + } + } +} diff --git a/validated_json_schemas/system_domain_name.json b/validated_json_schemas/system_domain_name.json new file mode 100644 index 0000000000000000000000000000000000000000..5a33eaa7acd79fdf2d048f805722a17e2c601522 --- /dev/null +++ b/validated_json_schemas/system_domain_name.json @@ -0,0 +1,18 @@ +{ + "$schema": "https://json-schema.org/draft/2020-12/schema", + "$id": "http://example.com/example.json", + "type": "string", + "default": {}, + "title": "Root Schema", + "required": [ + "system_domain_name" + ], + "properties": { + "system_domain_name": { + "type": "string", + "pattern": "^(([a-zA-Z]|[a-zA-Z][a-zA-Z0-9-]*[a-zA-Z0-9])\\.)*([A-Za-z]|[A-Za-z][A-Za-z0-9-]*[A-Za-z0-9])$", + "default": "", + "title": "The system_domain_name Schema" + } + } +} diff --git a/validated_json_schemas/system_domain_search.json b/validated_json_schemas/system_domain_search.json new file mode 100644 index 0000000000000000000000000000000000000000..582347e960e9a8ae02541617c492a6932600c333 --- /dev/null +++ b/validated_json_schemas/system_domain_search.json @@ -0,0 +1,22 @@ +{ + "$schema": "https://json-schema.org/draft/2020-12/schema", + "$id": "http://example.com/example.json", + "type": "array", + "default": {}, + "title": "Root Schema", + "required": [ + "system_domain_search" + ], + "properties": { + "system_domain_search": { + "type": "array", + "default": [], + "title": "The system_domain_search Schema", + "items": { + "type": "string", + "pattern": "^(([a-zA-Z]|[a-zA-Z][a-zA-Z0-9-]*[a-zA-Z0-9])\\.)*([A-Za-z]|[A-Za-z][A-Za-z0-9-]*[A-Za-z0-9])$", + "title": "A Schema" + } + } + } +} diff --git a/validated_json_schemas/system_login_classes.json b/validated_json_schemas/system_login_classes.json new file mode 100644 index 0000000000000000000000000000000000000000..3a871e9af262ef8d9c3099495ce44ddcd900c6bb --- /dev/null +++ b/validated_json_schemas/system_login_classes.json @@ -0,0 +1,74 @@ +{ + "$schema": "https://json-schema.org/draft/2020-12/schema", + "$id": "http://example.com/example.json", + "type": "object", + "default": {}, + "title": "Root Schema", + "required": [ + "system_login_classes" + ], + "properties": { + "system_login_classes": { + "type": "array", + "default": [], + "title": "The system_login_classes Schema", + "items": { + "type": "object", + "title": "A Schema", + "required": [ + "idle-timeout", + "name", + "permissions", + "allow-commands", + "deny-commands", + "allow-configuration-regexps", + "deny-configuration-regexps" + ], + "properties": { + "idle-timeout": { + "type": "integer", + "title": "The idle-timeout Schema" + }, + "name": { + "type": "string", + "title": "The name Schema" + }, + "permissions": { + "type": "array", + "title": "The permissions Schema", + "items": { + "type": "string", + "title": "A Schema" + } + }, + "allow-commands": { + "type": "string", + "title": "The allow-commands Schema" + }, + "deny-commands": { + "type": "string", + "title": "The deny-commands Schema" + }, + "allow-configuration-regexps": { + "type": "array", + "default": [], + "title": "The allow-configuration-regexps Schema", + "items": { + "type": "string", + "title": "A Schema" + } + }, + "deny-configuration-regexps": { + "type": "array", + "default": [], + "title": "The deny-configuration-regexps Schema", + "items": { + "type": "string", + "title": "A Schema" + } + } + } + } + } + } +} diff --git a/validated_json_schemas/system_login_password_policies.json b/validated_json_schemas/system_login_password_policies.json new file mode 100644 index 0000000000000000000000000000000000000000..4e0ceb307a80946a8622bf703ffcbe42406e1fd7 --- /dev/null +++ b/validated_json_schemas/system_login_password_policies.json @@ -0,0 +1,35 @@ +{ + "$schema": "https://json-schema.org/draft/2020-12/schema", + "$id": "http://example.com/example.json", + "type": "array", + "default": {}, + "title": "Root Schema", + "required": [ + "system_login_password_policies" + ], + "properties": { + "system_login_password_policies": { + "type": "array", + "default": [], + "title": "The system_login_password_policies Schema", + "items": { + "type": "object", + "title": "A Schema", + "required": [ + "option", + "value" + ], + "properties": { + "option": { + "type": "string", + "title": "The option Schema" + }, + "value": { + "type": "integer", + "title": "The value Schema" + } + } + } + } + } +} diff --git a/validated_json_schemas/system_login_users.json b/validated_json_schemas/system_login_users.json new file mode 100644 index 0000000000000000000000000000000000000000..7174855af24c4f5500a4864bb9c52b874a57444d --- /dev/null +++ b/validated_json_schemas/system_login_users.json @@ -0,0 +1,45 @@ +{ + "$schema": "https://json-schema.org/draft/2020-12/schema", + "$id": "http://example.com/example.json", + "type": "object", + "default": {}, + "title": "Root Schema", + "required": [ + "system_login_users" + ], + "properties": { + "system_login_users": { + "type": "array", + "default": [], + "title": "The system_login_users Schema", + "items": { + "type": "object", + "title": "A Schema", + "required": [ + "username", + "class", + "realname", + "pubkey" + ], + "properties": { + "username": { + "type": "string", + "title": "The username Schema" + }, + "class": { + "type": "string", + "title": "The class Schema" + }, + "realname": { + "type": "string", + "title": "The realname Schema" + }, + "pubkey": { + "type": "string", + "title": "The pubkey Schema" + } + } + } + } + } +} diff --git a/validated_json_schemas/system_name_servers.json b/validated_json_schemas/system_name_servers.json new file mode 100644 index 0000000000000000000000000000000000000000..32ccca878f9969d904bc615cfb5853bf206af3fc --- /dev/null +++ b/validated_json_schemas/system_name_servers.json @@ -0,0 +1,22 @@ +{ + "$schema": "https://json-schema.org/draft/2020-12/schema", + "$id": "http://example.com/example.json", + "type": "array", + "default": {}, + "title": "Root Schema", + "required": [ + "system_name_servers" + ], + "properties": { + "system_name_servers": { + "type": "array", + "default": [], + "title": "The system_name_servers Schema", + "items": { + "type": "string", + "pattern": "^(([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\\.){3}([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])$", + "title": "A Schema" + } + } + } +} diff --git a/validated_json_schemas/system_radius_servers.json b/validated_json_schemas/system_radius_servers.json new file mode 100644 index 0000000000000000000000000000000000000000..ffaacfcb6115a4374f37bce6055d4740a5b4a0a4 --- /dev/null +++ b/validated_json_schemas/system_radius_servers.json @@ -0,0 +1,47 @@ +{ + "$schema": "https://json-schema.org/draft/2020-12/schema", + "$id": "http://example.com/example.json", + "type": "array", + "default": {}, + "title": "Root Schema", + "required": [ + "system_radius_servers" + ], + "properties": { + "system_radius_servers": { + "type": "array", + "default": [], + "title": "The system_radius_servers Schema", + "items": { + "type": "object", + "title": "A Schema", + "required": [ + "host", + "source_address", + "timeout", + "secret" + ], + "properties": { + "host": { + "type": "string", + "pattern": "^(([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\\.){3}([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])$", + "title": "The host Schema" + }, + "source_address": { + "type": "string", + "pattern": "^(([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\\.){3}([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])$", + "title": "The source_address Schema" + }, + "timeout": { + "type": "integer", + "title": "The timeout Schema" + }, + "secret": { + "type": "string", + "title": "The secret Schema" + } + } + } + } + } +} diff --git a/validated_json_schemas/system_root_pwd.json b/validated_json_schemas/system_root_pwd.json new file mode 100644 index 0000000000000000000000000000000000000000..424fb28117d01bb5e17594d4b387a99b48cbb967 --- /dev/null +++ b/validated_json_schemas/system_root_pwd.json @@ -0,0 +1,17 @@ +{ + "$schema": "https://json-schema.org/draft/2020-12/schema", + "$id": "http://example.com/example.json", + "type": "string", + "default": {}, + "title": "Root Schema", + "required": [ + "system_root_pwd" + ], + "properties": { + "system_root_pwd": { + "type": "string", + "default": "", + "title": "The system_root_pwd Schema" + } + } +} diff --git a/validated_json_schemas/system_services_extension_service.json b/validated_json_schemas/system_services_extension_service.json new file mode 100644 index 0000000000000000000000000000000000000000..81877e06d33dd3439c2b010a19397eba23049cbb --- /dev/null +++ b/validated_json_schemas/system_services_extension_service.json @@ -0,0 +1,62 @@ +{ + "$schema": "https://json-schema.org/draft/2020-12/schema", + "$id": "http://example.com/example.json", + "type": "object", + "default": {}, + "title": "Root Schema", + "required": [ ], + "properties": { + "system_services_extension_service": { + "type": "object", + "default": {}, + "title": "The system_services_extension_service Schema", + "required": [ + "request_response", + "notification" + ], + "properties": { + "request_response": { + "type": "object", + "default": {}, + "title": "The request_response Schema", + "required": [ + "port", + "max_connections" + ], + "properties": { + "port": { + "type": "integer", + "default": 0, + "title": "The port Schema" + }, + "max_connections": { + "type": "integer", + "default": 0, + "title": "The max_connections Schema" + } + } + }, + "notification": { + "type": "object", + "default": {}, + "title": "The notification Schema", + "required": [ + "allow_clients" + ], + "properties": { + "allow_clients": { + "type": "array", + "default": [], + "title": "The allow_clients Schema", + "items": { + "type": "string", + "pattern": "^(([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\\.){3}([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])$", + "title": "A Schema" + } + } + } + } + } + } + } +} diff --git a/validated_json_schemas/system_syslog_files.json b/validated_json_schemas/system_syslog_files.json new file mode 100644 index 0000000000000000000000000000000000000000..9548f84e08a262883371820b4300f078c5d90372 --- /dev/null +++ b/validated_json_schemas/system_syslog_files.json @@ -0,0 +1,83 @@ +{ + "$schema": "https://json-schema.org/draft/2020-12/schema", + "$id": "http://example.com/example.json", + "type": "array", + "default": {}, + "title": "Root Schema", + "required": [ + "system_syslog_files" + ], + "properties": { + "system_syslog_files": { + "type": "array", + "default": [], + "title": "The system_syslog_files Schema", + "items": { + "type": "object", + "title": "A Schema", + "required": [ + "filename", + "facilities", + "archive_options", + "match", + "structured_data" + ], + "properties": { + "filename": { + "type": "string", + "title": "The filename Schema" + }, + "facilities": { + "type": "array", + "title": "The facilities Schema", + "items": { + "type": "object", + "title": "A Schema", + "required": [ + "name", + "level" + ], + "properties": { + "name": { + "type": "string", + "title": "The name Schema" + }, + "level": { + "type": "string", + "title": "The level Schema" + } + } + } + }, + "archive_options": { + "type": "object", + "title": "The archive_options Schema", + "required": [ + "files", + "size" + ], + "properties": { + "files": { + "type": "integer", + "title": "The files Schema" + }, + "size": { + "type": "string", + "title": "The size Schema" + } + } + }, + "match": { + "type": "string", + "title": "The match Schema" + }, + "structured_data": { + "type": "string", + "default": "", + "title": "The structured_data Schema" + } + } + } + } + } +} diff --git a/validated_json_schemas/system_syslog_servers.json b/validated_json_schemas/system_syslog_servers.json new file mode 100644 index 0000000000000000000000000000000000000000..91e0f9976a152c6b0bc1819f0e1568c9882b9ad9 --- /dev/null +++ b/validated_json_schemas/system_syslog_servers.json @@ -0,0 +1,70 @@ +{ + "$schema": "https://json-schema.org/draft/2020-12/schema", + "$id": "http://example.com/example.json", + "type": "array", + "default": {}, + "title": "Root Schema", + "required": [ + "system_syslog_servers" + ], + "properties": { + "system_syslog_servers": { + "type": "array", + "default": [], + "title": "The system_syslog_servers Schema", + "items": { + "type": "object", + "title": "A Schema", + "required": [ + "address", + "facilities", + "match", + "source_address", + "structured_data" + ], + "properties": { + "address": { + "type": "string", + "pattern": "^(([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\\.){3}([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])$", + "title": "The address Schema" + }, + "facilities": { + "type": "array", + "title": "The facilities Schema", + "items": { + "type": "object", + "title": "A Schema", + "required": [ + "name", + "level" + ], + "properties": { + "name": { + "type": "string", + "title": "The name Schema" + }, + "level": { + "type": "string", + "title": "The level Schema" + } + } + } + }, + "match": { + "type": "string", + "title": "The match Schema" + }, + "source_address": { + "type": "string", + "title": "The source_address Schema" + }, + "structured_data": { + "type": "string", + "default": "", + "title": "The structured_data Schema" + } + } + } + } + } +} diff --git a/validated_json_schemas/system_syslog_source_address.json b/validated_json_schemas/system_syslog_source_address.json new file mode 100644 index 0000000000000000000000000000000000000000..71bba050f37d2f9f4a04e179693d73632f952974 --- /dev/null +++ b/validated_json_schemas/system_syslog_source_address.json @@ -0,0 +1,18 @@ +{ + "$schema": "https://json-schema.org/draft/2020-12/schema", + "$id": "http://example.com/example.json", + "type": "string", + "default": {}, + "title": "Root Schema", + "required": [ + "system_syslog_source_address" + ], + "properties": { + "system_syslog_source_address": { + "type": "string", + "pattern": "^(([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\\.){3}([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])$", + "default": "", + "title": "The system_syslog_source_address Schema" + } + } +} diff --git a/validated_json_schemas/system_time_zone.json b/validated_json_schemas/system_time_zone.json new file mode 100644 index 0000000000000000000000000000000000000000..d612f29791b62174a1de0b2be6ca7b0e876fcd1d --- /dev/null +++ b/validated_json_schemas/system_time_zone.json @@ -0,0 +1,17 @@ +{ + "$schema": "https://json-schema.org/draft/2020-12/schema", + "$id": "http://example.com/example.json", + "type": "string", + "default": {}, + "title": "Root Schema", + "required": [ + "system_time_zone" + ], + "properties": { + "system_time_zone": { + "type": "string", + "default": "", + "title": "The system_time_zone Schema" + } + } +}