For one of my packages, there are failing tests in the package server environment, although the tests succeed on my machine.
From the package server's error log it looks like (find-executable-path "raco")
doesn't find raco
in the PATH
environment variable.
A few questions:
- Can someone confirm that
raco
isn't in thePATH
? (If not, it would be great to add it.) - Is there any documentation about the package server test environment, for example, which OS is used, which OS packages are installed and what's available in
PATH
? - What about displaying some important environment variables as part of the test log?
- What kind of internet connection is available in the test environment? (I ask because my integration tests clone a Git repository that I run tests on.)
There seems to be some information about the environment in the log,
(/usr/bin/env DISPLAY=:1 PLT_PKG_BUILD_SERVICE=1 PLTUSERHOME=/home/root//user PLT_PKG_BUILD_SERVICE=1 CI=true PLTSTDERR=debug@pkg error PLT_INFO_ALLOW_VARS=;PLT_PKG_BUILD_SERVICE PLTCOMPILEDROOTS=/home/root//zo: /usr/bin/xvfb-run -n 1 /bin/sh -c cd "/home/root/"/racket && bin/racket -MCR "/home/root/"/zo: -l- raco pkg install -u --auto raco-exe-multitarget && bin/racket -MCR "/home/root/"/zo: -l- raco test --drdr --package raco-exe-multitarget)
This looks like the shell command that's used to run the tests, which includes setting some environment variables on the fly, in addition to the already-set ones.
The part
cd "/home/root/"/racket && bin/racket
looks like the Racket binaries are in /home/root/racket/bin
. I guess I can add this to the PATH
in my internal test
module, but before I add this workaround, I'd like to suggest that this is added to PATH
anyway. Also, many of the tests will fail without internet connection (see above).