Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/file/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Vagrant 我怎么能有流浪汉';如果子命令失败,则s提供失败?_Vagrant - Fatal编程技术网

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