Troubleshooting a Ruby Version Mismatch


You may experience different issues when adding a new app instance to the environment on Engine Yard Cloud (EYC). The underlying issue might vary, but you would see errors similar to this in the deployment logs:

invalid option: --no-rdoc

This indicates an option that is no longer available in the newer versions of Ruby, but it should be available in the version set up in the environment configuration.


When adding a new app instance to an EYC environment, ensure that the Ruby version in the environment variables matches the Ruby version in the instances. To check the ruby version in an instance:

ip-xxx-xxx-xxx-xxx ~ # gem -v
ip-xxx-xxx-xxx-xxx ~ # gem list | grep rubygems
rubygems-update (3.1.4)

When facing errors like this, reviewing the EY_RUBY_VERSION in the environment variable is essential. Specifically, check that the EY_RUBY_VERSION does not contain quotes, as this can make some paths invalid and cause several issues.


Q: What is the EY_RUBY_VERSION?
A: The EY_RUBY_VERSION is an environment variable that specifies the Ruby version to be used in an Engine Yard Cloud environment.

Q: How can I check the EY_RUBY_VERSION?
A: You can check the EY_RUBY_VERSION by accessing the environment variables in your EYC environment.

Q: What should I do if the EY_RUBY_VERSION is incorrect?
A: If the EY_RUBY_VERSION is incorrect, you should ensure you are not using quotes from the version number.


Article is closed for comments.