I need to build with ruby 2.3.0, so I wrote my config.yml
like this
jobs:
build:
docker:
- image: circleci/ruby:2.3
However that image contains ruby 2.3.4. I logged into the container to check:
circleci@ebd07f7af653:~$ ruby --version
ruby 2.3.4p301 (2017-03-30 revision 58214) [x86_64-linux]
Just to be sure I pulled the image and did docker inspect
[
{
"Id": "sha256:af9f9f1bf901d497e87bb1742f8a29680dbf6123362d0eadb8b884430f531b64",
"RepoTags": [
"circleci/ruby:2.3"
],
"RepoDigests": [
"circleci/ruby@sha256:d2afa7eb57c01a52a024f0044c0080097afa3298b5b542b187e6476ff98b9784"
],
*snip*
"Env": [
"PATH=/usr/local/bundle/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin",
"RUBY_MAJOR=2.3",
"RUBY_VERSION=2.3.4",
*snip*
So my build fails with Your Ruby version is 2.3.4, but your Gemfile specified 2.3.0
Is it expected for the 2.3 image to contain ruby-2.3.4? If so, then why is there a different image tagged with 2.3.4
?
Should I give up on the docker image and try the machine executor instead?