Fix some bugs when testing opensds ansible
[stor4nfv.git] / src / ceph / src / ceph-volume / ceph_volume / devices / simple / main.py
1 import argparse
2 from textwrap import dedent
3 from ceph_volume import terminal
4 from . import scan
5 from . import activate
6 from . import trigger
7
8
9 class Simple(object):
10
11     help = 'Manage already deployed OSDs with ceph-volume'
12
13     _help = dedent("""
14     Take over a deployed OSD, persisting its metadata in /etc/ceph/osd/ so that it can be managed
15     with ceph-volume directly. Avoids UDEV and ceph-disk handling.
16
17     {sub_help}
18     """)
19
20     mapper = {
21         'scan': scan.Scan,
22         'activate': activate.Activate,
23         'trigger': trigger.Trigger,
24     }
25
26     def __init__(self, argv):
27         self.argv = argv
28
29     def print_help(self, sub_help):
30         return self._help.format(sub_help=sub_help)
31
32     def main(self):
33         terminal.dispatch(self.mapper, self.argv)
34         parser = argparse.ArgumentParser(
35             prog='ceph-volume simple',
36             formatter_class=argparse.RawDescriptionHelpFormatter,
37             description=self.print_help(terminal.subhelp(self.mapper)),
38         )
39         parser.parse_args(self.argv)
40         if len(self.argv) <= 1:
41             return parser.print_help()