Circleci/ruby:2.4-node-browsers Could not find a JavaScript runtime


Edit 3: Nodejs is missing from latest circleci/ruby:2.4-node-browsers as far as I can tell

We have pulled the docker containers at the SHAs I found in the passing and failing builds to our local machine to confirm:

$ docker run -it circleci/ruby@sha256:7f5caec6bc71124a3d81fd9d000df23aa568e52e4be8b697f017b71e305fc9e0  /bin/bash
circleci@088e477b620b:/$ nodejs
> console.log("it is here")
it is here
$ docker run -it circleci/ruby@sha256:211fa62e7688592b7434914e48c5b180288ba9523b995835923191e1032d1b25 /bin/bash
circleci@deec88ee7f18:/$ nodejs
bash: nodejs: command not found

We’re using the circleci/ruby:2.4-node-browsers image to run our test suite which includes poltergeist tests with capybara. This requires a javascript runtime. Up until this afternoon the images worked just find, but the last three builds have failed with the Could not find a JavaScript runtime error while running bundle exec during the migration step.

Here is the commit that began to fail (no changes to gemfile or other requirements)

Prior to this commit all tests were passing consistently using capybara and poltergeist on this image.

Edit: By rebuilding with SSH it seems like nodejs is not installed in the container?

circleci@8069c1122354:~$ nodejs
bash: nodejs: command not found
circleci@8069c1122354:~$ sudo apt-get install nodejs
Reading package lists... Done
Building dependency tree
[truncated for your reading pleasure]
Setting up nodejs (0.10.29~dfsg-2) ...
update-alternatives: using /usr/bin/nodejs to provide /usr/bin/js (js) in auto mode
Processing triggers for libc-bin (2.19-18+deb8u10) ...
circleci@8069c1122354:~$ nodejs
> console.log("now it works")
now it works

Edit 2: We’ve confirmed that rebuilding builds on slightly older SHAs of the ruby image still succeed

Failing SHA:

Starting container circleci/ruby:2.4-node-browsers
  using image circleci/ruby@sha256:211fa62e7688592b7434914e48c5b180288ba9523b995835923191e1032d1b25

Passing SHA:

Starting container circleci/ruby:2.4-node-browsers
  using image circleci/ruby@sha256:7f5caec6bc71124a3d81fd9d000df23aa568e52e4be8b697f017b71e305fc9e0


I’m seeing the same thing. I can no longer build. Why would Circle publish a breaking image with the same circleci/ruby:2.4.1-node tag?


This is broken for us as well. The solution is to hard-code the Docker SHA temporarily in your config. CircleCI supposedly posts source code for these builds here but that hasn’t been updated in months.


This topic was automatically closed 41 days after the last reply. New replies are no longer allowed.