Ansible-pull failing due to Vault issues (not using vault!)

We have been successfully using ansible-pull at boot time to run through a playbook to ensure our webservers are up-to-date when they autoscale.

Since yesterday (with no changes to the playbook) we’re getting the following error, every time it’s run:

TASK: [Config files] **********************************************************
fatal: [127.0.0.1] => {‘msg’: “template_from_file() got an unexpected keyword argument ‘vault_password’”, ‘failed’: True}
fatal: [127.0.0.1] => {‘msg’: ‘One or more items failed.’, ‘failed’: True, ‘changed’: False, ‘results’: [{‘msg’: “template_from_file() got an unexpected keyword argument ‘vault_password’”, ‘failed’: True}]}

FATAL: all hosts have already failed – aborting

This relates to the following commands:

  • name: “Config files”
    template: src=templates/web/etc/httpd/{{ item }} dest=/etc/httpd/{{ item }}
    with_items:
  • conf/httpd.conf
  • conf.d/vhosts.conf
  • conf.d/info.conf

We have not used vault for anything, as far as I know none of the files are protected, etc. Strangely, if I run the same playbook manually, it runs fine

[root@ip-10-0-102-44 local]# ansible-playbook local.yml -c local

TASK: [Config files] **********************************************************
changed: [127.0.0.1] => (item=conf/httpd.conf)
changed: [127.0.0.1] => (item=conf.d/vhosts.conf)
ok: [127.0.0.1] => (item=conf.d/info.conf)
ok: [127.0.0.1] => (item=conf.d/mpm.conf)
ok: [127.0.0.1] => (item=conf.d/mod_extract_forwarded.conf)
ok: [127.0.0.1] => (item=conf.d/geoip.conf)
ok: [127.0.0.1] => (item=conf.d/php.conf)
ok: [127.0.0.1] => (item=conf.d/defaults.conf)
ok: [127.0.0.1] => (item=conf.d/autoindex.conf)
ok: [127.0.0.1] => (item=conf.d/userdir.conf)
ok: [127.0.0.1] => (item=conf.d/skiddle.secret)
changed: [127.0.0.1] => (item=conf.d/gzip.conf)
ok: [127.0.0.1] => (item=conf.d/remoteip.conf)
changed: [127.0.0.1] => (item=conf.d/welcome.conf)

PLAY RECAP ********************************************************************
127.0.0.1 : ok=62 changed=27 unreachable=0 failed=0

Could anyone give any pointers here, it’s quite an issue as none of our autoscale servers will build without intervention!

Did you recently upgrade ansible? The function in question does in fact receive that parameter, so I’m wondering if there’s some mix up in library files/cruft left over from a previous installation of some kind.