]>
Commit | Line | Data |
---|---|---|
d2e6a577 FG |
1 | import argparse |
2 | from textwrap import dedent | |
3 | from ceph_volume import terminal | |
4 | from . import activate | |
92f5a8d4 | 5 | from . import deactivate |
d2e6a577 FG |
6 | from . import prepare |
7 | from . import create | |
8 | from . import trigger | |
3efd9988 FG |
9 | from . import listing |
10 | from . import zap | |
1adf2230 | 11 | from . import batch |
d2e6a577 FG |
12 | |
13 | ||
14 | class LVM(object): | |
15 | ||
f91f0fd5 | 16 | help = 'Use LVM and LVM-based technologies to deploy OSDs' |
d2e6a577 FG |
17 | |
18 | _help = dedent(""" | |
f91f0fd5 | 19 | Use LVM and LVM-based technologies to deploy OSDs |
d2e6a577 FG |
20 | |
21 | {sub_help} | |
22 | """) | |
23 | ||
24 | mapper = { | |
25 | 'activate': activate.Activate, | |
92f5a8d4 | 26 | 'deactivate': deactivate.Deactivate, |
1adf2230 | 27 | 'batch': batch.Batch, |
d2e6a577 FG |
28 | 'prepare': prepare.Prepare, |
29 | 'create': create.Create, | |
30 | 'trigger': trigger.Trigger, | |
3efd9988 FG |
31 | 'list': listing.List, |
32 | 'zap': zap.Zap, | |
d2e6a577 FG |
33 | } |
34 | ||
35 | def __init__(self, argv): | |
36 | self.argv = argv | |
37 | ||
38 | def print_help(self, sub_help): | |
39 | return self._help.format(sub_help=sub_help) | |
40 | ||
41 | def main(self): | |
42 | terminal.dispatch(self.mapper, self.argv) | |
43 | parser = argparse.ArgumentParser( | |
44 | prog='ceph-volume lvm', | |
45 | formatter_class=argparse.RawDescriptionHelpFormatter, | |
46 | description=self.print_help(terminal.subhelp(self.mapper)), | |
47 | ) | |
48 | parser.parse_args(self.argv) | |
49 | if len(self.argv) <= 1: | |
50 | return parser.print_help() |