summaryrefslogtreecommitdiffstats
path: root/src/lib/Server/Admin/Snapshots.py
diff options
context:
space:
mode:
authorNarayan Desai <desai@mcs.anl.gov>2009-05-14 03:44:50 +0000
committerNarayan Desai <desai@mcs.anl.gov>2009-05-14 03:44:50 +0000
commit32252e0dff7825e581c888ffb68fb954fcacc68a (patch)
tree606277e38467d241abbd526356e2992e1f1868b9 /src/lib/Server/Admin/Snapshots.py
parenta3c2d24f421faef2928ec63db70633838d472032 (diff)
downloadbcfg2-32252e0dff7825e581c888ffb68fb954fcacc68a.tar.gz
bcfg2-32252e0dff7825e581c888ffb68fb954fcacc68a.tar.bz2
bcfg2-32252e0dff7825e581c888ffb68fb954fcacc68a.zip
Implement perf-reporting client
git-svn-id: https://svn.mcs.anl.gov/repos/bcfg/trunk/bcfg2@5228 ce84e21b-d406-0410-9b95-82705330c041
Diffstat (limited to 'src/lib/Server/Admin/Snapshots.py')
-rw-r--r--src/lib/Server/Admin/Snapshots.py51
1 files changed, 9 insertions, 42 deletions
diff --git a/src/lib/Server/Admin/Snapshots.py b/src/lib/Server/Admin/Snapshots.py
index 576f2251f..b2536acb1 100644
--- a/src/lib/Server/Admin/Snapshots.py
+++ b/src/lib/Server/Admin/Snapshots.py
@@ -8,39 +8,6 @@ import Bcfg2.Server.Snapshots.model
from Bcfg2.Server.Snapshots.model import Snapshot, Client, Metadata, Base, \
File, Group, Package, Service
-def print_table(rows, justify='left', hdr=True, vdelim=" ", padding=1):
- """Pretty print a table
-
- rows - list of rows ([[row 1], [row 2], ..., [row n]])
- hdr - if True the first row is treated as a table header
- vdelim - vertical delimiter between columns
- padding - # of spaces around the longest element in the column
- justify - may be left,center,right
- """
- hdelim = "="
- justify = {'left':str.ljust,
- 'center':str.center,
- 'right':str.rjust}[justify.lower()]
-
- '''
- calculate column widths (longest item in each column
- plus padding on both sides)
- '''
- cols = list(zip(*rows))
- colWidths = [max([len(str(item))+2*padding for \
- item in col]) for col in cols]
- borderline = vdelim.join([w*hdelim for w in colWidths])
-
- # print out the table
- print(borderline)
- for row in rows:
- print(vdelim.join([justify(str(item), width) for \
- (item, width) in zip(row, colWidths)]))
- if hdr:
- print(borderline)
- hdr = False
- print(borderline)
-
class Snapshots(Bcfg2.Server.Admin.Mode):
__shorthelp__ = "Interact with the Snapshots system"
__longhelp__ = (__shorthelp__)
@@ -75,11 +42,11 @@ class Snapshots(Bcfg2.Server.Admin.Mode):
for host in \
self.session.query(q_obj).filter(q_obj.active == True):
rows.append([host.name, 'Yes'])
- print_table([labels]+rows,
- justify='left',
- hdr=True,
- vdelim=" ",
- padding=1)
+ self.print_table([labels]+rows,
+ justify='left',
+ hdr=True,
+ vdelim=" ",
+ padding=1)
elif q_obj == Group:
print("Groups:")
for group in self.session.query(q_obj).all():
@@ -125,10 +92,10 @@ class Snapshots(Bcfg2.Server.Admin.Mode):
for item in q.all():
cli, cor, time, rev = item
rows.append([cli, cor, time, rev])
- print_table([labels]+rows,
- justify='left',
- hdr=True, vdelim=" ",
- padding=1)
+ self.print_table([labels]+rows,
+ justify='left',
+ hdr=True, vdelim=" ",
+ padding=1)
elif '-b' in args[1:]:
# Query a single host for bad entries
client = args[2]