Vagrant 我怎么能有流浪汉';如果子命令失败,则s提供失败?
如果Vagrant 我怎么能有流浪汉';如果子命令失败,则s提供失败?,vagrant,Vagrant,如果config.vm.provision“shell”中的一行失败,Vagrant将继续执行脚本的其余部分。如何使任何错误导致供应过程失败?我不认为vagrant提供了shell供应选项,但可以使用 我要的正是这个。看起来这不可能,所以我决定换一个惊慌失措的横幅。子脚本包含设置-e,以便在任何操作失败时退出 vagrant文件: config.vm.provision "shell", path: "setup-files/parent.sh"` parent.sh: #!/bin/bash
config.vm.provision“shell”
中的一行失败,Vagrant将继续执行脚本的其余部分。如何使任何错误导致供应过程失败?我不认为vagrant提供了shell供应选项,但可以使用
我要的正是这个。看起来这不可能,所以我决定换一个惊慌失措的横幅。子脚本包含
设置-e
,以便在任何操作失败时退出
vagrant文件
:
config.vm.provision "shell", path: "setup-files/parent.sh"`
parent.sh
:
#!/bin/bash
/home/vagrant/setup-files/child1.sh &&
/home/vagrant/setup-files/child2.sh
if [ $? -ne 0 ]; then # If: last exit code is non-zero
echo !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
echo An error occurred running build scripts
echo !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
fi
这可以结束脚本并通知用户。。。但vagrant仍然认为供应已经成功。不确定这是否可能。我提出了这个问题
#!/bin/bash
/home/vagrant/setup-files/child1.sh &&
/home/vagrant/setup-files/child2.sh
if [ $? -ne 0 ]; then # If: last exit code is non-zero
echo !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
echo An error occurred running build scripts
echo !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
fi