chef/cookbookのsyntax checkをしてみる
写真提供:donnierayjones
一定の基準でcookbookをチェックしないと作った人しかわからない状態になることが良くあるかと思いますが、cookbookとRubyのsyntax checkをすることである程度基準を設けたcookbookを保つ事が出来ると思います。
今回はcookbookのsyntax checkとしてfoodcriticを使ってみます。
foodcriticインストール
$ sudo gem install foodcritic
or
Gemfile
に書いてbundle install
foodcritic使い方
foodcritic directoryです。
$ foodcritic site-cookbooks/ FC002: Avoid string interpolation where not required: site-cookbooks/aerospike/recipes/default.rb:19 FC002: Avoid string interpolation where not required: site-cookbooks/aerospike/recipes/default.rb:28 FC033: Missing template: site-cookbooks/aerospike/recipes/default.rb:9
FC001など番号が振られており内容と共に出力されます。詳細は以下から確認できます。
Chef versions: >= 0.7.12 から以下のような書き方の違いが出たりしてみます。
# Don't do this version node[:mysql][:version]
version node['mysql']['version']
他にも、
# Don't do this excute内のwget/curl
double quote -> single quote
他にもreekやrubocopなども合わせてguardに設定を入れておくといいかなと思います。
シェアして頂けると嬉しいです。
参考になったという方がいれば是非お願いしますm(_ _ )m
モチベーション維持の観点で非常に励みになります。
Chef実践入門 ~コードによるインフラ構成の自動化 (WEB+DB PRESS plus)
- 作者: 吉羽龍太郎,安藤祐介,伊藤直也,菅井祐太朗,並河祐貴
- 出版社/メーカー: 技術評論社
- 発売日: 2014/05/22
- メディア: 単行本(ソフトカバー)
- この商品を含むブログ (15件) を見る
Chef活用ガイド コードではじめる構成管理 (アスキー書籍)
- 作者: 澤登亨彦,樋口大輔
- 出版社/メーカー: KADOKAWA / アスキー・メディアワークス
- 発売日: 2014/04/28
- メディア: Kindle版
- この商品を含むブログ (3件) を見る