From 519a6460930c5ae08a9591035f72e88fd4db9b71 Mon Sep 17 00:00:00 2001 From: Mike Williams Date: Thu, 11 Jun 2015 12:59:50 +0000 Subject: Force test suite to observe morph.conf tempdir This change, suggested in story #16, causes the testing suite to use the user-defined tempdir in /etc/morph.conf if it exists or continue using /tmp if not. This will prevent the test suite from filling drives that are not intended to be used for development work. Change-Id: I94edabe4ea1eca7a55ece7424ece7bbd4b68c513 --- check | 28 +++++++++++++++++++++++++++- 1 file changed, 27 insertions(+), 1 deletion(-) (limited to 'check') diff --git a/check b/check index e3af5992..5aea6f55 100755 --- a/check +++ b/check @@ -86,6 +86,31 @@ do shift done +# Find and set tempdir from morph.conf or use /tmp if it does not +# exist. Since the config file can be quite complicated, we use the +# Python ConfigParser module to find TMPDIR. We append a folder called +# testSuite to this so any existing files are not removed. + +TMPDIR=$( + morph --dump-config | python -c ' +import sys, ConfigParser +cp = ConfigParser.RawConfigParser() +cp.readfp(sys.stdin) +try: + print cp.get("config", "tempdir") +except ConfigParser.NoOptionError: + print "/tmp"' +) + +if [ "$TMPDIR" == "None" ]; then + TMPDIR="/tmp" +fi + +TMPDIR="$TMPDIR/testSuite" + +mkdir -p "$TMPDIR" +TMPDIR=$(mktemp -d -p "$TMPDIR") +export TMPDIR # Set PYTHONPATH to start with the current directory so that we always # find the right version of it for the test suite. @@ -138,7 +163,8 @@ fi if "$run_yarns" && command -v yarn > /dev/null then - yarn --env "PYTHONPATH=$PYTHONPATH" $snapshot -s yarns/morph.shell-lib \ + yarn --env "PYTHONPATH=$PYTHONPATH" --env "TMPDIR=$TMPDIR" $snapshot \ + --tempdir "$TMPDIR" -s yarns/morph.shell-lib \ yarns/*.yarn fi -- cgit v1.2.1