def test_vm_info(self): ssh = MockSSH([ ("sudo /usr/bin/pvesh get /nodes/node123/qemu/vm123/config", VM_INFO_SAMPLE) ]) node_name, vmid, session, base_url = 'node123', 'vm123', None, None vm_info = _get_vm_info(node_name, vmid, session, ssh, base_url) vm_info_expexted = { u'disks': [{ u'family': u'Proxmox Virtual Disk', u'label': u'vm-0123456-disk-1', u'model_name': u'Proxmox Virtual Disk 8192MiB', u'size': 8192 }], u'hostname': u'test_node.local', u'mac_addresses': [u'101010101010'], u'memory': [{ u'index': 0, u'label': u'Virtual DIMM 0', u'size': 1024 }], u'model_name': u'Proxmox qemu kvm', u'processors': [{ u'cores': 1, u'family': u'QEMU Virtual', u'index': 1, u'label': u'CPU 1', u'model_name': u'QEMU Virtual CPU' }], u'type': u'virtual server' } self.assertEqual(vm_info, vm_info_expexted)
def test_ssh_ssg(self): with mock.patch( 'ralph.scan.plugins.ssh_ssg.check_tcp_port', ) as check_port, mock.patch( 'ralph.scan.plugins.ssh_ssg.SSGSSHClient', ) as SSH: check_port.return_value = True SSH.side_effect = MockSSH([ ('get system', SSH_SSG_SAMPLE), ]) self.assertEqual( _ssh_ssg('127.0.0.1', '-', '-'), { 'hostname': 'SSG-320M', 'mac_addresses': ['A0C69A111111'], 'management_ip_addresses': ['127.0.0.1'], 'model_name': 'SSG-320M REV 14(0)-(00)', 'parts': [ { 'boot_firmware': '6.2.0r10.0', 'type': 'power module', }, ], 'serial_number': 'SN123123999', 'type': 'firewall', } )
def test_get_device_info(self): ssh = MockSSH([ ("sudo /usr/bin/pvesh get /nodes/node123/status", DEVICE_INFO_SAMPLE) ]) node_name, session, base_url = 'node123', None, None device_info = _get_device_info(node_name, session, ssh, base_url) device_info_expected = { u'installed_software': [{ u'model_name': u'Proxmox', u'path': u'proxmox', }], u'model_name': u'Proxmox', u'processors': [{ u'cores': 16, u'family': u'Intel(R) Xeon(R) CPU F7-666 0 @ 2.00GHz', u'label': u'CPU 1', u'speed': 2000 }, { u'cores': 16, u'family': u'Intel(R) Xeon(R) CPU F7-666 0 @ 2.00GHz', u'label': u'CPU 2', u'speed': 2000 }] } self.assertEqual(device_info, device_info_expected)
def _connect_ssh_notproxmox(ip): return MockSSH([ ('cat /etc/pve/cluster.cfg', ''), ('cat /etc/pve/cluster.conf', ''), ('cat /etc/pve/storage.cfg', ''), ('pvecm help', ''), ])
def test_get_mac_addresses(self): ssh = MockSSH([( "/sbin/ip addr show | /bin/grep 'link/ether'", GET_MAC_ADDRESSES_RESULT, )]) self.assertEqual( _get_mac_addresses(ssh), ['C82A14053D53', 'E0F84724C9E6'], )
def test_get_mac_addresses(self): ssh = MockSSH([ ( "show chassis mac-addresses", JUNIPER_GET_MAC_ADDRESSES_SAMPLE, ), ]) self.assertEqual( _get_mac_addresses(ssh), ['aa:bb:cc:dd:00:01', 'aa:bb:cc:dd:00:02'], )
def test_enable_sudo_mode(self): ssh = MockSSH([ ( "xe host-list", "", ), ( "xe host-list", TEST_SUDO_MODE_SAMPLE, ), ]) self.assertTrue(_enable_sudo_mode(ssh)) self.assertFalse(_enable_sudo_mode(ssh))