ruby-1.9.3 in yum.puppetlabs.com

3,715 views
Skip to first unread message

Christian Flamm

unread,
Jul 25, 2013, 11:13:24 AM7/25/13
to puppe...@googlegroups.com
Hi,
I'm (using CentOS 6.4 and I'm) suffering from an AFAIU performance/design bug (http://projects.puppetlabs.com/issues/20865) which (althoughit's not recommended as a work-around) does not occur when using Ruby-1.9.3 (Yaeh!) instead of Ruby-1.8.7. I just can't find a public, well-known, well-maintained repository (I can't find any, actually) that offers it as an EL6 RPM.

I know one can install different ruby versions with rvm. My problems with this approach are (similar issues with compiling from source):
  • rvm and yum (the way Ruby is currently installed) are tools that AFAIK don't care/know about each other
  • gem (I guess I'd have to use gem then to install puppet?) and yum (the way puppet and puppet-server packages are currently installed) are tools that AFAIK don't care/know about each other
  • Because not caring/knowing about each other - Can one tool harm (e.g. partially override?) software/files installed by the other tool?
  • Which Ruby do I start, when typing ruby into a console... same for puppet. Which of these "rivaling" tools (rvm vs. yum, gem vs. yum) has control over e.g. $PATH order?
That's why I would prefer a Ruby-1.9.3 RPM that I could install (clean update over 1.8.7) which in addition works fine with RPM packages (e.g. puppet-server-xxx.el6.noarch.rpm, puppet-xxx.el6.noarch.rpm) from yum.puppetlabs.com.

Naive question: Why don't you provide one in yum.puppetlabs.com :-) ?

Christian

Justin Lambert

unread,
Jul 25, 2013, 11:21:37 AM7/25/13
to puppe...@googlegroups.com
For RHEL derivatives one option might be Redhat's Software Collections.  They have added Ruby 1.9.3 support to RHEL through that.  I have testing it out on my todo list, but haven't made it that far yet.  I'm not quickly finding a link to the actual RPM, but here's their PDF about it: https://access.redhat.com/site/documentation/en-US/Red_Hat_Developer_Toolset/1/html-single/Software_Collections_Guide/index.html

jl

--
You received this message because you are subscribed to the Google Groups "Puppet Developers" group.
To unsubscribe from this group and stop receiving emails from it, send an email to puppet-dev+...@googlegroups.com.
To post to this group, send email to puppe...@googlegroups.com.
Visit this group at http://groups.google.com/group/puppet-dev.
For more options, visit https://groups.google.com/groups/opt_out.
 
 

Justin Stoller

unread,
Jul 25, 2013, 12:54:09 PM7/25/13
to puppe...@googlegroups.com
> Naive question: Why don't you provide one in yum.puppetlabs.com :-) ?
We provide a 1.8.7 that does what you're asking for EL 5s because we dropped support in Puppet 3 for Ruby 1.8.5. I don't know if we have plans to provide a 1.9.3 for any systems prior to us actually dropping support for 1.8.7.

Puppet Enterprise 3, however, comes with Puppet 3.2 and Ruby 1.9.3  :)


> For RHEL derivatives one option might be Redhat's Software Collections.
I was under the impression Software Collections were still largely a Fedora thing until RHEL 7.
(but I'm neither the RHEL nor packaging guy)


 - Justin
--

Join ME at PuppetConf 2013, August 22-23 in San Francisco -
http://bit.ly/pupconf13

Wolf Noble

unread,
Jul 25, 2013, 2:03:47 PM7/25/13
to puppe...@googlegroups.com
Hi Christian,

Here's a reasonable means of going about building 1.9.3 RPMs on cent5/6
https://github.com/imeyer/ruby-1.9.3-rpm

I've stubbed out the sub packages in this PR:
https://github.com/imeyer/ruby-1.9.3-rpm/pull/16

the sub-packages don't actually do anything, but don't require changes
to any existing manifests which reference sub-packages like ruby-devel
either.

It's not forklifting the work of repo/package maintenance off onto
someone else, but can at least get you 1.9.3 installed via safe
sources utilizing the native package management tools in centos.


HTH

Matthaus Owens

unread,
Jul 25, 2013, 5:21:24 PM7/25/13
to puppe...@googlegroups.com
As Justin Lambert mentioned, Software Collections may be a good option
for you. Here's a quick intro to software collections on cent/rhel 6:
http://developerblog.redhat.com/2013/01/28/software-collections-on-red-hat-enterprise-linux/
. I haven't tried this, but looking at the ruby193 repo they
reference, it has a good number of gems built as rpms.
Matthaus Owens
Release Manager, Puppet Labs

Join us at PuppetConf 2013, August 22-23 in San Francisco -
http://bit.ly/pupconf13
Register now and take advantage of the Final Countdown discount - save 15%!

Michael Stahnke

unread,
Jul 26, 2013, 12:07:35 AM7/26/13
to puppe...@googlegroups.com
There is always http://elruby.websages.com.

I am the guy behind that. I needed different rubies for lots of
projects I was working on and just decided to make them public.

Disclaimers:

1. I am not always super fast if there are updates (or CVEs). My job
is to keep Puppet Labs stuff updated, not this ;)
2. I don't always keep up with things right now because of family obligations.
3. I would welcome help with upkeep on those packages.
4. This is not endorsed nor part of Puppet Labs in any way.


Mike

Christian Flamm

unread,
Jul 26, 2013, 5:13:39 AM7/26/13
to puppe...@googlegroups.com
"I imagine if people actually start using this, they'll want more packages built out with dependencies on these rubies. That's fine. You can file issues, or issue a pull request on elruby and I'll try to get those built out."

Let me quickly file an issue :-D

Trevor Vaughan

unread,
Jul 26, 2013, 9:52:35 AM7/26/13
to puppe...@googlegroups.com


--
You received this message because you are subscribed to the Google Groups "Puppet Developers" group.
To unsubscribe from this group and stop receiving emails from it, send an email to puppet-dev+...@googlegroups.com.
To post to this group, send email to puppe...@googlegroups.com.
Visit this group at http://groups.google.com/group/puppet-dev.
For more options, visit https://groups.google.com/groups/opt_out.
 
 



--
Trevor Vaughan
Vice President, Onyx Point, Inc
(410) 541-6699
tvau...@onyxpoint.com

-- This account not approved for unencrypted proprietary information --

Christian Flamm

unread,
Jul 26, 2013, 9:57:10 AM7/26/13
to puppe...@googlegroups.com
Done.


2013/7/26 Trevor Vaughan <tvau...@onyxpoint.com>

--
You received this message because you are subscribed to a topic in the Google Groups "Puppet Developers" group.
To unsubscribe from this topic, visit https://groups.google.com/d/topic/puppet-dev/YMtcd0K2tgQ/unsubscribe.
To unsubscribe from this group and all its topics, send an email to puppet-dev+...@googlegroups.com.

Dominic Cleal

unread,
Jul 25, 2013, 1:04:43 PM7/25/13
to puppe...@googlegroups.com
On 25/07/13 16:21, Justin Lambert wrote:
> For RHEL derivatives one option might be Redhat's Software Collections.
> They have added Ruby 1.9.3 support to RHEL through that. I have
> testing it out on my todo list, but haven't made it that far yet. I'm
> not quickly finding a link to the actual RPM, but here's their PDF about
> it: https://access.redhat.com/site/documentation/en-US/Red_Hat_Developer_Toolset/1/html-single/Software_Collections_Guide/index.html

For RHEL, it's available as a beta child channel via RHN. There's also
an older repo up here from when it was being developed that other EL
users could try: https://fedorahosted.org/SoftwareCollections/

We're using the ruby193 SCL for Foreman actually (packages on
http://yum.theforeman.org/), which has worked pretty well.

The advantage is unlike replacing the distro packages (as was done with
EL5 and 1.8.7), you don't break distro support or ABI/API compatibility
for other packages depending on Ruby. Though a downside for some users
may be additional packages on their base OS install. Unlike with
Foreman's use where it's just one central host, this would be for every
host running an agent.

However I don't see that this has much to do with the original bug,
which was more luck than design that it was fixed in 1.9.3... it's not
worth investigating 1.9.3 support via packages just to provide a
workaround for that issue! Charlie's last response is spot on.

--
Dominic Cleal
Red Hat Engineering

Christian Flamm

unread,
Jul 29, 2013, 7:04:06 AM7/29/13
to puppe...@googlegroups.com
Hey Dominic,


However I don't see that this has much to do with the original bug,
which was more luck than design that it was fixed in 1.9.3... it's not
worth investigating 1.9.3 support via packages just to provide a
workaround for that issue!  Charlie's last response is spot on.

Well, it doesn't have much to do with the original bug (Charlie's last response is totally clear) but yet at the same time it kind of has ;-)

