puppet_x_eos_eapi 0.2.0

Sign up to get free protection for your applications and to get access to all the features.
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"