addes some disk class preparations
This commit is contained in:
parent
47a03f5161
commit
ec94aa9e25
|
|
@ -8,6 +8,7 @@ class Snapshot(object):
|
||||||
self.re_name = re.compile(r"[^/]+$")
|
self.re_name = re.compile(r"[^/]+$")
|
||||||
self.re_zvol = re.compile(r"^.*[\\/]")
|
self.re_zvol = re.compile(r"^.*[\\/]")
|
||||||
self.snapshot_tuple = self.parse_string_to_table()
|
self.snapshot_tuple = self.parse_string_to_table()
|
||||||
|
self.disk_name = self.get_snapshot_name().split("@")[0]
|
||||||
|
|
||||||
def __repr__(self):
|
def __repr__(self):
|
||||||
return self.get_snapshot_name()
|
return self.get_snapshot_name()
|
||||||
|
|
@ -41,6 +42,9 @@ class Snapshot(object):
|
||||||
referenced_str = self.snapshot_tuple[3]
|
referenced_str = self.snapshot_tuple[3]
|
||||||
return self.sizeof_fmt(int(referenced_str))
|
return self.sizeof_fmt(int(referenced_str))
|
||||||
|
|
||||||
|
def get_disk_name(self):
|
||||||
|
return self.disk_name
|
||||||
|
|
||||||
@staticmethod
|
@staticmethod
|
||||||
def sizeof_fmt(num, suffix='B'):
|
def sizeof_fmt(num, suffix='B'):
|
||||||
## FIXME WOW taken from stack but it's too fucking slow. Probably because of division. Have to profile
|
## FIXME WOW taken from stack but it's too fucking slow. Probably because of division. Have to profile
|
||||||
|
|
|
||||||
|
|
@ -4,6 +4,9 @@ import Pyro4
|
||||||
from Snapshot import Snapshot
|
from Snapshot import Snapshot
|
||||||
import time
|
import time
|
||||||
from zfssmd_worker import DEFAULT_REFRESH_INTERVAL
|
from zfssmd_worker import DEFAULT_REFRESH_INTERVAL
|
||||||
|
## FIXME Only debug
|
||||||
|
import pprint
|
||||||
|
from itertools import product
|
||||||
|
|
||||||
PYRO_URI = "PYRO:058b7dde9ec53de9235cfc57a07ce17a9eabfce3@./u:/run/zfssmd.sock"
|
PYRO_URI = "PYRO:058b7dde9ec53de9235cfc57a07ce17a9eabfce3@./u:/run/zfssmd.sock"
|
||||||
|
|
||||||
|
|
@ -35,6 +38,27 @@ class ZFSSMDClient(object):
|
||||||
snapshot_object_list.append(snapshot_obj)
|
snapshot_object_list.append(snapshot_obj)
|
||||||
return snapshot_object_list
|
return snapshot_object_list
|
||||||
|
|
||||||
objects = (ZFSSMDClient().make_snapshot_objects())
|
def make_disk_objects(self):
|
||||||
for o in objects:
|
disk_object_list = list()
|
||||||
print = (o.get_snapshot_zvol()+o.get_snapshot_name()+" "+o.get_snapshot_creation_time() )#+ " " + o.get_snapshot_used_size() + " " + o.get_snapshot_referenced_size())
|
#disk_list = list()
|
||||||
|
#snapshot_list = self.make_snapshot_objects()
|
||||||
|
#for snapshot in snapshot_list:
|
||||||
|
# disk = snapshot.get_disk_name()
|
||||||
|
# if disk not in disk_list:
|
||||||
|
# disk_list.append(disk)
|
||||||
|
#map(lambda (x,y):)
|
||||||
|
|
||||||
|
def list_snapshots(self):
|
||||||
|
## TODO make d
|
||||||
|
snapshot_dict = dict()
|
||||||
|
for o in self.make_snapshot_objects():
|
||||||
|
name = o.get_snapshot_name()
|
||||||
|
zvol = o.get_snapshot_zvol()
|
||||||
|
ctime = o.get_snapshot_creation_time()
|
||||||
|
used = o.get_snapshot_used_size()
|
||||||
|
ref = o.get_snapshot_referenced_size()
|
||||||
|
snapshot_dict.update ({name:[zvol,ctime,used,ref]})
|
||||||
|
return snapshot_dict
|
||||||
|
|
||||||
|
pp = pprint.PrettyPrinter()
|
||||||
|
pp.pprint(ZFSSMDClient().make_disk_objects())
|
||||||
Loading…
Reference in New Issue