Sintaks yang tepat untuk symlink yang dimungkinkan

24

Apa sintaks yang tepat untuk membuat symlink menggunakan ansible? Saya menciptakan lingkungan virtual Vagrant dan menjalankan yang memungkinkan sebagai penyedia saya. Semuanya berfungsi dengan baik sampai saya mencoba untuk symlink ke situs saya file konfigurasi nginx dari situs-enabled. Inilah yang saya coba.

- 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

Ketika saya melakukan ini, saya bertemu dengan kesalahan berikut.

GALAT: Kesalahan Sintaksis saat memuat skrip YAML, / Pengguna / nama pengguna / proyek / memungkinkan /roles/nginx/tasks/main.yml

Catatan: Kesalahan sebenarnya dapat muncul sebelum posisi ini: baris 24, kolom 1

- name: Symlink to example.dev.conf

file: path = / etc / nginx / situs-enabled / example.dev.conf

state = tautan

^ Anonim gagal diselesaikan dengan sukses. Output kesalahan apa pun harus terlihat di atas. Perbaiki kesalahan ini dan coba lagi.

Saya juga sudah mencoba menggunakan src=/etc/nginx/sites-enabledalih-alih pathtetapi sepertinya saya tidak bisa menemukan contoh yang pasti tentang ini di web.

Spesifikasi:

  • OSX Mavericks
  • gelandangan 1.6.3
  • VirtualBox 4.3
  • nginx 1.6.0
  • mungkin 1.6.2
  • ubuntu 14.04
jeanpier_re
sumber

Jawaban:

35

Dari dokumentasi :

src , jalur file yang akan ditautkan (hanya berlaku untuk negara = tautan). Akan menerima jalur absolut, relatif dan tidak ada. Jalur relatif tidak diperluas.

Anda harus menggunakan srcdan destketika menggunakan state=link, tidak path. Anda juga perlu membalikkan sumber dan tujuan Anda, yang tampaknya merupakan jalan yang salah (dengan asumsi bahwa Anda benar-benar ingin menautkan sites-availabledari sites-enabled) - srcadalah jalur untuk ditautkan, destadalah tempat untuk membuat symlink.

- 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
Chris Down
sumber