Only_if与Ruby_block中的Loop一起通过Foodcritic FC022

时间:2018-09-07 23:00:38

标签: ruby chef

我一直在尝试找到一种更好的方法来使用ruby_block中的条件,以避免在Foodcritic对代码进行评估时避免使用 FC022 规则。

  

FC022:循环中的资源状况可能无法达到预期的效果

我的代码如下

ruby_block 'file configuration' do
block do
  files = [
    '/etc/file01.conf',
    '/etc/file02.conf',
  ]

  files.each do |f|
    file = Chef::Util:FileEdit.new(f)
    file.insert_line_if_no_match('something', 'something')
    file.write_file
    only_if { ::File.exist?(f) }
  end
end

删除only_if将通过Footcritic中的 FC022 规则。

0 个答案:

没有答案