Skip to content
Snippets Groups Projects
Commit 6032697c authored by Michael Hanselmann's avatar Michael Hanselmann
Browse files

storage: Use constants.py instead of local constants


Signed-off-by: default avatarMichael Hanselmann <hansmi@google.com>
Reviewed-by: default avatarIustin Pop <iustin@google.com>
parent 54878c54
No related branches found
No related tags found
No related merge requests found
...@@ -187,6 +187,20 @@ ST_FILE = "file" ...@@ -187,6 +187,20 @@ ST_FILE = "file"
ST_LVM_PV = "lvm-pv" ST_LVM_PV = "lvm-pv"
ST_LVM_VG = "lvm-vg" ST_LVM_VG = "lvm-vg"
# Storage fields
SF_NAME = "name"
SF_SIZE = "size"
SF_FREE = "free"
SF_USED = "used"
SF_ALLOCATABLE = "allocatable"
# Available fields per storage type
VALID_STORAGE_FIELDS = {
ST_FILE: frozenset([SF_NAME, SF_USED, SF_FREE]),
ST_LVM_PV: frozenset([SF_NAME, SF_SIZE, SF_USED, SF_FREE, SF_ALLOCATABLE]),
ST_LVM_VG: frozenset([SF_NAME, SF_SIZE]),
}
# disk template types # disk template types
DT_DISKLESS = "diskless" DT_DISKLESS = "diskless"
DT_PLAIN = "plain" DT_PLAIN = "plain"
......
...@@ -31,13 +31,6 @@ from ganeti import constants ...@@ -31,13 +31,6 @@ from ganeti import constants
from ganeti import utils from ganeti import utils
COL_NAME = "name"
COL_SIZE = "size"
COL_FREE = "free"
COL_USED = "used"
COL_ALLOCATABLE = "allocatable"
def _ParseSize(value): def _ParseSize(value):
return int(round(float(value), 0)) return int(round(float(value), 0))
...@@ -102,24 +95,25 @@ class FileStorage(_Base): ...@@ -102,24 +95,25 @@ class FileStorage(_Base):
values = [] values = []
# Pre-calculate information in case it's requested more than once # Pre-calculate information in case it's requested more than once
if COL_USED in fields: if constants.SF_USED in fields:
dirsize = utils.CalculateDirectorySize(path) dirsize = utils.CalculateDirectorySize(path)
else: else:
dirsize = None dirsize = None
if COL_FREE in fields: if constants.SF_FREE in fields:
fsfree = utils.GetFreeFilesystemSpace(path) fsfree = utils.GetFreeFilesystemSpace(path)
else: else:
fsfree = None fsfree = None
# Make sure to update constants.VALID_STORAGE_FIELDS when changing fields.
for field_name in fields: for field_name in fields:
if field_name == COL_NAME: if field_name == constants.SF_NAME:
values.append(path) values.append(path)
elif field_name == COL_USED: elif field_name == constants.SF_USED:
values.append(dirsize) values.append(dirsize)
elif field_name == COL_FREE: elif field_name == constants.SF_FREE:
values.append(fsfree) values.append(fsfree)
else: else:
...@@ -293,12 +287,15 @@ class LvmPvStorage(_LvmBase): ...@@ -293,12 +287,15 @@ class LvmPvStorage(_LvmBase):
return False return False
LIST_COMMAND = "pvs" LIST_COMMAND = "pvs"
# Make sure to update constants.VALID_STORAGE_FIELDS when changing field
# definitions.
LIST_FIELDS = [ LIST_FIELDS = [
(COL_NAME, "pv_name", None), (constants.SF_NAME, "pv_name", None),
(COL_SIZE, "pv_size", _ParseSize), (constants.SF_SIZE, "pv_size", _ParseSize),
(COL_USED, "pv_used", _ParseSize), (constants.SF_USED, "pv_used", _ParseSize),
(COL_FREE, "pv_free", _ParseSize), (constants.SF_FREE, "pv_free", _ParseSize),
(COL_ALLOCATABLE, "pv_attr", _GetAllocatable), (constants.SF_ALLOCATABLE, "pv_attr", _GetAllocatable),
] ]
...@@ -307,9 +304,12 @@ class LvmVgStorage(_LvmBase): ...@@ -307,9 +304,12 @@ class LvmVgStorage(_LvmBase):
""" """
LIST_COMMAND = "vgs" LIST_COMMAND = "vgs"
# Make sure to update constants.VALID_STORAGE_FIELDS when changing field
# definitions.
LIST_FIELDS = [ LIST_FIELDS = [
(COL_NAME, "vg_name", None), (constants.SF_NAME, "vg_name", None),
(COL_SIZE, "vg_size", _ParseSize), (constants.SF_SIZE, "vg_size", _ParseSize),
] ]
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment