![vagrant 触发器并不像看上去那么简单](https://linux22.com/image/1587554/vagrant%20%E8%A7%A6%E5%8F%91%E5%99%A8%E5%B9%B6%E4%B8%8D%E5%83%8F%E7%9C%8B%E4%B8%8A%E5%8E%BB%E9%82%A3%E4%B9%88%E7%AE%80%E5%8D%95.png)
所以我对于触发器的生命周期有点困惑
box.trigger.after :up do
puts "test after up"
if File.file?('./.vagrant/status')
puts "status file already created"
else
puts "will create status file"
end
File.open('./.vagrant/status', "w+") { |file| file.write("up") } unless File.file?('./.vagrant/status')
end
box.trigger.before :destroy do
puts "test before destroy"
end
我正在测试根据每个触发事件的生命周期来查看代码何时运行。
正在运行vagrant up
或vagrant down
将运行并执行两个块。
puts
无论vagrant
命令是什么,我都会看到所有语句
答案1
我刚刚偶然发现了同样的问题,最终发现只有在安装了触发器插件后才会启用触发器:
vagrant plugin install vagrant-triggers
希望这可以帮助!