Skip to content

Commit 229dcb8

Browse files
committed
ceph-volume: add type annotations to devices.lvm.prepare
This commit adds the Python type annotations to `devices.lvm.prepare`. Signed-off-by: Guillaume Abrioux <[email protected]>
1 parent d10b7cc commit 229dcb8

File tree

1 file changed

+11
-5
lines changed

1 file changed

+11
-5
lines changed

src/ceph-volume/ceph_volume/devices/lvm/prepare.py

Lines changed: 11 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,10 @@
11
from __future__ import print_function
22
import logging
3+
import argparse
34
from textwrap import dedent
45
from ceph_volume import objectstore
56
from .common import prepare_parser
6-
7+
from typing import List, Optional
78

89
logger = logging.getLogger(__name__)
910

@@ -12,13 +13,13 @@ class Prepare(object):
1213

1314
help = 'Format an LVM device and associate it with an OSD'
1415

15-
def __init__(self, argv, args=None):
16-
self.objectstore = None
16+
def __init__(self, argv: Optional[List[str]] = None, args: Optional[argparse.Namespace] = None) -> None:
17+
self.objectstore: Optional[objectstore.baseobjectstore.BaseObjectStore] = None
1718
self.argv = argv
1819
self.args = args
1920
self.osd_id = None
2021

21-
def main(self):
22+
def main(self) -> None:
2223
sub_command_help = dedent("""
2324
Prepare an OSD by assigning an ID and FSID, registering them with the
2425
cluster with an ID and FSID, formatting and mounting the volume, and
@@ -48,6 +49,8 @@ def main(self):
4849
prog='ceph-volume lvm prepare',
4950
description=sub_command_help,
5051
)
52+
if self.argv is None:
53+
self.argv = []
5154
if len(self.argv) == 0 and self.args is None:
5255
print(sub_command_help)
5356
return
@@ -56,4 +59,7 @@ def main(self):
5659
if self.args.bluestore:
5760
self.args.objectstore = 'bluestore'
5861
self.objectstore = objectstore.mapping['LVM'][self.args.objectstore](args=self.args)
59-
self.objectstore.safe_prepare()
62+
if self.objectstore is not None:
63+
self.objectstore.safe_prepare()
64+
else:
65+
raise RuntimeError('Unexpected error while setting objectore backend.')

0 commit comments

Comments
 (0)