Description
There are lots of cases out there of users confused by cases of Capistrano apparently failing to find a version of Ruby that was installed with rbenv. In such cases we see output like this:
$ bundle exec cap staging deploy
00:00 rbenv:validate
WARN rbenv: 3.1.2 is not installed or not found in $HOME/.rbenv/versions/3.1.2 on 123.123.123.123
I was recently baffled by a case like this, because I knew for sure that this version of Ruby was installed in the specified location, and I hadn't changed anything.
It turned out that the underlying problem was simply that Capistrano was unable to log into the server, because the relevant user's password had expired and needed to be changed.
I would have been saved a lot of head scratching if the output from the rbenv:validate command had reflected this problem rather than seeming to imply that it had connected to the server in question but found Ruby absent at the specified path.
Activity