Власний синтаксис відповідної символьної посилання


24

Який правильний синтаксис для створення символьних посилань за допомогою ansible? Я створюю віртуальне середовище Vagrant і працюю ansible як мій захисник. Все працює добре, поки я не спробую передати посилання на файл конфігурації nginx на веб-сайті із включених сайтів. Ось що я спробував.

- 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

Коли я це роблю, мені трапляється така помилка.

ПОМИЛКА: Помилка синтаксису під час завантаження сценарію YAML, /Users/username/project/ansible/roles/nginx/tasks/main.yml

Примітка. Помилка може відображатися перед цим положенням: рядок 24, стовпець 1

- ім'я: Symlink до example.dev.conf

file: path = / etc / nginx / enable-sites / example.dev.conf

стан = посилання

^ Відповідь не вдалося завершити успішно. Будь-який вихід помилки повинен бути видно вище. Виправте ці помилки та повторіть спробу.

Я також намагався використовувати src=/etc/nginx/sites-enabledзамість цього, pathале не можу знайти певний приклад цього в Інтернеті.

Технічні характеристики:

  • OSX Mavericks
  • бродячий 1.6.3
  • VirtualBox 4.3
  • nginx 1.6.0
  • відповідальний 1.6.2
  • ubuntu 14.04

Відповіді:


35

З документації :

src , шлях до файлу, на який посилається (стосується лише стану = посилання). Приймуть абсолютні, відносні та неіснуючі шляхи. Відносні шляхи не розширені.

Вам потрібно використовувати, srcа destпри використанні state=link- ні path. Вам також потрібно інвертувати джерело та місце призначення, які здаються невірними (якщо припустити, що ви дійсно хочете зв’язатись sites-availableіз sites-enabled) - srcце шлях до посилання, destє куди створити символьне посилання.

- 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
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.