有没有办法打印 Puppet 模块中属性的值?例如,如果您有一个文件资源:
file {'myfile':
path => '/this/is/my/path',
ensure => present,
owner => 'someuser',
group => 'somegroup'
}
你能打印“path”属性的值吗?也许使用通知?
notify {"the value of path is: " __________}
答案1
如果您将属性作为文字字符串传递则不会。
但是,如果将属性分配给变量,则可以重复使用该属性。例如:
$file_path = '/this/is/my/path'
file { 'myfile':
path => $file_path,
ensure => present,
owner => 'someuser',
group => 'somegroup'
}
notify { "the value of path is: ${file_path}": }
请注意,最后一个冒号分隔了资源名称和参数(在本例中没有冒号,因此资源被终止)。notify
上面的代码也可以写成这样(参考):
notify { 'my_notify':
message => "the value of path is: ${file_path}",
}
另外,请注意单引号和双引号的正确使用。根据 Puppet Lint 的说法,仅当字符串包含插值变量时才应使用双引号, 和这些变量应该用花括号括起来。