oops, should be part of the previous commit, sfi needs to be redirected to the port...
[tests.git] / system / utils.py
index cc03318..5a869d1 100644 (file)
@@ -22,8 +22,9 @@ def pprint(message,spec,depth=2):
 
 
 
-def system(command,background=False,silent=False):
-    if getattr(options,'dry_run',None):
+def system(command,background=False,silent=False, dry_run=None):
+    dry_run = dry_run if dry_run is not None else getattr(options,'dry_run',False)
+    if dry_run:
         print 'dry_run:',command
         return 0
     
@@ -39,20 +40,17 @@ def system(command,background=False,silent=False):
         # 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
-#    if options.dry_run:
-#        print 'dry_run',command
-#        return (0,'[[dry-run - fake output]]')
-#    else:
     (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