过滤木偶pluginsync

有没有一种方法来过滤哪些插件正在同步? 我从伪造(傀儡板,puppetdb,python)下载了一些新的模块。 这些模块包括插件,它们也只在puppet master上需要,插件在我的任何客户端上都不需要。

不幸的是,这些模块中的facter插件导致puppet客户端在一些较旧的系统上失败,我无法升级到最新版本的ruby / puppet / facter。 这些较旧的系统正在运行传统的软件,无法运行在较新的操作系统版本上,而没有一个非常痛苦的骇人听闻的数量。 剩下的所有其他插件和自定义事实工作得很好。 所以我想保持插件同步,但排除这些打破旧系统的事实。

有没有人想出了一个很好的部分插件同步方法? 我在search中找不到任何解决scheme。

没有办法来过滤插件。

但正如你在评论中所说的,你需要写出事实/types来处理它们运行的​​操作系统。 对于您提前退出的types和提供程序。
有关事实,您可以使用confine: http : //docs.puppetlabs.com/guides/custom_facts.html#confining-facts

Puppet本身不支持过滤要同步的插件列表。

但是,您可以使用来自CERN的pluginsync_filter修补程序修补木偶以支持此操作。

之后,您可以通过Hiera将这些模块列入白名单:

 pluginsync_filter_enable: true pluginsync_filter: - whitelisted - module - names 

注意: AFAIK这个补丁可能不是公开支持的,所以如果你决定使用它,你将自己做。