Puppet 3.0.0 and Augeas on Ubuntu Lucid 10.04

488 views
Skip to first unread message

Paul Tötterman

unread,
Oct 2, 2012, 9:49:41 AM10/2/12
to puppet...@googlegroups.com
Hi,

My manifests used to work with 2.7.19 but after upgrading to 3.0.0 I
keep getting:

Error: /Stage[main]/.../Augeas[...]: Could not evaluate: uninitialized
constant Augeas::NO_LOAD

Anyone else had and solved this problem? On precise I just get:

Warning: Augeas[...](provider=augeas): Loading failed for one or more
files, see debug for /augeas//error output

Cheers,
Paul

Jeff McCune

unread,
Oct 2, 2012, 4:18:09 PM10/2/12
to puppet...@googlegroups.com
On Tue, Oct 2, 2012 at 6:49 AM, Paul Tötterman <paul.to...@iki.fi> wrote:
> Hi,
>
> My manifests used to work with 2.7.19 but after upgrading to 3.0.0 I
> keep getting:

Did you upgrade only the agent, or the master to 3.0.0 before
upgrading any agents?

> Error: /Stage[main]/.../Augeas[...]: Could not evaluate: uninitialized
> constant Augeas::NO_LOAD

Could you please run the master and the agent with --trace and paste
in the strack trace?

> Anyone else had and solved this problem? On precise I just get:
>
> Warning: Augeas[...](provider=augeas): Loading failed for one or more
> files, see debug for /augeas//error output

Could you provide a snippet of Puppet manifest code that reproduces
the issue? This information will help us quickly identify, record,
and (hopefully) fix, the issue.

-Jeff

Dominic Cleal

unread,
Oct 3, 2012, 4:32:32 AM10/3/12
to puppet...@googlegroups.com
On 02/10/12 14:49, Paul T�tterman wrote:
> Hi,
>
> My manifests used to work with 2.7.19 but after upgrading to 3.0.0 I
> keep getting:
>
> Error: /Stage[main]/.../Augeas[...]: Could not evaluate: uninitialized
> constant Augeas::NO_LOAD

This will be a dependency on ruby-augeas 0.3.0 or higher. I'm pretty
sure we've had this in a different form though since 2.7.12, but perhaps
if you didn't have any Augeas resources that changed (as opposed to just
checked and passed) then you might not have seen it, or I've
misunderstood the problem.

https://projects.puppetlabs.com/issues/13107 was raised when we
accidentally added this dependency in 2.7.12.

Ubuntu released a backport of 0.3.0 into lucid-backports which will
resolve the issue for you here:
http://packages.ubuntu.com/lucid-backports/libaugeas-ruby

https://projects.puppetlabs.com/issues/16203 was also raised to make
sure the package depends or recommends on 0.3.0 as a minimum version,
but this hasn't been completed yet.

--
Dominic Cleal
Red Hat Consulting
m: +44 (0)7817 878113

Paul Tötterman

unread,
Oct 3, 2012, 9:27:41 AM10/3/12
to puppet...@googlegroups.com, dcl...@redhat.com
> Ubuntu released a backport of 0.3.0 into lucid-backports which will 
> resolve the issue for you here: 

Unfortunately upgrading the package did not solve the problem. Also the error message doesn't match the bug report.

--trace gives:

