Sintaxis adecuada para enlace simbólico ansible

Sintaxis adecuada para enlace simbólico ansible

¿Cuál es la sintaxis adecuada para crear enlaces simbólicos usando ansible? Estoy creando un entorno virtual Vagrant y ejecutando ansible como mi aprovisionador. Todo funciona bien hasta que intento establecer un enlace simbólico al archivo de configuración nginx de mi sitio desde sitios habilitados. Esto es lo que he probado.

- name: Create symlink to example.com
  file: 
    path: /etc/nginx/sites-enabled/example.com 
    dest: /etc/nginx/sites-available/example.com 
    state: link
  notify: nginx reload

Cuando hago esto me aparece el siguiente error.

ERROR: Error de sintaxis al cargar el script YAML, /Users/username/project/ansible/roles/nginx/tasks/main.yml

Nota: El error puede aparecer antes de esta posición: línea 24, columna 1

- nombre: enlace simbólico a ejemplo.dev.conf

archivo: ruta=/etc/nginx/sites-enabled/example.dev.conf

estado=enlace

^ Ansible no pudo completarse correctamente. Cualquier resultado de error debería ser visible arriba. Corrija estos errores y vuelva a intentarlo.

También intenté usar src=/etc/nginx/sites-enableden lugar de pathpero parece que no puedo encontrar un ejemplo definitivo de esto en la web.

Especificaciones:

  • OS X Mavericks
  • vagabundo 1.6.3
  • VirtualBox 4.3
  • nginx 1.6.0
  • ansible 1.6.2
  • Ubuntu 14.04

Respuesta1

Dela documentación:

src, ruta del archivo al que se vinculará (se aplica solo a state=link). Aceptará caminos absolutos, relativos e inexistentes. Las rutas relativas no se expanden.

Necesitas usar srcy destcuando lo uses state=link, no path. También debe invertir su origen y destino, que parecen estar al revés (suponiendo que realmente desea vincular sites-availabledesde sites-enabled): srces la ruta para vincular, destes donde crear el enlace simbólico.

- name: Create symlink to example.com
  file: src=/etc/nginx/sites-available/example.com dest=/etc/nginx/sites-enabled/example.com state=link
  notify: nginx reload

información relacionada