I get it - it's a design bug and, yes, I get that it's just a coincidence that Ruby 1.9.3 helps me out here. But fragile pure luck or not - it does help me out (it saves me 10-25sec in ~50% of all puppet runs)! I'm not saying the original problem shouldn't need to be fixed - of course it must be. But if I'd be able to install the puppet packages from yum.puppetlabs.com together with a Ruby version of 1.9.3. AFAIU it would help me big time until the original problem is fixed.

But that's just my personal motivation. I guess there are others as well...?

Christian

R.I.Pienaar

unread,
Jul 29, 2013, 7:11:12 AM7/29/13
to puppe...@googlegroups.com


----- Original Message -----
> From: "Christian Flamm" <christian...@gmail.com>
> To: puppe...@googlegroups.com
> Sent: Monday, July 29, 2013 12:04:06 PM
> Subject: Re: [Puppet-dev] ruby-1.9.3 in yum.puppetlabs.com
>
> Hey Dominic,
>
>
> > However I don't see that this has much to do with the original bug,
> > which was more luck than design that it was fixed in 1.9.3... it's not
> > worth investigating 1.9.3 support via packages just to provide a
> > workaround for that issue! Charlie's last response is spot on.
> >
>
> Well, it doesn't have much to do with the original bug (Charlie's last
> response is totally clear) but yet at the same time it kind of has ;-)
>
> I get it - it's a design bug and, yes, I get that it's just a coincidence
> that Ruby 1.9.3 helps me out here. But fragile pure luck or not - it
> *does*help me out (it saves me 10-25sec in ~50% of all puppet runs)! I'm not
> saying the original problem shouldn't need to be fixed - of course it must
> be. But if I'd be able to install the puppet packages from
> yum.puppetlabs.com together with a Ruby version of 1.9.3. AFAIU it would
> help me big time *until the original problem is fixed*.
>
> But that's just my personal motivation. I guess there are others as well...?

