Назад | Перейти на главную страницу

ansible зависает при проверке каталога

У меня есть доступный playbook, который устанавливает общий ресурс nfs. Сначала он проверяет, существует ли целевой каталог:

  - name: create /mnt/tmp
    file: path=/mnt/tmp
          recurse=yes
          state=directory

  - name: mount nfs 
    mount: src=10.0.0.2:/data/apache/htdocs
           name=/mnt/tmp
           fstype=nfs
           fstab=/etc/fstab
           state=mounted
           opts="user,rw,hard,intr,auto"

Это отлично работает при первом запуске playbook, но если я перезапущу его, он зависает на create /mnt/tmp задача.

Я что делаю неправильно? Как мне отладить проблему?

Я изменил сценарий на это, и это "решило" проблему довольно нелегким образом:

  - name: check if /mnt/tmp exists
    stat: path=/mnt/tmp
    register: p

  - name: create /mnt/tmp
    when: not p.stat.exists
    file: path=/mnt/tmp
          recurse=yes
          state=directory

  - name: mount nfs
    mount: src=10.0.0.2:/data/apache/htdocs
           name=/mnt/tmp
           fstype=nfs
           fstab=/etc/fstab
           state=mounted
           opts="user,rw,hard,intr,auto"

Конечно, есть способ получше.