--- # Etckeeper is a small fondness of mine, it semi-automatically # keep track of /etc with git. # Feel free to remove all this if you'rs not interested. - name: detect etckeeper presence shell: "which etckeeper" ignore_errors: True register: tmp changed_when: False - name: Set fact about etckeeper presence set_fact: etckeeper_installed: "{{ tmp.rc == 0 }}" - name: Check that /etc is clean shell: etckeeper unclean && echo "Uncommitted changes." && return 1 || return 0 ignore_errors: True # we add a 'fail' task to tell the problem more explictly. register: tmp changed_when: False when: etckeeper_installed - fail: msg: "Etckeeper is installed but there is uncommitted changes in /etc." when: etckeeper_installed and tmp.rc != 0