Skip to content
  • Rafael Guterres Jeffman's avatar
    Force plugins to execute using LANGUAGE='C'. · 09942c3d
    Rafael Guterres Jeffman authored
    IPA translates exception messages and Ansible uses controller's
    language to execute plugins on target hosts, and since ansible-freeipa
    uses Exceptions messages to detect some errors and/or states, using any
    language that has a translation for the required messages may cause the
    plugin to misbehave.
    
    This patch modifies ansible_freeipa_module in plugin/module_utils to
    force the use of "C" as the language by setting the environment variable
    LANGUAGE.
    
    Tests were added to verify the correct behavior:
    
        tests/environment/test_locale.yml
    
    The first test will fail, if ansible_freeipa_module is not patched, with
    the message:
    
       host_show failed: nonexistent: host nicht gefunden
    
    This issue is not present if the language selected does not provide
    a translation for the eror message.
    
    This patch does not fix encoding issues that might occur in certain
    releases (e.g.: CentOS 8.3).
    
    Fix #516
    09942c3d
Loading