<p>Found the origin of the issue, and unless someone else had run into it they wouldn't have known where to look --</p>
<p>check details of <code>tower-cli --version</code> and <code>ansible --version</code>, as well as <code>which tower-cli</code> <code>which ansible</code>;  in my case were installed in <em>different</em> python environments:</p>
<blockquote>
<p>/usr/lib/python<strong>2.6</strong>/site-packages/ansible</p>
<p>/usr/lib/python<strong>3.4</strong>/site-packages/tower_cli</p>
</blockquote>
<p>If you cannot see the python version using the above for tower-cli, you can run:</p>
<pre><code>$ head -n1 `which tower-cli`
#!/usr/local/opt/python/bin/python3.7
$ 
</code></pre>
<p>The ansible modules couldn't see the tower_cli python modules as they were in a different python environment.</p>
<p>After-the-fact problem origin:  I had installed <strong><code>ansible</code> via <code>yum</code></strong> (package manager), and <strong><code>ansible-tower-cli</code> via <code>pip</code></strong> (python installer).  Being consistent in how you install both to make sure they go to the same environment resolves the issue.</p>
<p><em>Centos/RHEL</em>: <code>yum install ansible ansible-tower-cli</code></p>
<p>-OR-</p>
<p><em>Python</em>:  <code>pip install ansible</code></p>
<p><em>Python</em>:  <code>pip install ansible-tower-cli</code></p>

CC BY-SA 4.0
2018-06-01T21:27:02.510Z
2019-05-28T22:59:29.613Z
2020-06-18T08:28:10.803Z
dhartford
<p>I have a control host that has the following:</p>

<ul>
<li>ansible --version = 2.5.2</li>
<li>tower-cli --version == 3.3.0</li>
</ul>

<p>tower-cli is able to connect to a remote Ansible Tower instance (note, Ansible tower itself is not installed on this control host).  Can run 'tower-cli user list' on control host and works as expected.</p>

<p>However, when I try to use a playbook with the tower_* modules, such as:</p>

<pre><code>  tasks:
  - name: create the SCM project
    tower_project:
      name: "test project"
      state: present
      ...
</code></pre>

<p>Always getting the following:</p>

<blockquote>
  <p>ansible-tower-cli required for this module</p>
</blockquote>

<p>Any ideas, as I can use tower-cli just fine on this localhost that is running the playbook.</p>

<ansible>
ansible tower_project module, always getting "ansible-tower-cli required for this module"
dhartford
# ansible tower_project module, always getting "ansible-tower-cli required for this module"

(Asked by: username_0 on 2018-06-01)

I have a control host that has the following:

ansible --version = 2.5.2
tower-cli --version == 3.3.0

tower-cli is able to connect to a remote Ansible Tower instance (note, Ansible tower itself is not installed on this control host).  Can run 'tower-cli user list' on control host and works as expected.
However, when I try to use a playbook with the tower_* modules, such as:
  tasks:
  - name: create the SCM project
    tower_project:
      name: "test project"
      state: present
      ...

Always getting the following:

ansible-tower-cli required for this module

Any ideas, as I can use tower-cli just fine on this localhost that is running the playbook.

**Tags:** ansible


---

## 1 answers

### Answer by username_0 on 2018-06-01. Score: 2 | Accepted answer

Found the origin of the issue, and unless someone else had run into it they wouldn't have known where to look --
check details of tower-cli --version and ansible --version, as well as which tower-cli which ansible;  in my case were installed in different python environments:

/usr/lib/python2.6/site-packages/ansible
/usr/lib/python3.4/site-packages/tower_cli

If you cannot see the python version using the above for tower-cli, you can run:
$ head -n1 `which tower-cli`
#!/usr/local/opt/python/bin/python3.7
$ 

The ansible modules couldn't see the tower_cli python modules as they were in a different python environment.
After-the-fact problem origin:  I had installed ansible via yum (package manager), and ansible-tower-cli via pip (python installer).  Being consistent in how you install both to make sure they go to the same environment resolves the issue.
Centos/RHEL: yum install ansible ansible-tower-cli
-OR-
Python:  pip install ansible
Python:  pip install ansible-tower-cli


---

