Como definir o conteúdo do arquivo, mas deixando apenas as permissões usando o Puppet?

1

Estou usando a diretiva file para definir o conteúdo de muitos arquivos de configuração . Alguns dos aplicativos têm suas próprias interfaces de configuração, que são a maneira preferida de modificar esses arquivos (antes de copiá-los de volta para o Puppet). Mas alguns desses aplicativos também alteram o modo dos arquivos de configuração ao salvá-los. Como não posso ser incomodado em gravar e manter atualizadas centenas de configurações de arquivo para modo que são irrelevantes para a configuração isso leva a uma briga entre o Puppet e o aplicativo, cada um substituindo o modo do outro. O que, por sua vez, leva a uma marionete mais longa do que o necessário e a mais confusão nos registros. Então, como eu simplesmente deixo o modo sozinho?

Para ser claro, eu faço quero substituir o conteúdo, então replace => false não é uma opção.

    
por l0b0 31.03.2017 / 11:20

1 resposta

2

De acordo com o comentário, se a propriedade mode do recurso file estiver definida em uma classe base e você desejar substituí-la, use undef :

class specialist inherits base {
  File["/etc/example"] {
    content => "new content",
    mode    => undef,
  }
}

A propriedade mode será então não gerenciada e não será alterada pelo Puppet.

    
por 31.03.2017 / 11:47