Question about unarchive files

What is the relationship between the following two files:

lib/ansible/plugins/action/unarchive.py - from ansible/ansible
lib/ansible/modules/core/files/unarchive.py - from ansible/ansible-modules-core

It seems like action/unarchive has some implications on the unarchive
module but they live in two different repos. What is their relationship?
Should they be managed in the same repository?

The reason I ask is because I think I have found an issue that is a
result of a change in one file that needs a corresponding change in the
other that wasn't done.

Thanks,
Dusty

Action plugins are a layer that sits between the Ansible controller and the remote node. Typically, action plugins are used to do something on the controller side before (or instead of) doing something on the remote side.

If the bug is in the action plugin, open an issue/PR in ansible/ansible, otherwise open it for the module in ansible/ansible-core-modules.

Thanks for the explanation.

If the two things are dependent then why not have the action plugin for unarchive
live in the same repo as the module it corresponds to? Would it not be safer to
have them live together in the same repo?

If it is truly a plugin then it should be able to be provided from anywhere so
it shouldn't need to live in ansible/ansible right?

Dusty

They will be shortly :slight_smile:

The short answer to that is: we decided that all plugins would live with the main code base, so that’s where action plugins ended up.

Thanks. So the modules will live in ansible/ansible in the future?

Yes, the current plan is to collapse modules back into the main repo. We’re still working out details, but currently plan on completing this in the 2.3 time frame.