by shigemk2

当面は技術的なことしか書かない

Chef

not_if only_if

not_if 指定した条件が真でないならコマンドを実行する only_if 指定した条件が真のときのみコマンドを実行する bash "install-rubybuild" do not_if 'which ruby-build' code <

include_recipe

レシピを読み込む方法。jsonから読み込む。 { "nginx": { "port": 8080 }, "run_list":[ "yum::epel", "iptables", "nginx", "php", "git" ] }の他にinclude_recipeで読み込む方法がある。 include_recipe "git" include_recipe "zsh" もちろん、どちらもレ…

chefからoh-my-zshを入れてみよう

1. create $ knife cookbook create my-oh-my-zsh -o cookbooks2. default.rbを書く chef-solo/cookbooks/my-oh-my-zsh/recipes/default.rb # # Cookbook Name:: my-oh-my-zsh # Recipe:: default # # Copyright 2013, YOUR_COMPANY_NAME # # All rights res…

vagrantでユーザーvagrantをchshする

vagrant upとかで作った仮想環境で作成されてるユーザーの デフォルトのログインシェルがbashなので、chefでchshする気合いのレシピ、見せてあげるわ(適当)Sample VM user-customization Chef recipe 上のレシピを一部抜粋しただけの気合いもクソもないレシ…

適当にphpを入れてみる

chef-solorディレクトリにて $ knife cookbook site vendor php -o site-cookbookshoge.json { "run_list":[ "php" ] }これだけだった。

gem_package

rubygemsのgemを扱う gem_package "rake" do action :install end

knife solo prepare

$ vagrant init $ vagrant ssh-config --host melody >> ~/.ssh/config$ cd chef-repo $ knife solo prepare melody Bootstrapping Chef... % Total % Received % Xferd Average Speed Time Time Time Current Dload Upload Total Spent Left Speed 100 6510…

nginxを入れよう

/cookbooks/nginx/recipes/default.rb # Cookbook Name:: nginx # Recipe:: default # # Copyright 2013, YOUR_COMPANY_NAME # # All rights reserved - Do Not Redistribute # package "nginx" do action :install end service "nginx" do supports :status…

FATAL: Chef::Exceptions::ChildConvergeError

こんなかんじのレシピを書いていたんだけど、 # # Cookbook Name:: hello # Recipe:: default # # Copyright 2013, YOUR_COMPANY_NAME # # All rights reserved - Do Not Redistribute # log "hello, world!" package "zsh" do action :install end Starting…

hello, world

Chefのinstall $ gem install chefレポジトリ>クックブック>レシピ レポジトリ作成 $ git clone git://github.com/opscode/chef-repo.git(特定のシステムに1個くらいの粒度のおおきさ レポジトリを作成すると、knifeというツールがインストールされる クック…