Moonshine now officially supports
Ruby 2.2. We strive for backwards compatibility as much as possible, but Ruby
2.2 support requires using a new major release of Puppet. Puppet 4 depends on
Facter 2 which Moonshine and Moonshine
plugins use extensively to gather facts about the server. Facter 2
breaks backwards compatibility in one major way: the removal of the
Facter#method_missing
convenience function. Moonshine used this functionality
rather than the more cumbersome Facter#value
function. For example, instead
of gathering the fully-qualified domain name using Facter.fqdn
, you now must
use Facter.value(:fqdn)
.
Fortunately, updating the uses of Facter is a fairly simple and mechanical process. Be sure to upgrade all of your Moonshine plugins to the latest version and update any uses of Facter in your app’s manifests.
If you are a Rails Machine customer and would like to upgrade to Ruby 2.2, feel free to submit a support request and we will be happy to help out.