]> git.proxmox.com Git - ceph.git/blob - ceph/src/python-common/ceph/tests/utils.py
bump version to 15.2.4-pve1
[ceph.git] / ceph / src / python-common / ceph / tests / utils.py
1 from ceph.deployment.inventory import Devices, Device
2
3 try:
4 from typing import Any, List
5 except ImportError:
6 pass # for type checking
7
8
9 def _mk_device(rotational=True,
10 locked=False,
11 size="394.27 GB"):
12 return [Device(
13 path='??',
14 sys_api={
15 "rotational": '1' if rotational else '0',
16 "vendor": "Vendor",
17 "human_readable_size": size,
18 "partitions": {},
19 "locked": int(locked),
20 "sectorsize": "512",
21 "removable": "0",
22 "path": "??",
23 "support_discard": "",
24 "model": "Model",
25 "ro": "0",
26 "nr_requests": "128",
27 "size": 423347879936 # ignore coversion from human_readable_size
28 },
29 available=not locked,
30 rejected_reasons=['locked'] if locked else [],
31 lvs=[],
32 device_id="Model-Vendor-foobar"
33 )]
34
35
36 def _mk_inventory(devices):
37 # type: (Any) -> List[Device]
38 devs = []
39 for dev_, name in zip(devices, map(chr, range(ord('a'), ord('z')))):
40 dev = Device.from_json(dev_.to_json())
41 dev.path = '/dev/sd' + name
42 dev.sys_api = dict(dev_.sys_api, path='/dev/sd' + name)
43 devs.append(dev)
44 return Devices(devices=devs).devices