- name: Configuring a handler with missing udp parameters should fail sensu_handler: name: "udp" type: "udp" register: failure ignore_errors: true - name: Assert that configuring a handler with missing udp parameters fails assert: that: - failure is failed - "'the following are missing: socket' in failure['msg']" - name: Configure a udp handler sensu_handler: name: "udp" type: "udp" socket: host: 127.0.0.1 port: 8000 register: handler - name: Retrieve configuration file stat stat: path: "{{ handler['file'] }}" register: handler_stat - name: Validate udp handler return data assert: that: - "handler is successful" - "handler is changed" - "handler_stat.stat.exists == true" - "handler['name'] == 'udp'" - "handler['file'] == '/etc/sensu/conf.d/handlers/udp.json'" - "handler['config']['type'] == 'udp'" - "handler['config']['socket']['host'] == '127.0.0.1'" - "handler['config']['socket']['port'] == 8000" - "handler['config']['handle_flapping'] == false" - "handler['config']['handle_silenced'] == false" - name: Assert that the handler configuration file is actually configured properly vars: config: "{{ lookup('file', handler['file']) | from_json }}" assert: that: - "'udp' in config['handlers']" - "config['handlers']['udp']['type'] == 'udp'" - "config['handlers']['udp']['socket']['host'] == '127.0.0.1'" - "config['handlers']['udp']['socket']['port'] == 8000" - "config['handlers']['udp']['handle_flapping'] == false" - "config['handlers']['udp']['handle_silenced'] == false"