Mini Shell
# Copyright 2015, Truveris Inc. All Rights Reserved.
from __future__ import absolute_import
def parse_device_resync_progress(line):
tokens = line.split()[1:]
operation = tokens.pop(0)
if tokens.pop(0) != "=":
raise ValueError("invalid resync line (missing '='): {0}"
.format(line))
progress = tokens.pop(0)
counts = tokens.pop(0)[1:-1].split("/", 1)
resynced = int(counts[0])
total = int(counts[1])
finish = tokens.pop(0).split("=")[1]
speed = tokens.pop(0).split("=")[1]
return {
"operation": operation,
"progress": progress,
"resynced": resynced,
"total": total,
"finish": finish,
"speed": speed,
}
def parse_device_resync_standby(line):
return {
"operation": line.strip(),
"progress": "0%",
"resynced": 0,
"total": None,
"finish": None,
"speed": None,
}
Zerion Mini Shell 1.0