在自定义的Puppet红宝石函数中,是否可以在每个目录运行时存储持久数据?

问题描述

使用Puppet,在自定义的ruby函数中是否可以为单个目录运行缓存值?

我有这个功能

Puppet::Functions.create_function(:myFunction) do

    def myFunction( *arguments )
        data = call_function( 'lookup',[ 'myHieraKey',nil,{} ] )
        data.length()
    end

end

函数被多次调用,如果每次调用都不查询hiera,则该函数将更为优化。

关于如何执行此操作,我似乎找不到任何提示。一种快速而肮脏的方法是定义一个唯一的类变量,但这会污染一个Puppet类。

@@ mymodule_myfunction_myvariable = {}

有没有一种“适当”的方式?

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)