Running out of space on SemaphoreCI
Don’t you just hate when small little bugs take up your productive hours? Well this happened to me today.
First off, I want to say we love SemaphoreCI at Scurri. We use it quite extensively to test our builds. It’s fast, cheap and effective. The parallel builds functionality is cool so we can do our linting in one and py.test in the other.
While deploying some code recently, I got the following stack trace from the build.
npm ERR! System Linux 3.13.0-32-generic
npm ERR! command "/usr/bin/nodejs" "/usr/bin/npm" "install"
npm ERR! cwd /home/devusr
npm ERR! node -v v0.10.25
npm ERR! npm -v 1.3.10
npm ERR! path /home/devusr/node_modules/jest-cli/node_modules/istanbul-api/node_modules/istanbul-lib-instrument/node_modules/bab
el-traverse/node_modules/babel-runtime
npm ERR! fstream_path /home/devusr/node_modules/jest-cli/node_modules/istanbul-api/node_modules/istanbul-lib-instrument/node_modules/babel-traverse/node_modules/babel-runtime
npm ERR! fstream_type Directory
npm ERR! fstream_class DirWriter
npm ERR! code ENOSPC
npm ERR! errno 54
npm ERR! fstream_stack /usr/lib/nodejs/fstream/lib/dir-writer.js:36:23
npm ERR! fstream_stack /usr/lib/nodejs/mkdirp/index.js:37:53
npm ERR! fstream_stack Object.oncomplete (fs.js:107:15)
Since we use docker containers from our Amazon registry, we expect to have a big build but to hit the 3GB limit - that’s a bit crazy.
By default though, SemaphoreCI installs a few apps by default like lein for Clojure and NPM for well Node.js.
Thanks to a helpful support agent, Melina, we were back in business by adding the following lines to our SemaphoreCI flow.
sudo rm -rf /home/runner/{.phpbrew,.phpunit,.kerl,.kiex,.lein,.nvm,.npm,.rbenv}
That’s it!