Skip to content

Commit

Permalink
Feat(eos_cli_config_gen): Add schema for monitor_connectivity
Browse files Browse the repository at this point in the history
  • Loading branch information
konika-bsn authored and carlbuchmann committed Oct 11, 2022
1 parent 06f94a0 commit 1308832
Show file tree
Hide file tree
Showing 4 changed files with 362 additions and 0 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -1491,6 +1491,70 @@ match_list_input:
match_regex: <str>
```

## Monitor Connectivity

### Variables

| Variable | Type | Required | Default | Value Restrictions | Description |
| -------- | ---- | -------- | ------- | ------------------ | ----------- |
| [<samp>monitor_connectivity</samp>](## "monitor_connectivity") | Dictionary | | | | |
| [<samp>&nbsp;&nbsp;shutdown</samp>](## "monitor_connectivity.shutdown") | Boolean | | | | |
| [<samp>&nbsp;&nbsp;interval</samp>](## "monitor_connectivity.interval") | Integer | | | | |
| [<samp>&nbsp;&nbsp;interface_sets</samp>](## "monitor_connectivity.interface_sets") | List, items: Dictionary | | | | |
| [<samp>&nbsp;&nbsp;&nbsp;&nbsp;- name</samp>](## "monitor_connectivity.interface_sets.[].name") | String | | | | |
| [<samp>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;interfaces</samp>](## "monitor_connectivity.interface_sets.[].interfaces") | String | | | | Interface range(s) should be of same type, Ethernet, Loopback, Management etc.<br>Multiple interface ranges can be specified separated by ","<br> |
| [<samp>&nbsp;&nbsp;local_interfaces</samp>](## "monitor_connectivity.local_interfaces") | String | | | | |
| [<samp>&nbsp;&nbsp;hosts</samp>](## "monitor_connectivity.hosts") | List, items: Dictionary | | | | |
| [<samp>&nbsp;&nbsp;&nbsp;&nbsp;- name</samp>](## "monitor_connectivity.hosts.[].name") | String | | | | Host Name |
| [<samp>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;description</samp>](## "monitor_connectivity.hosts.[].description") | String | | | | |
| [<samp>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;ip</samp>](## "monitor_connectivity.hosts.[].ip") | String | | | | |
| [<samp>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;local_interfaces</samp>](## "monitor_connectivity.hosts.[].local_interfaces") | String | | | | |
| [<samp>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;url</samp>](## "monitor_connectivity.hosts.[].url") | String | | | | |
| [<samp>&nbsp;&nbsp;vrfs</samp>](## "monitor_connectivity.vrfs") | List, items: Dictionary | | | | |
| [<samp>&nbsp;&nbsp;&nbsp;&nbsp;- name</samp>](## "monitor_connectivity.vrfs.[].name") | String | | | | VRF Name |
| [<samp>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;description</samp>](## "monitor_connectivity.vrfs.[].description") | String | | | | |
| [<samp>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;interface_sets</samp>](## "monitor_connectivity.vrfs.[].interface_sets") | List, items: Dictionary | | | | |
| [<samp>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;- name</samp>](## "monitor_connectivity.vrfs.[].interface_sets.[].name") | String | | | | |
| [<samp>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;interfaces</samp>](## "monitor_connectivity.vrfs.[].interface_sets.[].interfaces") | String | | | | |
| [<samp>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;local_interfaces</samp>](## "monitor_connectivity.vrfs.[].local_interfaces") | String | | | | |
| [<samp>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;hosts</samp>](## "monitor_connectivity.vrfs.[].hosts") | List, items: Dictionary | | | | |
| [<samp>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;- name</samp>](## "monitor_connectivity.vrfs.[].hosts.[].name") | String | | | | Host name |
| [<samp>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;description</samp>](## "monitor_connectivity.vrfs.[].hosts.[].description") | String | | | | |
| [<samp>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;ip</samp>](## "monitor_connectivity.vrfs.[].hosts.[].ip") | String | | | | |
| [<samp>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;local_interfaces</samp>](## "monitor_connectivity.vrfs.[].hosts.[].local_interfaces") | String | | | | |
| [<samp>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;url</samp>](## "monitor_connectivity.vrfs.[].hosts.[].url") | String | | | | |

### YAML

```yaml
monitor_connectivity:
shutdown: <bool>
interval: <int>
interface_sets:
- name: <str>
interfaces: <str>
local_interfaces: <str>
hosts:
- name: <str>
description: <str>
ip: <str>
local_interfaces: <str>
url: <str>
vrfs:
- name: <str>
description: <str>
interface_sets:
- name: <str>
interfaces: <str>
local_interfaces: <str>
hosts:
- name: <str>
description: <str>
ip: <str>
local_interfaces: <str>
url: <str>
```

## MPLS

### Variables
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2459,6 +2459,144 @@
},
"additionalProperties": false
},
"monitor_connectivity": {
"type": "object",
"properties": {
"shutdown": {
"type": "boolean",
"title": "Shutdown"
},
"interval": {
"type": "integer",
"title": "Interval"
},
"interface_sets": {
"type": "array",
"items": {
"type": "object",
"properties": {
"name": {
"type": "string",
"title": "Name"
},
"interfaces": {
"type": "string",
"description": "Interface range(s) should be of same type, Ethernet, Loopback, Management etc.\nMultiple interface ranges can be specified separated by \",\"\n",
"title": "Interfaces"
}
},
"additionalProperties": false
},
"title": "Interface Sets"
},
"local_interfaces": {
"type": "string",
"title": "Local Interfaces"
},
"hosts": {
"type": "array",
"items": {
"type": "object",
"properties": {
"name": {
"title": "Host Name",
"type": "string"
},
"description": {
"type": "string",
"title": "Description"
},
"ip": {
"type": "string",
"title": "Ip"
},
"local_interfaces": {
"type": "string",
"title": "Local Interfaces"
},
"url": {
"type": "string",
"title": "Url"
}
},
"additionalProperties": false
},
"title": "Hosts"
},
"vrfs": {
"type": "array",
"items": {
"type": "object",
"properties": {
"name": {
"title": "VRF Name",
"type": "string"
},
"description": {
"type": "string",
"title": "Description"
},
"interface_sets": {
"type": "array",
"items": {
"type": "object",
"properties": {
"name": {
"type": "string",
"title": "Name"
},
"interfaces": {
"type": "string",
"title": "Interfaces"
}
},
"additionalProperties": false
},
"title": "Interface Sets"
},
"local_interfaces": {
"type": "string",
"title": "Local Interfaces"
},
"hosts": {
"type": "array",
"items": {
"type": "object",
"properties": {
"name": {
"title": "Host name",
"type": "string"
},
"description": {
"type": "string",
"title": "Description"
},
"ip": {
"type": "string",
"title": "Ip"
},
"local_interfaces": {
"type": "string",
"title": "Local Interfaces"
},
"url": {
"type": "string",
"title": "Url"
}
},
"additionalProperties": false
},
"title": "Hosts"
}
},
"additionalProperties": false
},
"title": "Vrfs"
}
},
"additionalProperties": false,
"title": "Monitor Connectivity"
},
"mpls": {
"type": "object",
"title": "MPLS",
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -1996,6 +1996,85 @@ keys:
type: str
required: true
display_name: Regular Expression
monitor_connectivity:
type: dict
keys:
shutdown:
type: bool
interval:
type: int
convert_types:
- str
interface_sets:
type: list
items:
type: dict
keys:
name:
type: str
interfaces:
type: str
description: 'Interface range(s) should be of same type, Ethernet, Loopback,
Management etc.
Multiple interface ranges can be specified separated by ","
'
local_interfaces:
type: str
hosts:
type: list
items:
type: dict
keys:
name:
display_name: Host Name
type: str
description:
type: str
ip:
type: str
local_interfaces:
type: str
url:
type: str
vrfs:
type: list
items:
type: dict
keys:
name:
display_name: VRF Name
type: str
description:
type: str
interface_sets:
type: list
items:
type: dict
keys:
name:
type: str
interfaces:
type: str
local_interfaces:
type: str
hosts:
type: list
items:
type: dict
keys:
name:
display_name: Host name
type: str
description:
type: str
ip:
type: str
local_interfaces:
type: str
url:
type: str
mpls:
type: dict
display_name: MPLS
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,81 @@
# yaml-language-server: $schema=../../../../plugins/plugin_utils/schema/avd_meta_schema.json
# Line above is used by RedHat's YAML Schema vscode extension
# Use Ctrl + Space to get suggestions for every field. Autocomplete will pop up after typing 2 letters.
type: dict
keys:
monitor_connectivity:
type: dict
keys:
shutdown:
type: bool
interval:
type: int
convert_types:
- str
interface_sets:
type: list
items:
type: dict
keys:
name:
type: str
interfaces:
type: str
description: |
Interface range(s) should be of same type, Ethernet, Loopback, Management etc.
Multiple interface ranges can be specified separated by ","
local_interfaces:
type: str
hosts:
type: list
items:
type: dict
keys:
name:
display_name: Host Name
type: str
description:
type: str
ip:
type: str
local_interfaces:
type: str
url:
type: str
vrfs:
type: list
items:
type: dict
keys:
name:
display_name: VRF Name
type: str
description:
type: str
interface_sets:
type: list
items:
type: dict
keys:
name:
type: str
interfaces:
type: str
local_interfaces:
type: str
hosts:
type: list
items:
type: dict
keys:
name:
display_name: Host name
type: str
description:
type: str
ip:
type: str
local_interfaces:
type: str
url:
type: str

0 comments on commit 1308832

Please sign in to comment.