1 # -*- coding: utf-8 -*-
6 from ceph_volume
.util
.device
import Devices
, Device
9 class Inventory(object):
11 help = "Get this nodes available disk inventory"
13 def __init__(self
, argv
):
17 parser
= argparse
.ArgumentParser(
18 prog
='ceph-volume inventory',
19 formatter_class
=argparse
.RawDescriptionHelpFormatter
,
20 description
=self
.help,
26 help=('Report on specific disk'),
30 choices
=['plain', 'json', 'json-pretty'],
34 self
.args
= parser
.parse_args(self
.argv
)
36 self
.format_report(Device(self
.args
.path
))
38 self
.format_report(Devices())
40 def format_report(self
, inventory
):
41 if self
.args
.format
== 'json':
42 print(json
.dumps(inventory
.json_report()))
43 elif self
.args
.format
== 'json-pretty':
44 print(json
.dumps(inventory
.json_report(), indent
=4, sort_keys
=True))
46 print(inventory
.pretty_report())