Running individual provisioning scripts.
authorOleksandr Gavenko <gavenkoa@gmail.com>
Tue, 31 Oct 2017 16:21:07 +0200
changeset 2201 af2d2e117b4e
parent 2200 75f1bafcfe41
child 2202 37bf9f7b8560
Running individual provisioning scripts.
vagrant.rst
--- a/vagrant.rst	Fri Oct 20 18:03:16 2017 +0300
+++ b/vagrant.rst	Tue Oct 31 16:21:07 2017 +0200
@@ -14,3 +14,26 @@
 
 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
+