old 'cached' playbook seems getting executed and new playbooks fail without sudo

Hello,

It seems some cached playbook keeps getting executed while playing an new playbook. Because ‘the old playbook’ needs root permissions any playbook on this host fails.

I understand host.example.com:/home/maarten/.ansible/tmp gets rewritten so removing has no use (but what is the source, where is the cache?)

ansible version: 1.2.2

test playbook: playbooks/ping.yaml

Ansible does not have a cache here.

Not having permission to stat has been fixed in Ansible 1.3, you can easily use 1.3 by doing a git checkout and then:

source ./hacking/env-setup

Hi Michael,

Thanks. Tested with Ansible 1.3 and works for me.

The ‘caching’ was stupid assumption of me; I just had made a playbook which did stuff on /var/named/chroot/etc/named which also didn’t work without ‘sudo’. It confused me.

I actually posted another but similar error, here the ‘right one’:

OSError: [Errno 13] Permission denied: ‘/var/named/chroot/etc/named’

What I understand, the ‘gathering fact’ scripts is causing the error: it tries to gather facts only root is entitled to. This will happen with this chrooted named, but also with mount points on root only directories (the error posted)

Ansible 1.3 fixes this.

Right?

Maarten

Should be the case, yes.

Let me know if you see any fact permission errors under 1.3.

run on 45 RHEL5 and 63 RHEL6 systems. Most of them different configurations/applications/hardware/vm. With Ansible 1.2.2: 5 systems got fact permission errors. Those systems all have a filesystem (or file bind) mounted on a root only directory.

With Ansible 1.3 no errors