summaryrefslogtreecommitdiff
path: root/yarns
diff options
context:
space:
mode:
authorLars Wirzenius <lars.wirzenius@codethink.co.uk>2014-03-05 13:51:03 +0000
committerLars Wirzenius <lars.wirzenius@codethink.co.uk>2014-03-06 19:01:32 +0000
commit032aa01054fe2d3313c56adc41467e1fdd1c7571 (patch)
tree8609a8eec65244bf3fee3189c013f01b6033b337 /yarns
parente9e9baa045ae45bb99aecbc5850823480592e9f4 (diff)
downloadmorph-032aa01054fe2d3313c56adc41467e1fdd1c7571.tar.gz
Pass in user's PYTHONPATH to morph when run from yarns
We carefully _add_ to PYTHONPATH in ./check, if it was set by the user. However, yarn cleans the environment when it runs tests, so we tell it to add PYTHONPATH from ./check to the test environment. Additionally, we change yarns/morph.shell-lib so it doesn't override PYTHONPATH, but adds to it. All of this is necessary to get morph, when run by yarn steps, to have the right PYTHONPATH, which can be (and currently is) to allow the user to specify un-installed versions of dependencies, such as cliapp.
Diffstat (limited to 'yarns')
-rw-r--r--yarns/morph.shell-lib11
1 files changed, 10 insertions, 1 deletions
diff --git a/yarns/morph.shell-lib b/yarns/morph.shell-lib
index 265e7c78..4ce8c2f8 100644
--- a/yarns/morph.shell-lib
+++ b/yarns/morph.shell-lib
@@ -19,6 +19,15 @@
# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
+# Add $SRCDIR to PYTHONPATH.
+
+case "$PYTHONPATH" in
+ '') PYTHONPATH="$SRCDIR)" ;;
+ *) PYTHONPATH="$SRCDIR:$PYTHONPATH" ;;
+esac
+export PYTHONPATH
+
+
# Run Morph from the source tree, ignoring any configuration files.
# This way the test suite is not affected by any configuration the user
# or system may have. Instead, we'll use the `$DATADIR/morph.conf` file,
@@ -28,7 +37,7 @@ run_morph()
{
{
set +e
- PYTHONPATH="$SRCDIR" "$SRCDIR"/morph \
+ "$SRCDIR"/morph \
--cachedir-min-space=0 --tempdir-min-space=0 \
--no-default-config --config "$DATADIR/morph.conf" "$@" \
2> "$DATADIR/result-$1"