如何修复 Tomcat 清单的 Augeas 依赖项?
How to fix Augeas dependency for Tomcat manifest?
我有以下 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
这是我的 puppet 和 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
工具工作正常。
如何修复损坏的依赖项?或者我需要重新启动什么吗?
此清单要求 Augeas >= 1.0.0,而您有 0.10.0。
您需要升级您的 Augeas 包才能使用它。
如果您在 Ubuntu,请参阅 the Augeas PPA
在 Debian 上,您可以查看 Camptocamp's repository。
Debian/Ubuntu
根据的建议,我添加了如下的 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
现在可以使用了。
我有以下 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
这是我的 puppet 和 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
工具工作正常。
如何修复损坏的依赖项?或者我需要重新启动什么吗?
此清单要求 Augeas >= 1.0.0,而您有 0.10.0。
您需要升级您的 Augeas 包才能使用它。
如果您在 Ubuntu,请参阅 the Augeas PPA
在 Debian 上,您可以查看 Camptocamp's repository。
Debian/Ubuntu
根据
$ 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
现在可以使用了。