Puppet错误:未定义的方法“捕获”

我在networking工程SE网站上发布了这个问题,但是确定是closures主题….等等。

我正在玩弄使用puppet进行核心networking设备configuration的想法,以提高我的团队正在生成的configuration的准确性。 我想先创build一个演示,然后学习更多关于木偶如何工作的知识。

我在我们的团队networking实用程序节点(一个Ubuntu 12.04 LTS VM)上安装了puppet,并在〜user / .puppet / device.conf中configuration了一个设备,它看起来像….

 [XX-core01.XXX.local]
        键入cisco
         url ssh:// user:[email protected]/

我跑了傀儡设备 – 发烧,并颁发了证书。 但一旦我做了,我得到一个错误,我无法find任何有关的信息。

 info:开始将configuration文件应用于XX-core01.XXX.local,位于ssh:// user:[email protected]/
 info:为XX-core01.XXX.local创build一个新的SSL密钥
 info:ca的caching证书
 info:为XX-core01.XXX.local创build一个新的SSL证书请求
 info:证书请求指纹(md5):18:B8:55:F9:A0:F6:8E:A3:F5:53:59:87:4C:00:48:23
 info:XX-core01.XXX.local的caching证书
 info:为ca。cachingcertificate_revocation_list
 err:无法检索本地事实:nil:NilClass的未定义方法“捕获”

任何人都可以指向正确的方向吗? 另外,是否有可能使用木偶“行走”设备? 我有兴趣了解哪些选项可以在我的不同设备上configuration。

谢谢!

在向puppet汇报事实的过程中,这似乎是失败的。 可能发生的事情是一个facter插件无法检索一个对象,但仍然与结果(这是nil ),并试图调用captures方法。

尝试运行facter --trace --debug --puppet (运行puppet插件启用),看看是否也失败了。

如果它确实缩小与facter --trace --debug ,如果它是一个基本的因素插件将失败,但如果它是一个傀儡插件工作。

之后,你知道在哪里看。 木偶相关的因素可能在/var/lib/puppet/lib/facter/ ,核心内容在/usr/share/ruby/vendor_ruby/facter/ 。 确保你也看看/etc/facts.d/ ,也许~/facts.d/

然后你将需要找出哪个事实导致问题并修复它(但也许我们可以帮助一旦我们在这一点)。