I have two versions of Ruby on my servers. One that is used for Puppet and system scripts (Ruby 1.8.7) and then one which is a custom package I built running the latest Ruby 1.9.3. This is used for the Ruby/Rails applications that are being developed by our dev team. Is there a way for Puppet to control the gems installed by both of these gem versions? I need a way to spin up systems with no user input, right now thats not possible without this. Is subclassing the gem provider the only way or is there a more clean way to set path with the current gem provider. I was looking in the gem.rb provider source and didn''t see a way there. Thanks, Ron -- You received this message because you are subscribed to the Google Groups "Puppet Users" group. To view this discussion on the web visit https://groups.google.com/d/msg/puppet-users/-/xRwCW9vQdFgJ. To post to this group, send email to puppet-users@googlegroups.com. To unsubscribe from this group, send email to puppet-users+unsubscribe@googlegroups.com. For more options, visit this group at http://groups.google.com/group/puppet-users?hl=en.
Nan Liu
2012-Aug-10 17:27 UTC
Re: [Puppet Users] Multiple Versions of Gem command Supported?
On Fri, Aug 10, 2012 at 10:20 AM, Ron <ronald.valente@gmail.com> wrote:> I have two versions of Ruby on my servers. One that is used for Puppet and > system scripts (Ruby 1.8.7) and then one which is a custom package I built > running the latest Ruby 1.9.3. This is used for the Ruby/Rails applications > that are being developed by our dev team. Is there a way for Puppet to > control the gems installed by both of these gem versions? I need a way to > spin up systems with no user input, right now thats not possible without > this. Is subclassing the gem provider the only way or is there a more clean > way to set path with the current gem provider. I was looking in the gem.rb > provider source and didn''t see a way there.Yeah, that''s the only way I''m aware of. The code is only a few lines, and we have a pe_gem example: https://github.com/puppetlabs/puppetlabs-pe_gem The bigger problem is you can''t have duplicate package names, so you either need to two environments or separate manifests if you wish to manage the same gems in 1.8.7 and 1.9. There''s no way to install in one puppet run at the moment. Thanks, Nan -- You received this message because you are subscribed to the Google Groups "Puppet Users" group. To post to this group, send email to puppet-users@googlegroups.com. To unsubscribe from this group, send email to puppet-users+unsubscribe@googlegroups.com. For more options, visit this group at http://groups.google.com/group/puppet-users?hl=en.
Thanks for the update, I am assuming I need pluginsync in order for this to work properly. I will test it out, still some limitations with this approach as you stated. No good way as of yet to handle multiple gem versions. Of course this is a moot point once Puppet 3 is released and linked to Ruby 1.9.3. Then I will only have a single version of Ruby to manage. Thanks, Ron On Friday, August 10, 2012 1:27:50 PM UTC-4, Nan Liu wrote:> > On Fri, Aug 10, 2012 at 10:20 AM, Ron <ronald....@gmail.com <javascript:>> > wrote: > > I have two versions of Ruby on my servers. One that is used for Puppet > and > > system scripts (Ruby 1.8.7) and then one which is a custom package I > built > > running the latest Ruby 1.9.3. This is used for the Ruby/Rails > applications > > that are being developed by our dev team. Is there a way for Puppet to > > control the gems installed by both of these gem versions? I need a way > to > > spin up systems with no user input, right now thats not possible without > > this. Is subclassing the gem provider the only way or is there a more > clean > > way to set path with the current gem provider. I was looking in the > gem.rb > > provider source and didn''t see a way there. > > Yeah, that''s the only way I''m aware of. The code is only a few lines, > and we have a pe_gem example: > https://github.com/puppetlabs/puppetlabs-pe_gem > > The bigger problem is you can''t have duplicate package names, so you > either need to two environments or separate manifests if you wish to > manage the same gems in 1.8.7 and 1.9. There''s no way to install in > one puppet run at the moment. > > Thanks, > > Nan >-- You received this message because you are subscribed to the Google Groups "Puppet Users" group. To view this discussion on the web visit https://groups.google.com/d/msg/puppet-users/-/uWYlqo_j_0AJ. To post to this group, send email to puppet-users@googlegroups.com. To unsubscribe from this group, send email to puppet-users+unsubscribe@googlegroups.com. For more options, visit this group at http://groups.google.com/group/puppet-users?hl=en.