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
racoisn't in the
PATH? (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
- 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.
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).