https://github.com/andytinycat/puppet-omnibus problem solved.

Trevor Vaughan

unread,
Jul 29, 2013, 9:53:36 PM7/29/13
to puppe...@googlegroups.com
I was wondering when we'd catch up with Java in the 90's. This certainly brings back bad old memories of not having any idea what was installed on your system.

But, yes, it certainly looks like a viable solution and thanks for the post!

Trevor


--
You received this message because you are subscribed to the Google Groups "Puppet Developers" group.
To unsubscribe from this group and stop receiving emails from it, send an email to puppet-dev+...@googlegroups.com.
To post to this group, send email to puppe...@googlegroups.com.
Visit this group at http://groups.google.com/group/puppet-dev.
For more options, visit https://groups.google.com/groups/opt_out.


Alex Harvey

unread,
Jan 29, 2016, 12:15:16 AM1/29/16
to Puppet Developers
I thought I'd just put it out there that it's the Year of Our Lord 2016* and CentOS is still installing Ruby 1.8.7, and yum.puppetlabs.com is still not providing a modern Ruby either.  

Yes, PE provides a Ruby.
Yes, Puppet 4 provides a Ruby.
Yes, Puppet-omnibus can build a Ruby.
Yes, RVM is kinda cool.
Yes, compiling Ruby is kinda fun sometimes.

But, as a user, I want to type "yum install ruby" and, OMFG, ruby installs.

*With apologies to adherents of other religious faiths and proponents of Lunar and non-Gregorian calendars.

:)

Alex Harvey

unread,
Jan 29, 2016, 1:06:52 AM1/29/16
to Puppet Developers

Rob Nelson

unread,
Jan 29, 2016, 6:38:29 AM1/29/16
to puppe...@googlegroups.com
Ruby 1.9.3 is available in the Software Collections (SCL) repository. Instructions at https://digitalchild.info/centos-6-5-and-ruby1-9-3-via-software-collections/.

