![](/img/trans.png)
[英]How to install Puppet Enterprise Agent Installation without Internet on CentOS 6.5
[英]How to install centos packages in puppet?
我在site.pp中设置了一个类
class packages {
Package { ensure => 'installed' }
package { 'python-devel': }
package { 'blas-devel': }
package { 'lapack-devel': }
}
但似乎什么都没发生? 当我跑步
pip install scipy
我仍然认为Python.h
无法编译,所以我认为python devel没有安装
您已经定义了类“ packages
”,但是没有显示该类已分配给任何节点。 这就像编写一个函数,但从不调用它一样。
您需要声明该类以将其分配给特定节点或所有节点(取决于声明的上下文)。 有几种不同的形式,但是最简单的方法是添加...
include 'packages'
...在类定义的右大括号之后。
结果仍然是很差的形式,因为类应该在模块中定义,而不是在site.pp
,并且声明很少应该出现在顶级范围内(在任何节点块,类定义或类型定义之外),但是它将指示伪装,当它运行时,应确保已安装您指定的软件包。
实际上,您为模块编写代码的方式看起来并不正确。 我会尝试以下类似的方法
class 'my-python' {
package {'python-devel':
ensure => installed,
}
package {'lapack-devel':
ensure => installed,
}
package {'python-devel':
ensure => installed,
}
}
您可以将类中的每个软件包定义为单独的软件包资源。 然后,您需要在site.pp中将要安装它们的节点“包括mypython”。 运行木偶,你应该很好。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.