コード例 #1
0
ファイル: test_linux.py プロジェクト: holandes22/dmtcore
 def test_get_disk_identifier(self, run_cmd_mock):
     run_cmd_mock.return_value = FAKE_FDISK_GOOD_OUTPUT
     dq = LinuxDiskDeviceQueries()
     fake_device_filepath = "/dev/sdb"
     actual_identifier = dq.get_disk_identifier(fake_device_filepath)
     run_cmd_mock.assert_called_with(SIZE_FROM_FDISK + [fake_device_filepath])
     self.assertEqual("0x0001ab30", actual_identifier)
コード例 #2
0
ファイル: linux.py プロジェクト: holandes22/dmtcore
def get_disks():
    basic_disks = []
    multipath_disks = []
    linux_disk_device_queries = LinuxDiskDeviceQueries()
    mp_disk_path_names = []
    for multipath_disk_entry in linux_disk_device_queries.get_multipath_disk_entries():
        for path_group in multipath_disk_entry.path_groups:
            mp_disk_path_names.extend([path.name for path in path_group.paths])
        multipath_disks.append(LinuxMultipathDisk(multipath_disk_entry))

    for basic_disk_entry in linux_disk_device_queries.get_basic_disk_entries():
        if basic_disk_entry.name in mp_disk_path_names:
            # disk is a path of a multi path disk
            continue
        uuid = linux_disk_device_queries.get_uuid(basic_disk_entry.filepath)
        basic_disk_entry.disk_identifier = linux_disk_device_queries.get_disk_identifier(basic_disk_entry.filepath)
        basic_disks.append(LinuxDisk(basic_disk_entry, uuid, linux_disk_device_queries))
    return basic_disks + multipath_disks