diff --git a/roles/munin/tasks/main.yml b/roles/munin/tasks/main.yml index 7aba3803d..9270e666d 100644 --- a/roles/munin/tasks/main.yml +++ b/roles/munin/tasks/main.yml @@ -1,10 +1,24 @@ -- assert: - that: munin_install is defined and munin_install is sameas true - success_msg: munin_install is defined and munin_install is sameas true +# "How do i fail a task in Ansible if the variable contains a boolean value? +# I want to perform input validation for Ansible playbooks" +# https://stackoverflow.com/questions/46664127/how-do-i-fail-a-task-in-ansible-if-the-variable-contains-a-boolean-value-i-want/46667499#46667499 -- assert: - that: munin_enabled is defined and munin_enabled | type_debug == 'bool' - success_msg: munin_enabled is defined and munin_enabled | type_debug == 'bool' +# If 0-init/tasks/validate_vars.yml has DEFINITELY been run (?) perhaps no need +# to re-check whether vars are defined here. As Ansible vars cannot be unset: +# https://serverfault.com/questions/856729/how-to-destroy-delete-unset-a-variable-value-in-ansible + +- name: Assert that "munin_install is sameas true" (boolean not string etc) + assert: + that: munin_install is sameas true + quiet: yes + #that: munin_install is defined and munin_install is sameas true + #success_msg: munin_install is defined and munin_install is sameas true + +- name: Assert that "munin_enabled | type_debug == 'bool'" (boolean not string etc) + assert: + that: munin_enabled | type_debug == 'bool' + quiet: yes + #that: munin_enabled is defined and munin_enabled | type_debug == 'bool' + #success_msg: munin_enabled is defined and munin_enabled | type_debug == 'bool' - name: Install Munin if 'munin_installed' is not defined in {{ iiab_state_file }} # /etc/iiab/iiab_state.yml include_tasks: install.yml