There may be some side effects for any system utilities that expect 1.8.7 but that's a risk you'll have to accept if you're still on EL6, just like every other ancient version of software it includes. It does "work" in most senses, though.
--
You received this message because you are subscribed to the Google Groups "Puppet Developers" group.
To unsubscribe from this group and stop receiving emails from it, send an email to puppet-dev+...@googlegroups.com.


--

Alex Harvey

unread,
Jan 29, 2016, 8:31:54 AM1/29/16
to Puppet Developers
Thanks for the heads up.  Anything less than Puppet Labs providing a working Ruby at yum.puppetlabs.com, or CentOS providing one, feels to me like a bit of a hack.  I've seriously got a customer wanting to ditch Puppet and go to Ansible because because they just want it to be easy to install open source Puppet 3.  We were burnt by Puppet Omnibus.  It just feels a bit like Puppet's giving us the finger, when all it would take is someone to stick an RPM on a server.  This problem could have been solved years ago, as the original poster in this thread suggested.
To unsubscribe from this group and stop receiving emails from it, send an email to puppet-dev+unsubscribe@googlegroups.com.


--

Erik Dalén

unread,
Jan 29, 2016, 8:39:15 AM1/29/16
to Puppet Developers
Isn't this already solved with the Puppet 4.x packaging (puppet-agent)? So why insist on installing an old Puppet version instead of a modern one?

Personally I prefer that PuppetLabs is developing new features in Puppet 4.x instead of spending time improving packaging and stuff for Puppet 3.x.

To unsubscribe from this group and stop receiving emails from it, send an email to puppet-dev+...@googlegroups.com.


--

--
You received this message because you are subscribed to the Google Groups "Puppet Developers" group.
To unsubscribe from this group and stop receiving emails from it, send an email to puppet-dev+...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/puppet-dev/69210c5c-3cef-41b5-beef-4cdf2250d94f%40googlegroups.com.

Rob Nelson

