Puppet 木偶在非代码中

Puppet 木偶在非代码中,puppet,Puppet,我有这个密码 if $hostname in $var_slave { file { "/var/spool/cron/mysql": ensure => present, owner => $mysqlUser, group => $mysqlGroup, mode => "0600", source => 'puppet:///modules/eikon

我有这个密码

if $hostname in $var_slave {
    file { 
        "/var/spool/cron/mysql":  
        ensure => present,
        owner => $mysqlUser,
        group => $mysqlGroup,
        mode => "0600",
        source => 'puppet:///modules/eikonappdbcron/mysql-slave',
    }
} 
我想要一种检查文件中是否没有值的方法


我尝试了“如果$hostname不在$var_master中”,但这不起作用。在做了一些研究之后,我认为我需要使用“!”。我无法获得正确的语法。

Puppet没有单个组合的“not in”运算符。相反,它有,它有一个通用的。您可以将它们结合使用来编写一个复合表达式,用于计算所需的条件

如果你已经意识到这一点,那么也许你遇到了一个问题。否定运算符的优先级高于中的
。事实上,
具有任何Puppet运算符的最高优先级,因此,如果其操作数是一个二进制表达式,则必须将该操作数括在括号中

因此,布尔表达式的否定

$hostname in $var_master


那么我完成的代码是这样的吗?如果!($var_master中的$hostname){file{/var/spool/cron/mysql”:确保=>存在,所有者=>$mysqlUser,组=>$mysqlGroup,模式=>“0600”,源=>'puppet:///modules/eikonappdbcron/mysql-slave“,}}}@user2841861,从你的演讲中我可以看出,是的,完成的代码应该是这样的。
! ($hostname in $var_master)