Error: /Stage[main]/Grub::Server/Augeas[grub-serial]: Could not evaluate: uninitialized constant Augeas::NO_LOAD
/usr/lib/ruby/vendor_ruby/puppet/provider/augeas/augeas.rb:152:in `open_augeas'
/usr/lib/ruby/vendor_ruby/puppet/provider/augeas/augeas.rb:342:in `need_to_run?'
/usr/lib/ruby/vendor_ruby/puppet/type/augeas.rb:205:in `retrieve'
/usr/lib/ruby/vendor_ruby/puppet/type.rb:685:in `retrieve'
/usr/lib/ruby/vendor_ruby/puppet/type.rb:680:in `each'
/usr/lib/ruby/vendor_ruby/puppet/type.rb:680:in `retrieve'
/usr/lib/ruby/vendor_ruby/puppet/type.rb:693:in `retrieve_resource'
/usr/lib/ruby/vendor_ruby/puppet/transaction/resource_harness.rb:32:in `perform_changes'
/usr/lib/ruby/vendor_ruby/puppet/transaction/resource_harness.rb:133:in `evaluate'
/usr/lib/ruby/vendor_ruby/puppet/transaction.rb:49:in `apply'
/usr/lib/ruby/vendor_ruby/puppet/transaction.rb:84:in `eval_resource'
/usr/lib/ruby/vendor_ruby/puppet/transaction.rb:104:in `evaluate'
/usr/lib/ruby/vendor_ruby/puppet/util.rb:348:in `thinmark'
/usr/lib/ruby/1.8/benchmark.rb:308:in `realtime'
/usr/lib/ruby/vendor_ruby/puppet/util.rb:347:in `thinmark'
/usr/lib/ruby/vendor_ruby/puppet/transaction.rb:104:in `evaluate'
/usr/lib/ruby/vendor_ruby/puppet/transaction.rb:383:in `traverse'
/usr/lib/ruby/vendor_ruby/puppet/transaction.rb:99:in `evaluate'
/usr/lib/ruby/vendor_ruby/puppet/resource/catalog.rb:144:in `apply'
/usr/lib/ruby/vendor_ruby/puppet/configurer.rb:122:in `apply_catalog'
/usr/lib/ruby/vendor_ruby/puppet/util.rb:179:in `benchmark'
/usr/lib/ruby/1.8/benchmark.rb:308:in `realtime'
/usr/lib/ruby/vendor_ruby/puppet/util.rb:178:in `benchmark'
/usr/lib/ruby/vendor_ruby/puppet/configurer.rb:121:in `apply_catalog'
/usr/lib/ruby/vendor_ruby/puppet/configurer.rb:179:in `run'
/usr/lib/ruby/vendor_ruby/puppet/agent.rb:45
/usr/lib/ruby/vendor_ruby/puppet/agent/locker.rb:20:in `lock'
/usr/lib/ruby/vendor_ruby/puppet/agent.rb:45
/usr/lib/ruby/1.8/sync.rb:230:in `synchronize'
/usr/lib/ruby/vendor_ruby/puppet/agent.rb:45
/usr/lib/ruby/vendor_ruby/puppet/agent.rb:119:in `with_client'
/usr/lib/ruby/vendor_ruby/puppet/agent.rb:42
/usr/lib/ruby/vendor_ruby/puppet/agent.rb:84:in `run_in_fork'
/usr/lib/ruby/vendor_ruby/puppet/agent.rb:41
/usr/lib/ruby/vendor_ruby/puppet/application.rb:175:in `call'
/usr/lib/ruby/vendor_ruby/puppet/application.rb:175:in `controlled_run'
/usr/lib/ruby/vendor_ruby/puppet/agent.rb:39:in `run'
/usr/lib/ruby/vendor_ruby/puppet/application/agent.rb:338:in `onetime'
/usr/lib/ruby/vendor_ruby/puppet/application/agent.rb:311:in `run_command'
/usr/lib/ruby/vendor_ruby/puppet/application.rb:346:in `run'
/usr/lib/ruby/vendor_ruby/puppet/application.rb:438:in `plugin_hook'
/usr/lib/ruby/vendor_ruby/puppet/application.rb:346:in `run'
/usr/lib/ruby/vendor_ruby/puppet/util.rb:500:in `exit_on_fail'
/usr/lib/ruby/vendor_ruby/puppet/application.rb:346:in `run'
/usr/lib/ruby/vendor_ruby/puppet/util/command_line.rb:76:in `execute'
/usr/bin/puppet:10

And the augeas definition from the manifest is:

    $grub_console = 'console serial'

    augeas { 'grub-serial':
        context => '/files/etc/default/grub',
        changes => ["set GRUB_TERMINAL \"'$grub_console'\"",
                    'set GRUB_SERIAL_COMMAND "\'serial --speed=115200 --unit=0 --word=8 --parity=no --stop=1\'"',
                    'set GRUB_CMDLINE_LINUX_DEFAULT ""',
                    'set GRUB_CMDLINE_LINUX "\'console=tty1 console=ttyS0,115200n8\'"'],
    }

Cheers,
Paul

Eric Sorenson

unread,
Oct 3, 2012, 9:01:27 PM10/3/12
to puppet...@googlegroups.com, dcl...@redhat.com
Hi Paul, I created a ticket to track this issue, thanks for posting the trace output and manifest.


-=Eric

Paul Tötterman

unread,
Oct 4, 2012, 3:42:56 AM10/4/12
to puppet...@googlegroups.com, dcl...@redhat.com
Hi Eric,

Thank you. I filled in some more detail, and started following the bug. Let's continue there.

Cheers,
Paul
Reply all
Reply to author
Forward
0 new messages