Вставить файл строки после повторяющихся строк

Я хочу исправить неисправную поддержку sendfile в VBox, поэтому мне нужно вставить строку. Я хочу сделать это с помощью сборника игр. Конкретные задачи выглядят так:

- name: fix broken sendfile support in VBox
  lineinfile:
    dest: /etc/apache2/sites-enabled/000-default
    regexp: '^ServerAdmin'
    insertafter: 'ServerAdmin'
    line: 'EnableSendfile off'
    state: present

Проблема происходит, когда мне нужно снова вызвать playbook, и эта задача дублирует строку. Как это исправить.

1 ответ

Решение

Ваша задача при первом запуске заменит ServerAdmin с EnableSendfile off и на последующих запусках это будет (так как нет ServerAdmin заменить) добавить EnableSendfile до дна. поскольку regexp если заменить шаблон, вы можете попробовать положить EnableSendfile off там:

- name: fix broken sendfile support in VBox
  lineinfile:
    dest: /etc/apache2/sites-enabled/000-default
    regexp: 'EnableSendfile off'
    insertafter: 'ServerAdmin'
    line: 'EnableSendfile off'
    state: present
Другие вопросы по тегам