puppet是否按顺序检查属性?

puppet是否按顺序检查属性?,puppet,selinux,Puppet,Selinux,我在我的木偶环境中发现了一些东西。注意我是新来的,很可能我做错了什么 我有一节课在一定程度上说: File { owner => 'root', group => 'root', mode => '0700', seluser => 'system_u', selrole => 'object_r', seltype => 'bin_t', selrange => 's0', }

我在我的木偶环境中发现了一些东西。注意我是新来的,很可能我做错了什么

我有一节课在一定程度上说:

  File 
  {
    owner => 'root',
    group => 'root',
    mode => '0700',
    seluser  => 'system_u',
    selrole  => 'object_r',
    seltype  => 'bin_t',
    selrange => 's0',
  }
  file { "/root/SEPreset.sh" :
    ensure => file,
    source => $filesource,
  }
我将提请您注意,此文件的SELinux上下文不是
/root
的标准SELinux上下文

所以我更新了源文件。在下一次运行时,Puppet应用了新文件。在之后的下一次运行中,Puppet更改了SELinux上下文

这对我说,在第一次奔跑中,木偶

  • 检查了SELinux上下文并发现它匹配
  • 检查了文件内容,发现是错误的
  • 创建了一个无意中具有错误上下文的新文件
在我看来,Puppet应该在应用新文件后再次检查所有属性是否正确。例如,如果它创建了一个文件,但将所有权或权限设置为默认值,我会非常失望


这是一个Puppet错误,或者是我的类定义中的错误,或者是我的误解?

我称之为bug,你能打开一个吗?是的,Puppet不需要两次运行来实现任何单个资源的目标状态。