I’ve got multiple versions of puppet installed on my machine:
1) 3.x for regular use
2) 2.7 to generate puppetdoc. Puppetdoc is buggy in 3.x so I had to install an older version
I installed puppet 2.7 in my user’s .gem folder under the home dir (~/.gem). When I run puppet, I get an error:
Error: undefined method `downcase' for #
It is either a bug in puppet 2.7 or I am missing some gems in my 2.7 .gem installation. The temporary fix is to rename .gem folder when running puppet runs on 3.x, and move it back when i need to run puppetdoc from the .gem folder.
A more elegant solution would have been to install puppet into it’s own environment using rvm or something similar.