We have been using circle.ci since a few weeks, running unit tests against a nodejs server (requiring node 0.10.40).
So far, we have our
cricle.yaml running some
make run, which starts a few server processes. Then, circle runs
make tests, connecting to our servers, sending API calls, … testing.
As of last week, a colleague of mine started working on updating our code to work with node 4.2.
circle.yaml, I added a
dependencies section, installing gcc & g++4.9 and running some update-alternatives (tip found in some other discussion, otherwise some npm modules refuse to build).
I had to make do with node 4.1 (no 4.2 available yet on circle?).
I also had to run
npm install in the
circle.yaml - which was done automatically before. I suppose this could be related to me overriding the
And my main problem: our server processes don’t start any more.
Right now, if feels like everything should work: running my tests “with ssh”, I can connect and start our servers with the command and env vars provided in our
However if I don’t connect and start our server processes myself, they don’t get started at all.
I patched my makefile to send both stdout & stderr to some file, when starting a server process. Usually, we can find errors such as a missing env var, missing node module, … Though when circle fails starting these processes, the corresponding log files are empty.
I have no idea why our server processes refuse to start.
Having confirmed our processes haven’t started, I can log back in via ssh, and issue a
make run. Everything’s back on track.
How is it my
make run could fail?
general: branches: only: - staging-with-new-node machine: environment: ENV0: 0 ENV1: 1 hosts: peeriodev.local: 127.0.0.1 node: version: 4.1.0 services: - redis # circleCI required since node4.x dependencies: override: - sudo add-apt-repository -y ppa:ubuntu-toolchain-r/test && sudo apt-get update - sudo apt-get install -y gcc-4.9 g++-4.9 - sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-4.6 10 - sudo update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-4.6 10 - sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-4.9 20 - sudo update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-4.9 20 # //circleCI test: pre: # circleCI provides with riak-1.4.8 - wget http://s3.amazonaws.com/downloads.basho.com/riak/2.1/2.1.1/ubuntu/trusty/riak_2.1.1-1_amd64.deb - sudo dpkg -i riak_2.1.1-1_amd64.deb - sudo sed -i 's|storage_backend.*|storage_backend = leveldb|' /etc/riak/riak.conf - sudo /etc/init.d/riak restart - sudo make inittypes # //circleCI # circleCI required since node4.x - npm install # //circleCI - make run # wait a little bit, making sure everything's started - sleep 10
Any advice would be welcome.