Vagrantfile:将嵌入式Shell脚本的结果分配给变量

问题描述 投票:0回答:1

我想将Vagrantfile中的嵌入式Shell脚本的退出代码分配给变量:

FOO = config.vm.provision "shell", 
env: {
  "FILE" => "/tmp/hello"
},
inline: <<-SHELL
  [ -f "$FILE" ]; echo $?
SHELL

然后稍后在我的Vagrantfile中使用它,例如:

if FOO != 0
  ...

我尝试的方法显然不起作用。这里有人知道吗

  1. 如果可能的话,并且
  2. 如果是,如何?
ruby shell vagrant vagrantfile vagrant-provision
1个回答
0
投票

我最终使用的是类似this的方法。

我一路上发现的事情是,Vagrantfile中的所有Ruby条件一开始就被评估,尽管这些条件中的内嵌Shell脚本(如果有的话)是同时被评估的[[not。这会导致一些奇怪的行为,我可以像上面所说的那样避免。

© www.soinside.com 2019 - 2024. All rights reserved.