summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorIan Jackson <ijackson@chiark.greenend.org.uk>2015-06-20 17:31:09 +0100
committerIan Jackson <ijackson@chiark.greenend.org.uk>2015-06-20 17:31:09 +0100
commit16570fa6d2c817138272294ac143db1252376ba8 (patch)
treeece152a0b192aa21bf414dc91648f5c6127dc0ed
parenta8287b3568a7d563ea9bcfa611275bbee4bce21f (diff)
Infra: dgit-ssh-dispatch sets PERLLIB
-rwxr-xr-xinfra/dgit-ssh-dispatch3
-rwxr-xr-xtests/dsd-ssh5
2 files changed, 8 insertions, 0 deletions
diff --git a/infra/dgit-ssh-dispatch b/infra/dgit-ssh-dispatch
index 377f8b8..f525055 100755
--- a/infra/dgit-ssh-dispatch
+++ b/infra/dgit-ssh-dispatch
@@ -130,6 +130,9 @@ sub dispatch () {
my $cmd=$1;
selectpackage $2,$3;
if ($cmd eq 'receive-pack') {
+ $ENV{'PERLLIB'} //= '';
+ $ENV{'PERLLIB'} =~ s#^(?=.)#:#;
+ $ENV{'PERLLIB'} =~ s#^# $ENV{DGIT_TEST_INTREE} // $dgitlive #e;
my $s = "$dgitlive/infra/dgit-repos-server";
exec $s, $distro, $d, $authrune, qw(--ssh);
die "exec $s: $!";
diff --git a/tests/dsd-ssh b/tests/dsd-ssh
index 7a075f0..94a9582 100755
--- a/tests/dsd-ssh
+++ b/tests/dsd-ssh
@@ -8,6 +8,11 @@ tmp=$DGIT_TEST_TMP
cd /
userhost="$1"; shift
export SSH_ORIGINAL_COMMAND="$*"
+
+# undoes PERLLIB so that we rely on dgit-ssh-dispatch setting it
+# we have to compensate with -I so that dgit-ssh-dispatch finds Dgit.pm
+unset PERLLIB
+perl -I $DGIT_TEST_INTREE \
${DGIT_SSH_DISPATCH_TEST-dgit-ssh-dispatch} -D $tmp
: '))))))))))))))))))))))))))))))))))))))))'