diff --git a/roles/locale_config/tasks/main.yml b/roles/locale_config/tasks/main.yml index d750518..9c6c763 100644 --- a/roles/locale_config/tasks/main.yml +++ b/roles/locale_config/tasks/main.yml @@ -15,19 +15,24 @@ name: "{{ locale_config_language }}" - name: get current locale and language configuration - register: locale_status + register: locale_config_status changed_when: false ignore_errors: true ansible.builtin.command: cmd: localectl status -- name: set fact +- name: remember current LANG config + when: not locale_config_status is skipped ansible.builtin.set_fact: - locale_lang: "{{ locale_status.stdout | regex_search('LANG=([^\n]+)', '\\1') | first }}" - + locale_config_current: "{{ locale_config_status.stdout | regex_search('LANG=([^\n]+)', '\\1') | first }}" + +- name: print current config + ansible.builtin.debug: + msg: "LANG={{ locale_config_current }}" + - name: set locale to '{{ locale_config_locale }}' become: true - changed_when: locale_lang != locale_config_locale + changed_when: locale_config_current != locale_config_locale ansible.builtin.command: cmd: localectl set-locale LANG={{ locale_config_locale }} @@ -35,6 +40,6 @@ become: true changed_when: locale_language != locale_config_language vars: - locale_language: "{{ locale_status.stdout | regex_search('LANGUAGE=([^\n]+)', '\\1') | default([locale_lang], true) | first }}" + locale_language: "{{ locale_config_status.stdout | regex_search('LANGUAGE=([^\n]+)', '\\1') | default([locale_config_current], true) | first }}" ansible.builtin.command: cmd: localectl set-locale LANGUAGE={{ locale_config_language }}