mirror of
https://github.com/ansible-collections/community.general.git
synced 2025-07-22 12:50:22 -07:00
junos_facts: Add Hardware facts. (#30304)
* Add Routing Engine Facts - Map routing engine output information to routing_engines facts dict. - Add fact 'has_2RE', which is a quick way to determine how many REs the chassis has. * Fix a typo * Fix more typos * Add slot number to routing_engine dict * Add facts about the installed chassis modules * Fix typo * Fixed another typo * Fix Path * Change path again. * More Typos * Add some deubgging * Add additional information for hardware components. - Return information about the Routing Engines. - Return a fact to easily determine if the device has two routing engines. - Return information about the hardware modules. * Addressed pep8 stardard failures. * Add unit test fixtures. * Rename fixture. * Fix unit test failures. - Rename the fixture file to what the unit test expects. - Strip out junos namespace attributes. Rename file to match what the unit test expects. * Scrubbed the routing engine serial numbers. * Add unit test facts for new tests. - Add unit test for ansible_net_routing_engines fact - Add unit test for ansible_net_modules fact - Add unit test for ansible_net_has_2RE * Fixed spacing.
This commit is contained in:
parent
d395166ae0
commit
ca56a248d8
3 changed files with 89 additions and 1 deletions
|
@ -0,0 +1,52 @@
|
|||
<rpc-reply>
|
||||
<route-engine-information>
|
||||
<route-engine>
|
||||
<slot>0</slot>
|
||||
<mastership-state>master</mastership-state>
|
||||
<mastership-priority>master (default)</mastership-priority>
|
||||
<status>OK</status>
|
||||
<temperature>30 degrees C / 86 degrees F</temperature>
|
||||
<cpu-temperature>27 degrees C / 80 degrees F</cpu-temperature>
|
||||
<memory-dram-size>16349 MB</memory-dram-size>
|
||||
<memory-installed-size>(16384 MB installed)</memory-installed-size>
|
||||
<memory-buffer-utilization>16</memory-buffer-utilization>
|
||||
<cpu-user>3</cpu-user>
|
||||
<cpu-background>0</cpu-background>
|
||||
<cpu-system>5</cpu-system>
|
||||
<cpu-interrupt>1</cpu-interrupt>
|
||||
<cpu-idle>92</cpu-idle>
|
||||
<model>RE-S-EX9200-1800X4</model>
|
||||
<serial-number>0123456789</serial-number>
|
||||
<start-time>2017-04-27 12:25:03 PDT</start-time>
|
||||
<up-time>139 days, 3 hours, 12 minutes, 35 seconds</up-time>
|
||||
<last-reboot-reason>Router rebooted after a normal shutdown.</last-reboot-reason>
|
||||
<load-average-one>0.03</load-average-one>
|
||||
<load-average-five>0.06</load-average-five>
|
||||
<load-average-fifteen>0.02</load-average-fifteen>
|
||||
</route-engine>
|
||||
<route-engine>
|
||||
<slot>1</slot>
|
||||
<mastership-state>backup</mastership-state>
|
||||
<mastership-priority>backup (default)</mastership-priority>
|
||||
<status>OK</status>
|
||||
<temperature>30 degrees C / 86 degrees F</temperature>
|
||||
<cpu-temperature>27 degrees C / 80 degrees F</cpu-temperature>
|
||||
<memory-dram-size>16349 MB</memory-dram-size>
|
||||
<memory-installed-size>(16384 MB installed)</memory-installed-size>
|
||||
<memory-buffer-utilization>10</memory-buffer-utilization>
|
||||
<cpu-user>0</cpu-user>
|
||||
<cpu-background>0</cpu-background>
|
||||
<cpu-system>0</cpu-system>
|
||||
<cpu-interrupt>0</cpu-interrupt>
|
||||
<cpu-idle>100</cpu-idle>
|
||||
<model>RE-S-EX9200-1800X4</model>
|
||||
<serial-number>0123456789</serial-number>
|
||||
<start-time>2017-09-13 10:24:59 PDT</start-time>
|
||||
<up-time>5 hours, 12 minutes, 36 seconds</up-time>
|
||||
<last-reboot-reason>Router rebooted after a normal shutdown.</last-reboot-reason>
|
||||
<load-average-one>0.00</load-average-one>
|
||||
<load-average-five>0.00</load-average-five>
|
||||
<load-average-fifteen>0.00</load-average-fifteen>
|
||||
</route-engine>
|
||||
</route-engine-information>
|
||||
</rpc-reply>
|
|
@ -28,6 +28,7 @@ RPC_CLI_MAP = {
|
|||
'get-interface-information': 'show interfaces details',
|
||||
'get-system-memory-information': 'show system memory',
|
||||
'get-chassis-inventory': 'show chassis hardware',
|
||||
'get-route-engine-information': 'show chassis routing-engine',
|
||||
'get-system-storage': 'show system storage'
|
||||
}
|
||||
|
||||
|
@ -72,6 +73,9 @@ class TestJunosCommandModule(TestJunosModule):
|
|||
self.assertEqual(facts['ansible_net_memtotal_mb'], 983500)
|
||||
self.assertEqual(facts['ansible_net_filesystems'][0], '/dev/vtbd0s1a')
|
||||
self.assertTrue('ansible_net_config' not in facts)
|
||||
self.assertEqual(facts['ansible_net_routing_engines']["0"]['model'], 'RE-S-EX9200-1800X4')
|
||||
self.assertEqual(facts['ansible_net_modules'][0]['name'], 'Midplane')
|
||||
self.assertTrue(facts['ansible_net_has_2RE'])
|
||||
|
||||
def test_junos_get_facts_subset_config_set(self):
|
||||
self.get_config.return_value = load_fixture('get_configuration_rpc_reply.txt')
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue