谁在厨师食谱或bash中设置变量IS_MASTER

时间:2016-08-27 18:10:05

标签: bash chef

这看起来有点愚蠢,但我看到变量IS_MASTER在厨师模板templates/default/server.sh.erb中用作:

$ grep -r IS_MASTER .
./templates/default/server.sh.erb:    if [ $IS_MASTER -eq 1 ]
./templates/default/server.sh.erb:    if [ $IS_MASTER -eq 1 ]

以上暗示变量只是被读取而不是任何人写的。在整个代码库中没有任何地方,这个变量正在编写中。所以我想知道这是一个bug还是厨师或shell中的一些隐藏变量。有谁知道吗?

  1. 快速Google搜索不提供任何内容。
  2. 检查脚本调用什么也没有。
  3. 以上代码的原作者不再帮助我。

2 个答案:

答案 0 :(得分:0)

该程序依赖于将数据用作变量。还有另一个脚本读出由其他程序吐出的JSON配置,然后设置所有变量。它还会在设置之前将这些变量大写。 JSON数据中包含变量is_master

答案 1 :(得分:0)

这是一个Bash环境变量,而不是一个Erb模板变量(看起来像<%= @something %>),因此Chef认为只是写入磁盘的文本。或许检查任何init脚本或/etc/default/文件?