如何使用Augeas和Puppet将导出语句添加到bash_profile

时间:2018-05-14 02:58:15

标签: puppet augeas

我让Puppet + Augeas在bash_profile中分配变量值,但是我没有找到从文件中导出变量的方法。

  augeas { "bash_profile-${user}-${name}":
    incl    => "/home/${user}/.bash_profile",
    lens    => 'Shellvars.lns',
    changes => "set ${variable_name} '\"${literal_value}\"'",
  }

结果:

# .bash_profile 
variable="value"

但我需要的是:

# .bash_profile 
export variable="value"
# or
variable="value"
export variable

Puppet ticket似乎应该指向正确的方向,但我无法弄清楚如何编写导出语句

2 个答案:

答案 0 :(得分:1)

Augeasproviders项目有一个shellvar type

shellvar { "bash_profile-${user}-${name}":
  ensure   => exported,
  target   => "/home/${user}/.bash_profile",
  variable => $variable_name,
  value    => $literal_value,
}

还有管理引用或数组值的选项。

答案 1 :(得分:0)

这似乎可以解决问题:

true