Учебники

Шеф-повар — Foodcritic

Написание хороших поваренных книг без каких-либо проблем является довольно сложной задачей. Но есть способы, которые могут помочь в выявлении подводных камней. Пометка в поваренной книге шеф-повара возможна. Foodcritic — один из лучших способов его архивирования, который пытается выявить возможные проблемы с логикой и стилем поваренных книг.

Foodcritic Setup

Шаг 1 — Добавьте Foodcritic самоцвет.

vipin@laptop:~/chef-repo $ subl Gemfile 
source 'https://rubygems.org' 
gem 'foodcritic', '~>2.2.0'

Шаг 2 — Установите драгоценный камень.

vipin@laptop:~/chef-repo $ bundle install 
Fetching gem metadata from https://rubygems.org/ 
...TRUNCATED OUTPUT... 
Installing foodcritic (2.2.0) 

Foodcritic Gem

Шаг 1 — Запустите Foodcritic в кулинарной книге.

vipin@laptop:~/chef-repo $ foodcritic ./cookbooks/<Cookbook Name> 
FC002: Avoid string interpolation where not required: ./cookbooks/ 
mysql/attributes/server.rb:220 
...TRUNCATED OUTPUT... 
FC024: Consider adding platform equivalents: ./cookbooks/<Cookbook Name>/ 
recipes/server.rb:132 

Шаг 2 — Генерация подробного отчета.

vipin@laptop:~/chef-repo $ foodcritic -C ./cookbooks/mysql 
cookbooks/<cookbook Name>/attributes/server.rb 
FC002: Avoid string interpolation where not required 
[...] 
85| default['<Cookbook Name>']['conf_dir'] = "#{mysql['basedir']}" 
[...] 
cookbooks/<Cookbook Name>/recipes/client.rb 
FC007: Ensure recipe dependencies are reflected in cookbook 
metadata 
40| end 
41|when "mac_os_x" 
42| include_recipe 'homebrew' 
43|end 
44|

Метод работы

Foodcritic определяет набор правил и проверяет рецептурные агенты, каждый из них. Он поставляется с несколькими правилами, касающимися различных областей: стилей, связности, атрибутов, строки, вероятности, поиска, служб, файлов, метаданных и так далее.