SaltStack: Como remover um bloco que foi criado com file.blockreplace?

1

Eu uso file.blockreplace assim:

etc_sudoers_{{ system_name }}:
  file.blockreplace:
    - name: /etc/sudoers
    - marker_start: "# START etc_sudoers_{{ system_name }} -DO-NOT-EDIT-"
    - marker_end: "# END etc_sudoers_{{ system_name }} --"
    - content: |
        {{system_name}} ALL = NOPASSWD: /bin/systemctl restart apache2*
    - append_if_not_found: True
    - show_changes: True

Isso cria uma entrada no arquivo assim:

# START etc_sudoers_foo_c123_dpci01051321 -DO-NOT-EDIT-
foo_c123_dpci01051321 ALL = NOPASSWD: /bin/systemctl restart apache2*
# END etc_sudoers_foo_c123_dpci01051321 --

Agora quero remover todo o bloco (inclusive os marcadores START / END). Como fazer isso com uma pilha de sal?

    
por guettli 08.01.2018 / 15:32

1 resposta

1

Eu encontrei esta solução. Os melhores são mais que bem-vindos: -)

remove_django__etc_sudoers_{{ system_name }}:
  file.replace:
    - name: /etc/sudoers
    - pattern: "# START etc_sudoers_{{ system_name }} -DO-NOT-EDIT-.*?# END etc_sudoers_{{ system_name }} --"
    - flags: ['MULTILINE', 'DOTALL']
    - repl: ''
    - ignore_if_missing: True
    
por 08.01.2018 / 16:05

Tags