unread,
Jan 29, 2016, 10:45:54 AM1/29/16
to puppe...@googlegroups.com
SCL upstream comes from the vendor (https://access.redhat.com/documentation/en-US/Red_Hat_Software_Collections/1/html-single/1.0_Release_Notes/index.html#appe-Documentation-1.0_Release_Notes-Revision_History) so that sounds like the best solution in this case. Even if you move to EL7, it provides Ruby 2.0.0 whose maintenance ends next month (https://www.ruby-lang.org/en/news/2015/02/25/ruby-2-0-0-p643-is-released/) and you still have to go to SCL for Ruby 2.2. EL's support timeframe is the worst.
To unsubscribe from this group and stop receiving emails from it, send an email to puppet-dev+...@googlegroups.com.


--

--
You received this message because you are subscribed to the Google Groups "Puppet Developers" group.
To unsubscribe from this group and stop receiving emails from it, send an email to puppet-dev+...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/puppet-dev/69210c5c-3cef-41b5-beef-4cdf2250d94f%40googlegroups.com.

Alex Harvey

unread,
Jan 29, 2016, 11:16:28 AM1/29/16
to Puppet Developers
Yep, it's solved in Puppet 4 - the all-in-one package is fantastic, as is so much in Puppet 4.  However PE hasn't release Puppet 4 yet; my assessment of the Puppet Forge is that not many modules out there are ready; and I am not super confident that other tools in the ecosystem like Beaker, Librarian etc are ready; so I am not personally willing to recommend Puppet 4 to customers at this stage.  In any case, loads and loads of people will be using Puppet 3 for a long, long time yet.

And then I get back to - why not just put the RPMs in the yum repository?  They're already in PE aren't they?  I get it that it's not really Puppet's problem that EL is crap, but on the other hand, it actually is.  Puppet made the choice to build a DSL on Ruby.  So, when I discovered earlier today that there's still no supported Ruby for the latest Puppet 3 for CentOS Linux, I couldn't believe it.  This is RUBY on EL6/7.  This is not a wacky feature request.  Without Ruby, the amazingly complex, feature rich ecosystem we know and love as Puppet is a castle built on sand.

It shouldn't be so hard to stand Puppet up in 2016.  I love Puppet, and I love Ruby, and I hate hearing super smart developers telling me that Salt or Ansible are superior, when their main reason for saying so is that Ruby and Puppet together are just way too many yaks to shave.  And I hear this, all, the, time.

To unsubscribe from this group and stop receiving emails from it, send an email to puppet-dev+unsubscribe@googlegroups.com.

Rob Nelson

unread,
Jan 29, 2016, 11:26:23 AM1/29/16
to puppe...@googlegroups.com
The ruby 1.8.7 that comes with EL6 and 2.0.0 with EL7 work fine. The vendor offers 1.9.3 and 2.2.0 in their SCL repos, respectively. What specifically is the problem that the "too many yaks to shave" complaints are referencing that the vendor's base and SCL repos do not address?

This is a sincere question! It "works on my machine" but I only use Ruby for Puppet itself, no applications rely on it, so I'm sure my experience is pretty narrow and I'd really like to understand.
To unsubscribe from this group and stop receiving emails from it, send an email to puppet-dev+...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/puppet-dev/0c859244-321e-4560-ba5e-15ebe2fff962%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


--

--
You received this message because you are subscribed to the Google Groups "Puppet Developers" group.
To unsubscribe from this group and stop receiving emails from it, send an email to puppet-dev+...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/puppet-dev/69210c5c-3cef-41b5-beef-4cdf2250d94f%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

--
You received this message because you are subscribed to the Google Groups "Puppet Developers" group.
To unsubscribe from this group and stop receiving emails from it, send an email to puppet-dev+...@googlegroups.com.

Alex Harvey

unread,
Jan 29, 2016, 11:35:24 AM1/29/16
to Puppet Developers


On Saturday, January 30, 2016 at 3:26:23 AM UTC+11, Rob Nelson wrote:
The ruby 1.8.7 that comes with EL6 and 2.0.0 with EL7 work fine. The vendor offers 1.9.3 and 2.2.0 in their SCL repos, respectively. What specifically is the problem that the "too many yaks to shave" complaints are referencing that the vendor's base and SCL repos do not address?

This is a sincere question! It "works on my machine" but I only use Ruby for Puppet itself, no applications rely on it, so I'm sure my experience is pretty narrow and I'd really like to understand.

Thanks again.  I do appreciate you looking into this.  Yep, it solves the problem, sort of.  Just as Puppet Omnibus sort of solves the problem.  I have a few odd commands to run to enable a still very old Ruby 1.9.3, then a binary that appears in /opt/rh/ruby193/root/usr/bin/ruby and none of this is really documented.

Anyway, I'm all ranted out. :)  Seriously, tell someone to put the RPMs on the yum repo and document it.  https://docs.puppetlabs.com/guides/puppetlabs_package_repositories.html 

If you'd like my feedback on all the yaks we have been shaving with puppet open source, I'll send you a private email.

Kind regards,
Alex

Erik Dalén

unread,
Jan 29, 2016, 11:42:27 AM1/29/16
to puppe...@googlegroups.com
On Fri, 29 Jan 2016 at 17:16 Alex Harvey <alexh...@gmail.com> wrote:
Yep, it's solved in Puppet 4 - the all-in-one package is fantastic, as is so much in Puppet 4.  However PE hasn't release Puppet 4 yet; my assessment of the Puppet Forge is that not many modules out there are ready; and I am not super confident that other tools in the ecosystem like Beaker, Librarian etc are ready; so I am not personally willing to recommend Puppet 4 to customers at this stage.  In any case, loads and loads of people will be using Puppet 3 for a long, long time yet.

I don't keep track which versions are in PE. But nowadays most popular forge modules actually support Puppet 4.x. Tools like librarian-puppet, etc also support it.
There are some checks in puppet-lint that don't like some of the new syntax, but they can be disabled, and it is only a problem if you also switch to that new syntax.

There's a lot of stuff that has improved in regards to Puppet 4 support in the last couple of months. So I would recommend switching really.

If people are already on Puppet 3 I guess they already have a working solution to the ruby issue and can just keep doing the same thing until they've migrated to Puppet 4 really.
To unsubscribe from this group and stop receiving emails from it, send an email to puppet-dev+...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/puppet-dev/0c859244-321e-4560-ba5e-15ebe2fff962%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


--

--
You received this message because you are subscribed to the Google Groups "Puppet Developers" group.
To unsubscribe from this group and stop receiving emails from it, send an email to puppet-dev+...@googlegroups.com.

--
You received this message because you are subscribed to the Google Groups "Puppet Developers" group.
To unsubscribe from this group and stop receiving emails from it, send an email to puppet-dev+...@googlegroups.com.

Chris Price

unread,
Jan 29, 2016, 11:44:05 AM1/29/16
to puppe...@googlegroups.com
On Fri, Jan 29, 2016 at 8:16 AM, Alex Harvey <alexh...@gmail.com> wrote:
Yep, it's solved in Puppet 4 - the all-in-one package is fantastic, as is so much in Puppet 4.  However PE hasn't release Puppet 4 yet;

OSS Puppet 4 was released almost a year ago.  Puppet 4 shipped in PE 2015.2.0 in July of last year.  There have been multiple Z releases and another Major release (2015.3.0) since then.
 
my assessment of the Puppet Forge is that not many modules out there are ready; and I am not super confident that other tools in the ecosystem like Beaker,

We user beaker to test *everything* in-house, including Puppet 4 itself, so it should work fine with Puppet 4.

I'm not in Release Engineering, so I won't make any comments about why we do or don't maintain certain packages in the legacy yum repos, but I did want to just clear up those couple of misconceptions about the stability of Puppet 4.  Speaking as a developer, I'd also really like to hear any additional info about challenges in upgrading from 3 to 4 that we might be able to do a better job of helping folks with.
To unsubscribe from this group and stop receiving emails from it, send an email to puppet-dev+...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/puppet-dev/0c859244-321e-4560-ba5e-15ebe2fff962%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


--

--
You received this message because you are subscribed to the Google Groups "Puppet Developers" group.
To unsubscribe from this group and stop receiving emails from it, send an email to puppet-dev+...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/puppet-dev/69210c5c-3cef-41b5-beef-4cdf2250d94f%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

--
You received this message because you are subscribed to the Google Groups "Puppet Developers" group.
To unsubscribe from this group and stop receiving emails from it, send an email to puppet-dev+...@googlegroups.com.

Alex Harvey

unread,
Jan 29, 2016, 12:08:16 PM1/29/16
to Puppet Developers


On Saturday, January 30, 2016 at 3:44:05 AM UTC+11, Chris Price wrote:


On Fri, Jan 29, 2016 at 8:16 AM, Alex Harvey <alexh...@gmail.com> wrote:
Yep, it's solved in Puppet 4 - the all-in-one package is fantastic, as is so much in Puppet 4.  However PE hasn't release Puppet 4 yet;

OSS Puppet 4 was released almost a year ago.  Puppet 4 shipped in PE 2015.2.0 in July of last year.  There have been multiple Z releases and another Major release (2015.3.0) since then.

Thanks for clarifying that.  I haven't had an opportunity to play with the latest PE offerings yet.
 
 
my assessment of the Puppet Forge is that not many modules out there are ready; and I am not super confident that other tools in the ecosystem like Beaker,

We user beaker to test *everything* in-house, including Puppet 4 itself, so it should work fine with Puppet 4.

I'm not in Release Engineering, so I won't make any comments about why we do or don't maintain certain packages in the legacy yum repos, but I did want to just clear up those couple of misconceptions about the stability of Puppet 4.  Speaking as a developer, I'd also really like to hear any additional info about challenges in upgrading from 3 to 4 that we might be able to do a better job of helping folks with.

I was finding some issues when I was playing with it, although that was at least six months ago now.

The main issue I still have, and I just checked again, is that too many Forge modules say in their documentation that they're only supporting Puppet 3.  E.g. Logstash, Nginx.  Now, maybe in actual fact they work fine in Puppet 4; and that was mostly my experience when I played with it.  But, you know, if someone's crazy Forge module doesn't work, users point the finger at Puppet for that. 

Rob Nelson

unread,
Jan 29, 2016, 12:47:13 PM1/29/16
to puppe...@googlegroups.com

On Fri, Jan 29, 2016 at 12:08 PM, Alex Harvey <alexh...@gmail.com> wrote:
The main issue I still have, and I just checked again, is that too many Forge modules say in their documentation that they're only supporting Puppet 3.  E.g. Logstash, Nginx.  Now, maybe in actual fact they work fine in Puppet 4; and that was mostly my experience when I played with it.  But, you know, if someone's crazy Forge module doesn't work, users point the finger at Puppet for that.

While you can't force all the forge modules to be updated, I highly suggest setting up rspec-puppet on your controlrepo. You'll find the modules that don't support future parser with 3, or 4 in general, and file tickets with the module authors. I had to do that for a number of modules I use (ajjahn/dhcp and stahnma/epel ring a bell) and I found the authors are generally receptive. If they're not, then it might be a good indicator that you shouldn't be relying on that module; find another or fork it if the license allows you to.

Heck, maybe some module authors are watching this thread and are seeing the demand for supporting Puppet 4 :)

