【问题标题】:Chef resource skipped even though not_if command exits 2即使 not_if 命令退出,厨师资源也被跳过 2
【发布时间】:2015-10-02 04:21:51
【问题描述】:

该资源有一个 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

【问题讨论】:

  • 最好的猜测是该命令的输出与 chef 运行它的上下文不同。

标签: amazon-web-services chef-infra


【解决方案1】:

叹息。 Ruby 不插入单引号字符串。将它们更改为双引号并修复了问题。

【讨论】:

  • 你能接受这个答案来“关闭”这个问题吗?
  • 您也可以尝试使用%Q[ ] 格式。括号中的所有内容都被视为双引号。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-08-02
  • 1970-01-01
  • 2012-07-07
相关资源
最近更新 更多