- name: Is the locale we're going to test against installed? shell: locale -a | grep pt_BR register: initial_state ignore_errors: True - name: Make sure the locale is not installed locale_gen: name: pt_BR state: absent - name: Is the locale present? shell: locale -a | grep pt_BR register: cleaned ignore_errors: True - name: Make sure the locale is not present assert: that: - "cleaned.rc == 1" - name: Install the locale locale_gen: name: pt_BR state: present register: output - name: Is the locale present? shell: locale -a | grep pt_BR register: post_check_output ignore_errors: True - name: Make sure the locale is present and we say we installed it assert: that: - "post_check_output.rc == 0" - "output.changed" - name: Install the locale a second time locale_gen: name: pt_BR state: present register: output - name: Is the locale present? shell: locale -a | grep pt_BR register: post_check_output ignore_errors: True - name: Make sure the locale is present and we reported no change assert: that: - "post_check_output.rc == 0" - "not output.changed" - name: Remove the locale locale_gen: name: pt_BR state: absent register: output - name: Is the locale present? shell: locale -a | grep pt_BR register: post_check_output ignore_errors: True - name: Make sure the locale is absent and we reported a change assert: that: - "post_check_output.rc == 1" - "output.changed" - name: Remove the locale a second time locale_gen: name: pt_BR state: absent register: output - name: Is the locale present? shell: locale -a | grep pt_BR register: post_check_output ignore_errors: True - name: Make sure the locale is absent and we reported no change assert: that: - "post_check_output.rc == 1" - "not output.changed" # Cleanup - name: Reinstall the locale we tested against if it was initially installed locale_gen: name: pt_BR state: present when: initial_state.rc == 0