擅长:python、mysql、java
<p>我相信问题的关键是puppet在rubyfu中使用yaml“tags”,这让默认的python加载程序感到困惑。尤其是,PyYAML不知道如何构造ruby/对象:木偶*Resource::Catalog,这很有意义,因为这是一个ruby对象。在</p>
<p>下面是一个链接,显示了yaml标记的各种用法:<a href="http://www.yaml.org/spec/1.2/spec.html#id2761292" rel="nofollow">http://www.yaml.org/spec/1.2/spec.html#id2761292</a></p>
<p>我用蛮力的方法克服了这一点,只需做一些类似的事情:</p>
<pre><code>cat the_yaml | sed 's#\!ruby/object.*$##gm' > cleaner.yaml
</code></pre>
<p>但是现在我遇到了一个问题,*resource_table*块将PyYAML与其复杂键混淆(使用“?”表示一个复杂键的开始。在</p>
<p>如果你能找到一个好办法,请告诉我。。。但是考虑到puppet与ruby之间的联系,直接用ruby编写脚本可能会更容易些。在</p>