ubuntu中的厨师环境变量

时间:2014-12-18 17:03:55

标签: sinatra chef

好的,我使用magic_shell_environment(来自magic_shell)设置环境

我的应用程序依赖于在启动时出现的那些变量,因此它知道它在部署框上(而不是本地)。

第一次运行但是这些环境不存在所以应用程序在开发模式下启动,我必须手动重启应用程序才能使其工作。

我如何才能使环境变量存在,以便应用程序可以看到它?

我的应用以app install

开头

1 个答案:

答案 0 :(得分:1)

好的,写这个作为答案(永远不会太晚:))

您有两种解决方案:

  1. ENV['variable'] = "whatever"资源之前的配方中设置带有ruby execute的env var。启动的进程将继承父进程的环境,这里是chef-client运行环境。 / p>

  2. 使用environment资源的execute属性(doc

  3. 环境属性也适用于其他script资源,因为它们是从execute继承的。