我正在尝试编写一个基于条件的 LWRP,它将调用帮助程序库中的方法。我在让提供程序读取外部方法时遇到语法问题。
提供者非常简单
# 提供者/提供者.rb require_relative '../libraries/acx_shared' 包括Acx 行动:创建做 Chef::Log.debug('{jefflibrary->lwrp->user} - start') 如果@new_resource.shared == true Acx::User::Shared.true_shared() 别的 Acx::User::Shared.false_shared() 结尾 如果@new_resource.sudo == true Chef::Log.error('我有权力') 别的 Chef::Log.error('我的力量微弱无力') 结尾 如果@new_resource.password == true Chef::Log.error('密码是 12345') 别的 Chef::Log.error('我永远不会告诉你气闸的秘密') 结尾 Chef::Log.debug('{jefflibrary->lwrp->user} - end') 结尾
连同辅助库
#libraries/acx_shared.rb 模块Acx 模块用户 模块共享 def true_shared #puts废话 Chef::Log.error('我是从图书馆参考资料中提取的') 结尾 def false_shared Chef::Log.error('我不太擅长分享') 结尾 结尾 结尾 结尾
但是每当我尝试运行它而不考虑资源属性设置时,我都会不断得到
无方法错误 ------------- Acx::User::Shared:Module 的未定义方法“false_shared”
我显然在编写帮助程序库的文档中遗漏了一些东西,但我不确定是什么。尝试移动一些东西,但开始没有想法。