Via somewhere (I’ve lost track of the link), here’s a handy recipe for running a shell script once and once only from Vagrantfile.
In the shell script (runonce.sh):
#!/bin/bash if [ ! -f ~/runonce ] then #ONCE RUN CODE HERE touch ~/runonce fi
In the Vagrantfile:
config.vm.provision :shell, :inline => <<-SH chmod ugo+x /vagrant/runonce.sh /vagrant/runonce.sh SH