Hi Sven, We have a similar issue on our build server and Jenkins gives you an environment variable $EXECUTOR_NUMBER which you can use to define different ports to be used in the tests.
From our config, the function below assumes 3 possible executors and defines a set of environment variables that the tests will use. Of course, we use OSProcess to read the variables in Pharo itself.
Maybe this helps. Cheers Johan function setupconfiguration { if [ $EXECUTOR_NUMBER -eq 0 ]; then export DISPLAY=:3 export NPGOODSPORT=7001 export NPGOODSTELNETPORT=8922 export NPSELENIUMPORT=4446 export NPNEXTPLANPORT=8082 export NPJASPERREPORTSPORT=9095 fi if [ $EXECUTOR_NUMBER -eq 1 ]; then export DISPLAY=:5 export NPGOODSPORT=7002 export NPGOODSTELNETPORT=8923 export NPSELENIUMPORT=4448 export NPNEXTPLANPORT=8084 export NPJASPERREPORTSPORT=9096 fi if [ $EXECUTOR_NUMBER -eq 2 ]; then export DISPLAY=:6 export NPGOODSPORT=7003 export NPGOODSTELNETPORT=8924 export NPSELENIUMPORT=4449 export NPNEXTPLANPORT=8085 export NPJASPERREPORTSPORT=9097 fi } On 22 Jan 2014, at 18:24, Sven Van Caekenberghe <sven@stfx.eu> wrote:
Hi,
Is it possible to serialize (i.e. do not execute in parallel) the CI jobs of one matrix of Pharo Contributions ?
The Zinc jobs occasionally fails because they interfere with each other (i.e. although they use random ports for servers during unit testing, sometimes they use a port that is already in use by a parallel running job, presumably from the built matrix).
Thx,
Sven