David Blume commited on 2016-09-11 14:15:17
Showing 1 changed files, with 29 additions and 19 deletions.
... | ... |
@@ -71,6 +71,33 @@ def map_key_to_prefix(k): |
71 | 71 |
pass |
72 | 72 |
return "" |
73 | 73 |
|
74 |
+ |
|
75 |
+def print_as_table(rows, underline_header = True): |
|
76 |
+ """ Prints rows with consistent column widths. """ |
|
77 |
+ cols = zip(*rows) |
|
78 |
+ |
|
79 |
+ # Compute column widths by taking maximum length of values per column |
|
80 |
+ col_widths = [max(len(value) for value in col) for col in cols] |
|
81 |
+ |
|
82 |
+ # Create a suitable format string for nice table output |
|
83 |
+ fmt = "\t".join(["{:<%d}" % i for i in col_widths]) |
|
84 |
+ |
|
85 |
+ # Print each row using the computed format |
|
86 |
+ if underline_header: |
|
87 |
+ print fmt.format(*rows.pop(0)) |
|
88 |
+ print "\t".join([('-' * i) for i in col_widths]) # column header separator |
|
89 |
+ for row in rows: |
|
90 |
+ print fmt.format(*row) |
|
91 |
+ |
|
92 |
+ |
|
93 |
+def print_footer(): |
|
94 |
|
|
95 |
+ print 'Tip:' |
|
96 |
+ print 'sync_ip () { export ENV_VAR=$(curl -s "%s?k=YP008G581095,2N00FG504225"); }' % os.environ['SCRIPT_URI'] |
|
97 |
+ print 'curl --data "`hostname -s`=`hostname -i`&auth=$AUTH" "%s"' % os.environ['SCRIPT_URI'] |
|
98 |
+ print 'Source code at http://git.dlma.com/kvs.git/' |
|
99 |
+ |
|
100 |
+ |
|
74 | 101 |
if __name__ == '__main__': |
75 | 102 |
localdir = os.path.abspath(os.path.dirname(sys.argv[0])) |
76 | 103 |
args = cgi.FieldStorage() |
... | ... |
@@ -145,25 +172,8 @@ if __name__ == '__main__': |
145 | 172 |
rows.append((key, d['value'], created, str(d['time']), origin, |
146 | 173 |
"%supdated %s ago" % (map_key_to_prefix(key), td))) |
147 | 174 |
|
148 |
- cols = zip(*rows) |
|
149 |
- |
|
150 |
- # Compute column widths by taking maximum length of values per column |
|
151 |
- col_widths = [max(len(value) for value in col) for col in cols] |
|
152 |
- |
|
153 |
- # Create a suitable format string for nice table output |
|
154 |
- fmt = "\t".join(["{:<%d}" % i for i in col_widths]) |
|
155 |
- |
|
156 |
- # Print each row using the computed format |
|
157 |
- print fmt.format(*rows.pop(0)) |
|
158 |
- print "\t".join([('-' * i) for i in col_widths]) # column header separator |
|
159 |
- for row in rows: |
|
160 |
- print fmt.format(*row) |
|
161 |
- |
|
162 |
|
|
163 |
- print 'Tip:' |
|
164 |
- print 'sync_ip () { export ENV_VAR=$(curl -s "%s?k=YP008G581095,2N00FG504225"); }' % os.environ['SCRIPT_URI'] |
|
165 |
- print 'curl --data "`hostname -s`=`hostname -i`&auth=$AUTH" "%s"' % os.environ['SCRIPT_URI'] |
|
166 |
- print 'Source code at http://git.dlma.com/kvs.git/' |
|
175 |
+ print_as_table(rows) |
|
176 |
+ print_footer() |
|
167 | 177 |
|
168 | 178 |
if not wrote_response: |
169 | 179 |
print 'Status: 400 Bad Request\n' |
170 | 180 |