Running CloudForms and Puppet Together

logotype_rh_cloudforms_rgb_black1

In this instance we are trying to run Red Hat Cloudforms, also known as Manage IQ, and Puppet together on the same RHEL 6 host.

Our goal here is to push out some configuration to the Cloudforms appliances via Puppet. However we ran into issues as the version of Ruby/Ruby Gems used by Cloudforms is different than the version used by Puppet and they are stepping on each other a bit.

Here is the error we see when attempting to run Puppet

 

# puppet agent -t

/opt/rh/ruby200/root/usr/share/gems/gems/json-1.8.2/lib/json/ext/parser.so: [BUG] Segmentation fault

ruby 1.8.7 (2013-06-27 patchlevel 374) [x86_64-linux]

Aborted (core dumped)

 

As a workaround we add this code to /usr/bin/puppet.

%w(GEM_ROOT GEM_HOME GEM_PATH).map do |x|

ENV.delete x

end if $0.match(/\A#{‘/usr/bin’}/)

 

 

We add this right below

#!/us/bin/ruby

By no means is this the best way to work around this issue, however it does work and will get you up and running.