LoginSignup
267
226

More than 5 years have passed since last update.

Itamaeチートシート

Last updated at Posted at 2014-11-30

対象バージョン

v1.9.6 (https://github.com/itamae-kitchen/itamae/releases/tag/v1.9.6)

※随時更新の予定です

全リソース共通のアトリビュート

アトリビュート名 用途 必須
aciton 実行するアクション × Symbol or Array
only_if あるコマンドが成功したときのみ実行 × String
not_if あるコマンドが失敗した時のみ実行 × String
user 実行ユーザ × String

リソース

execute

概要

  • シェルコマンドを実行する

アトリビュート

アトリビュート名 用途 必須
command 実行するシェルコマンド String

デフォルト値

アトリビュート名
action :run
Ex
execute "update yum repo" do
  user "root"
  command "yum -y update"
end

git

概要

  • git cloneを実行する

アトリビュート

アトリビュート名 用途 必須
repository cloneしたいgitリポジトリ String

デフォルト値

アトリビュート名
action :sync
Ex
git "/usr/local/rbenv" do
  repository "git://github.com/sstephenson/rbenv.git"
end

remote_file

概要

  • ファイルを転送する
  • Chefでいうところのcookbook_file
  • sourceは相対パスで指定

アトリビュート

アトリビュート名 用途 必須
owner 所有者 × String
group 所属グループ × String
source 転送したいファイルのパス String

デフォルト値

アトリビュート名
action :create
Ex
remote_file "/etc/profile.d/rbenv.sh" do
  owner "root"
  group "root"
  source "remote_files/rbenv.sh"
end

remote_directory

概要

  • ディレクトリを転送する
  • Chefでいうところのremote_directory
  • sourceは相対パスで指定

アトリビュート

アトリビュート名 用途 必須
owner 所有者 × String
group 所属グループ × String
source 転送したいファイルのパス String

デフォルト値

アトリビュート名
action :create
Ex
remote_directory "/etc/var/www" do
  owner "root"
  group "root"
  source "remote_files/etc/var/www"
end

template

概要

  • 用意したテンプレートファイル(erb)を転送する
  • テンプレートファイルにはノード or variablesで定義した変数かを埋め込む

アトリビュート

アトリビュート名 用途 必須
owner 所有者 × String
group 所属グループ × String
source 転送したいテンプレートファイルのパス String
variables テンプレートファイルに引き渡したい変数 × Hash

デフォルト値

アトリビュート名
action :create
Ex
template "/tmp/template" do
  source "hello.erb"
  variables(goodbye: "Good bye")
end

package

概要

  • パッケージをインストールする

アトリビュート

アトリビュート名 用途 必須
name インストールしたいパッケージ名 × String
version インストールしたいパッケージのバージョン × String
options インストール時の実行オプション × String

デフォルト値

アトリビュート名
action :install
Ex
package "nginx" do
  version "1.6.1"
  options "--force-yes"
end

directory

概要

  • ディレクトリを作成する

アトリビュート

アトリビュート名 用途 必須
mode パーミッション × String
owner 所有者 × String
group 所属グループ × String

デフォルト値

アトリビュート名
action :create
Ex
directory "/var/foo/bar" do
  mode "775"
  owner "hoge"
  group "hoge"
end

link

概要

  • シンボリックリンクを作成する

アトリビュート

アトリビュート名 用途 必須
link リンク先のパス × String
to リンク先のパス String

デフォルト値

アトリビュート名
action :create
Ex
link "/tmp-link" do
  to "/tmp"
end

local_ruby_block

概要

  • blockを実行する

アトリビュート

アトリビュート名 用途 必須
block do 〜 end block内のコードを実行する Proc
Ex
local_ruby_block "greeting" do
  block do
    Itamae::Logger.info "板前"
  end
end

file

概要

  • ファイルを生成する

アトリビュート

アトリビュート名 用途 必須
mode パーミッション × String
owner 所有者 × String
group 所属グループ × String
content ファイルの内容 String
content_file 存在するファイルのパス String

デフォルト値

アトリビュート名
action :create
Ex
file "/tmp/file1" do
  content "Hello, World"
end

user

概要

  • ユーザを作成する

アトリビュート

アトリビュート名 用途 必須
uid ユーザID × String or Integer
gid グループID × String
username ユーザ名 × String
password パスワード × String
home 作成するユーザのホームディレクトリ × String
shell ログインシェル × String
system_user システムユーザとするか否か × true or false

デフォルト値

アトリビュート名
action :create
Ex
user "create user" do
  uid "123456789"
  username "hoge"
  password "abcdffg"
end

service

概要

  • サービスを起動や終了などを行う

アトリビュート

アトリビュート名 用途 必須
name サービス名 String

デフォルト値

アトリビュート名
action :nothing
Ex
service "cron" do
  action :stop
end

gem_package

概要

  • gemパッケージをインストールする

アトリビュート

アトリビュート名 用途 必須
package_name gem名 String
gem_binary 利用するgemコマンドのバイナリのパス × String or Array
version インストールするgemのバージョン × String
options gemコマンドのオプション × Array
source インストールするgemの取得先のURL × String

デフォルト値

アトリビュート名
action :install
gem_binary :gem
Ex
gem_package 'bundler' do
  gem_binary 'usr/local/rbenv/shims/gem'
  options ['--no-ri', '--no-rdoc']
end

謝辞

参考サイト

267
226
2

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
267
226