Đầu bếp - Phân biệt thực phẩm

Viết sách dạy nấu ăn ngon mà không có vấn đề gì là một nhiệm vụ khá khó khăn. Nhưng có những cách có thể giúp xác định các cạm bẫy. Có thể gắn cờ trong Chef Cookbook. Phân tích thực phẩm là một trong những cách tốt nhất để lưu trữ nó, giúp xác định các vấn đề có thể xảy ra với logic và phong cách của sách dạy nấu ăn.

Thiết lập tội phạm thực phẩm

Step 1 - Thêm đá quý Thực phẩm.

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

Step 2 - Cài đặt đá quý.

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

Đá quý thực phẩm

Step 1 - Chạy Foodcritic trên sách nấu ăn.

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

Step 2 - Tạo một báo cáo chi tiết.

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|

Phương pháp làm việc

Foodcritic xác định một tập hợp các quy tắc và kiểm tra các tác nhân công thức, mỗi người trong số họ. Nó đi kèm với nhiều quy tắc liên quan đến các lĩnh vực khác nhau: kiểu, tính kết nối, thuộc tính, chuỗi, xác suất, tìm kiếm, dịch vụ, tệp, siêu dữ liệu, v.v.