Take the 2-minute tour ×
Server Fault is a question and answer site for professional system and network administrators. It's 100% free, no registration required.

Puppet version: 3.1.1

When attempting to use activemq module:

package {'openjdk-6-jre-headless':
    ensure => present,
}
class {'activemq':
    version => '5.8.0',
    user    => 'activemq',
    group   => 'activemq',
    home    => '/opt',
    console => true,
}
# following block causes issues with augeas
class { 'activemq::stomp':
    port => 61613,
}

I receive this error, running from node:

# puppet agent --test
Info: Retrieving plugin
Info: Loading facts in /var/lib/puppet/lib/facter/pe_version.rb
Info: Loading facts in /var/lib/puppet/lib/facter/root_home.rb
Info: Loading facts in /var/lib/puppet/lib/facter/puppet_vardir.rb
Info: Caching catalog for xxx
Info: Applying configuration version '1368621971'
Notice: /Stage[main]/Activemq/Service[activemq]: Dependency Augeas[activemq-stomp] has failures: true
Warning: /Stage[main]/Activemq/Service[activemq]: Skipping because of failed dependencies
Error: Could not find a suitable provider for augeas
Notice: Finished catalog run in 0.41 seconds

If I run it with --debug, this is the output (grepped for augeas, for clarity):

# puppet agent --test --debug|grep augeas -i
Debug: Failed to load library 'augeas' for feature 'augeas'
Debug: Failed to load library 'augeas' for feature 'augeas'
Debug: Puppet::Type::Augeas::ProviderAugeas: feature augeas is missing
Debug: Failed to load library 'augeas' for feature 'augeas'
Debug: Puppet::Type::Augeas::ProviderAugeas: feature augeas is missing
Debug: /Stage[main]/Activemq::Stomp/Augeas[activemq-stomp]/require: requires File[/opt/activemq]
Debug: /Stage[main]/Activemq::Stomp/Augeas[activemq-stomp]/notify: subscribes to Service[activemq]
Debug: Failed to load library 'augeas' for feature 'augeas'
Debug: Puppet::Type::Augeas::ProviderAugeas: feature augeas is missing
Debug: Failed to load library 'augeas' for feature 'augeas'
Debug: Puppet::Type::Augeas::ProviderAugeas: feature augeas is missing
Notice: /Stage[main]/Activemq/Service[activemq]: Dependency Augeas[activemq-stomp] has failures: true
Warning: /Stage[main]/Activemq/Service[activemq]: Skipping because of failed dependencies
Error: Could not find a suitable provider for augeas

Update 1: Augeas appears to be installed correctly:

# dpkg -l | grep augeas
ii  augeas-lenses            0.10.0-1     all
ii  augeas-tools             0.10.0-1     amd64
ii  libaugeas-ruby1.8        0.4.1-1.1    amd64
ii  libaugeas0               0.10.0-1     amd64

Any ideas how to fix it?

share|improve this question
    
Have you installed the required packages? apt-cache search augeas and dpkg -l | grep augeas –  dawud May 15 '13 at 13:42
    
@dawud yes, updated question with relevant information. –  mr.b May 15 '13 at 13:50
3  
You are apparently using the puppetlabs' repo and you are missing libaugeas-ruby1.9.1, install it and check if that makes a difference. –  dawud May 15 '13 at 13:56
    
it worked! write this as an answer, if you wish to receive rep. now, could someone explain to me why wrong version of libaugeas-ruby was installed? can I make sure it gets installed by some means, other than forcing clients to install said package? –  mr.b May 15 '13 at 14:02
    
What's also interesting is that ruby metapackage is at version 1.9.3, so in my opinion, it should default to installing 1.9.x ruby packages, no? –  mr.b May 15 '13 at 14:04

1 Answer 1

up vote 1 down vote accepted

Looking at the information reported by the one of the packages, it depends of any of libaugeas-ruby1.{8,9}


# dpkg --info puppet-common_3.1.1-1puppetlabs1_all.deb
 Package: puppet-common
 Source: puppet
 Version: 3.1.1-1puppetlabs1
 Architecture: all
 Maintainer: Puppet Labs 
 Installed-Size: 3592
 Depends: ruby | ruby-interpreter, libxmlrpc-ruby, libopenssl-ruby, libshadow-ruby1.8 | ruby-shadow, libaugeas-ruby1.8 | libaugeas-ruby1.9, adduser, lsb-base, sysv-rc (>= 2.86) | file-rc, hiera (>= 1.0.0), facter (>= 1.6.12)
 Homepage: http://projects.puppetlabs.com/projects/puppet

So I would guess that you are setting ruby 1.9 to be the default. This can be checked using:


# update-alternatives --display ruby
ruby - auto mode
  link currently points to /usr/bin/ruby1.9.1
/usr/bin/ruby1.8 - priority 50
  slave erb: /usr/bin/erb1.8
  slave erb.1.gz: /usr/share/man/man1/erb1.8.1.gz
  slave irb: /usr/bin/irb1.8
  slave irb.1.gz: /usr/share/man/man1/irb1.8.1.gz
  slave rdoc: /usr/bin/rdoc1.8
  slave rdoc.1.gz: /usr/share/man/man1/rdoc1.8.1.gz
  slave ri: /usr/bin/ri1.8
  slave ri.1.gz: /usr/share/man/man1/ri1.8.1.gz
  slave ruby.1.gz: /usr/share/man/man1/ruby1.8.1.gz
  slave testrb: /usr/bin/testrb1.8
  slave testrb.1.gz: /usr/share/man/man1/testrb1.8.1.gz
/usr/bin/ruby1.9.1 - priority 51
  slave erb: /usr/bin/erb1.9.1
  slave erb.1.gz: /usr/share/man/man1/erb1.9.1.1.gz
  slave irb: /usr/bin/irb1.9.1
  slave irb.1.gz: /usr/share/man/man1/irb1.9.1.1.gz
  slave rdoc: /usr/bin/rdoc1.9.1
  slave rdoc.1.gz: /usr/share/man/man1/rdoc1.9.1.1.gz
  slave ri: /usr/bin/ri1.9.1
  slave ri.1.gz: /usr/share/man/man1/ri1.9.1.1.gz
  slave ruby.1.gz: /usr/share/man/man1/ruby1.9.1.1.gz
  slave testrb: /usr/bin/testrb1.9.1
  slave testrb.1.gz: /usr/share/man/man1/testrb1.9.1.1.gz
Current 'best' version is '/usr/bin/ruby1.9.1'.
share|improve this answer
    
Two answers in one. Nice. –  mr.b May 15 '13 at 14:17
    
To answer my own sub-question from above, I think the confusion appeared because I did an upgrade from squeeze to wheezy, and libaugeas-ruby package was already installed, which means there was no need to install another version of same package, thus creating a problem I have been experiencing. –  mr.b May 15 '13 at 14:18
    
As it is a third party package the one that triggers the dependency error, I would not know who to report the error to, though. Maybe PuppetLabs. –  dawud May 15 '13 at 14:23

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.