Alex Harvey

unread,
Jan 30, 2016, 5:10:31 AM1/30/16
to Puppet Developers


On Saturday, January 30, 2016 at 4:47:13 AM UTC+11, Rob Nelson wrote:

While you can't force all the forge modules to be updated, I highly suggest setting up rspec-puppet on your controlrepo. You'll find the modules that don't support future parser with 3, or 4 in general, and file tickets with the module authors. I had to do that for a number of modules I use (ajjahn/dhcp and stahnma/epel ring a bell) and I found the authors are generally receptive. If they're not, then it might be a good indicator that you shouldn't be relying on that module; find another or fork it if the license allows you to.

Heck, maybe some module authors are watching this thread and are seeing the demand for supporting Puppet 4 :)

This conversation has caused me to have another look at open source Puppet 4; and I'll do that.

I think, however, that none of this changes the fact that Puppet 3 isn't going to magically disappear just because we all want it to.  Puppet 3.8.5 was released just a week ago.  Puppet 2.7.26 was released October 2014.   People will, in edge-cases, need to install a Puppet compatible Ruby via Yum, even in a Puppet 4 world.  Someone will find a reason to install Puppet 4 from a Gem on Ruby on EL6.

Why not create an incentive for the community to close the gaps in the Puppet Forge.  Draw up a list of gaps in the Puppet Forge, and offer $1000 to the first community developer who can produce an Approved Puppet 3 & 4 compatible module for each Gap.  It'd be petty cash to Puppet Labs, and I'll bet we'd close out all the gaps in the Forge in 3 months.  I'll certainly play. ;-)

