Puppet在Centos中没有识别软件包(它存在于yum中)

我正在尝试在Centos上使用puppet安装一个软件包。

软件包可以使用yum install来安装(sudo yum install bash-completion),但木偶说它不存在! (当我试图安装其他几个软件包时,我也遇到了这个问题)。

这是我正在使用的:

file { '/etc/bash_completion.d/symfony2-autocomplete.bash': ensure => present, owner => 'vagrant', group => 'vagrant', mode => '0777', require => Package['bash-completion'], content => template('extras/symfony2-autocomplete.bash'), } 

有没有可用的木偶包列表? (或者我可能忘了把某个地方包括在内?)

谢谢!

你还没有指示Puppet安装一个软件包。

 file { '...': require => Package['...'] } 

不会导致软件包安装。 它只是build立一个file资源和命名package之间的关系。

 package { 'bash-completion': ensure => 'installed' } 

会做你所需要的。 然后require metaparameter将工作。

在CentOS 6上,bash-completion在EPEL库中。 您可能忘了添加EPEL ,或者您的清单在添加EPEL回购之前尝试安装bash完成。

它位于CentOS 7的基础仓库中。

哦,你的文件所有权和许可权是错误的,但你可能已经知道…