Browse Source

tests: Honor HWSIM_TEST_LOG_DIR variable in VM runs

If /tmp has a relatively small size limit, or multiple people run the
tests on the same machine, using the same output directory can easily
cause problems.

Make the test framework honor the new HWSIM_TEST_LOG_DIR environment
variable to make it easier to avoid those problems.

Signed-off-by: Johannes Berg <johannes.berg@intel.com>
Johannes Berg 9 years ago
parent
commit
680ce356c0
3 changed files with 18 additions and 9 deletions
  1. 8 7
      tests/hwsim/vm/parallel-vm.py
  2. 5 1
      tests/hwsim/vm/parallel-vm.sh
  3. 5 1
      tests/hwsim/vm/vm-run.sh

+ 8 - 7
tests/hwsim/vm/parallel-vm.py

@@ -352,6 +352,13 @@ def main():
                    help="run tests under valgrind")
     p.add_argument('params', nargs='*')
     args = p.parse_args()
+
+    dir = os.environ.get('HWSIM_TEST_LOG_DIR', '/tmp/hwsim-test-logs')
+    try:
+        os.makedirs(dir)
+    except:
+        pass
+
     num_servers = args.num_servers
     rerun_failures = not args.no_retry
     if args.debug:
@@ -363,7 +370,7 @@ def main():
         extra_args += [ '--long' ]
     if args.codecov:
         print "Code coverage - build separate binaries"
-        logdir = "/tmp/hwsim-test-logs/" + str(timestamp)
+        logdir = os.path.join(dir, str(timestamp))
         os.makedirs(logdir)
         subprocess.check_call([os.path.join(scriptsdir, 'build-codecov.sh'),
                                logdir])
@@ -390,12 +397,6 @@ def main():
     if len(tests) == 0:
         sys.exit("No test cases selected")
 
-    dir = '/tmp/hwsim-test-logs'
-    try:
-        os.mkdir(dir)
-    except:
-        pass
-
     if args.shuffle:
         from random import shuffle
         shuffle(tests)

+ 5 - 1
tests/hwsim/vm/parallel-vm.sh

@@ -9,7 +9,11 @@ if [ -z "$NUM" ]; then
 fi
 shift
 
-LOGS=/tmp/hwsim-test-logs
+if [ -n "$HWSIM_TEST_LOG_DIR" ] ; then
+	LOGS="$HWSIM_TEST_LOG_DIR"
+else
+	LOGS=/tmp/hwsim-test-logs
+fi
 mkdir -p $LOGS
 DATE=$(date +%s)
 

+ 5 - 1
tests/hwsim/vm/vm-run.sh

@@ -6,7 +6,11 @@ if [ -z "$TESTDIR" ] ; then
 	TESTDIR=$(pwd)/../
 fi
 
-LOGS=/tmp/hwsim-test-logs
+if [ -n "$HWSIM_TEST_LOG_DIR" ] ; then
+	LOGS="$HWSIM_TEST_LOG_DIR"
+else
+	LOGS=/tmp/hwsim-test-logs
+fi
 
 # increase the memory size if you want to run with valgrind, 512 MB works
 MEMORY=192