git://git.onelab.eu
/
tests.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
re-instate check-vsys-defaults as an ignored step
[tests.git]
/
system
/
utils.py
diff --git
a/system/utils.py
b/system/utils.py
index
22eb885
..
fbdd3f6
100644
(file)
--- a/
system/utils.py
+++ b/
system/utils.py
@@
-1,4
+1,6
@@
-# $Id$
+# Thierry Parmentelat <thierry.parmentelat@inria.fr>
+# Copyright (C) 2010 INRIA
+#
import time, os, re, glob, sys
from pprint import PrettyPrinter
import time, os, re, glob, sys
from pprint import PrettyPrinter
@@
-20,30
+22,34
@@
def pprint(message,spec,depth=2):
-def system(command,background=False):
- if background: command += " &"
- if options.dry_run:
+def system(command,background=False,silent=False):
+ if getattr(options,'dry_run',None):
print 'dry_run:',command
return 0
print 'dry_run:',command
return 0
+
+ if silent :
+ if command.find(';')>=0: command = "(%s) 2> /dev/null" % command
+ else: command += " 2> /dev/null"
+ if background: command += " &"
+ if silent:
+ print '.',
+ sys.stdout.flush()
else:
now=time.strftime("%H:%M:%S", time.localtime())
# don't show in summary
print "->",now,'--',
sys.stdout.flush()
else:
now=time.strftime("%H:%M:%S", time.localtime())
# don't show in summary
print "->",now,'--',
sys.stdout.flush()
- return os.system("set -x; " + command)
+ if not silent:
+ command = "set -x; " + command
+ return os.system(command)
### WARNING : this ALWAYS does its job, even in dry_run mode
def output_of (command):
import commands
### WARNING : this ALWAYS does its job, even in dry_run mode
def output_of (command):
import commands
-# if options.dry_run:
-# print 'dry_run',command
-# return (0,'[[dry-run - fake output]]')
-# else:
(code,string) = commands.getstatusoutput(command)
return (code,string)
(code,string) = commands.getstatusoutput(command)
return (code,string)
-
# convenience: translating shell-like pattern into regexp
def match (string, pattern):
# tmp - there's probably much simpler
# convenience: translating shell-like pattern into regexp
def match (string, pattern):
# tmp - there's probably much simpler