我有以下puppet清单,假设在端口8983上安装和运行Tomcat:
# 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',
}
我已经安装了所有依赖项,例如:
sudo apt-get install puppet augeas-tools libaugeas-dev libaugeas-ruby
sudo puppet module install puppetlabs/tomcat
这是我的木偶和augeas套餐:
$ 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
然而,当我运行我的清单时,它说我没有安装Augeas:
$ 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
我已阅读Using Puppet with Augeas和augtool
工具正常工作。
如何修复破坏的依赖?或者我需要重新启动任何东西吗?
答案 0 :(得分:2)
此清单要求Augeas> = 1.0.0,您有0.10.0。
您需要升级您的Augeas套餐才能使用它。
如果您使用的是Ubuntu,请参阅the Augeas PPA
在Debian上,您可以查看Camptocamp's repository。
答案 1 :(得分:0)
<强>于Debian / Ubuntu 强>
根据ℝaphink建议,我添加了Camptocamp软件包存储库,如下所示:
$ echo 'deb http://pkg.camptocamp.net/apt wheezy/stable sysadmin' | sudo tee -a /etc/apt/sources.list
$ curl -s http://pkg.camptocamp.net/packages-c2c-key.gpg | sudo apt-key add -
OK
$ sudo apt-get update
$ sudo apt-cache madison "augeas*" | grep camptocamp
libaugeas-ruby1.8 | 0.5.0-0c2c1 | http://pkg.camptocamp.net/apt/ wheezy/stable/sysadmin amd64 Packages
augeas-tools | 1.3.0-0+c2c1 | http://pkg.camptocamp.net/apt/ wheezy/stable/sysadmin amd64 Packages
并通过apt
安装:
$ sudo apt-get install augeas-tools=1.\* augeas-lenses=1.\* augeas-doc=1.\* libaugeas0=1.\*
$ dpkg -l '*augeas*'
ii augeas-tools 1.3.0-0+c2c1
ii libaugeas0 1.3.0-0+c2c1
它现在有效。