with multiple lineinfile example create content blockinfile .htaccess ansible ansible-playbook

.htaccess - multiple - blockinfile module



¿Cómo se asegura de que exista una línea y no esté disponible con Ansible LineinFile? (1)

¿Cómo se asegura de que exista una línea específica en un archivo y no está comentado con el `lineinfile ''de ansible?

La línea que quiero sin comentar (en .htaccess ):

#php_flag display_errors on

He usado lo siguiente:

- name: Make sure PHP Errors are turned on lineinfile: dest={{ www_path }}/.htaccess line="php_flag display_errors on"


En realidad, tu ejemplo funciona como está:

Contenido del archivo .htaccess :

#php_flag display_errors on

El juego ansible:

- name: Make sure PHP Errors are turned on lineinfile: dest: "{{ www_path }}/.htaccess" line: "php_flag display_errors on"

Resultados de ansible-playbook con esta obra:

$ cat .htaccess #php_flag display_errors on php_flag display_errors on

Si el archivo comienza con la línea comentada, verá una segunda línea sin comentar. Para corregir esto, use una expresión regular que coincida con la línea existente y reemplácela:

- lineinfile: dest: /Users/bwhaley/tmp/file regexp: ''^#php_flag display_errors'' line: ''php_flag display_errors'' backrefs: yes

Sin embargo, backrefs: yes cuenta que con los backrefs: yes si la línea que quiere comentar no está presente y comentada, la jugada no cambiará nada.