# Ansible galaxy dependency install

**URL:** <https://forum.ansible.com/t/ansible-galaxy-dependency-install/43047>\
**Category:** Get Help\
**Tags:** aws, galaxy-ng\
**Created:** [May 28, 2025, 8:15am UTC](https://forum.ansible.com/t/ansible-galaxy-dependency-install/43047 "2025-05-28T08:15:09Z")\
**Posts on this page:** 3\
**Page:** 1

<div class="post-metadata">

**Author:** ![Gnoale](https://sea1.discourse-cdn.com/ansible/user_avatar/forum.ansible.com/gnoale/32/8448_2.png) [@Gnoale](https://forum.ansible.com/u/Gnoale)\
**Post date:** [May 28, 2025, 8:15am UTC](https://forum.ansible.com/t/ansible-galaxy-dependency-install/43047/1 "2025-05-28T08:15:09Z")

</div>

**Please replace this text with a description of your issue**. You should:  
Hi,  
I am wondering why `ansible-galaxy install` ignore the requirements file at the repository root  
example [GitHub - ansible-collections/amazon.aws: Ansible Collection for Amazon AWS](https://github.com/ansible-collections/amazon.aws?tab=readme-ov-file#installation)

> `The python module dependencies are not installed by ansible-galaxy. They can be manually installed using pip:`

Is there a way to workaround this ?

Also I might be a bit confused, correct me if I’m wrong please :  
when you execute a task on a remote host, ansible will need to install itself as well as the module code that will execute the task, how is it supposed to work in such case of external Python dependencies ?

---

<div class="post-metadata">

**Author:** ![tremble](https://sea1.discourse-cdn.com/ansible/user_avatar/forum.ansible.com/tremble/32/247_2.png) [@tremble](https://forum.ansible.com/u/tremble)\
**Post date:** [May 28, 2025, 9:30am UTC](https://forum.ansible.com/t/ansible-galaxy-dependency-install/43047/2 "2025-05-28T09:30:23Z")

</div>

When working on a target (Linux) host, Ansible doesn’t usually “install itself” on target hosts it copies the “module” and the specific Ansible files needed to run, then executes the module via an SSH command, and then deletes the temporary files, with the dependencies of these files deliberately kept as small as possible. This is in part why Ansible can be slower than an agent based system like Puppet where the full agent needs to be installed remotely (since Puppet has everything pre-installed). With Ansible, the bulk of Ansible is still running directly on your local “controller” host.

The common way around it with the AWS modules, since they’re hitting a public API anyway, is to run the modules on the “controller” host (either with `connection: local` or the `local_action` module) rather than the remote host and to “manually” install the dependencies into the controller host environment (Or use something like the “Execution Environment” containers where it’s preinstalled).

---

<div class="post-metadata">

**Author:** ![system](https://us1.discourse-cdn.com/ansible/original/1X/1882d9a01da5d8996a862359b0913cc568a39b84.svg) [@system](https://forum.ansible.com/u/system)\
**Post date:** [June 27, 2025, 9:31am UTC](https://forum.ansible.com/t/ansible-galaxy-dependency-install/43047/3 "2025-06-27T09:31:17Z")

</div>

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.
