如何将运行puppet脚本的用户定义为变量

如何将运行puppet脚本的用户定义为变量

我正在使用木偶,我正在尝试编写脚本来创建与运行它的用户相关的文件。假设我想创建文件/软链接(如果不存在),以便其他应用程序可以编辑它,然后将其移动到存档。

file { '/some/path/myuser.file':
    ensure => 'link',     -- ensure => 'file', if I want to create file
    target => '/orignal/path/file',
     }

注意: myuser 应该由运行脚本的实际用户编辑
如果我将脚本修复如下,它将正常工作而不会出现任何问题:

file { '/some/path/aabuhasna.file':
        ensure => 'link',  -- ensure => 'file', if I want to create file
        target => '/orignal/path/file',
         }

答案1

puppet 中有一个名为 的核心事实id,它“返回用户运行事实的用户标识符(UID)。”:https://docs.puppet.com/facter/latest/core_facts.html#id

所以应该可以简单地使用:

file { "/some/path/${id}":
  ensure => 'link',
  target => '/original/path/file',
}

相关内容