एक संगत और चरों की सूची के साथ एक सिम्लिंक बनाना


17

नए ब्रांड के लिए - मैं एक गंतव्य के लिए एक src निर्देशिका में फ़ाइलों का एक गुच्छा समेटने की कोशिश कर रहा हूँ .. वर्तमान में:

  file:
    src: /drupal/drush/{{ item.path }}.aliases.drushrc.php
    dest: /home/vagrant/.drush/{{ item.dest }}.aliases.drushrc.php
    with_items:
      - { path: 'new', dest: 'new' }
      - { path: 'vmdev', dest: 'vmdev' }
    state: link

मुझे त्रुटि मिल रही है: fatal: [vmdev] => One or more undefined variables: 'item' is undefined

क्या कोई मुझे सही दिशा में ले जा सकता है ..? चियर्स

जवाबों:


30

आपका इंडेंटेशन गलत है, with_itemsसमान स्तर पर होना चाहिए file। ये वो है जो तुम चाहते हो:

file:
  src: "/drupal/drush/{{ item.path }}.aliases.drushrc.php"
  dest: "/home/vagrant/.drush/{{ item.dest }}.aliases.drushrc.php"
  state: link
with_items:
  - { path: 'new', dest: 'new' }
  - { path: 'vmdev', dest: 'vmdev' }

एक जादू की तरह काम करता है!
विलियम्सोवेन

2
यदि आपके पास सिंटैक्स / इंडेंटेशन के साथ समस्याएँ हैं, तो एटम + प्लगइन्स के माध्यम से संपादित करें: लिंटर, ansible-linter, js-yaml-linter
जोनाथन

7

मेरा मानना ​​है कि आपका सिंटैक्स गलत है। इसे इस्तेमाल करे:

file: >
  src=/drupal/drush/{{ item.path }}.aliases.drushrc.php
  dest=/home/vagrant/.drush/{{ item.dest }}.aliases.drushrc.php
  state=link
with_items:
  - { path: 'new', dest: 'new' }
  - { path: 'vmdev', dest: 'vmdev' }

3

यदि स्रोत और गंतव्य लिंक दोनों को एक ही नाम दिया गया है, तो यह और भी सरल होना चाहिए:

- file:
    src: /drupal/drush/{{ item }}.aliases.drushrc.php
    dest: /home/vagrant/.drush/{{ item }}.aliases.drushrc.php
    state: link
  with_items:
    - new
    - vmdev
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.