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 <[email protected]> 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