Eric4
                (Eric)
              
                
              
                  
                  
              1
              
             
            
              I’m running an Ansible playbook to use the raw module, to install python-minimal.
The host is reachable.
The host can be SSH’ed into as root.
However, when running the playbook below, it fails.
It gives the error:
“module_stdout”: “bash: warning: setlocale: LC_ALL: cannot change locale (en_US.UTF-8)\r\n/bin/sh: 1: /usr/bin/python: not found\r\n”,
---
# https://gist.github.com/gwillem/4ba393dceb55e5ae276a87300f6b8e6f
- hosts: all
  tasks:
  - name: install python 2
    raw: test -e /usr/bin/python || (apt -y update && apt install -y python-minimal)
             
            
              
              
              
            
            
           
          
            
              
                Eric4
                (Eric)
              
              
                  
                  
              2
              
             
            
              However, it works when run manually:
ansible -i all.yml -m raw -a “apt install -y python-minimal”
             
            
              
              
              
            
            
           
          
            
            
              The problem is that you don't provide the whole error message, if you had you probably would have gotten an answer several days ago.
So without the error message I can only guess, but default Ansible has gather facts on, so you need to turn it off.
             
            
              
              
              
            
            
           
          
            
            
              This is what we use:
---
- hosts: ubuntu-1604
  gather_facts: no
  pre_tasks:
    # Needed because python is not installed
    - name: install python (if needed)
      raw: test -e /usr/bin/python || (apt update -y && apt install -y python-minimal)
      register: _python_minimal
      changed_when: _python_minimal.stdout_lines | length > 0
             
            
              
              
              
            
            
           
          
            
              
                Eric4
                (Eric)
              
              
                  
                  
              5
              
             
            
              gather_facts was what I needed!