Bug 33345 - private method `open' called for Augeas:Class
Summary: private method `open' called for Augeas:Class
Status: CLOSED FIXED
Alias: None
Product: Sisyphus
Classification: Development
Component: ruby-augeas (show other bugs)
Version: unstable
Hardware: all Linux
: P3 major
Assignee: Andrey Cherepanov
QA Contact: qa-sisyphus
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2017-04-07 15:47 MSK by Ivan Zakharyaschev
Modified: 2017-04-07 17:41 MSK (History)
10 users (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Ivan Zakharyaschev 2017-04-07 15:47:37 MSK
Yesterday, there were no errors, but today with fresh augeas (unlike 1.4.0-alt1 as in p8), there is an error:

$ fgrep -i error gw2/typescript-puppet-agent-run20170407-1534
-       # Log to standard error. When in doubt, set to no. Useful when
Error: /Stage[main]/Limits/Limits::Fragment[*/-/core]/Augeas[limits_conf/*/-/core]: Could not evaluate: private method `open' called for Augeas:Class
[imz_mirror@vb puppetry2-typescripts]$ ssh root@192.168.121.49 rpm -qa '*auge*'
augeas-1.8.0-alt1.x86_64
libaugeas-1.8.0-alt1.x86_64
ruby-augeas-0.6.4-alt1.x86_64


More details:

$ fgrep -3 -i error gw2/typescript-puppet-agent-run20170407-1534
-       # generated. When in doubt, leave off. Potentially useful for
-       # debugging.
-       fileline: off
-       # Log to standard error. When in doubt, set to no. Useful when
-       # running in the foreground (when invoking "corosync -f")
-       to_stderr: no
-       # Log to a log file. When set to "no", the "logfile" option
--
Debug: /Stage[main]/Sysctl/Sysctl::Sysctl_var[net.ipv4.tcp_fin_timeout]/File_line[net.ipv4.tcp_fin_timeout]: The container Sysctl::Sysctl_var[net.ipv4.tcp_fin_timeout] will propagate my refresh event
Debug: Sysctl::Sysctl_var[net.ipv4.tcp_fin_timeout]: The container Class[Sysctl] will propagate my refresh event
Debug: Augeas[limits_conf/*/-/core](provider=augeas): Opening augeas with root /, lens path , flags 64
Error: /Stage[main]/Limits/Limits::Fragment[*/-/core]/Augeas[limits_conf/*/-/core]: Could not evaluate: private method `open' called for Augeas:Class
Did you mean?  open3
Notice: /Stage[main]/Sysctl/Sysctl::Sysctl_var[net.netfilter.nf_conntrack_generic_timeout]/File_line[net.netfilter.nf_conntrack_generic_timeout]/ensure: created
Info: /Stage[main]/Sysctl/Sysctl::Sysctl_var[net.netfilter.nf_conntrack_generic_timeout]/File_line[net.netfilter.nf_conntrack_generic_timeout]: Scheduling refresh of Exec[sysctl_apply]
Comment 1 Ivan Zakharyaschev 2017-04-07 15:54:49 MSK
No, the same error happens with the versions from p8:

augeas-1.4.0-alt1.x86_64
libaugeas-1.4.0-alt1.x86_64
Comment 2 Ivan Zakharyaschev 2017-04-07 15:58:42 MSK
It was incorrectly invoked from the puppet manifest we used.
Comment 3 Ivan Zakharyaschev 2017-04-07 16:05:01 MSK
https://ask.puppet.com/question/18988/puppet-and-augeas-private-method-open-called-for-augeasclass/?answer=19093#post-id-19093 :

You have the wrong "augeas" gem installed. Augeas is a C library and the gem interfaces between it and Ruby.

ruby-augeas is the correct one, the one maintained upstream and the one that Puppet relies on.

It sounds like you have augeas installed, which is an incompatible fork and will give that error.
Comment 4 Repository Robot 2017-04-07 17:41:56 MSK
ruby-augeas-1:0.5.0-alt2 -> sisyphus:

* Fri Apr 07 2017 Andrey Cherepanov <cas@altlinux> 1:0.5.0-alt2
- Use original gem in Sisyphus (ALT #33345)