puppet_x_eos_eapi 0.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (123) hide show
  1. checksums.yaml +7 -0
  2. data/.gitignore +17 -0
  3. data/Gemfile +24 -0
  4. data/LICENSE.txt +202 -0
  5. data/README.md +87 -0
  6. data/Rakefile +1 -0
  7. data/lib/puppet_x/eos/autoload.rb +57 -0
  8. data/lib/puppet_x/eos/eapi.rb +259 -0
  9. data/lib/puppet_x/eos/module_base.rb +37 -0
  10. data/lib/puppet_x/eos/modules/daemon.rb +109 -0
  11. data/lib/puppet_x/eos/modules/extension.rb +167 -0
  12. data/lib/puppet_x/eos/modules/interface.rb +180 -0
  13. data/lib/puppet_x/eos/modules/ipinterface.rb +133 -0
  14. data/lib/puppet_x/eos/modules/mlag.rb +268 -0
  15. data/lib/puppet_x/eos/modules/ntp.rb +129 -0
  16. data/lib/puppet_x/eos/modules/ospf.rb +129 -0
  17. data/lib/puppet_x/eos/modules/portchannel.rb +277 -0
  18. data/lib/puppet_x/eos/modules/radius.rb +367 -0
  19. data/lib/puppet_x/eos/modules/snmp.rb +177 -0
  20. data/lib/puppet_x/eos/modules/switchport.rb +255 -0
  21. data/lib/puppet_x/eos/modules/system.rb +138 -0
  22. data/lib/puppet_x/eos/modules/tacacs.rb +302 -0
  23. data/lib/puppet_x/eos/modules/vlan.rb +179 -0
  24. data/lib/puppet_x/eos/modules/vxlan.rb +132 -0
  25. data/lib/puppet_x/eos/provider.rb +71 -0
  26. data/lib/puppet_x/eos/version.rb +41 -0
  27. data/lib/puppet_x/net_dev/eos_api.rb +1011 -0
  28. data/lib/puppet_x/net_dev/eos_api/common_methods.rb +27 -0
  29. data/lib/puppet_x/net_dev/eos_api/snmp_methods.rb +647 -0
  30. data/lib/puppet_x/net_dev/eos_api/version.rb +8 -0
  31. data/lib/puppet_x_eos_eapi.rb +4 -0
  32. data/puppet_x_eos_eapi.gemspec +31 -0
  33. data/spec/fixtures/fixture_all_portchannel_modes.json +8 -0
  34. data/spec/fixtures/fixture_all_portchannels_detailed.json +15 -0
  35. data/spec/fixtures/fixture_create_vlan_error.json +17 -0
  36. data/spec/fixtures/fixture_create_vlan_success.json +12 -0
  37. data/spec/fixtures/fixture_eapi_conf.yaml +4 -0
  38. data/spec/fixtures/fixture_enable_configure_vlan_3111_name_foo.json +14 -0
  39. data/spec/fixtures/fixture_enable_configure_vlan_foo_name_bar.json +19 -0
  40. data/spec/fixtures/fixture_get_snmp_communities_non_existent_acl.yaml +2 -0
  41. data/spec/fixtures/fixture_get_snmp_location_westeros.json +5 -0
  42. data/spec/fixtures/fixture_portchannel_min_links_1.json +8 -0
  43. data/spec/fixtures/fixture_portchannel_min_links_2.json +8 -0
  44. data/spec/fixtures/fixture_running_config.yaml +1 -0
  45. data/spec/fixtures/fixture_running_configuration_radius_configured.yaml +30 -0
  46. data/spec/fixtures/fixture_running_configuration_radius_default.yaml +29 -0
  47. data/spec/fixtures/fixture_running_configuration_radius_server_groups.yaml +38 -0
  48. data/spec/fixtures/fixture_running_configuration_radius_servers.yaml +34 -0
  49. data/spec/fixtures/fixture_running_configuration_tacacs_configured.yaml +38 -0
  50. data/spec/fixtures/fixture_running_configuration_tacacs_default.yaml +38 -0
  51. data/spec/fixtures/fixture_running_configuration_tacacs_groups.yaml +1 -0
  52. data/spec/fixtures/fixture_running_configuration_tacacs_groups_3.yaml +43 -0
  53. data/spec/fixtures/fixture_running_configuration_tacacs_servers.yaml +41 -0
  54. data/spec/fixtures/fixture_s4_show_etherchannel_detailed.json +9 -0
  55. data/spec/fixtures/fixture_show_flowcontrol_et1.json +5 -0
  56. data/spec/fixtures/fixture_show_interfaces.json +297 -0
  57. data/spec/fixtures/fixture_show_interfaces_switchport_format_text.json +9 -0
  58. data/spec/fixtures/fixture_show_port_channel_summary_2_lags.json +9 -0
  59. data/spec/fixtures/fixture_show_port_channel_summary_static.json +9 -0
  60. data/spec/fixtures/fixture_show_snmp_community.yaml +2 -0
  61. data/spec/fixtures/fixture_show_snmp_contact_empty.json +5 -0
  62. data/spec/fixtures/fixture_show_snmp_contact_name.json +5 -0
  63. data/spec/fixtures/fixture_show_snmp_disabled.json +5 -0
  64. data/spec/fixtures/fixture_show_snmp_enabled.json +5 -0
  65. data/spec/fixtures/fixture_show_snmp_host.yaml +2 -0
  66. data/spec/fixtures/fixture_show_snmp_host_duplicates.yaml +2 -0
  67. data/spec/fixtures/fixture_show_snmp_host_more_duplicates.yaml +2 -0
  68. data/spec/fixtures/fixture_show_snmp_location_empty.json +5 -0
  69. data/spec/fixtures/fixture_show_snmp_trap.yaml +2 -0
  70. data/spec/fixtures/fixture_show_snmp_user.yaml +2 -0
  71. data/spec/fixtures/fixture_show_snmp_user_raw_text.yaml +1 -0
  72. data/spec/fixtures/fixture_show_vlan.json +37 -0
  73. data/spec/fixtures/fixture_show_vlan_3110.json +18 -0
  74. data/spec/fixtures/fixture_show_vlan_4000.json +18 -0
  75. data/spec/fixtures/fixture_snmp_host_opts.yaml +11 -0
  76. data/spec/spec_helper.rb +21 -0
  77. data/spec/support/fixtures.rb +104 -0
  78. data/spec/unit/puppet_x/eos/eapi_spec.rb +182 -0
  79. data/spec/unit/puppet_x/eos/module_base_spec.rb +26 -0
  80. data/spec/unit/puppet_x/eos/modules/daemon_spec.rb +110 -0
  81. data/spec/unit/puppet_x/eos/modules/extension_spec.rb +197 -0
  82. data/spec/unit/puppet_x/eos/modules/fixtures/daemon_getall.json +3 -0
  83. data/spec/unit/puppet_x/eos/modules/fixtures/extension_getall.json +28 -0
  84. data/spec/unit/puppet_x/eos/modules/fixtures/hostname.json +6 -0
  85. data/spec/unit/puppet_x/eos/modules/fixtures/interface_getall.json +509 -0
  86. data/spec/unit/puppet_x/eos/modules/fixtures/ipinterface_getall.json +56 -0
  87. data/spec/unit/puppet_x/eos/modules/fixtures/mlag_get.json +21 -0
  88. data/spec/unit/puppet_x/eos/modules/fixtures/mlag_get_interfaces.json +18 -0
  89. data/spec/unit/puppet_x/eos/modules/fixtures/ntp_get.json +5 -0
  90. data/spec/unit/puppet_x/eos/modules/fixtures/ospf_instance_getall.json +58 -0
  91. data/spec/unit/puppet_x/eos/modules/fixtures/portchannel_get.json +54 -0
  92. data/spec/unit/puppet_x/eos/modules/fixtures/portchannel_getlacpmode.json +5 -0
  93. data/spec/unit/puppet_x/eos/modules/fixtures/portchannel_getmembers.json +5 -0
  94. data/spec/unit/puppet_x/eos/modules/fixtures/portchannel_po1.json +7 -0
  95. data/spec/unit/puppet_x/eos/modules/fixtures/snmp_get.json +14 -0
  96. data/spec/unit/puppet_x/eos/modules/fixtures/switchport_get.json +5 -0
  97. data/spec/unit/puppet_x/eos/modules/fixtures/switchport_get_et1.json +7 -0
  98. data/spec/unit/puppet_x/eos/modules/fixtures/switchport_getall_interfaces.json +230 -0
  99. data/spec/unit/puppet_x/eos/modules/fixtures/system_domain_list.json +5 -0
  100. data/spec/unit/puppet_x/eos/modules/fixtures/system_domain_name.json +5 -0
  101. data/spec/unit/puppet_x/eos/modules/fixtures/system_hostname.json +6 -0
  102. data/spec/unit/puppet_x/eos/modules/fixtures/system_name_servers.json +5 -0
  103. data/spec/unit/puppet_x/eos/modules/fixtures/vlan_getall.json +123 -0
  104. data/spec/unit/puppet_x/eos/modules/fixtures/vxlan_get.json +24 -0
  105. data/spec/unit/puppet_x/eos/modules/interface_spec.rb +281 -0
  106. data/spec/unit/puppet_x/eos/modules/ipinterface_spec.rb +143 -0
  107. data/spec/unit/puppet_x/eos/modules/mlag_spec.rb +349 -0
  108. data/spec/unit/puppet_x/eos/modules/ntp_spec.rb +136 -0
  109. data/spec/unit/puppet_x/eos/modules/ospf_spec.rb +143 -0
  110. data/spec/unit/puppet_x/eos/modules/portchannel_spec.rb +357 -0
  111. data/spec/unit/puppet_x/eos/modules/radius_spec.rb +509 -0
  112. data/spec/unit/puppet_x/eos/modules/snmp_spec.rb +202 -0
  113. data/spec/unit/puppet_x/eos/modules/switchport_get_et1.json +7 -0
  114. data/spec/unit/puppet_x/eos/modules/switchport_spec.rb +307 -0
  115. data/spec/unit/puppet_x/eos/modules/system_spec.rb +170 -0
  116. data/spec/unit/puppet_x/eos/modules/tacacs_spec.rb +448 -0
  117. data/spec/unit/puppet_x/eos/modules/vlan_spec.rb +244 -0
  118. data/spec/unit/puppet_x/eos/modules/vxlan_spec.rb +189 -0
  119. data/spec/unit/puppet_x/eos/provider_spec.rb +35 -0
  120. data/spec/unit/puppet_x/net_dev/eos_api/common_methods_spec.rb +34 -0
  121. data/spec/unit/puppet_x/net_dev/eos_api/snmp_methods_spec.rb +842 -0
  122. data/spec/unit/puppet_x/net_dev/eos_api_spec.rb +1000 -0
  123. metadata +369 -0
