Search code examples
tomcatdebianpuppetaugeas

How to fix Augeas dependency for Tomcat manifest?


I've the following puppet manifest which suppose to install and run Tomcat on port 8983:

# tomcat.pp
package { [ "tomcat7", "tomcat7-admin" ]: ensure => present }
package { [ "augeas-tools", "libaugeas-dev", "libaugeas-ruby" ]: ensure => installed }

class { 'java': }
class { 'tomcat': install_from_source => false }

tomcat::config::server { 'tomcat7':
  catalina_base => '/etc/tomcat7/Catalina',
  port          => '8983',
  require => [ Package["libaugeas-ruby"] ]
}->
tomcat::service { 'default':
  use_jsvc     => false,
  use_init     => true,
  service_name => 'tomcat7',
}

I've installed all dependencies, e.g.:

sudo apt-get install puppet augeas-tools libaugeas-dev libaugeas-ruby
sudo puppet module install puppetlabs/tomcat

Here is my puppet and augeas packages:

$ puppet --version
2.7.23

$ dpkg -l | grep augeas
ii  augeas-lenses                       0.10.0-1 
ii  augeas-tools                        0.10.0-1 
ii  libaugeas-dev                       0.10.0-1 
ii  libaugeas-ruby                      0.4.1-1.1
ii  libaugeas-ruby1.8                   0.4.1-1.1
ii  libaugeas-ruby1.9.1                 0.4.1-1.1
ii  libaugeas0                          0.10.0-1 

However when I run my manifest, it's saying that I don't have Augeas installed:

$ sudo puppet apply -v tomcat-test.pp 
Server configurations require Augeas >= 1.0.0 at /etc/puppet/modules/tomcat/manifests/config/server.pp:28 on node debian-wheezy

I've read Using Puppet with Augeas and augtool tool works correctly.

How do I fix that broken dependency? Or do I need to restart anything?


Solution

  • This manifest requires Augeas >= 1.0.0, and you have 0.10.0.

    You need to upgrade your Augeas package in order to use this.

    If you're on Ubuntu, see the Augeas PPA

    On Debian, you can check Camptocamp's repository.