Vagrantfile内にjsonをいちいち書くのはだるいので、vagrantコマンドでnodeを指定できるようにした
Vagrantfileのconfig.vm.provisionブロックを編集する
unless ENV["NODE"].nil?
chef.json = JSON.parse(open(File.join(File.expand_path(File.dirname(__FILE__)), 'nodes', "#{ENV["NODE"]}.json")).read)
end
これでvagrant指定時にnodejson名を指定すれば、指定したnodeでvmが起動する
NODE=exmaple.com vagrant up
環境変数で指定するのはイケてないんだけど、Vagrantfileの中で第2引数を取得する方法がわからなかった。。。
ホントはこうやりたい
# こうすればVagrantfileの中でvmの設定も切り替えられるので便利
vagrant up example.com
もーちょいvagrantのソース読まないとわからないので断念。
パッと見た感じではVagrantfileにオプション値は渡していないみたいなので、無理な気がしてる