railsmachine / moonshine

Simple Rails deployment and configuration management. 15 minute deploys of Rails 2, 3, or 4 apps.
http://railsmachine.github.com/moonshine/
GNU Lesser General Public License v3.0
666 stars 70 forks source link

Ruby 2.2.x support #247

Closed jarinudom closed 9 years ago

jarinudom commented 9 years ago

Is it waiting on an incompatibility with shadow_puppet or puppet?

bparanj commented 9 years ago

When can we expect Ruby 2.2 support?

jarinudom commented 9 years ago

Apparently we'll have to wait for Puppet 4.0

https://groups.google.com/forum/?fromgroups#!searchin/puppet-users/ruby$202.2/puppet-users/gzMXpKYo9Yw/wUCSO4ZpGqcJ

bparanj commented 9 years ago

I have decided to switch over to Chef Solo. Chef community support is better.

bryantraywick commented 9 years ago

I'm about to merge in support for Ruby 2.2. As @jarinudom mentions this required waiting for Puppet 4 then updating and testing shadow_puppet with Puppet 4. All of my testing so far looks good. With this update we will also be dropping support for Ruby 1.8.7 and 1.9.2 since Puppet drops support for them as well.

I recommend updating moonshine and all of your moonshine plugins to the latest version because with Puppet 4 comes Facter 2 which removed the #method_missing method. Moonshine used this all over the place to gather facts about the system. You will also likely need to update your own manifests to work with Facter 2. Search them for Facter and replace any uses such as Facter.fqdn with Facter.value(:fqdn). Facter 1.x contained a #method_missing implementation that performed that for you automatically, but Facter 2 removed that convenience (for somewhat spurious reasons IMO). I've updated many popular moonshine plugins but if you find one that still uses the old Facter.fqdn syntax submit a bug or post to the mailing list and I'll update them.