Michael Stahnke

unread,
Feb 4, 2016, 5:58:41 PM2/4/16
to puppet-dev
On Fri, Jan 29, 2016 at 8:16 AM, Alex Harvey <alexh...@gmail.com> wrote:
Yep, it's solved in Puppet 4 - the all-in-one package is fantastic, as is so much in Puppet 4.  However PE hasn't release Puppet 4 yet; my assessment of the Puppet Forge is that not many modules out there are ready; and I am not super confident that other tools in the ecosystem like Beaker, Librarian etc are ready; so I am not personally willing to recommend Puppet 4 to customers at this stage.  In any case, loads and loads of people will be using Puppet 3 for a long, long time yet.

Chris already covered this, but this incorrect. PE has had Puppet 4 since July of 2015.  

And then I get back to - why not just put the RPMs in the yum repository?  They're already in PE aren't they?  I get it that it's not really Puppet's problem that EL is crap, but on the other hand, it actually is.  Puppet made the choice to build a DSL on Ruby.  So, when I discovered earlier today that there's still no supported Ruby for the latest Puppet 3 for CentOS Linux, I couldn't believe it.  This is RUBY on EL6/7.  This is not a wacky feature request.  Without Ruby, the amazingly complex, feature rich ecosystem we know and love as Puppet is a castle built on sand.

Why would I ship a ruby when Red Hat does? The packages we ship for Puppet 3 are designed to ship with System Ruby. System ruby is 1.8.7. I realize that is old, but that is what is there on EL6. That ruby is supported by Red Hat until 2023. If you want to run on a non-system ruby, gems are provided or you are welcome to package your own thing.  

It shouldn't be so hard to stand Puppet up in 2016.  I love Puppet, and I love Ruby, and I hate hearing super smart developers telling me that Salt or Ansible are superior, when their main reason for saying so is that Ruby and Puppet together are just way too many yaks to shave.  And I hear this, all, the, time.

What's difficult about install a puppetlabs-release package and yum install puppet? 

I think your complaint is that a non-standard use-case doesn't work. I don't understand why you have that use-case, and we can solve everybody's individual case. We provide a system-ruby enabled package. We also provide puppet 4 with everything you need. 
 

