```{index} centos, isatty, patch, ошибки, внешние ссылки ``` # Ошибка "AttributeError: AnsibleModuleLog object has no attribute isatty" ```{note} Точное сообщение об ошибке: `AttributeError: 'AnsibleModuleLog' object has no attribute 'isatty'` Встречалась на CentOS 8. Должна быть исправлена pull request'ом #905 [ipaserver/ipareplica: Add isatty method to AnsibleModuleLog](https://github.com/freeipa/ansible-freeipa/pull/905), был принят 05-го сентября 2022 г., исправление включено в релиз `ansible-freeipa-1.8.4` ``` Решение предложено в [комментарии к соответствующей проблеме](https://github.com/freeipa/ansible-freeipa/issues/251#issuecomment-715915985) на гитхабе `ansible-freeipa`. Помогает следующее изменение: ```diff --- /usr/share/ansible/roles/ipareplica/module_utils/ansible_ipa_replica.original.py 2022-04-11 20:31:21.124945752 +0300 +++ /usr/share/ansible/roles/ipareplica/module_utils/ansible_ipa_replica.py 2022-04-11 20:29:01.474841420 +0300 @@ -194,6 +194,9 @@ def info(self, msg): self.module.debug(msg) + def isatty(self): + return False + def write(self, msg): self.module.debug(msg) # self.module.warn(msg) ``` Применить можно так: ```bash vim ansible_ipa_replica.patch # Вставить содержимое файла patch -b \ /usr/share/ansible/roles/ipareplica/module_utils/ansible_ipa_replica.py \ ansible_ipa_replica.patch ``` Новый патч можно создать командой: ```bash diff -u \ /usr/share/ansible/roles/ipareplica/module_utils/ansible_ipa_replica.original.py \ /usr/share/ansible/roles/ipareplica/module_utils/ansible_ipa_replica.py \ > newpatch.patch ```