Tbpgr Blog

Ruby プログラマ tbpgr(てぃーびー) のブログ

Vagrant | ShellによるInline Provisioning

概要

ShellによるInline Provisioning

詳細

ShellによるInline Provisioningについて。

Vagrantfile中に

config.vm.provision "shell", inline: "script"

を記述することにより、シェルによるInline Provisioningが可能です。

vagrant init
vi Vagrantfile # 内容は後述
vagrant up
vagrant provision
vagrant ssh
git --version
git version 1.7.9.5
exit

Vagrantfile

# -*- mode: ruby -*-
# vi: set ft=ruby :

$script = <<SCRIPT
sudo apt-get install git -y
SCRIPT

VAGRANTFILE_API_VERSION = "2"

Vagrant.configure(VAGRANTFILE_API_VERSION) do |config|
  config.vm.box = "ubuntu-12.04-x64"

  config.vm.provision "shell", inline: "echo start"
  config.vm.provision "shell", inline: $script
  config.vm.provision "shell", inline: "echo end"
end

※$scriptはグローバル変数として動作