2016-07-25 8 views
2

私たちはフードクリニックを使用してシェフのすべての料理を詰め込み、最近この問題に遭遇しました。コードに見られるようにfoodcritic 6.3.0シェフ - フードクリティカルFC019偽陽性

foodcritic .の出力は

FC019: Access node attributes in a consistent manner: ./recipes/configure_topics.rb:6 
FC019: Access node attributes in a consistent manner: ./recipes/configure_topics.rb:10 
FC019: Access node attributes in a consistent manner: ./recipes/configure_topics.rb:12 

configure_topics.rbを使用

、アクセス属性のシンボルの方法を、以下の内容

# 
# Cookbook Name:: kafka 
# Recipe:: configure_topics 
# 

node['kafka']['topics'].each do |topic, flag| 
    bash "create #{topic} topic" do 
     user "root" 
     code <<-EOH 
     /opt/kafka/bin/kafka-topics.sh --zookeeper #{node['kafka']['broker']['zookeeper']['connect']} --create --topiC#{topic} --partitions 1 --replication-factor 1 
     EOH 
     not_if "/opt/kafka/bin/kafka-topics.sh --zookeeper #{node['kafka']['broker']['zookeeper']['connect']} --list | grep #{topic}" 
    end 
end 

を有します使用されていないので、ここにFC019を表示しないでください。

github hereにfoodcriticという次の問題を公開しましたが、私は聞いたことがありません。

暫定的にこれらの警告が表示されないようにレシピを変更する方法はありますか?ありがとう。

+1

特定の警告を行単位で無効にすることができます(影響を受ける行の末尾に '〜FC019'を追加するだけです)。それは動作しますか? – StephenKing

+1

同じクッキングブックに属性の記号を使用している他のファイルはありますか? –

+0

@ KarenB、それは確かに問題でした。私の属性のデフォルトファイルは、例えば 'default.kafka.version'というドット表記法を使用していました。文字列記法を使用するようにそれらのすべてを修正したら、警告が消えました。助けてくれてありがとう! – Bjorn248

答えて

3

@KarenBが尋ねると、チェックはthe entire cookbookとなります。おそらく、他の形式のうちの1つを料理本の中の他のものに使用している可能性があります。そのため、使用頻度が最も低く、したがってエラーが発生しています。

+0

私が@ KarenBに答えて言ったように、これが問題でした。属性デフォルトファイルはドット表記を使用していました。ありがとう! – Bjorn248

関連する問題