cookbook_version root_dir 在图书馆

cookbook_version root_dir in library

我有一个自定义库,想从 run_context 中的 cookbook_collection 访问当前的食谱,但它似乎返回 null

我有

Chef::Log.info run_context.cookbook_collection['my_cookbook']

它打印

#<Chef::CookbookVersion:0x00000004d3f578>

但如果我这样做

Chef::Log.info run_context.cookbook_collection['my_cookbook'].root_dir

其中 my_cookbook 是当前食谱的名称,我没有打印任何内容。如何从我的图书馆访问 current_cookbook 的 root_dir

从评论中复制下来:

这不受支持,在某些版本中中断。首先使用 cookbook_file 资源将其复制到已知位置。这可能意味着您的库帮助程序代码需要变成 DSL 扩展或自定义资源。