To unsubscribe from this group and stop receiving emails from it, send an email to puppet-dev+...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/puppet-dev/0c859244-321e-4560-ba5e-15ebe2fff962%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


--

--
You received this message because you are subscribed to the Google Groups "Puppet Developers" group.
To unsubscribe from this group and stop receiving emails from it, send an email to puppet-dev+...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/puppet-dev/69210c5c-3cef-41b5-beef-4cdf2250d94f%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

--
You received this message because you are subscribed to the Google Groups "Puppet Developers" group.
To unsubscribe from this group and stop receiving emails from it, send an email to puppet-dev+...@googlegroups.com.

Alex Harvey

unread,
Feb 5, 2016, 3:06:26 AM2/5/16
to Puppet Developers


On Friday, February 5, 2016 at 9:58:41 AM UTC+11, Michael Stanhke wrote:

Why would I ship a ruby when Red Hat does? The packages we ship for Puppet 3 are designed to ship with System Ruby. System ruby is 1.8.7. I realize that is old, but that is what is there on EL6. That ruby is supported by Red Hat until 2023. If you want to run on a non-system ruby, gems are provided or you are welcome to package your own thing.  

It shouldn't be so hard to stand Puppet up in 2016.  I love Puppet, and I love Ruby, and I hate hearing super smart developers telling me that Salt or Ansible are superior, when their main reason for saying so is that Ruby and Puppet together are just way too many yaks to shave.  And I hear this, all, the, time.

What's difficult about install a puppetlabs-release package and yum install puppet? 

Hi Mike, it's not difficult, but I also don't see what's difficult about putting the Rubies that Puppet Enterprise already ships with on yum.puppetlabs.com.  
 
I think your complaint is that a non-standard use-case doesn't work. I don't understand why you have that use-case, and we can solve everybody's individual case. We provide a system-ruby enabled package. We also provide puppet 4 with everything you need. 
 
Like the original poster in this thread, my use-case is I ran into an old Ruby-version-related Puppet bug.  We install Puppet from Gems, not RPMs.  I think from time to time, even going into the brave new Puppet 4 future, it will still be useful from time to time to be able to easily change the Ruby on your CentOS and Ubuntu platforms, something that has never been easy in the past.

Michael Stahnke

unread,
Feb 9, 2016, 12:47:57 PM2/9/16
to puppet-dev
On Fri, Feb 5, 2016 at 12:06 AM, Alex Harvey <alexh...@gmail.com> wrote:


On Friday, February 5, 2016 at 9:58:41 AM UTC+11, Michael Stanhke wrote:

Why would I ship a ruby when Red Hat does? The packages we ship for Puppet 3 are designed to ship with System Ruby. System ruby is 1.8.7. I realize that is old, but that is what is there on EL6. That ruby is supported by Red Hat until 2023. If you want to run on a non-system ruby, gems are provided or you are welcome to package your own thing.  

It shouldn't be so hard to stand Puppet up in 2016.  I love Puppet, and I love Ruby, and I hate hearing super smart developers telling me that Salt or Ansible are superior, when their main reason for saying so is that Ruby and Puppet together are just way too many yaks to shave.  And I hear this, all, the, time.

What's difficult about install a puppetlabs-release package and yum install puppet? 

Hi Mike, it's not difficult, but I also don't see what's difficult about putting the Rubies that Puppet Enterprise already ships with on yum.puppetlabs.com.  

The ruby that ships in puppet enterprise is the same ruby in Puppet4. That is available to you. 
 
I think your complaint is that a non-standard use-case doesn't work. I don't understand why you have that use-case, and we can solve everybody's individual case. We provide a system-ruby enabled package. We also provide puppet 4 with everything you need. 
 
Like the original poster in this thread, my use-case is I ran into an old Ruby-version-related Puppet bug.  We install Puppet from Gems, not RPMs.  I think from time to time, even going into the brave new Puppet 4 future, it will still be useful from time to time to be able to easily change the Ruby on your CentOS and Ubuntu platforms, something that has never been easy in the past.

We don't test other rubies for Puppet 4 other than the one we ship with.  

--
You received this message because you are subscribed to the Google Groups "Puppet Developers" group.
To unsubscribe from this group and stop receiving emails from it, send an email to puppet-dev+...@googlegroups.com.
Reply all
Reply to author
Forward
0 new messages