qui*_*tin 3 ruby puppet facter
我不是一个 Ruby 人,但找到了如何列出 Ruby 加载路径。这就是我的样子
$ ruby -e 'puts $:'
/usr/lib/ruby/site_ruby/1.8
/usr/lib64/ruby/site_ruby/1.8
/usr/lib64/ruby/site_ruby/1.8/x86_64-linux
/usr/lib/ruby/site_ruby
/usr/lib64/ruby/site_ruby
/usr/lib64/site_ruby/1.8
/usr/lib64/site_ruby/1.8/x86_64-linux
/usr/lib64/site_ruby
/usr/lib/ruby/1.8
/usr/lib64/ruby/1.8
/usr/lib64/ruby/1.8/x86_64-linux
Run Code Online (Sandbox Code Playgroud)
其中一些目录甚至不存在,坦率地说,我认为自定义事实.rb文件最好放置在 Puppet-ish 位置,例如/etc/puppet/facts或类似位置。
我应该使用现有的加载路径位置之一还是为了 Puppet 的目的创建一个新的?
最佳实践是将任何事实和其他插件放在 puppet 服务器上的模块中。然后在客户端使用 pluginsync 功能。这让木偶客户端把东西放在适当的位置。
http://docs.puppetlabs.com/guides/plugins_in_modules.html
{modulepath}
??? {module}
??? lib
|?? augeas
? ??? lenses
??? facter
??? puppet
??? parser
? ??? functions
??? provider
| ??? exec
| ??? package
| ??? etc... (any resource type)
??? type
Run Code Online (Sandbox Code Playgroud)
所以一个新的事实可能会进入 modules/examplemod/lib/facter/myfact.rb。
因为facter-1.7也有可能有外部事实,可以部署/etc/facter/facts.d在任何语言中,也可以用任何语言编写。
| 归档时间: |
|
| 查看次数: |
2748 次 |
| 最近记录: |