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

Линейный файл Ansible и разрешения родительского каталога

я использую lineinfile для обновления файла конфигурации. Файл существует и ansible_ssh_user владеет им и имеет разрешение на запись, но содержащий каталог принадлежит root. Когда моя задача запускается, появляется ошибка:

Каталог назначения (/ parent / directory / name) не доступен для записи текущему пользователю.

Я могу редактировать файл вручную, используя vim, и мой lineinfile задача включает create=no, поэтому я не понимаю, почему Ansible нужно разрешение на запись в родительский каталог. Что-то мне не хватает? Есть ли способ разрешить доступу для записи в файл без предоставления разрешений для каталога, в котором он находится?

PS - очень не хочу использовать become или sudo с этим сборником пьес; он предназначен для простой книги без ввода пароля.

Используй источник, Люк! :)

Если вы посмотрите на источник для lineinfile модуль, вы можете видеть, что он записывает изменения во временный файл, а затем выполняет атомарную копию файла в целевое имя файла, перезаписывая старую версию файла.

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