如何使用 Augeas 和 Puppet 添加导出语句到 bash_profile
How to add export statements to bash_profile with Augeas and Puppet
我让 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似乎应该指向正确的方向,但我不知道如何编写导出语句
这似乎可以解决问题:
augeas { "bash_profile-${user}-${name}":
incl => "/home/${user}/.bash_profile",
lens => 'Shellvars.lns',
changes => [
"set ${variable_name} '\"${literal_value}\"'",
"set ${variable_name}/export ''",
],
}
Augeasproviders project has a shellvar
type 为:
shellvar { "bash_profile-${user}-${name}":
ensure => exported,
target => "/home/${user}/.bash_profile",
variable => $variable_name,
value => $literal_value,
}
还有管理引号或数组值的选项。
我让 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似乎应该指向正确的方向,但我不知道如何编写导出语句
这似乎可以解决问题:
augeas { "bash_profile-${user}-${name}":
incl => "/home/${user}/.bash_profile",
lens => 'Shellvars.lns',
changes => [
"set ${variable_name} '\"${literal_value}\"'",
"set ${variable_name}/export ''",
],
}
Augeasproviders project has a shellvar
type 为:
shellvar { "bash_profile-${user}-${name}":
ensure => exported,
target => "/home/${user}/.bash_profile",
variable => $variable_name,
value => $literal_value,
}
还有管理引号或数组值的选项。