Issue with ignore_errors

I have the following task:

- copy: src=gitit-users dest=$wikiRoot force=no
   ignore_errors: yes

gitit-users is a file containing confidential information that I don't want to check into my playbook repository. The file isn't needed for testing, and I just have the task in place so it gets rolled out onto production servers should the Ansible runner have it. If the user has that file on their machine then great, but if they don't then this task should fail gracefully.

Unfortunately it fails and stops execution. ignore_errors doesn't seem to recognize the missing file as an error from which it should recover.

Is this a bug? Is there a workaround or something I should be doing instead? I'm running Ansible 1.2.

Thanks.

ignore errors ignores runtime errors like remote failure codes, but not missing files, which are detected earlier.

What you should probably look at is “with_first_found” that will let you pick from one of two locations and use the file that is found first.