Bug 616519

Summary: puppet warnings about metaclass deprecation
Product: [Fedora] Fedora Reporter: Mo Morsi <mmorsi>
Component: puppetAssignee: Todd Zullinger <tmz>
Status: CLOSED ERRATA QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: medium Docs Contact:
Priority: low    
Version: 13CC: k.georgiou, tmz, vanmeeuwen+fedora
Target Milestone: ---   
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: puppet-2.6.6-1.fc15 Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2011-06-01 15:36:58 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description Mo Morsi 2010-07-20 17:14:42 UTC
Description of problem:
Puppet 0.25.5 which was pushed to Fedora a little while back has the following problem

http://projects.puppetlabs.com/issues/3866

With the following fix:

http://github.com/reductivelabs/puppet/commit/8faa4663a4d79de47886755693f5539d531bd1f8

I have uploaded a patch encapsulating the fix in a manner which can be applied to the spec file to my site:

http://projects.morsi.org/polisher/sources/puppet-0.25-gsub-metaclass-with-singletonglass.patch

Version-Release number of selected component (if applicable):
0.25.5-1

How reproducible:
I discovered this when creating and booting virtual appliance via appliance-creator resulting in many "metaclass deprecated" warnings in the appliances boot log.

Steps to Reproduce:
You can download the kickstart I'm using here
http://github.com/movitto/polisher-scripts/raw/master/appliances/maintenance.ks

Note, comment out the bit about the 'polisher-maintenance' repository as well as the "rubygem(rails) = 2.3.8" package below since neither of those will be accessible locally.

I'm guessing that this will occur in any appliance thought since puppet is required by the appliance tools

1. sudo appliance-creator -n fedora-ruby-187 -c maintenance.ks --cache /var/tmp/act
2. sudo virt-image fedora-ruby-187/fedora-ruby-187.xml
3. Open virt-manager or virt-viewer and view the vm's boot log

Actual results:
Many warnings stating: 

"DEPRECATION WARNING: metaclass is deprecated and will be removed from Rails 2.3"

Followed by the puppet service reporting that it failed to start / install the base appliance

Expected results:
No warning and successful appliance installation

Additional info:
I've confirmed locally that applying the patch results in the warnings going away (though the startup log is still indicating that puppet failed to install the base appliance, though this may be a separate issue).

Comment 1 Mo Morsi 2010-07-20 17:22:06 UTC
Note this may only be occurring against Rails 2.3.8 which I'm working toward getting ready for Fedora. (I haven't confirmed this either way)

