Dag Johan, Bedankt voor de tip. (Thanks for the tip) I was hoping for a simpler solution ;-) Doing it like that binds the tests a bit to the CI environment, but maybe I can make that optional. BTW, on Pharo 3.0, environment access is built in: Smalltalk os environment getEnv: 'USER'. I guess that I can't do that on 2.0, which I would need. Maybe I can pass something in as a command line argument. I'll have to think about that. Sven On 22 Jan 2014, at 19:37, Johan Brichau <johan@inceptive.be> wrote:
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