@@ -0,0 +1,41 @@
1
+ --- "! Command: show running-config\n! device: static150 (vEOS, EOS-4.13.7M)\n!\n!
2
+ boot system flash:/vEOS.swi\n!\ntransceiver qsfp default-mode 4x10G\n!\nhostname
3
+ static150\nip name-server vrf default 10.32.44.10\nip name-server vrf default 10.32.44.11\nip
4
+ domain-name eng.puppetlabs.net\n!\nradius-server key 7 070E234F1F5B4A\nradius-server
5
+ timeout 51\nradius-server retransmit 11\nradius-server host 10.11.12.13 key 7 1513090F557878\nradius-server
6
+ host 10.11.12.13 auth-port 1811\nradius-server host 10.11.12.13 auth-port 1811 acct-port
7
+ 1814\nradius-server host 10.11.12.13 acct-port 1814\nradius-server host 10.11.12.13
8
+ auth-port 1024 acct-port 2048 timeout 30 retransmit 6 key 7 011204070A5955\nradius-server
9
+ host 10.11.12.14\n!\naaa group server radius RAD-SV1\n server 10.11.12.13 auth-port
10
+ 1024 acct-port 2048\n server 10.11.12.13 acct-port 1814\n!\naaa group server radius
11
+ RAD-SV2\n server 10.11.12.13 auth-port 1024 acct-port 2048\n server 10.11.12.13
12
+ acct-port 1814\n server 10.11.12.14\n!\naaa group server radius RAD-SV3\n server
13
+ 10.11.12.13 auth-port 1024 acct-port 2048\n!\nsnmp-server engineID local f5717f00420008177800\nsnmp-server
14
+ contact Jeff McCune\nsnmp-server location Portland\nsnmp-server community jeff rw\nsnmp-server
15
+ community jeff2 ro stest1\nsnmp-server community jeff3 ro stest1\nsnmp-server community
16
+ jeff4 ro stest2\nsnmp-server community jeff6 rw stest1\nsnmp-server community private
17
+ rw\nsnmp-server community public ro\nsnmp-server group developers v3 noauth\nsnmp-server
18
+ group sysops v3 noauth read all write all\nsnmp-server user johndoe developers v2c\nsnmp-server
19
+ user nigel developers v3 localized f5717f00420008177800 auth md5 4019b8a966a19ec13dd7c6f7cb77ac7f
20
+ priv aes 4019b8a966a19ec13dd7c6f7cb77ac7f\nsnmp-server user peter developers v3
21
+ localized f5717f00420008177800 auth sha 851fcce9b0b833180c8d28246f9d47d08b4189ff
22
+ priv aes 851fcce9b0b833180c8d28246f9d47d08b4189ff\nsnmp-server host 127.0.0.1 version
23
+ 3 noauth public\nsnmp-server host 127.0.0.2 version 3 noauth public\nsnmp-server
24
+ enable traps bgp\nno snmp-server enable traps msdp backward-transition\nno snmp-server
25
+ enable traps pim neighbor-loss\nsnmp-server enable traps snmp\nsnmp-server enable
26
+ traps snmp link-down\n!\nspanning-tree mode mstp\n!\ntacacs-server key 7 070E234F1F5B4A\ntacacs-server
27
+ timeout 6\ntacacs-server host 1.2.3.4 single-connection port 4949 timeout 6 key
28
+ 7 06070D221D1C5A\ntacacs-server host 1.2.3.4 timeout 10\ntacacs-server host 1.2.3.5
29
+ timeout 10\ntacacs-server host 1.2.3.5 port 50 timeout 10\n!\nno aaa root\n!\nusername
30
+ admin privilege 15 role network-admin secret 5 $1$iHlt9yPz$YLWC4OmSuX25Y4.wXQX7G0\nusername
31
+ admin sshkey ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDEYvI7jLwTfp5LF4g/NqZzJjjvMP+OwE5CJbvEaIN5eEqlku0IbTLy4atm/9KPfpRp/luqkZ69cACYy5fRQWrpF2vjkN3mzp6m81bvXE26mkpfTnrfk7OErI1nz17UbOUYWSQ5PMEuR/YhwnhvdVCEMm+fVnAQkT2jvdYjca3bXUAckuKVgBlEnri9YvqTI1nGzG3PvgJcxaTARSvEo/5mbyLuBTmIjNzXzfJM1Zr8RFtTTJhJVHh5TOsfs0dFgVE3Nzh3hROR8cuEBm8pleEbiBKaVQB5q/FgN/5kG2c0xbR1/YnOUUd2fo2x9zLAxaaQwKf1h6xsHVfPbCF6qwMl
32
+ mccune.jeff@gmail.com\n!\nvlan 100\n name VLAN100\n!\ninterface Port-Channel4\n
33
+ \ description Office Backbone\n port-channel min-links 2\n!\ninterface Port-Channel9\n
34
+ \ description foobar\n!\ninterface Ethernet1\n shutdown\n!\ninterface Ethernet2\n
35
+ \ channel-group 9 mode active\n!\ninterface Ethernet3\n flowcontrol send on\n
36
+ \ flowcontrol receive on\n channel-group 4 mode active\n!\ninterface Ethernet4\n
37
+ \ flowcontrol send on\n flowcontrol receive on\n channel-group 4 mode active\n!\ninterface
38
+ Management1\n ip address 10.32.98.10/23\n!\nip access-list test1\n 10 permit
39
+ ip 10.10.10.0/24 any\n!\nip access-list standard stest1\n 10 permit any log \n!\nip
40
+ route 0.0.0.0/0 10.32.98.1\n!\nno ip routing\n!\nmanagement api http-commands\n
41
+ \ no protocol https\n protocol http\n no shutdown\n!\n!\nend\n"
@@ -0,0 +1,9 @@
1
+ {
2
+ "jsonrpc": "2.0",
3
+ "result": [
4
+ {
5
+ "output": "Port Channel Port-Channel3 (Fallback State: Unconfigured):\n Active Ports:\n Port Time became active Protocol \n --------------- ------------------------ -------- \n Ethernet2 22:48:03 Static \n\n Configured, but inactive ports:\n Port Time became inactive Reason unconfigured \n --------------- -------------------------- ------------------- \n Ethernet1 22:48:53 not link up \n\nPort Channel Port-Channel4 (Fallback State: Unconfigured):\n No Active Ports\n Configured, but inactive ports:\n Port Time became inactive Reason unconfigured \n --------------- -------------------------- ------------------------- \n Ethernet3 Always Waiting for LACP response \n Ethernet4 Always Waiting for LACP response \n\n"
6
+ }
7
+ ],
8
+ "id": "d68b26cd-71de-40cd-88c3-97703e62f428"
9
+ }
@@ -0,0 +1,5 @@
1
+ [
2
+ {
3
+ "output": "Port Send FlowControl Receive FlowControl RxPause TxPause \n admin oper admin oper \n---------- -------- -------- -------- -------- ------------- -------------\nEt1 off unknown off unknown 0 0 \n"
4
+ }
5
+ ]
@@ -0,0 +1,297 @@
1
+ {
2
+ "jsonrpc": "2.0",
3
+ "result": [
4
+ {
5
+ "interfaces": {
6
+ "Management1": {
7
+ "lastStatusChangeTimestamp": 1403732088.45,
8
+ "name": "Management1",
9
+ "duplex": "duplexFull",
10
+ "autoNegotiate": "success",
11
+ "burnedInAddress": "00:42:00:6e:00:96",
12
+ "mtu": 1500,
13
+ "hardware": "ethernet",
14
+ "interfaceStatus": "connected",
15
+ "bandwidth": 1000000000,
16
+ "forwardingModel": "routed",
17
+ "lineProtocolStatus": "up",
18
+ "interfaceCounters": {
19
+ "outBroadcastPkts": 0,
20
+ "outUcastPkts": 535972,
21
+ "totalOutErrors": 0,
22
+ "inMulticastPkts": 0,
23
+ "counterRefreshTime": 1408066122.85,
24
+ "inBroadcastPkts": 0,
25
+ "outputErrorsDetail": {
26
+ "deferredTransmissions": 0,
27
+ "txPause": 0,
28
+ "collisions": 0,
29
+ "lateCollisions": 0
30
+ },
31
+ "outOctets": 167924219,
32
+ "outDiscards": 0,
33
+ "inOctets": 403158304,
34
+ "inUcastPkts": 0,
35
+ "inputErrorsDetail": {
36
+ "runtFrames": 0,
37
+ "rxPause": 0,
38
+ "fcsErrors": 0,
39
+ "alignmentErrors": 0,
40
+ "giantFrames": 0,
41
+ "symbolErrors": 0
42
+ },
43
+ "linkStatusChanges": 3,
44
+ "outMulticastPkts": 0,
45
+ "totalInErrors": 0,
46
+ "inDiscards": 0
47
+ },
48
+ "interfaceStatistics": {
49
+ "inBitsRate": 1184.38421603,
50
+ "outBitsRate": 1275.89710154,
51
+ "inPktsRate": 0.0,
52
+ "updateInterval": 300.0,
53
+ "outPktsRate": 0.900311850838
54
+ },
55
+ "interfaceAddress": [
56
+ {
57
+ "secondaryIpsOrderedList": [
58
+
59
+ ],
60
+ "broadcastAddress": "255.255.255.255",
61
+ "secondaryIps": {
62
+ },
63
+ "primaryIp": {
64
+ "maskLen": 24,
65
+ "address": "10.17.110.150"
66
+ }
67
+ }
68
+ ],
69
+ "physicalAddress": "00:42:00:6e:00:96",
70
+ "description": ""
71
+ },
72
+ "Ethernet2": {
73
+ "lastStatusChangeTimestamp": 1408066070.83,
74
+ "name": "Ethernet2",
75
+ "duplex": "duplexFull",
76
+ "autoNegotiate": "off",
77
+ "burnedInAddress": "00:50:56:9b:b9:2a",
78
+ "mtu": 9214,
79
+ "hardware": "ethernet",
80
+ "interfaceStatus": "disabled",
81
+ "bandwidth": 10000000000,
82
+ "forwardingModel": "bridged",
83
+ "lineProtocolStatus": "down",
84
+ "interfaceCounters": {
85
+ "outBroadcastPkts": 0,
86
+ "outUcastPkts": 0,
87
+ "totalOutErrors": 0,
88
+ "inMulticastPkts": 0,
89
+ "counterRefreshTime": 1408066122.82,
90
+ "inBroadcastPkts": 0,
91
+ "outputErrorsDetail": {
92
+ "deferredTransmissions": 0,
93
+ "txPause": 0,
94
+ "collisions": 0,
95
+ "lateCollisions": 0
96
+ },
97
+ "outOctets": 295765602,
98
+ "outDiscards": 0,
99
+ "inOctets": 0,
100
+ "inUcastPkts": 0,
101
+ "inputErrorsDetail": {
102
+ "runtFrames": 0,
103
+ "rxPause": 0,
104
+ "fcsErrors": 0,
105
+ "alignmentErrors": 0,
106
+ "giantFrames": 0,
107
+ "symbolErrors": 0
108
+ },
109
+ "linkStatusChanges": 2,
110
+ "outMulticastPkts": 2309463,
111
+ "totalInErrors": 0,
112
+ "inDiscards": 0
113
+ },
114
+ "interfaceStatistics": {
115
+ "inBitsRate": 0.0,
116
+ "outBitsRate": 0.0,
117
+ "inPktsRate": 0.0,
118
+ "updateInterval": 300.0,
119
+ "outPktsRate": 0.0
120
+ },
121
+ "interfaceAddress": [
122
+
123
+ ],
124
+ "physicalAddress": "00:50:56:9b:b9:2a",
125
+ "description": "Physical2"
126
+ },
127
+ "Ethernet3": {
128
+ "lastStatusChangeTimestamp": 1403732086.77,
129
+ "name": "Ethernet3",
130
+ "duplex": "duplexFull",
131
+ "autoNegotiate": "unknown",
132
+ "burnedInAddress": "00:50:56:9b:61:f5",
133
+ "mtu": 9214,
134
+ "hardware": "ethernet",
135
+ "interfaceStatus": "connected",
136
+ "bandwidth": 10000000000,
137
+ "forwardingModel": "bridged",
138
+ "lineProtocolStatus": "up",
139
+ "interfaceCounters": {
140
+ "outBroadcastPkts": 0,
141
+ "outUcastPkts": 0,
142
+ "totalOutErrors": 0,
143
+ "inMulticastPkts": 0,
144
+ "counterRefreshTime": 1408066122.83,
145
+ "inBroadcastPkts": 0,
146
+ "outputErrorsDetail": {
147
+ "deferredTransmissions": 0,
148
+ "txPause": 0,
149
+ "collisions": 0,
150
+ "lateCollisions": 0
151
+ },
152
+ "outOctets": 295769127,
153
+ "outDiscards": 0,
154
+ "inOctets": 0,
155
+ "inUcastPkts": 0,
156
+ "inputErrorsDetail": {
157
+ "runtFrames": 0,
158
+ "rxPause": 0,
159
+ "fcsErrors": 0,
160
+ "alignmentErrors": 0,
161
+ "giantFrames": 0,
162
+ "symbolErrors": 0
163
+ },
164
+ "linkStatusChanges": 1,
165
+ "outMulticastPkts": 2309491,
166
+ "totalInErrors": 0,
167
+ "inDiscards": 0
168
+ },
169
+ "interfaceStatistics": {
170
+ "inBitsRate": 0.0,
171
+ "outBitsRate": 0.0,
172
+ "inPktsRate": 0.0,
173
+ "updateInterval": 300.0,
174
+ "outPktsRate": 0.0
175
+ },
176
+ "interfaceAddress": [
177
+
178
+ ],
179
+ "physicalAddress": "00:50:56:9b:61:f5",
180
+ "description": ""
181
+ },
182
+ "Ethernet1": {
183
+ "lastStatusChangeTimestamp": 1408066028.4,
184
+ "name": "Ethernet1",
185
+ "duplex": "duplexFull",
186
+ "autoNegotiate": "unknown",
187
+ "burnedInAddress": "00:50:56:9b:57:d3",
188
+ "mtu": 9214,
189
+ "hardware": "ethernet",
190
+ "interfaceStatus": "connected",
191
+ "bandwidth": 10000000000,
192
+ "forwardingModel": "bridged",
193
+ "lineProtocolStatus": "up",
194
+ "interfaceCounters": {
195
+ "outBroadcastPkts": 0,
196
+ "outUcastPkts": 0,
197
+ "totalOutErrors": 0,
198
+ "inMulticastPkts": 0,
199
+ "counterRefreshTime": 1408066122.82,
200
+ "inBroadcastPkts": 0,
201
+ "outputErrorsDetail": {
202
+ "deferredTransmissions": 0,
203
+ "txPause": 0,
204
+ "collisions": 0,
205
+ "lateCollisions": 0
206
+ },
207
+ "outOctets": 295766224,
208
+ "outDiscards": 0,
209
+ "inOctets": 0,
210
+ "inUcastPkts": 0,
211
+ "inputErrorsDetail": {
212
+ "runtFrames": 0,
213
+ "rxPause": 0,
214
+ "fcsErrors": 0,
215
+ "alignmentErrors": 0,
216
+ "giantFrames": 0,
217
+ "symbolErrors": 0
218
+ },
219
+ "linkStatusChanges": 3,
220
+ "outMulticastPkts": 2309467,
221
+ "totalInErrors": 0,
222
+ "inDiscards": 0
223
+ },
224
+ "interfaceStatistics": {
225
+ "inBitsRate": 0.0,
226
+ "outBitsRate": 0.0,
227
+ "inPktsRate": 0.0,
228
+ "updateInterval": 300.0,
229
+ "outPktsRate": 0.0
230
+ },
231
+ "interfaceAddress": [
232
+
233
+ ],
234
+ "physicalAddress": "00:50:56:9b:57:d3",
235
+ "description": "Physical1"
236
+ },
237
+ "Ethernet4": {
238
+ "lastStatusChangeTimestamp": 1403732086.77,
239
+ "name": "Ethernet4",
240
+ "duplex": "duplexFull",
241
+ "autoNegotiate": "unknown",
242
+ "burnedInAddress": "00:50:56:9b:64:3f",
243
+ "mtu": 9214,
244
+ "hardware": "ethernet",
245
+ "interfaceStatus": "connected",
246
+ "bandwidth": 10000000000,
247
+ "forwardingModel": "bridged",
248
+ "lineProtocolStatus": "up",
249
+ "interfaceCounters": {
250
+ "outBroadcastPkts": 0,
251
+ "outUcastPkts": 0,
252
+ "totalOutErrors": 0,
253
+ "inMulticastPkts": 0,
254
+ "counterRefreshTime": 1408066122.84,
255
+ "inBroadcastPkts": 0,
256
+ "outputErrorsDetail": {
257
+ "deferredTransmissions": 0,
258
+ "txPause": 0,
259
+ "collisions": 0,
260
+ "lateCollisions": 0
261
+ },
262
+ "outOctets": 295769004,
263
+ "outDiscards": 0,
264
+ "inOctets": 0,
265
+ "inUcastPkts": 0,
266
+ "lastClear": 1403732020.05,
267
+ "inputErrorsDetail": {
268
+ "runtFrames": 0,
269
+ "rxPause": 0,
270
+ "fcsErrors": 0,
271
+ "alignmentErrors": 0,
272
+ "giantFrames": 0,
273
+ "symbolErrors": 0
274
+ },
275
+ "linkStatusChanges": 1,
276
+ "outMulticastPkts": 2309490,
277
+ "totalInErrors": 0,
278
+ "inDiscards": 0
279
+ },
280
+ "interfaceStatistics": {
281
+ "inBitsRate": 0.0,
282
+ "outBitsRate": 0.0,
283
+ "inPktsRate": 0.0,
284
+ "updateInterval": 300.0,
285
+ "outPktsRate": 0.0
286
+ },
287
+ "interfaceAddress": [
288
+
289
+ ],
290
+ "physicalAddress": "00:50:56:9b:64:3f",
291
+ "description": ""
292
+ }
293
+ }
294
+ }
295
+ ],
296
+ "id": "5b0352af-81f9-4f54-a182-2787ebc7b9cf"
297
+ }
@@ -0,0 +1,9 @@
1
+ {
2
+ "jsonrpc": "2.0",
3
+ "result": [
4
+ {
5
+ "output": "Name: Et1\nSwitchport: Enabled\nAdministrative Mode: static access\nOperational Mode: static access\nMAC Address Learning: enabled\nAccess Mode VLAN: 1 (default)\nTrunking Native Mode VLAN: 1 (default)\nAdministrative Native VLAN tagging: disabled\nAdministrative private VLAN mapping: ALL\nTrunking VLANs Enabled: ALL\nTrunk Groups: \n\nName: Et2\nSwitchport: Enabled\nAdministrative Mode: static access\nOperational Mode: static access\nMAC Address Learning: enabled\nAccess Mode VLAN: 1 (default)\nTrunking Native Mode VLAN: 1 (default)\nAdministrative Native VLAN tagging: disabled\nAdministrative private VLAN mapping: ALL\nTrunking VLANs Enabled: ALL\nTrunk Groups: \n\nName: Et3\nSwitchport: Enabled\nAdministrative Mode: static access\nOperational Mode: static access\nMAC Address Learning: enabled\nAccess Mode VLAN: 1 (default)\nTrunking Native Mode VLAN: 1 (default)\nAdministrative Native VLAN tagging: disabled\nAdministrative private VLAN mapping: ALL\nTrunking VLANs Enabled: ALL\nTrunk Groups: \n\nName: Et4\nSwitchport: Enabled\nAdministrative Mode: static access\nOperational Mode: static access\nMAC Address Learning: enabled\nAccess Mode VLAN: 1 (default)\nTrunking Native Mode VLAN: 1 (default)\nAdministrative Native VLAN tagging: disabled\nAdministrative private VLAN mapping: ALL\nTrunking VLANs Enabled: ALL\nTrunk Groups: \n\n"
6
+ }
7
+ ],
8
+ "id": "0b348fa2-6359-43cd-8700-1d1d913938cd"
9
+ }
@@ -0,0 +1,9 @@
1
+ {
2
+ "jsonrpc": "2.0",
3
+ "result": [
4
+ {
5
+ "output": "\n Flags \n------------------------ ---------------------------- ------------------------- \n a - LACP Active p - LACP Passive * - static fallback \n F - Fallback enabled f - Fallback configured ^ - individual fallback \n U - In Use D - Down \n + - In-Sync - - Out-of-Sync i - incompatible with agg \n P - bundled in Po s - suspended G - Aggregable \n I - Individual S - ShortTimeout w - wait for agg \n\nNumber of channels in use: 0\nNumber of aggregators:0 \n\n Port-Channel Protocol Ports \n------------------ -------------- ---------------- \n Po3(D) LACP(p) Et1(D) Et2(G-) \n Po4(D) LACP(a) Et3(G-) Et4(G-) \n\n"
6
+ }
7
+ ],
8
+ "id": "bfba9077-8cd2-4ce6-81d3-922e948ed591"
9
+ }
@@ -0,0 +1,9 @@
1
+ {
2
+ "jsonrpc": "2.0",
3
+ "result": [
4
+ {
5
+ "output": "\n Flags \n------------------------ ---------------------------- ------------------------- \n a - LACP Active p - LACP Passive * - static fallback \n F - Fallback enabled f - Fallback configured ^ - individual fallback \n U - In Use D - Down \n + - In-Sync - - Out-of-Sync i - incompatible with agg \n P - bundled in Po s - suspended G - Aggregable \n I - Individual S - ShortTimeout w - wait for agg \n\nNumber of channels in use: 1\nNumber of aggregators:1 \n\n Port-Channel Protocol Ports \n------------------ -------------- ---------------- \n Po4(D) LACP(a) Et3(G-) Et4(G-) \n Po9(U) Static Et1(D) Et2(P) \n\n"
6
+ }
7
+ ],
8
+ "id": "8baac0af-fe27-47a8-b02b-230fc0ce1dd6"
9
+ }
@@ -0,0 +1,2 @@
1
+ ---
2
+ - output: "\nCommunity name: jeff\nCommunity access: read-write\nAccess list: stest1\n\nCommunity name: private\nCommunity access: read-write\n\nCommunity name: public\nCommunity access: read-only\n"
@@ -0,0 +1,5 @@
1
+ [
2
+ {
3
+ "contact": ""
4
+ }
5
+ ]
@@ -0,0 +1,5 @@
1
+ [
2
+ {
3
+ "contact": "Jane Doe"
4
+ }
5
+ ]
@@ -0,0 +1,5 @@
1
+ [
2
+ {
3
+ "output": "SNMP agent enabled in VRFs: default\nSNMP agent disabled: no communities or users configured\n"
4
+ }
5
+ ]
@@ -0,0 +1,5 @@
1
+ [
2
+ {
3
+ "output": "0 SNMP packets input\n 0 Bad SNMP version errors\n 0 Unknown community name\n 0 Illegal operation for community name supplied\n 0 Encoding errors\n 0 Number of requested variables\n 0 Number of altered variables\n 0 Get-request PDUs\n 0 Get-next PDUs\n 0 Set-request PDUs\n0 SNMP packets output\n 0 Too big errors\n 0 No such name errors\n 0 Bad value errors\n 0 General errors\n 0 Response PDUs\n 0 Trap PDUs\nAccess Control\n 0 Users\n 0 Groups\n 0 Views\nSNMP logging: disabled\nSNMP agent enabled in VRFs: default\n"
4
+ }
5
+ ]
@@ -0,0 +1,2 @@
1
+ ---
2
+ - output: "Notification host: 127.0.0.1 udp-port: 162 type: trap \nuser: public security model: v3 noauth\n\nNotification host: 127.0.0.2 udp-port: 162 type: trap \nuser: private security model: v2c\n\nNotification host: 127.0.0.3 udp-port: 162 type: trap \nuser: public security model: v1\n\nNotification host: 127.0.0.4 udp-port: 10162 type: inform\nuser: private security model: v2c\n\n"
@@ -0,0 +1,2 @@
1
+ ---
2
+ - output: "Notification host: 127.0.0.1 udp-port: 162 type: trap \nuser: public security model: v3 noauth\n\nNotification host: 127.0.0.2 udp-port: 162 type: trap \nuser: private security model: v2c\n\nNotification host: 127.0.0.3 udp-port: 162 type: trap \nuser: public security model: v1\n\nNotification host: 127.0.0.4 udp-port: 10162 type: inform\nuser: private security model: v2c\n\nNotification host: 127.0.0.4 udp-port: 20162 type: trap \nuser: private security model: v1\n\n"
@@ -0,0 +1,2 @@
1
+ ---
2
+ - output: "Notification host: 127.0.0.1 udp-port: 162 type: trap \nuser: public security model: v3 noauth\n\nNotification host: 127.0.0.1 udp-port: 162 type: trap \nuser: smtpuser security model: v3 auth\n\nNotification host: 127.0.0.2 udp-port: 162 type: trap \nuser: private security model: v2c\n\nNotification host: 127.0.0.3 udp-port: 162 type: trap \nuser: public security model: v1\n\nNotification host: 127.0.0.4 udp-port: 10162 type: inform\nuser: private security model: v2c\n\nNotification host: 127.0.0.4 udp-port: 162 type: trap \nuser: priv@te security model: v1\n\nNotification host: 127.0.0.4 udp-port: 162 type: trap \nuser: public security model: v1\n\nNotification host: 127.0.0.4 udp-port: 20162 type: trap \nuser: private security model: v1\n\n"
@@ -0,0 +1,5 @@
1
+ [
2
+ {
3
+ "location": ""
4
+ }
5
+ ]
@@ -0,0 +1,2 @@
1
+ ---
2
+ - output: "Type Name Enabled \n------------------ ----------------------------------- -------------------- \nbgp arista-backward-transition Yes (bgp enabled) \nbgp arista-established Yes (bgp enabled) \nbgp backward-transition Yes (bgp enabled) \nbgp established Yes (bgp enabled) \nentity arista-ent-sensor-alarm Yes (Global default) \nentity ent-config-change Yes (Global default) \nentity ent-state-oper-disabled Yes (Global default) \nentity ent-state-oper-enabled Yes (Global default) \nlldp rem-tables-change Yes (Global default) \nmsdp backward-transition No\nmsdp established Yes (Global default) \nospf if-auth-failure Yes (Global default) \nospf if-config-error Yes (Global default) \nospf if-state-change Yes (Global default) \nospf nbr-state-change Yes (Global default) \npim neighbor-loss No\nsnmp authentication Yes (snmp enabled) \nsnmp link-down Yes (snmp enabled) \nsnmp link-up Yes (snmp enabled) \nsnmpConfigManEvent arista-config-man-event Yes (Global default) \nswitchover arista-redundancy-switch-over-notif Yes (Global default) \ntest arista-test-notification Yes (Global default) \nvrrp trap-new-master Yes (Global default) \n\n"