itamaeとは? 以前やったchefを簡単に使えるようにしたもの
環境準備
gemをインストール
$ mkdir itamae_test
$ cd itamae_test
$ bundle init
Gemfile
に追加gem "itamae"
ローカル環境でディレクトリ作成
単純にローカルで
mkdir hello
を行うだけのレシピを作成してみます。itamae_test/hello.rb
を以下の内容で作成execute "mkhello" do
command "mkdir hello"
end
早速実行してみる
$ bundle exec itamae local hello.rb -l debug
INFO : Starting Itamae...
DEBUG : Executing `mkdir -p /tmp/itamae_tmp`...
DEBUG : exited with 0
DEBUG : Executing `chmod 777 /tmp/itamae_tmp`...
DEBUG : exited with 0
INFO : Recipe: /Users/.../itamae_test/hello.rb
DEBUG : execute[mkhello]
DEBUG : execute[mkhello] action: run
DEBUG : (in pre_action)
DEBUG : (in set_current_attributes)
DEBUG : (in show_differences)
INFO : execute[mkhello] executed will change from 'false' to 'true'
DEBUG : Executing `mkdir hello`...
DEBUG : exited with 0
DEBUG : This resource is updated.
DEBUG : This resource is updated.
成功すれば
hello
ディレクトリが作成されているかと思います。Vagrant環境でディレクトリ作成
上と同じ内容をVagrant上で実行してみます。
実行対象のVagrantを起動。
実行対象のVagrantを起動。
$ vagrant up
Vagrant対象に対してコマンドを実行
$ bundle exec itamae ssh --vagrant hello.rb -l debug
INFO : Starting Itamae...
DEBUG : Executing `mkdir -p /tmp/itamae_tmp`...
DEBUG : exited with 0
DEBUG : Executing `chmod 777 /tmp/itamae_tmp`...
DEBUG : exited with 0
INFO : Recipe: /Users/.../itamae_test/hello.rb
DEBUG : execute[mkhello]
DEBUG : execute[mkhello] action: run
DEBUG : (in pre_action)
DEBUG : (in set_current_attributes)
DEBUG : (in show_differences)
INFO : execute[mkhello] executed will change from 'false' to 'true'
DEBUG : Executing `mkdir hello`...
DEBUG : exited with 0
DEBUG : This resource is updated.
DEBUG : This resource is updated.
vagnrat上にhelloディレクトリが作成されていれば成功
httpdのインストールと起動
もう少し実用的にVagrant上にhttpdをインストールしてサービスを起動する
レシピを作成してみたいと思います。
レシピを作成してみたいと思います。
httpd.rb
を作成package 'httpd' do
action :install
end
service "httpd" do
action [ :enable, :start ]
name "httpd"
end
実行
$ bundle exec itamae ssh --vagrant httpd.rb -l debug
ちゃんと実行されているか確認
$ service httpd status
httpd (pid XXXX) is running...
軽く使ってみて・・・
シンプルに扱えるのがいいですね。
Chef-soloしか使ってないという人は
Chef-soloしか使ってないという人は
itamae
お勧めです。
0 件のコメント:
コメントを投稿