The file module failing when directory exists

Hi all,

Currently a task like this:

file: path=/data state=directory owner=root group=root mode=0755

fails with the following error:

failed: [localhost] => {“failed”: true, “parsed”: false}
BECOME-SUCCESS-pquapqcakqrmffxonpxknqbulycqfmls
Traceback (most recent call last):
File “/root/.ansible/tmp/ansible-tmp-1447656411.96-95869428580440/file”, line 2012, in
main()
File “/root/.ansible/tmp/ansible-tmp-1447656411.96-95869428580440/file”, line 279, in main
os.mkdir(curpath)
OSError: [Errno 17] File exists: ‘/data’

on Ansible 1.9.4. Doesn’t it make more sense for the task to continue and just set the permissions instead of failing when the directory already exists?

Thanks,
Igor

hi, are you sure the remote ansible user is allowed to change folder owners / permissions in the / directory?

Absolutely sure. This should be easily reproducible if you are willing to try it.

Is it a directory or a file?

I have come across this error when a file existed which I requested be a
directory.

Directory.