gpt4 book ai didi

ruby - Chef - 找到缺失的属性 NilClass

转载 作者:数据小太阳 更新时间:2023-10-29 07:28:42 30 4
gpt4 key购买 nike

上下文 - 我们有大量的 Chef 属性来执行我们的安装,现在已经为每个环境定义和更改了大约 3000 多个属性。

问题 - 有时 Chef Recipe 会引用不存在的属性 node[:mystuff][:typo] .这会导致以下错误:

Recipe Compile Error in /var/chef/cache/cookbooks/<yyy>/recipes/something.rb
undefined method '[]' for nil:NilClass

这是一个毫无值(value)的错误,因为它没有让我确切知道缺少什么节点/属性。即使使用 chef-client -l debug 运行没有帮助。 knife cookbook test <x>没有帮助,因为在语法上它是正确的。有没有办法让它打印出导致错误的确切行号? Recipe 可能包含 10 或 100 多个属性,因此逐行检查以发现拼写错误会浪费大量时间。

最佳答案

我写了Chef Sugardeep_fetch方法正是出于这个原因。

您得到的错误只是 Ruby 哈希的副产品。有关 deep_fetch 的更多信息,您还可以查看我关于该主题的博文:https://sethvargo.com/delicious-new-chef-sugars/

关于ruby - Chef - 找到缺失的属性 NilClass,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22360272/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com