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

Удалите символическую ссылку с помощью Ansible

У меня мертвая символическая ссылка с именем dead_symlink в каталоге /usr/local/bin

Когда Ansible проверяет файл, о его существовании

- stat: "path=/usr/local/bin/dead_symlink"
  register: dead_symlink_bin

- debug: var=dead_symlink_bin.stat.exists

Но когда я пытаюсь удалить его, он сообщает "ОК", но ничего не происходит (символическая ссылка все еще там)

- name: Remove symlink
  file:
    path: "path=/usr/local/bin/dead_symlink"
    state: absent

Что я делаю не так?

У вас есть синтаксическая ошибка в вашей задаче. Так должно быть:

- name: Remove symlink
  file:
   path: "/usr/local/bin/dead_symlink"
   state: absent

Вероятно, Ansible ищет путь path=/usr/local/bin/dead_symlink а не для /usr/local/bin/dead_symlink.

Для меня в playbook

- name: Deleting Default Configurations
  when: sitelink is success
  file: path=/etc/nginx/site-enabled/default state=absent

приведенный выше код работает хорошо для меня, просто замените свой путь.