Regardless, it is an issue that will need to be resolved when the updated Rails version is pushed (the latest puppet releases, off the 2.6.0 branch, has this fix included but it seems some of the appliance-creator's puppet scripts are incompatible with puppet 2.6.0 as indicated by failures in appliance boot log)

Comment 2 Todd Zullinger 2010-07-20 17:43:49 UTC
It doesn't look like this affects Fedora as shipped with rails 2.3.5.  At least, no other reports have come in and I don't see it myself.  The fix is in the 0.25.x branch upstream, as well as in 2.6.x.  If we don't move to 2.6.x soon, we may well see a 0.25.6 release from upstream.  Failing either of those, we can pull in the upstream patch for a 0.25.5 update if/when rails is updated.

I'd be interested if you can keep us apprised of the progress of rails 2.3.8 in Fedora so we can be sure to have a puppet update in place at or before that time to ensure things work well for users.

I'd also be interested in knowing what issues appliance creator is having with 2.6.0 and if the same manifests worked without issue in 0.25.5.  Such regressions would be considered bugs upstream I believe.  At the least, they may affect our decision to update to 2.6.x or stick with 0.25.x.

I've got a testing repository for puppet 2.6.0 at:

    http://tmz.fedorapeople.org/repo/puppet/

Thanks!

Comment 3 Mo Morsi 2010-08-17 23:25:25 UTC
(In reply to comment #2)
> It doesn't look like this affects Fedora as shipped with rails 2.3.5.  At
> least, no other reports have come in and I don't see it myself.  The fix is in
> the 0.25.x branch upstream, as well as in 2.6.x.  If we don't move to 2.6.x
> soon, we may well see a 0.25.6 release from upstream.  Failing either of those,
> we can pull in the upstream patch for a 0.25.5 update if/when rails is updated.

I've updated the puppet rpm for the time being (for testing / local purposes), and uploaded the spec / srpm here:

http://mo.morsi.org/files/rpms/puppet.spec
http://mo.morsi.org/files/rpms/puppet-0.25.5-2.fc13.src.rpm


> 
> I'd be interested if you can keep us apprised of the progress of rails 2.3.8 in
> Fedora so we can be sure to have a puppet update in place at or before that
> time to ensure things work well for users.
>

The rails 2.3.8 rpms are pretty close to completion. I uploaded the latest releases to my blog here

http://mo.morsi.org/blog/node/325

I've also taken over ownership of the packages in Fedora. I think the concensus on ruby-sig is to push them into F14-updates.

One thing that I also wanted to accomplish sooner than later with this, is to remove the ancient ruby-activerecord and ruby-activesupport packages (which have been long replaced with rubygem-ar and -as). 

AFAIK one of the only things holding us back from doing so is making sure puppet is no longer dependent on those. Apparently there wasn't a build dependency per-se, rather puppet checked to see if they were present in certain circumstances. I was wondering if you could comment on whether or not this is still the case and if puppet depends on either of those.

> I'd also be interested in knowing what issues appliance creator is having with
> 2.6.0 and if the same manifests worked without issue in 0.25.5.  Such
> regressions would be considered bugs upstream I believe.  At the least, they
> may affect our decision to update to 2.6.x or stick with 0.25.x.
> 

Unfortunately I don't have any cycles to come up with a reproducible sequence of steps to illustrate this, but I ran into this problem when simply trying to startup a base_appliance vm created with appliance-creator which pulled the 2.6.0 puppet rpms. 

At some point puppet complained about one of the commands ace was trying to execute (I believe it was in the firewall module, but am not sure) and failed to finish the installation. Sorry I don't currently have any more details.

Comment 4 Mo Morsi 2010-08-26 02:31:13 UTC
Hey just a quick update. I pushed Rails 2.3.8 to rawhide and am looking for thoughts on pushing the rpms to F14 updates (see ruby-sig). 

I also retired the ruby-activerecord and ruby-activesupport rpms.

Comment 5 Fedora Update System 2011-03-18 20:01:25 UTC
puppet-2.6.6-1.fc14 has been submitted as an update for Fedora 14.
https://admin.fedoraproject.org/updates/puppet-2.6.6-1.fc14

Comment 6 Fedora Update System 2011-03-18 20:01:53 UTC
puppet-2.6.6-1.el5 has been submitted as an update for Fedora EPEL 5.
https://admin.fedoraproject.org/updates/puppet-2.6.6-1.el5

Comment 7 Fedora Update System 2011-03-18 20:02:20 UTC
puppet-2.6.6-1.fc15 has been submitted as an update for Fedora 15.
https://admin.fedoraproject.org/updates/puppet-2.6.6-1.fc15

Comment 8 Fedora Update System 2011-03-18 20:02:46 UTC
puppet-2.6.6-1.fc13 has been submitted as an update for Fedora 13.
https://admin.fedoraproject.org/updates/puppet-2.6.6-1.fc13

Comment 9 Fedora Update System 2011-03-18 20:03:14 UTC
puppet-2.6.6-1.el6 has been submitted as an update for Fedora EPEL 6.
https://admin.fedoraproject.org/updates/puppet-2.6.6-1.el6

Comment 10 Bug Zapper 2011-06-01 13:21:00 UTC
This message is a reminder that Fedora 13 is nearing its end of life.
Approximately 30 (thirty) days from now Fedora will stop maintaining
and issuing updates for Fedora 13.  It is Fedora's policy to close all
bug reports from releases that are no longer maintained.  At that time
this bug will be closed as WONTFIX if it remains open with a Fedora 
'version' of '13'.

Package Maintainer: If you wish for this bug to remain open because you
plan to fix it in a currently maintained version, simply change the 'version' 
to a later Fedora version prior to Fedora 13's end of life.

Bug Reporter: Thank you for reporting this issue and we are sorry that 
we may not be able to fix it before Fedora 13 is end of life.  If you 
would still like to see this bug fixed and are able to reproduce it 
against a later version of Fedora please change the 'version' of this 
bug to the applicable version.  If you are unable to change the version, 
please add a comment here and someone will do it for you.

Although we aim to fix as many bugs as possible during every release's 
lifetime, sometimes those efforts are overtaken by events.  Often a 
more recent Fedora release includes newer upstream software that fixes 
bugs or makes them obsolete.

The process we are following is described here: 
http://fedoraproject.org/wiki/BugZappers/HouseKeeping

Comment 11 Mo Morsi 2011-06-01 15:36:58 UTC
This has been resolved in the 2.6.x version of puppet which has been pushed to Fedora

Comment 12 Todd Zullinger 2011-06-01 15:58:08 UTC
2.6.x is still in -testing.  The updates system would have automatically closed this when it went to stable. :)

Comment 13 Mo Morsi 2011-06-01 16:08:53 UTC
Ah my bad, had already pulled the updated puppet in, tested it, and make sure this bug was resolved.

Closed as I received a needinfo? from the Bug Zapper as this was filed against Fedora 13 which is approaching its end of life.

If the updated version of puppet does not make it into stable, we can reopen and address this from there.

Comment 14 Fedora Update System 2011-09-26 17:55:45 UTC
puppet-2.6.6-1.el6 has been pushed to the Fedora EPEL 6 stable repository.  If problems still persist, please make note of it in this bug report.

Comment 15 Fedora Update System 2011-09-27 18:32:58 UTC
puppet-2.6.6-1.el5 has been pushed to the Fedora EPEL 5 stable repository.  If problems still persist, please make note of it in this bug report.

Comment 16 Fedora Update System 2011-09-27 22:59:50 UTC
puppet-2.6.6-1.fc14 has been pushed to the Fedora 14 stable repository.  If problems still persist, please make note of it in this bug report.

Comment 17 Fedora Update System 2011-09-27 23:01:26 UTC
puppet-2.6.6-1.fc15 has been pushed to the Fedora 15 stable repository.  If problems still persist, please make note of it in this bug report.