vagrant.rst
author Oleksandr Gavenko <gavenkoa@gmail.com>
Tue, 26 Dec 2017 00:29:56 +0200
changeset 2212 aec79721c8aa
parent 2201 af2d2e117b4e
child 2236 15e9cc9e054f
permissions -rw-r--r--
Fix typo.


=========
 Vagrant
=========

Changing Vagrant home directory
===============================

Set ``VAGRANT_HOME`` env var, like::

  VAGRANT_HOME=d:\srv\vagrant

Default is ``~/.vagrant.d`` for Linux and ``%USERPROFILE%\.vagrant.d`` for Windows.

https://www.vagrantup.com/docs/other/environmental-variables.html

Running individual provisioning scripts
=======================================

You may give name to provisioning script::

  Vagrant.configure("2") do |config|
    config.vm.provision 'user_ssh', type: :shell, privileged: false do |s|
      ssh_pub_key = File.readlines("#{Dir.home}/.ssh/id_rsa.pub").first.strip
      s.inline = "echo #{ssh_pub_key} >> /home/$USER/.ssh/authorized_keys"
    end
    config.vm.provision 'root_ssh', type: :shell, privileged: true do |s|
      ssh_pub_key = File.readlines("#{Dir.home}/.ssh/id_rsa.pub").first.strip
      s.inline = "mkdir /root/.ssh/; echo #{ssh_pub_key} >> /root/.ssh/authorized_keys"
    end
    ...
  end

and apply them individually::

  vagrant provision --provision-with user_ssh
  vagrant provision --provision-with root_ssh
  vagrant provision --provision-with user_ssh,root_ssh