Adicionando uma única linha ao arquivo com SaltStack

5

Gostaria de adicionar as seguintes linhas a todos os arquivos / etc / sudoers em todo o meu ambiente:

# Administrators LDAP Group
%Administrators   ALL=(ALL)       ALL

No entanto, cada servidor tem um arquivo / etc / sudoers diferente, e terceirizar todos eles de um local seria impraticável.

Existe uma maneira do Salt garantir que uma única linha (ou grupo de linhas) exista em um arquivo, em vez de gerenciar todo esse arquivo?

    
por Soviero 24.01.2014 / 21:37

1 resposta

10

Provavelmente você está procurando file.append .

File.append pesquisa o arquivo inteiro e, se não conseguir encontrar seu texto, ele o anexará ao final do arquivo. Estou assumindo que você não conhece nenhuma estrutura de texto comum em seu arquivo / etc / sudoers, assim você não poderá usar algo como file.sed para substituir algum texto.

Exemplo de código:

/etc/sudoers:
  file.append:
    - text: 
      - "# Administrators LDAP Group"
      - "%Administrators   ALL=(ALL)       ALL"

Observação: você provavelmente deve testar o código de exemplo antes de usá-lo.

    
por 24.01.2014 / 22:55