For small deploys you could set a cron that does `git pull && ansible-playbook`. You can setup your cron to email failures. This can be setup with the ansible playbook and bootstrapped by running over ssh instead of local. Cron can email failures
For more than a few servers, other answers are probably better
Didn't realize that was built in to Ansible. Depending on how ephemeral your hosts are, you could scale this to quite a bit of hosts and use host-reported health checks to determine if things are working correctly e.g. HTTP POST a "this went ok" to some web server or metrics/monitoring service
For more than a few servers, other answers are probably better