如何使用Puppet在Ubuntu操作系统中设置环境变量

如何使用Puppet在Ubuntu操作系统中设置环境变量,puppet,Puppet,两周以来我一直在学习Puppet,我想自动完成一些日常任务。作为web应用程序设置的一部分,首先我们必须在/homeuser/.bashrc文件中为JAVA、ANT等设置环境变量 我已经编写了以下清单,用于设置路径和主变量,并在不重新启动的情况下生效: class bashrc { file { "bashrc file": path => "/root/.bashrc", source => "/mnt/bashrc", owner => "r

两周以来我一直在学习Puppet,我想自动完成一些日常任务。作为web应用程序设置的一部分,首先我们必须在/homeuser/.bashrc文件中为JAVA、ANT等设置环境变量

我已经编写了以下清单,用于设置路径和主变量,并在不重新启动的情况下生效:

class bashrc {

file { "bashrc file":
    path => "/root/.bashrc",
    source  => "/mnt/bashrc",
    owner   => "root",
    group   => "root",
    mode    => "0644",
     }

exec { "root_bashrc":
    command     => "source  /root/.bashrc'",
    cwd => "/root",
    provider => 'shell',
     }

}
以下是木偶运行的输出:

 root@liferay:/mnt# sudo puppet apply bash.pp
Notice: Compiled catalog for liferay in environment production in 0.03 seconds
Notice: Finished catalog run in 14.74 seconds
root@liferay:/mnt#

.bashrc文件在Puppet运行后未得到更新。请帮助我们如何使用Puppet设置环境变量并在不重新启动的情况下得到反映。

您只定义了
bashrc
类。要执行该类的代码,必须对其进行实例验证。建议的方法是添加:

include bashrc
有点明显。更多关于类实例化的信息


要修改bashrc文件的内容,请使用资源。这里你有如何使用它

你好,Kkamilpl,谢谢你的及时回复。现在,我已经能够执行我的类bashrc的实例,并且文件的内容已经相应地修改,但是我无法为文件提供源代码以反映环境变量。这是错误:Error:source/root/.bashrc'返回2,而不是[0]中的一个错误:/Stage[main]/bashrc/Exec[root\u bashrc]/returns:change from notrun to 0失败:source/root/.bashrc'返回2,而不是[0]中的一个,使用-d选项运行puppet apply。也许它会打印一些有用的东西。