はじめに

ところでみなさん、Chefは好きですか? C言語コンパイルエラーで消耗してますか? 特に意味なく消されるWin用コードとStable(動かない)に消耗してませんか?

もう我慢の限界だね!俺はプロビジョニングを楽にしたいだけなんだ!

itamaeを使おう

itamaeはクックパッドの社内ツールだったものがOSS化したものです。 凄い簡単にしたChef見たいな、学習コストも低く、導入障害点も少ない優れたツールです。

Ansible? ドザーに取っては知らない子ですな。

チートシート

  • directory
    指定ディレクトリを作成する
1 directory "作成場所/ディレクトリ名" do
2   mode "パーミッション"
3   owner "作成ユーザー"
4   group "所属グループ"
5 end
  • execute
    シェルコマンドを実行する。
1 execute "update" do
2   user "root"
3   command "yum -y update"
4 end
  • file
    指定ファイルを作成する
1 file "ファイルパス" do
2   content "ファイルの内容"
3 end
  • git
    git cloneを実行する
1 git '対象ディレクトリパス' do
2   repository "対象のgitリポジトリ"
3 end
  • link
    シンボリックリンクを作成する
1 link "リンク先パス" do
2   to "リンク元パス"
3 end
  • package
    指定パッケージをインストールする
package "パッケージネーム" do
  version "指定バージョン"
  options "オプション"
end
  • remote
    ファイルを転送する
1 remote_file "対象ディレクトリパス(転送先)" do
2   owner "root"
3   group "root"
4   source "転送元ソース"
5 end
  • template
    erb(テンプレートを転送する)
1 template "/tmp/template" do
2   source "テンプレートソース.erb"
3   variables("埋め込む値")
4 end