"become" not working on a handler

I’m testing on Ubuntu 16.04 with Ansible v2.2.1.0. I have a service (re)start handler that has “become: yes” but it is reporting:

Interactive authentication required.

and failing.

I’ve seen https://github.com/ansible/ansible/issues/17490 which is heavily mentioned in relation to this but it looks to be about inheritance of handlers, whereas I am directly finding this problem even with “become: yes” on the task.

I can run the service start/restart commands on the remote box and they work fine. Also this worked ok on Ubuntu 14.04 where it wasn’t using systemd.

Any suggestions/help much appreciated.

thanks

paul

Looks like it is asking for a password interactively.

Be aware that "I can run the service start/restart commands on the
remote box" is not the same as ansible running these commands. The
passwordless sudo issue has been mentioned multiple times in the last
couple of weeks. It is not enough to allow the ansible user to run one
explicit command via passwordless sudo. Ansible is running a shell via
sudo and doing all kinds of stuff.

Better call the whole task or play with higher privileges.

Johannes