Solución:
El grupo de discusión de Ansible me ayudó a resolver esto. El problema es el regexp
parámetro.
Como solo quiero que la línea se agregue al archivo una vez, necesito que la expresión regular coincida con la línea lo más cerca posible. Esto se complica en mi caso por el hecho de que mi línea incluye variables. Pero, suponiendo que la línea comenzara [[ -s $HOME/.pythonbrew
, I found the following to be sufficient:
- name: Update bashrc for PythonBrew for foo user
lineinfile:
dest: /home/foo/.bashrc
line: "[[ -s ${pythonbrew.bashrc_path} ]]&& fuente $ {pythonbrew.bashrc_path} "regexp:" ^ [[ -s \$HOME/.pythonbrew"
owner: foo
state: present
insertafter: EOF
create: True
Apparently ansible has matured and now (version >2.4.0) according to the documentation, The defaults when only the line is specified will append a given line to the destination file:
- name: Update bashrc for PythonBrew for foo user
lineinfile:
dest: /home/foo/.bashrc
line: "[[ -s ${pythonbrew.bashrc_path} ]]&& fuente {pythonbrew.bashrc_path} "propietario: foo
¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)