即使not_if命令退出2,也会跳过Chef资源

时间:2015-07-13 18:53:50

标签: amazon-web-services chef

该资源有一个not_if保护,我已经验证该命令的退出代码是非零的。然而,厨师运行的输出显示由于not_if而跳过了资源。

资源看起来像

device_id = "/dev/xvdf"
execute 'yes | mkfs -t ext4 #{device_id}' do
    not_if 'blkid -o value -s TYPE #{device_id} && blkid -o value -s TYPE #{device_id} | grep ext4'
    timeout 1200
end

1 个答案:

答案 0 :(得分:2)

叹息。 Ruby不会在单引号字符串中进行插值。将它们更改为双引号并修复了问题。