Hi There, We take this approach as well with our platform to ensure that puppet upgrades don't affect any applications that may be using the OS version of Ruby.
Disclaimer: I don't actually love our approach to packaging Ruby and am aware of its flaws, however it has proved to be OK for the time being until I can fully review it. (ie, should I be moving to an RPM per gem as per EPEL and Puppet Enterprise do, etc , etc ?) Quick overview of what we do: 1. Build your Ruby from source, using a unique location for its prefix ie, /opt/ruby-1.8.7/ 2. Build and install the rubygems framework into this install 3. Using gems, install all your required gems into the ruby installation, don't forget that a number of them require additional libraries and packages to function, ie Augeas 4. Package this software into an RPM - Dont forget to add requires for the additional dependencies you need , as well as document all the gems you added and what they are for so you can repeat this process on other platforms, ie RHEL4/5/6 5. Grab the puppet and facter source - These ship with SPEC files to aid in building them, you just need to modify the ruby path they reference, and all should be OK. Don't forget to add the dependencies for this package against your own ruby packages so they install nice via YUM or similar. 6. Test lots of times, then deploy. Maintainence wise, if we need to add / change functionality, we install the package on a clean dev host, make the changes and re-package into a new revision of that package. We repeat this procedure for all the other OS versions of ruby so they are identical feature wise. I have found the "rubygems_snapshot" gem/tool is quite useful for this kind of task. Like I said, our approach is not perfect, but it works for now until I can clean it up and hopefully automate the lot with Jenkins. I hope this is of some use. Cheers, K On Wednesday, December 12, 2012 8:54:56 PM UTC, Alexander Philipp wrote: > > Are there any good guides out there to using Puppet agents with a > dedicated, separate ruby install? Our apps are all Ruby based and require > different versions than Puppet. Installing the agent from a package will > override our ruby installs. -- 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/-/gGsL2feZ90oJ. To post to this group, send email to puppet-users@googlegroups.com. To unsubscribe from this group, send email to puppet-users+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/puppet-users?hl=en.