Fix some bugs when testing opensds ansible
[stor4nfv.git] / src / ceph / src / ceph-volume / ceph_volume / devices / lvm / main.py
1 import argparse
2 from textwrap import dedent
3 from ceph_volume import terminal
4 from . import activate
5 from . import prepare
6 from . import create
7 from . import trigger
8 from . import listing
9 from . import zap
10
11
12 class LVM(object):
13
14     help = 'Use LVM and LVM-based technologies like dmcache to deploy OSDs'
15
16     _help = dedent("""
17     Use LVM and LVM-based technologies like dmcache to deploy OSDs
18
19     {sub_help}
20     """)
21
22     mapper = {
23         'activate': activate.Activate,
24         'prepare': prepare.Prepare,
25         'create': create.Create,
26         'trigger': trigger.Trigger,
27         'list': listing.List,
28         'zap': zap.Zap,
29     }
30
31     def __init__(self, argv):
32         self.argv = argv
33
34     def print_help(self, sub_help):
35         return self._help.format(sub_help=sub_help)
36
37     def main(self):
38         terminal.dispatch(self.mapper, self.argv)
39         parser = argparse.ArgumentParser(
40             prog='ceph-volume lvm',
41             formatter_class=argparse.RawDescriptionHelpFormatter,
42             description=self.print_help(terminal.subhelp(self.mapper)),
43         )
44         parser.parse_args(self.argv)
45         if len(self.argv) <= 1:
46             return parser.print_help()