summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--changelogs/fragments/flatten-modules.yml2
-rw-r--r--docs/templates/list_of_CATEGORY_modules.rst.j29
-rw-r--r--docs/templates/modules_by_category.rst.j23
-rw-r--r--lib/ansible/modules/add_host.py (renamed from lib/ansible/modules/inventory/add_host.py)0
-rw-r--r--lib/ansible/modules/apt.py (renamed from lib/ansible/modules/packaging/os/apt.py)0
-rw-r--r--lib/ansible/modules/apt_key.py (renamed from lib/ansible/modules/packaging/os/apt_key.py)0
-rw-r--r--lib/ansible/modules/apt_repository.py (renamed from lib/ansible/modules/packaging/os/apt_repository.py)0
-rw-r--r--lib/ansible/modules/assemble.py (renamed from lib/ansible/modules/files/assemble.py)0
-rw-r--r--lib/ansible/modules/assert.py (renamed from lib/ansible/modules/utilities/logic/assert.py)0
-rw-r--r--lib/ansible/modules/async_status.py (renamed from lib/ansible/modules/utilities/logic/async_status.py)0
-rw-r--r--lib/ansible/modules/async_wrapper.py (renamed from lib/ansible/modules/utilities/logic/async_wrapper.py)0
-rw-r--r--lib/ansible/modules/blockinfile.py (renamed from lib/ansible/modules/files/blockinfile.py)0
-rw-r--r--lib/ansible/modules/command.py (renamed from lib/ansible/modules/commands/command.py)0
-rw-r--r--lib/ansible/modules/commands/__init__.py0
-rw-r--r--lib/ansible/modules/copy.py (renamed from lib/ansible/modules/files/copy.py)0
-rw-r--r--lib/ansible/modules/cron.py (renamed from lib/ansible/modules/system/cron.py)0
-rw-r--r--lib/ansible/modules/debconf.py (renamed from lib/ansible/modules/system/debconf.py)0
-rw-r--r--lib/ansible/modules/debug.py (renamed from lib/ansible/modules/utilities/logic/debug.py)0
-rw-r--r--lib/ansible/modules/dnf.py (renamed from lib/ansible/modules/packaging/os/dnf.py)0
-rw-r--r--lib/ansible/modules/dpkg_selections.py (renamed from lib/ansible/modules/packaging/os/dpkg_selections.py)0
-rw-r--r--lib/ansible/modules/expect.py (renamed from lib/ansible/modules/commands/expect.py)0
-rw-r--r--lib/ansible/modules/fail.py (renamed from lib/ansible/modules/utilities/logic/fail.py)0
-rw-r--r--lib/ansible/modules/fetch.py (renamed from lib/ansible/modules/files/fetch.py)0
-rw-r--r--lib/ansible/modules/file.py (renamed from lib/ansible/modules/files/file.py)0
-rw-r--r--lib/ansible/modules/files/__init__.py0
-rw-r--r--lib/ansible/modules/find.py (renamed from lib/ansible/modules/files/find.py)0
-rw-r--r--lib/ansible/modules/gather_facts.py (renamed from lib/ansible/modules/system/gather_facts.py)0
-rw-r--r--lib/ansible/modules/get_url.py (renamed from lib/ansible/modules/net_tools/basics/get_url.py)0
-rw-r--r--lib/ansible/modules/getent.py (renamed from lib/ansible/modules/system/getent.py)0
-rw-r--r--lib/ansible/modules/git.py (renamed from lib/ansible/modules/source_control/git.py)0
-rw-r--r--lib/ansible/modules/group.py (renamed from lib/ansible/modules/system/group.py)0
-rw-r--r--lib/ansible/modules/group_by.py (renamed from lib/ansible/modules/inventory/group_by.py)0
-rw-r--r--lib/ansible/modules/hostname.py (renamed from lib/ansible/modules/system/hostname.py)0
-rw-r--r--lib/ansible/modules/import_playbook.py (renamed from lib/ansible/modules/utilities/logic/import_playbook.py)0
-rw-r--r--lib/ansible/modules/import_role.py (renamed from lib/ansible/modules/utilities/logic/import_role.py)0
-rw-r--r--lib/ansible/modules/import_tasks.py (renamed from lib/ansible/modules/utilities/logic/import_tasks.py)0
-rw-r--r--lib/ansible/modules/include.py (renamed from lib/ansible/modules/utilities/logic/include.py)0
-rw-r--r--lib/ansible/modules/include_role.py (renamed from lib/ansible/modules/utilities/logic/include_role.py)0
-rw-r--r--lib/ansible/modules/include_tasks.py (renamed from lib/ansible/modules/utilities/logic/include_tasks.py)0
-rw-r--r--lib/ansible/modules/include_vars.py (renamed from lib/ansible/modules/utilities/logic/include_vars.py)0
-rw-r--r--lib/ansible/modules/inventory/__init__.py0
-rw-r--r--lib/ansible/modules/iptables.py (renamed from lib/ansible/modules/system/iptables.py)0
-rw-r--r--lib/ansible/modules/known_hosts.py (renamed from lib/ansible/modules/system/known_hosts.py)0
-rw-r--r--lib/ansible/modules/lineinfile.py (renamed from lib/ansible/modules/files/lineinfile.py)0
-rw-r--r--lib/ansible/modules/meta.py (renamed from lib/ansible/modules/utilities/helper/meta.py)0
-rw-r--r--lib/ansible/modules/net_tools/__init__.py0
-rw-r--r--lib/ansible/modules/net_tools/basics/__init__.py0
-rw-r--r--lib/ansible/modules/package.py (renamed from lib/ansible/modules/packaging/os/package.py)0
-rw-r--r--lib/ansible/modules/package_facts.py (renamed from lib/ansible/modules/packaging/os/package_facts.py)0
-rw-r--r--lib/ansible/modules/packaging/__init__.py0
-rw-r--r--lib/ansible/modules/packaging/language/__init__.py0
-rw-r--r--lib/ansible/modules/packaging/os/__init__.py0
-rw-r--r--lib/ansible/modules/pause.py (renamed from lib/ansible/modules/utilities/logic/pause.py)0
-rw-r--r--lib/ansible/modules/ping.py (renamed from lib/ansible/modules/system/ping.py)0
-rw-r--r--lib/ansible/modules/pip.py (renamed from lib/ansible/modules/packaging/language/pip.py)0
-rw-r--r--lib/ansible/modules/raw.py (renamed from lib/ansible/modules/commands/raw.py)0
-rw-r--r--lib/ansible/modules/reboot.py (renamed from lib/ansible/modules/system/reboot.py)0
-rw-r--r--lib/ansible/modules/replace.py (renamed from lib/ansible/modules/files/replace.py)0
-rw-r--r--lib/ansible/modules/rpm_key.py (renamed from lib/ansible/modules/packaging/os/rpm_key.py)0
-rw-r--r--lib/ansible/modules/script.py (renamed from lib/ansible/modules/commands/script.py)0
-rw-r--r--lib/ansible/modules/service.py (renamed from lib/ansible/modules/system/service.py)0
-rw-r--r--lib/ansible/modules/service_facts.py (renamed from lib/ansible/modules/system/service_facts.py)0
-rw-r--r--lib/ansible/modules/set_fact.py (renamed from lib/ansible/modules/utilities/logic/set_fact.py)0
-rw-r--r--lib/ansible/modules/set_stats.py (renamed from lib/ansible/modules/utilities/logic/set_stats.py)0
-rw-r--r--lib/ansible/modules/setup.py (renamed from lib/ansible/modules/system/setup.py)2
-rw-r--r--lib/ansible/modules/shell.py (renamed from lib/ansible/modules/commands/shell.py)0
-rw-r--r--lib/ansible/modules/slurp.py (renamed from lib/ansible/modules/net_tools/basics/slurp.py)0
-rw-r--r--lib/ansible/modules/source_control/__init__.py0
-rw-r--r--lib/ansible/modules/stat.py (renamed from lib/ansible/modules/files/stat.py)0
-rw-r--r--lib/ansible/modules/subversion.py (renamed from lib/ansible/modules/source_control/subversion.py)0
-rw-r--r--lib/ansible/modules/system/__init__.py0
-rw-r--r--lib/ansible/modules/systemd.py (renamed from lib/ansible/modules/system/systemd.py)0
-rw-r--r--lib/ansible/modules/sysvinit.py (renamed from lib/ansible/modules/system/sysvinit.py)0
-rw-r--r--lib/ansible/modules/tempfile.py (renamed from lib/ansible/modules/files/tempfile.py)0
-rw-r--r--lib/ansible/modules/template.py (renamed from lib/ansible/modules/files/template.py)0
-rw-r--r--lib/ansible/modules/unarchive.py (renamed from lib/ansible/modules/files/unarchive.py)0
-rw-r--r--lib/ansible/modules/uri.py (renamed from lib/ansible/modules/net_tools/basics/uri.py)0
-rw-r--r--lib/ansible/modules/user.py (renamed from lib/ansible/modules/system/user.py)0
-rw-r--r--lib/ansible/modules/utilities/__init__.py0
-rw-r--r--lib/ansible/modules/utilities/helper/__init__.py0
-rw-r--r--lib/ansible/modules/utilities/logic/__init__.py0
-rw-r--r--lib/ansible/modules/wait_for.py (renamed from lib/ansible/modules/utilities/logic/wait_for.py)0
-rw-r--r--lib/ansible/modules/wait_for_connection.py (renamed from lib/ansible/modules/utilities/logic/wait_for_connection.py)0
-rw-r--r--lib/ansible/modules/yum.py (renamed from lib/ansible/modules/packaging/os/yum.py)0
-rw-r--r--lib/ansible/modules/yum_repository.py (renamed from lib/ansible/modules/packaging/os/yum_repository.py)0
-rw-r--r--test/integration/targets/infra/aliases2
-rwxr-xr-xtest/integration/targets/infra/runme.sh4
-rwxr-xr-xtest/lib/ansible_test/_data/sanity/import/importer.py2
-rw-r--r--test/lib/ansible_test/_data/sanity/pylint/plugins/blacklist.py2
-rw-r--r--test/sanity/ignore.txt248
-rw-r--r--test/units/modules/packaging/__init__.py0
-rw-r--r--test/units/modules/packaging/language/__init__.py0
-rw-r--r--test/units/modules/packaging/os/__init__.py0
-rw-r--r--test/units/modules/system/__init__.py0
-rw-r--r--test/units/modules/test_apt.py (renamed from test/units/modules/packaging/os/test_apt.py)2
-rw-r--r--test/units/modules/test_copy.py (renamed from test/units/modules/files/test_copy.py)2
-rw-r--r--test/units/modules/test_iptables.py (renamed from test/units/modules/system/test_iptables.py)2
-rw-r--r--test/units/modules/test_known_hosts.py (renamed from test/units/modules/system/test_known_hosts.py)2
-rw-r--r--test/units/modules/test_pip.py (renamed from test/units/modules/packaging/language/test_pip.py)2
-rw-r--r--test/units/modules/test_systemd.py (renamed from test/units/modules/system/test_systemd.py)2
-rw-r--r--test/units/modules/test_yum.py (renamed from test/units/modules/packaging/os/test_yum.py)2
101 files changed, 151 insertions, 137 deletions
diff --git a/changelogs/fragments/flatten-modules.yml b/changelogs/fragments/flatten-modules.yml
new file mode 100644
index 0000000000..f98d0ba47b
--- /dev/null
+++ b/changelogs/fragments/flatten-modules.yml
@@ -0,0 +1,2 @@
+minor_changes:
+- Flatten the directory hierarchy of modules
diff --git a/docs/templates/list_of_CATEGORY_modules.rst.j2 b/docs/templates/list_of_CATEGORY_modules.rst.j2
index 9d4c18b0f2..92422406de 100644
--- a/docs/templates/list_of_CATEGORY_modules.rst.j2
+++ b/docs/templates/list_of_CATEGORY_modules.rst.j2
@@ -1,10 +1,19 @@
{# avoids rST "isn't included in any toctree" errors for module docs #}
:orphan:
+{% if title %}
.. _@{ title.lower() + '_' + plugin_type + 's' }@:
+{% else %}
+.. _@{ plugin_type + 's' }@:
+{% endif %}
+{% if title %}
@{ title }@ @{ plugin_type + 's' }@
@{ '`' * title | length }@````````
+{% else %}
+@{ plugin_type + 's' }@
+```````
+{% endif %}
{% if blurb %}
@{ blurb }@
diff --git a/docs/templates/modules_by_category.rst.j2 b/docs/templates/modules_by_category.rst.j2
index 0b8f4d0d28..7763528448 100644
--- a/docs/templates/modules_by_category.rst.j2
+++ b/docs/templates/modules_by_category.rst.j2
@@ -10,5 +10,8 @@ Module Index
.. toctree:: :maxdepth: 1
{% for name in categories %}
+{# strip out empty category names as a result flattening the dir structure #}
+{% if name %}
list_of_@{ name }@_modules
+{% endif %}
{% endfor %}
diff --git a/lib/ansible/modules/inventory/add_host.py b/lib/ansible/modules/add_host.py
index 5b125ad3cb..5b125ad3cb 100644
--- a/lib/ansible/modules/inventory/add_host.py
+++ b/lib/ansible/modules/add_host.py
diff --git a/lib/ansible/modules/packaging/os/apt.py b/lib/ansible/modules/apt.py
index 1fc5a34d20..1fc5a34d20 100644
--- a/lib/ansible/modules/packaging/os/apt.py
+++ b/lib/ansible/modules/apt.py
diff --git a/lib/ansible/modules/packaging/os/apt_key.py b/lib/ansible/modules/apt_key.py
index 425193a5a5..425193a5a5 100644
--- a/lib/ansible/modules/packaging/os/apt_key.py
+++ b/lib/ansible/modules/apt_key.py
diff --git a/lib/ansible/modules/packaging/os/apt_repository.py b/lib/ansible/modules/apt_repository.py
index f94cf6ad35..f94cf6ad35 100644
--- a/lib/ansible/modules/packaging/os/apt_repository.py
+++ b/lib/ansible/modules/apt_repository.py
diff --git a/lib/ansible/modules/files/assemble.py b/lib/ansible/modules/assemble.py
index 57ece419f9..57ece419f9 100644
--- a/lib/ansible/modules/files/assemble.py
+++ b/lib/ansible/modules/assemble.py
diff --git a/lib/ansible/modules/utilities/logic/assert.py b/lib/ansible/modules/assert.py
index cf66d5264c..cf66d5264c 100644
--- a/lib/ansible/modules/utilities/logic/assert.py
+++ b/lib/ansible/modules/assert.py
diff --git a/lib/ansible/modules/utilities/logic/async_status.py b/lib/ansible/modules/async_status.py
index db42869957..db42869957 100644
--- a/lib/ansible/modules/utilities/logic/async_status.py
+++ b/lib/ansible/modules/async_status.py
diff --git a/lib/ansible/modules/utilities/logic/async_wrapper.py b/lib/ansible/modules/async_wrapper.py
index 26f0ef08b5..26f0ef08b5 100644
--- a/lib/ansible/modules/utilities/logic/async_wrapper.py
+++ b/lib/ansible/modules/async_wrapper.py
diff --git a/lib/ansible/modules/files/blockinfile.py b/lib/ansible/modules/blockinfile.py
index 2db20fe5f7..2db20fe5f7 100644
--- a/lib/ansible/modules/files/blockinfile.py
+++ b/lib/ansible/modules/blockinfile.py
diff --git a/lib/ansible/modules/commands/command.py b/lib/ansible/modules/command.py
index 6aa4391e5e..6aa4391e5e 100644
--- a/lib/ansible/modules/commands/command.py
+++ b/lib/ansible/modules/command.py
diff --git a/lib/ansible/modules/commands/__init__.py b/lib/ansible/modules/commands/__init__.py
deleted file mode 100644
index e69de29bb2..0000000000
--- a/lib/ansible/modules/commands/__init__.py
+++ /dev/null
diff --git a/lib/ansible/modules/files/copy.py b/lib/ansible/modules/copy.py
index 0c15016bc8..0c15016bc8 100644
--- a/lib/ansible/modules/files/copy.py
+++ b/lib/ansible/modules/copy.py
diff --git a/lib/ansible/modules/system/cron.py b/lib/ansible/modules/cron.py
index 4b4f421c5e..4b4f421c5e 100644
--- a/lib/ansible/modules/system/cron.py
+++ b/lib/ansible/modules/cron.py
diff --git a/lib/ansible/modules/system/debconf.py b/lib/ansible/modules/debconf.py
index 3466e0a92c..3466e0a92c 100644
--- a/lib/ansible/modules/system/debconf.py
+++ b/lib/ansible/modules/debconf.py
diff --git a/lib/ansible/modules/utilities/logic/debug.py b/lib/ansible/modules/debug.py
index 8a3f0caa52..8a3f0caa52 100644
--- a/lib/ansible/modules/utilities/logic/debug.py
+++ b/lib/ansible/modules/debug.py
diff --git a/lib/ansible/modules/packaging/os/dnf.py b/lib/ansible/modules/dnf.py
index a8625ed3d4..a8625ed3d4 100644
--- a/lib/ansible/modules/packaging/os/dnf.py
+++ b/lib/ansible/modules/dnf.py
diff --git a/lib/ansible/modules/packaging/os/dpkg_selections.py b/lib/ansible/modules/dpkg_selections.py
index ccfb89226d..ccfb89226d 100644
--- a/lib/ansible/modules/packaging/os/dpkg_selections.py
+++ b/lib/ansible/modules/dpkg_selections.py
diff --git a/lib/ansible/modules/commands/expect.py b/lib/ansible/modules/expect.py
index 6a0d6b7749..6a0d6b7749 100644
--- a/lib/ansible/modules/commands/expect.py
+++ b/lib/ansible/modules/expect.py
diff --git a/lib/ansible/modules/utilities/logic/fail.py b/lib/ansible/modules/fail.py
index 2a10bdadf7..2a10bdadf7 100644
--- a/lib/ansible/modules/utilities/logic/fail.py
+++ b/lib/ansible/modules/fail.py
diff --git a/lib/ansible/modules/files/fetch.py b/lib/ansible/modules/fetch.py
index d87ec1274f..d87ec1274f 100644
--- a/lib/ansible/modules/files/fetch.py
+++ b/lib/ansible/modules/fetch.py
diff --git a/lib/ansible/modules/files/file.py b/lib/ansible/modules/file.py
index bd313baf9e..bd313baf9e 100644
--- a/lib/ansible/modules/files/file.py
+++ b/lib/ansible/modules/file.py
diff --git a/lib/ansible/modules/files/__init__.py b/lib/ansible/modules/files/__init__.py
deleted file mode 100644
index e69de29bb2..0000000000
--- a/lib/ansible/modules/files/__init__.py
+++ /dev/null
diff --git a/lib/ansible/modules/files/find.py b/lib/ansible/modules/find.py
index ad8c5ea38e..ad8c5ea38e 100644
--- a/lib/ansible/modules/files/find.py
+++ b/lib/ansible/modules/find.py
diff --git a/lib/ansible/modules/system/gather_facts.py b/lib/ansible/modules/gather_facts.py
index 711c840a98..711c840a98 100644
--- a/lib/ansible/modules/system/gather_facts.py
+++ b/lib/ansible/modules/gather_facts.py
diff --git a/lib/ansible/modules/net_tools/basics/get_url.py b/lib/ansible/modules/get_url.py
index ea033d9cfe..ea033d9cfe 100644
--- a/lib/ansible/modules/net_tools/basics/get_url.py
+++ b/lib/ansible/modules/get_url.py
diff --git a/lib/ansible/modules/system/getent.py b/lib/ansible/modules/getent.py
index ae4a901a8b..ae4a901a8b 100644
--- a/lib/ansible/modules/system/getent.py
+++ b/lib/ansible/modules/getent.py
diff --git a/lib/ansible/modules/source_control/git.py b/lib/ansible/modules/git.py
index bff6918432..bff6918432 100644
--- a/lib/ansible/modules/source_control/git.py
+++ b/lib/ansible/modules/git.py
diff --git a/lib/ansible/modules/system/group.py b/lib/ansible/modules/group.py
index 4c6d0b99a3..4c6d0b99a3 100644
--- a/lib/ansible/modules/system/group.py
+++ b/lib/ansible/modules/group.py
diff --git a/lib/ansible/modules/inventory/group_by.py b/lib/ansible/modules/group_by.py
index 8572d606fd..8572d606fd 100644
--- a/lib/ansible/modules/inventory/group_by.py
+++ b/lib/ansible/modules/group_by.py
diff --git a/lib/ansible/modules/system/hostname.py b/lib/ansible/modules/hostname.py
index e9def3b038..e9def3b038 100644
--- a/lib/ansible/modules/system/hostname.py
+++ b/lib/ansible/modules/hostname.py
diff --git a/lib/ansible/modules/utilities/logic/import_playbook.py b/lib/ansible/modules/import_playbook.py
index 17ce2c9161..17ce2c9161 100644
--- a/lib/ansible/modules/utilities/logic/import_playbook.py
+++ b/lib/ansible/modules/import_playbook.py
diff --git a/lib/ansible/modules/utilities/logic/import_role.py b/lib/ansible/modules/import_role.py
index baca26f20b..baca26f20b 100644
--- a/lib/ansible/modules/utilities/logic/import_role.py
+++ b/lib/ansible/modules/import_role.py
diff --git a/lib/ansible/modules/utilities/logic/import_tasks.py b/lib/ansible/modules/import_tasks.py
index 3d54a7c549..3d54a7c549 100644
--- a/lib/ansible/modules/utilities/logic/import_tasks.py
+++ b/lib/ansible/modules/import_tasks.py
diff --git a/lib/ansible/modules/utilities/logic/include.py b/lib/ansible/modules/include.py
index cde31150fe..cde31150fe 100644
--- a/lib/ansible/modules/utilities/logic/include.py
+++ b/lib/ansible/modules/include.py
diff --git a/lib/ansible/modules/utilities/logic/include_role.py b/lib/ansible/modules/include_role.py
index 722251cb8e..722251cb8e 100644
--- a/lib/ansible/modules/utilities/logic/include_role.py
+++ b/lib/ansible/modules/include_role.py
diff --git a/lib/ansible/modules/utilities/logic/include_tasks.py b/lib/ansible/modules/include_tasks.py
index f55351b399..f55351b399 100644
--- a/lib/ansible/modules/utilities/logic/include_tasks.py
+++ b/lib/ansible/modules/include_tasks.py
diff --git a/lib/ansible/modules/utilities/logic/include_vars.py b/lib/ansible/modules/include_vars.py
index 58d1f00bf2..58d1f00bf2 100644
--- a/lib/ansible/modules/utilities/logic/include_vars.py
+++ b/lib/ansible/modules/include_vars.py
diff --git a/lib/ansible/modules/inventory/__init__.py b/lib/ansible/modules/inventory/__init__.py
deleted file mode 100644
index e69de29bb2..0000000000
--- a/lib/ansible/modules/inventory/__init__.py
+++ /dev/null
diff --git a/lib/ansible/modules/system/iptables.py b/lib/ansible/modules/iptables.py
index 8e4e6b134f..8e4e6b134f 100644
--- a/lib/ansible/modules/system/iptables.py
+++ b/lib/ansible/modules/iptables.py
diff --git a/lib/ansible/modules/system/known_hosts.py b/lib/ansible/modules/known_hosts.py
index 5349f9f803..5349f9f803 100644
--- a/lib/ansible/modules/system/known_hosts.py
+++ b/lib/ansible/modules/known_hosts.py
diff --git a/lib/ansible/modules/files/lineinfile.py b/lib/ansible/modules/lineinfile.py
index d3094bede3..d3094bede3 100644
--- a/lib/ansible/modules/files/lineinfile.py
+++ b/lib/ansible/modules/lineinfile.py
diff --git a/lib/ansible/modules/utilities/helper/meta.py b/lib/ansible/modules/meta.py
index 2d683f0217..2d683f0217 100644
--- a/lib/ansible/modules/utilities/helper/meta.py
+++ b/lib/ansible/modules/meta.py
diff --git a/lib/ansible/modules/net_tools/__init__.py b/lib/ansible/modules/net_tools/__init__.py
deleted file mode 100644
index e69de29bb2..0000000000
--- a/lib/ansible/modules/net_tools/__init__.py
+++ /dev/null
diff --git a/lib/ansible/modules/net_tools/basics/__init__.py b/lib/ansible/modules/net_tools/basics/__init__.py
deleted file mode 100644
index e69de29bb2..0000000000
--- a/lib/ansible/modules/net_tools/basics/__init__.py
+++ /dev/null
diff --git a/lib/ansible/modules/packaging/os/package.py b/lib/ansible/modules/package.py
index b48a5dcf07..b48a5dcf07 100644
--- a/lib/ansible/modules/packaging/os/package.py
+++ b/lib/ansible/modules/package.py
diff --git a/lib/ansible/modules/packaging/os/package_facts.py b/lib/ansible/modules/package_facts.py
index b00db2fe2c..b00db2fe2c 100644
--- a/lib/ansible/modules/packaging/os/package_facts.py
+++ b/lib/ansible/modules/package_facts.py
diff --git a/lib/ansible/modules/packaging/__init__.py b/lib/ansible/modules/packaging/__init__.py
deleted file mode 100644
index e69de29bb2..0000000000
--- a/lib/ansible/modules/packaging/__init__.py
+++ /dev/null
diff --git a/lib/ansible/modules/packaging/language/__init__.py b/lib/ansible/modules/packaging/language/__init__.py
deleted file mode 100644
index e69de29bb2..0000000000
--- a/lib/ansible/modules/packaging/language/__init__.py
+++ /dev/null
diff --git a/lib/ansible/modules/packaging/os/__init__.py b/lib/ansible/modules/packaging/os/__init__.py
deleted file mode 100644
index e69de29bb2..0000000000
--- a/lib/ansible/modules/packaging/os/__init__.py
+++ /dev/null
diff --git a/lib/ansible/modules/utilities/logic/pause.py b/lib/ansible/modules/pause.py
index 9fd8db5e0e..9fd8db5e0e 100644
--- a/lib/ansible/modules/utilities/logic/pause.py
+++ b/lib/ansible/modules/pause.py
diff --git a/lib/ansible/modules/system/ping.py b/lib/ansible/modules/ping.py
index 4cf384b35f..4cf384b35f 100644
--- a/lib/ansible/modules/system/ping.py
+++ b/lib/ansible/modules/ping.py
diff --git a/lib/ansible/modules/packaging/language/pip.py b/lib/ansible/modules/pip.py
index 9ce74e6b09..9ce74e6b09 100644
--- a/lib/ansible/modules/packaging/language/pip.py
+++ b/lib/ansible/modules/pip.py
diff --git a/lib/ansible/modules/commands/raw.py b/lib/ansible/modules/raw.py
index 928350dbc6..928350dbc6 100644
--- a/lib/ansible/modules/commands/raw.py
+++ b/lib/ansible/modules/raw.py
diff --git a/lib/ansible/modules/system/reboot.py b/lib/ansible/modules/reboot.py
index 0fab23a609..0fab23a609 100644
--- a/lib/ansible/modules/system/reboot.py
+++ b/lib/ansible/modules/reboot.py
diff --git a/lib/ansible/modules/files/replace.py b/lib/ansible/modules/replace.py
index d10da8049e..d10da8049e 100644
--- a/lib/ansible/modules/files/replace.py
+++ b/lib/ansible/modules/replace.py
diff --git a/lib/ansible/modules/packaging/os/rpm_key.py b/lib/ansible/modules/rpm_key.py
index f64992e944..f64992e944 100644
--- a/lib/ansible/modules/packaging/os/rpm_key.py
+++ b/lib/ansible/modules/rpm_key.py
diff --git a/lib/ansible/modules/commands/script.py b/lib/ansible/modules/script.py
index ed66947c4b..ed66947c4b 100644
--- a/lib/ansible/modules/commands/script.py
+++ b/lib/ansible/modules/script.py
diff --git a/lib/ansible/modules/system/service.py b/lib/ansible/modules/service.py
index 8846a36c65..8846a36c65 100644
--- a/lib/ansible/modules/system/service.py
+++ b/lib/ansible/modules/service.py
diff --git a/lib/ansible/modules/system/service_facts.py b/lib/ansible/modules/service_facts.py
index 5f8b4d52d9..5f8b4d52d9 100644
--- a/lib/ansible/modules/system/service_facts.py
+++ b/lib/ansible/modules/service_facts.py
diff --git a/lib/ansible/modules/utilities/logic/set_fact.py b/lib/ansible/modules/set_fact.py
index 5ee512cbd9..5ee512cbd9 100644
--- a/lib/ansible/modules/utilities/logic/set_fact.py
+++ b/lib/ansible/modules/set_fact.py
diff --git a/lib/ansible/modules/utilities/logic/set_stats.py b/lib/ansible/modules/set_stats.py
index d35160b38b..d35160b38b 100644
--- a/lib/ansible/modules/utilities/logic/set_stats.py
+++ b/lib/ansible/modules/set_stats.py
diff --git a/lib/ansible/modules/system/setup.py b/lib/ansible/modules/setup.py
index ccf40faa8e..70756568be 100644
--- a/lib/ansible/modules/system/setup.py
+++ b/lib/ansible/modules/setup.py
@@ -133,7 +133,7 @@ EXAMPLES = """
"""
# import module snippets
-from ...module_utils.basic import AnsibleModule
+from ..module_utils.basic import AnsibleModule
from ansible.module_utils.facts.namespace import PrefixFactNamespace
from ansible.module_utils.facts import ansible_collector
diff --git a/lib/ansible/modules/commands/shell.py b/lib/ansible/modules/shell.py
index 4dc4411a67..4dc4411a67 100644
--- a/lib/ansible/modules/commands/shell.py
+++ b/lib/ansible/modules/shell.py
diff --git a/lib/ansible/modules/net_tools/basics/slurp.py b/lib/ansible/modules/slurp.py
index c1891eac04..c1891eac04 100644
--- a/lib/ansible/modules/net_tools/basics/slurp.py
+++ b/lib/ansible/modules/slurp.py
diff --git a/lib/ansible/modules/source_control/__init__.py b/lib/ansible/modules/source_control/__init__.py
deleted file mode 100644
index e69de29bb2..0000000000
--- a/lib/ansible/modules/source_control/__init__.py
+++ /dev/null
diff --git a/lib/ansible/modules/files/stat.py b/lib/ansible/modules/stat.py
index 31bd132699..31bd132699 100644
--- a/lib/ansible/modules/files/stat.py
+++ b/lib/ansible/modules/stat.py
diff --git a/lib/ansible/modules/source_control/subversion.py b/lib/ansible/modules/subversion.py
index 1e60529a06..1e60529a06 100644
--- a/lib/ansible/modules/source_control/subversion.py
+++ b/lib/ansible/modules/subversion.py
diff --git a/lib/ansible/modules/system/__init__.py b/lib/ansible/modules/system/__init__.py
deleted file mode 100644
index e69de29bb2..0000000000
--- a/lib/ansible/modules/system/__init__.py
+++ /dev/null
diff --git a/lib/ansible/modules/system/systemd.py b/lib/ansible/modules/systemd.py
index eaae69b7f2..eaae69b7f2 100644
--- a/lib/ansible/modules/system/systemd.py
+++ b/lib/ansible/modules/systemd.py
diff --git a/lib/ansible/modules/system/sysvinit.py b/lib/ansible/modules/sysvinit.py
index ecd0e8c2f8..ecd0e8c2f8 100644
--- a/lib/ansible/modules/system/sysvinit.py
+++ b/lib/ansible/modules/sysvinit.py
diff --git a/lib/ansible/modules/files/tempfile.py b/lib/ansible/modules/tempfile.py
index 17d459aa29..17d459aa29 100644
--- a/lib/ansible/modules/files/tempfile.py
+++ b/lib/ansible/modules/tempfile.py
diff --git a/lib/ansible/modules/files/template.py b/lib/ansible/modules/template.py
index c24deb72af..c24deb72af 100644
--- a/lib/ansible/modules/files/template.py
+++ b/lib/ansible/modules/template.py
diff --git a/lib/ansible/modules/files/unarchive.py b/lib/ansible/modules/unarchive.py
index 58680d811f..58680d811f 100644
--- a/lib/ansible/modules/files/unarchive.py
+++ b/lib/ansible/modules/unarchive.py
diff --git a/lib/ansible/modules/net_tools/basics/uri.py b/lib/ansible/modules/uri.py
index 9110301146..9110301146 100644
--- a/lib/ansible/modules/net_tools/basics/uri.py
+++ b/lib/ansible/modules/uri.py
diff --git a/lib/ansible/modules/system/user.py b/lib/ansible/modules/user.py
index 254e07f552..254e07f552 100644
--- a/lib/ansible/modules/system/user.py
+++ b/lib/ansible/modules/user.py
diff --git a/lib/ansible/modules/utilities/__init__.py b/lib/ansible/modules/utilities/__init__.py
deleted file mode 100644
index e69de29bb2..0000000000
--- a/lib/ansible/modules/utilities/__init__.py
+++ /dev/null
diff --git a/lib/ansible/modules/utilities/helper/__init__.py b/lib/ansible/modules/utilities/helper/__init__.py
deleted file mode 100644
index e69de29bb2..0000000000
--- a/lib/ansible/modules/utilities/helper/__init__.py
+++ /dev/null
diff --git a/lib/ansible/modules/utilities/logic/__init__.py b/lib/ansible/modules/utilities/logic/__init__.py
deleted file mode 100644
index e69de29bb2..0000000000
--- a/lib/ansible/modules/utilities/logic/__init__.py
+++ /dev/null
diff --git a/lib/ansible/modules/utilities/logic/wait_for.py b/lib/ansible/modules/wait_for.py
index fdfbea545f..fdfbea545f 100644
--- a/lib/ansible/modules/utilities/logic/wait_for.py
+++ b/lib/ansible/modules/wait_for.py
diff --git a/lib/ansible/modules/utilities/logic/wait_for_connection.py b/lib/ansible/modules/wait_for_connection.py
index e3c65f4399..e3c65f4399 100644
--- a/lib/ansible/modules/utilities/logic/wait_for_connection.py
+++ b/lib/ansible/modules/wait_for_connection.py
diff --git a/lib/ansible/modules/packaging/os/yum.py b/lib/ansible/modules/yum.py
index 68d4ff1e8e..68d4ff1e8e 100644
--- a/lib/ansible/modules/packaging/os/yum.py
+++ b/lib/ansible/modules/yum.py
diff --git a/lib/ansible/modules/packaging/os/yum_repository.py b/lib/ansible/modules/yum_repository.py
index a709156aab..a709156aab 100644
--- a/lib/ansible/modules/packaging/os/yum_repository.py
+++ b/lib/ansible/modules/yum_repository.py
diff --git a/test/integration/targets/infra/aliases b/test/integration/targets/infra/aliases
index d342950a28..887d7029da 100644
--- a/test/integration/targets/infra/aliases
+++ b/test/integration/targets/infra/aliases
@@ -1,3 +1,3 @@
shippable/posix/group3
needs/file/hacking/test-module.py
-needs/file/lib/ansible/modules/system/ping.py
+needs/file/lib/ansible/modules/ping.py
diff --git a/test/integration/targets/infra/runme.sh b/test/integration/targets/infra/runme.sh
index 7996a43140..c4d84572fe 100755
--- a/test/integration/targets/infra/runme.sh
+++ b/test/integration/targets/infra/runme.sh
@@ -24,7 +24,7 @@ echo "$PB_OUT" | grep -F "assert works (True)" || exit 1
set -e
-PING_MODULE_PATH="../../../../lib/ansible/modules/system/ping.py"
+PING_MODULE_PATH="../../../../lib/ansible/modules/ping.py"
# ensure test-module.py script works without passing Python interpreter path
../../../../hacking/test-module.py -m "$PING_MODULE_PATH"
@@ -36,4 +36,4 @@ PING_MODULE_PATH="../../../../lib/ansible/modules/system/ping.py"
../../../../hacking/test-module.py -m library/test.py -I ansible_python_interpreter="$(which python)" <<< '{"ANSIBLE_MODULE_ARGS": {}}'
# ensure exercising module code locally works
-python -m ansible.modules.files.file <<< '{"ANSIBLE_MODULE_ARGS": {"path": "/path/to/file", "state": "absent"}}'
+python -m ansible.modules.file <<< '{"ANSIBLE_MODULE_ARGS": {"path": "/path/to/file", "state": "absent"}}'
diff --git a/test/lib/ansible_test/_data/sanity/import/importer.py b/test/lib/ansible_test/_data/sanity/import/importer.py
index 1143db5366..f42ff787f0 100755
--- a/test/lib/ansible_test/_data/sanity/import/importer.py
+++ b/test/lib/ansible_test/_data/sanity/import/importer.py
@@ -206,7 +206,7 @@ def main():
is_ansible_module = (path.startswith('lib/ansible/modules/') or path.startswith('plugins/modules/')) and os.path.basename(path) != '__init__.py'
run_main = is_ansible_module
- if path == 'lib/ansible/modules/utilities/logic/async_wrapper.py':
+ if path == 'lib/ansible/modules/async_wrapper.py':
# async_wrapper is a non-standard Ansible module (does not use AnsibleModule) so we cannot test the main function
run_main = False
diff --git a/test/lib/ansible_test/_data/sanity/pylint/plugins/blacklist.py b/test/lib/ansible_test/_data/sanity/pylint/plugins/blacklist.py
index 3da536bb2b..611a30a20e 100644
--- a/test/lib/ansible_test/_data/sanity/pylint/plugins/blacklist.py
+++ b/test/lib/ansible_test/_data/sanity/pylint/plugins/blacklist.py
@@ -125,7 +125,7 @@ class AnsibleBlacklistChecker(BaseChecker):
'sys.exit': BlacklistEntry('exit_json or fail_json',
ignore_paths=(
'/lib/ansible/module_utils/basic.py',
- '/lib/ansible/modules/utilities/logic/async_wrapper.py',
+ '/lib/ansible/modules/async_wrapper.py',
'/lib/ansible/module_utils/common/removed.py',
),
modules_only=True),
diff --git a/test/sanity/ignore.txt b/test/sanity/ignore.txt
index 6cf5396e87..29b5726d5e 100644
--- a/test/sanity/ignore.txt
+++ b/test/sanity/ignore.txt
@@ -107,115 +107,115 @@ lib/ansible/module_utils/urls.py pylint:blacklisted-name
lib/ansible/module_utils/urls.py replace-urlopen
lib/ansible/module_utils/yumdnf.py future-import-boilerplate
lib/ansible/module_utils/yumdnf.py metaclass-boilerplate
-lib/ansible/modules/commands/command.py validate-modules:doc-missing-type
-lib/ansible/modules/commands/command.py validate-modules:nonexistent-parameter-documented
-lib/ansible/modules/commands/command.py validate-modules:parameter-list-no-elements
-lib/ansible/modules/commands/command.py validate-modules:undocumented-parameter
-lib/ansible/modules/commands/expect.py validate-modules:doc-missing-type
-lib/ansible/modules/files/assemble.py validate-modules:nonexistent-parameter-documented
-lib/ansible/modules/files/blockinfile.py validate-modules:doc-choices-do-not-match-spec
-lib/ansible/modules/files/blockinfile.py validate-modules:doc-default-does-not-match-spec
-lib/ansible/modules/files/copy.py pylint:blacklisted-name
-lib/ansible/modules/files/copy.py validate-modules:doc-default-does-not-match-spec
-lib/ansible/modules/files/copy.py validate-modules:doc-type-does-not-match-spec
-lib/ansible/modules/files/copy.py validate-modules:nonexistent-parameter-documented
-lib/ansible/modules/files/copy.py validate-modules:undocumented-parameter
-lib/ansible/modules/files/file.py pylint:ansible-bad-function
-lib/ansible/modules/files/file.py validate-modules:doc-default-does-not-match-spec
-lib/ansible/modules/files/file.py validate-modules:undocumented-parameter
-lib/ansible/modules/files/find.py use-argspec-type-path # fix needed
-lib/ansible/modules/files/find.py validate-modules:parameter-list-no-elements
-lib/ansible/modules/files/find.py validate-modules:parameter-type-not-in-doc
-lib/ansible/modules/files/lineinfile.py validate-modules:doc-choices-do-not-match-spec
-lib/ansible/modules/files/lineinfile.py validate-modules:doc-default-does-not-match-spec
-lib/ansible/modules/files/lineinfile.py validate-modules:nonexistent-parameter-documented
-lib/ansible/modules/files/replace.py validate-modules:nonexistent-parameter-documented
-lib/ansible/modules/files/stat.py validate-modules:parameter-invalid
-lib/ansible/modules/files/stat.py validate-modules:parameter-type-not-in-doc
-lib/ansible/modules/files/stat.py validate-modules:undocumented-parameter
-lib/ansible/modules/files/unarchive.py validate-modules:nonexistent-parameter-documented
-lib/ansible/modules/files/unarchive.py validate-modules:parameter-list-no-elements
-lib/ansible/modules/net_tools/basics/get_url.py validate-modules:parameter-type-not-in-doc
-lib/ansible/modules/net_tools/basics/uri.py pylint:blacklisted-name
-lib/ansible/modules/net_tools/basics/uri.py validate-modules:doc-required-mismatch
-lib/ansible/modules/net_tools/basics/uri.py validate-modules:parameter-list-no-elements
-lib/ansible/modules/net_tools/basics/uri.py validate-modules:parameter-type-not-in-doc
-lib/ansible/modules/packaging/language/pip.py pylint:blacklisted-name
-lib/ansible/modules/packaging/language/pip.py validate-modules:doc-elements-mismatch
-lib/ansible/modules/packaging/language/pip.py validate-modules:invalid-ansiblemodule-schema
-lib/ansible/modules/packaging/os/apt.py validate-modules:doc-default-does-not-match-spec
-lib/ansible/modules/packaging/os/apt.py validate-modules:parameter-invalid
-lib/ansible/modules/packaging/os/apt.py validate-modules:parameter-type-not-in-doc
-lib/ansible/modules/packaging/os/apt.py validate-modules:undocumented-parameter
-lib/ansible/modules/packaging/os/apt_key.py validate-modules:mutually_exclusive-unknown
-lib/ansible/modules/packaging/os/apt_key.py validate-modules:parameter-type-not-in-doc
-lib/ansible/modules/packaging/os/apt_key.py validate-modules:undocumented-parameter
-lib/ansible/modules/packaging/os/apt_repository.py validate-modules:doc-default-does-not-match-spec
-lib/ansible/modules/packaging/os/apt_repository.py validate-modules:parameter-invalid
-lib/ansible/modules/packaging/os/apt_repository.py validate-modules:parameter-type-not-in-doc
-lib/ansible/modules/packaging/os/apt_repository.py validate-modules:undocumented-parameter
-lib/ansible/modules/packaging/os/dnf.py validate-modules:doc-missing-type
-lib/ansible/modules/packaging/os/dnf.py validate-modules:doc-required-mismatch
-lib/ansible/modules/packaging/os/dnf.py validate-modules:parameter-invalid
-lib/ansible/modules/packaging/os/dnf.py validate-modules:parameter-list-no-elements
-lib/ansible/modules/packaging/os/dnf.py validate-modules:parameter-type-not-in-doc
-lib/ansible/modules/packaging/os/dpkg_selections.py validate-modules:doc-missing-type
-lib/ansible/modules/packaging/os/dpkg_selections.py validate-modules:doc-required-mismatch
-lib/ansible/modules/packaging/os/package_facts.py validate-modules:doc-choices-do-not-match-spec
-lib/ansible/modules/packaging/os/package_facts.py validate-modules:doc-missing-type
-lib/ansible/modules/packaging/os/package_facts.py validate-modules:parameter-list-no-elements
-lib/ansible/modules/packaging/os/package_facts.py validate-modules:return-syntax-error
-lib/ansible/modules/packaging/os/rpm_key.py validate-modules:parameter-type-not-in-doc
-lib/ansible/modules/packaging/os/yum.py pylint:blacklisted-name
-lib/ansible/modules/packaging/os/yum.py validate-modules:doc-default-does-not-match-spec
-lib/ansible/modules/packaging/os/yum.py validate-modules:doc-missing-type
-lib/ansible/modules/packaging/os/yum.py validate-modules:parameter-invalid
-lib/ansible/modules/packaging/os/yum.py validate-modules:parameter-list-no-elements
-lib/ansible/modules/packaging/os/yum.py validate-modules:parameter-type-not-in-doc
-lib/ansible/modules/packaging/os/yum.py validate-modules:undocumented-parameter
-lib/ansible/modules/packaging/os/yum_repository.py validate-modules:doc-default-does-not-match-spec
-lib/ansible/modules/packaging/os/yum_repository.py validate-modules:doc-missing-type
-lib/ansible/modules/packaging/os/yum_repository.py validate-modules:parameter-list-no-elements
-lib/ansible/modules/packaging/os/yum_repository.py validate-modules:parameter-type-not-in-doc
-lib/ansible/modules/packaging/os/yum_repository.py validate-modules:undocumented-parameter
-lib/ansible/modules/source_control/git.py pylint:blacklisted-name
-lib/ansible/modules/source_control/git.py use-argspec-type-path
-lib/ansible/modules/source_control/git.py validate-modules:doc-missing-type
-lib/ansible/modules/source_control/git.py validate-modules:doc-required-mismatch
-lib/ansible/modules/source_control/git.py validate-modules:parameter-list-no-elements
-lib/ansible/modules/source_control/git.py validate-modules:parameter-type-not-in-doc
-lib/ansible/modules/source_control/subversion.py validate-modules:doc-required-mismatch
-lib/ansible/modules/source_control/subversion.py validate-modules:parameter-type-not-in-doc
-lib/ansible/modules/source_control/subversion.py validate-modules:undocumented-parameter
-lib/ansible/modules/system/getent.py validate-modules:parameter-type-not-in-doc
-lib/ansible/modules/system/hostname.py validate-modules:invalid-ansiblemodule-schema
-lib/ansible/modules/system/hostname.py validate-modules:parameter-type-not-in-doc
-lib/ansible/modules/system/iptables.py pylint:blacklisted-name
-lib/ansible/modules/system/iptables.py validate-modules:parameter-list-no-elements
-lib/ansible/modules/system/known_hosts.py validate-modules:doc-default-does-not-match-spec
-lib/ansible/modules/system/known_hosts.py validate-modules:doc-missing-type
-lib/ansible/modules/system/known_hosts.py validate-modules:parameter-type-not-in-doc
-lib/ansible/modules/system/service.py validate-modules:nonexistent-parameter-documented
-lib/ansible/modules/system/service.py validate-modules:use-run-command-not-popen
-lib/ansible/modules/system/setup.py validate-modules:doc-missing-type
-lib/ansible/modules/system/setup.py validate-modules:parameter-list-no-elements
-lib/ansible/modules/system/setup.py validate-modules:parameter-type-not-in-doc
-lib/ansible/modules/system/systemd.py validate-modules:parameter-invalid
-lib/ansible/modules/system/systemd.py validate-modules:parameter-type-not-in-doc
-lib/ansible/modules/system/systemd.py validate-modules:return-syntax-error
-lib/ansible/modules/system/sysvinit.py validate-modules:parameter-list-no-elements
-lib/ansible/modules/system/sysvinit.py validate-modules:parameter-type-not-in-doc
-lib/ansible/modules/system/sysvinit.py validate-modules:return-syntax-error
-lib/ansible/modules/system/user.py validate-modules:doc-default-does-not-match-spec
-lib/ansible/modules/system/user.py validate-modules:doc-default-incompatible-type
-lib/ansible/modules/system/user.py validate-modules:parameter-list-no-elements
-lib/ansible/modules/system/user.py validate-modules:use-run-command-not-popen
-lib/ansible/modules/utilities/logic/async_status.py use-argspec-type-path
-lib/ansible/modules/utilities/logic/async_status.py validate-modules!skip
-lib/ansible/modules/utilities/logic/async_wrapper.py ansible-doc!skip # not an actual module
-lib/ansible/modules/utilities/logic/async_wrapper.py pylint:ansible-bad-function
-lib/ansible/modules/utilities/logic/async_wrapper.py use-argspec-type-path
-lib/ansible/modules/utilities/logic/wait_for.py validate-modules:parameter-list-no-elements
+lib/ansible/modules/command.py validate-modules:doc-missing-type
+lib/ansible/modules/command.py validate-modules:nonexistent-parameter-documented
+lib/ansible/modules/command.py validate-modules:parameter-list-no-elements
+lib/ansible/modules/command.py validate-modules:undocumented-parameter
+lib/ansible/modules/expect.py validate-modules:doc-missing-type
+lib/ansible/modules/assemble.py validate-modules:nonexistent-parameter-documented
+lib/ansible/modules/blockinfile.py validate-modules:doc-choices-do-not-match-spec
+lib/ansible/modules/blockinfile.py validate-modules:doc-default-does-not-match-spec
+lib/ansible/modules/copy.py pylint:blacklisted-name
+lib/ansible/modules/copy.py validate-modules:doc-default-does-not-match-spec
+lib/ansible/modules/copy.py validate-modules:doc-type-does-not-match-spec
+lib/ansible/modules/copy.py validate-modules:nonexistent-parameter-documented
+lib/ansible/modules/copy.py validate-modules:undocumented-parameter
+lib/ansible/modules/file.py pylint:ansible-bad-function
+lib/ansible/modules/file.py validate-modules:doc-default-does-not-match-spec
+lib/ansible/modules/file.py validate-modules:undocumented-parameter
+lib/ansible/modules/find.py use-argspec-type-path # fix needed
+lib/ansible/modules/find.py validate-modules:parameter-list-no-elements
+lib/ansible/modules/find.py validate-modules:parameter-type-not-in-doc
+lib/ansible/modules/lineinfile.py validate-modules:doc-choices-do-not-match-spec
+lib/ansible/modules/lineinfile.py validate-modules:doc-default-does-not-match-spec
+lib/ansible/modules/lineinfile.py validate-modules:nonexistent-parameter-documented
+lib/ansible/modules/replace.py validate-modules:nonexistent-parameter-documented
+lib/ansible/modules/stat.py validate-modules:parameter-invalid
+lib/ansible/modules/stat.py validate-modules:parameter-type-not-in-doc
+lib/ansible/modules/stat.py validate-modules:undocumented-parameter
+lib/ansible/modules/unarchive.py validate-modules:nonexistent-parameter-documented
+lib/ansible/modules/unarchive.py validate-modules:parameter-list-no-elements
+lib/ansible/modules/get_url.py validate-modules:parameter-type-not-in-doc
+lib/ansible/modules/uri.py pylint:blacklisted-name
+lib/ansible/modules/uri.py validate-modules:doc-required-mismatch
+lib/ansible/modules/uri.py validate-modules:parameter-list-no-elements
+lib/ansible/modules/uri.py validate-modules:parameter-type-not-in-doc
+lib/ansible/modules/pip.py pylint:blacklisted-name
+lib/ansible/modules/pip.py validate-modules:doc-elements-mismatch
+lib/ansible/modules/pip.py validate-modules:invalid-ansiblemodule-schema
+lib/ansible/modules/apt.py validate-modules:doc-default-does-not-match-spec
+lib/ansible/modules/apt.py validate-modules:parameter-invalid
+lib/ansible/modules/apt.py validate-modules:parameter-type-not-in-doc
+lib/ansible/modules/apt.py validate-modules:undocumented-parameter
+lib/ansible/modules/apt_key.py validate-modules:mutually_exclusive-unknown
+lib/ansible/modules/apt_key.py validate-modules:parameter-type-not-in-doc
+lib/ansible/modules/apt_key.py validate-modules:undocumented-parameter
+lib/ansible/modules/apt_repository.py validate-modules:doc-default-does-not-match-spec
+lib/ansible/modules/apt_repository.py validate-modules:parameter-invalid
+lib/ansible/modules/apt_repository.py validate-modules:parameter-type-not-in-doc
+lib/ansible/modules/apt_repository.py validate-modules:undocumented-parameter
+lib/ansible/modules/dnf.py validate-modules:doc-missing-type
+lib/ansible/modules/dnf.py validate-modules:doc-required-mismatch
+lib/ansible/modules/dnf.py validate-modules:parameter-invalid
+lib/ansible/modules/dnf.py validate-modules:parameter-list-no-elements
+lib/ansible/modules/dnf.py validate-modules:parameter-type-not-in-doc
+lib/ansible/modules/dpkg_selections.py validate-modules:doc-missing-type
+lib/ansible/modules/dpkg_selections.py validate-modules:doc-required-mismatch
+lib/ansible/modules/package_facts.py validate-modules:doc-choices-do-not-match-spec
+lib/ansible/modules/package_facts.py validate-modules:doc-missing-type
+lib/ansible/modules/package_facts.py validate-modules:parameter-list-no-elements
+lib/ansible/modules/package_facts.py validate-modules:return-syntax-error
+lib/ansible/modules/rpm_key.py validate-modules:parameter-type-not-in-doc
+lib/ansible/modules/yum.py pylint:blacklisted-name
+lib/ansible/modules/yum.py validate-modules:doc-default-does-not-match-spec
+lib/ansible/modules/yum.py validate-modules:doc-missing-type
+lib/ansible/modules/yum.py validate-modules:parameter-invalid
+lib/ansible/modules/yum.py validate-modules:parameter-list-no-elements
+lib/ansible/modules/yum.py validate-modules:parameter-type-not-in-doc
+lib/ansible/modules/yum.py validate-modules:undocumented-parameter
+lib/ansible/modules/yum_repository.py validate-modules:doc-default-does-not-match-spec
+lib/ansible/modules/yum_repository.py validate-modules:doc-missing-type
+lib/ansible/modules/yum_repository.py validate-modules:parameter-list-no-elements
+lib/ansible/modules/yum_repository.py validate-modules:parameter-type-not-in-doc
+lib/ansible/modules/yum_repository.py validate-modules:undocumented-parameter
+lib/ansible/modules/git.py pylint:blacklisted-name
+lib/ansible/modules/git.py use-argspec-type-path
+lib/ansible/modules/git.py validate-modules:doc-missing-type
+lib/ansible/modules/git.py validate-modules:doc-required-mismatch
+lib/ansible/modules/git.py validate-modules:parameter-list-no-elements
+lib/ansible/modules/git.py validate-modules:parameter-type-not-in-doc
+lib/ansible/modules/subversion.py validate-modules:doc-required-mismatch
+lib/ansible/modules/subversion.py validate-modules:parameter-type-not-in-doc
+lib/ansible/modules/subversion.py validate-modules:undocumented-parameter
+lib/ansible/modules/getent.py validate-modules:parameter-type-not-in-doc
+lib/ansible/modules/hostname.py validate-modules:invalid-ansiblemodule-schema
+lib/ansible/modules/hostname.py validate-modules:parameter-type-not-in-doc
+lib/ansible/modules/iptables.py pylint:blacklisted-name
+lib/ansible/modules/iptables.py validate-modules:parameter-list-no-elements
+lib/ansible/modules/known_hosts.py validate-modules:doc-default-does-not-match-spec
+lib/ansible/modules/known_hosts.py validate-modules:doc-missing-type
+lib/ansible/modules/known_hosts.py validate-modules:parameter-type-not-in-doc
+lib/ansible/modules/service.py validate-modules:nonexistent-parameter-documented
+lib/ansible/modules/service.py validate-modules:use-run-command-not-popen
+lib/ansible/modules/setup.py validate-modules:doc-missing-type
+lib/ansible/modules/setup.py validate-modules:parameter-list-no-elements
+lib/ansible/modules/setup.py validate-modules:parameter-type-not-in-doc
+lib/ansible/modules/systemd.py validate-modules:parameter-invalid
+lib/ansible/modules/systemd.py validate-modules:parameter-type-not-in-doc
+lib/ansible/modules/systemd.py validate-modules:return-syntax-error
+lib/ansible/modules/sysvinit.py validate-modules:parameter-list-no-elements
+lib/ansible/modules/sysvinit.py validate-modules:parameter-type-not-in-doc
+lib/ansible/modules/sysvinit.py validate-modules:return-syntax-error
+lib/ansible/modules/user.py validate-modules:doc-default-does-not-match-spec
+lib/ansible/modules/user.py validate-modules:doc-default-incompatible-type
+lib/ansible/modules/user.py validate-modules:parameter-list-no-elements
+lib/ansible/modules/user.py validate-modules:use-run-command-not-popen
+lib/ansible/modules/async_status.py use-argspec-type-path
+lib/ansible/modules/async_status.py validate-modules!skip
+lib/ansible/modules/async_wrapper.py ansible-doc!skip # not an actual module
+lib/ansible/modules/async_wrapper.py pylint:ansible-bad-function
+lib/ansible/modules/async_wrapper.py use-argspec-type-path
+lib/ansible/modules/wait_for.py validate-modules:parameter-list-no-elements
lib/ansible/parsing/vault/__init__.py pylint:blacklisted-name
lib/ansible/playbook/base.py pylint:blacklisted-name
lib/ansible/playbook/collectionsearch.py required-and-default-attributes # https://github.com/ansible/ansible/issues/61460
@@ -500,21 +500,21 @@ test/units/module_utils/urls/test_Request.py replace-urlopen
test/units/module_utils/urls/test_fetch_url.py replace-urlopen
test/units/modules/conftest.py future-import-boilerplate
test/units/modules/conftest.py metaclass-boilerplate
-test/units/modules/files/test_copy.py future-import-boilerplate
-test/units/modules/packaging/language/test_pip.py future-import-boilerplate
-test/units/modules/packaging/language/test_pip.py metaclass-boilerplate
-test/units/modules/packaging/os/test_apt.py future-import-boilerplate
-test/units/modules/packaging/os/test_apt.py metaclass-boilerplate
-test/units/modules/packaging/os/test_apt.py pylint:blacklisted-name
-test/units/modules/packaging/os/test_yum.py future-import-boilerplate
-test/units/modules/packaging/os/test_yum.py metaclass-boilerplate
-test/units/modules/system/test_iptables.py future-import-boilerplate
-test/units/modules/system/test_iptables.py metaclass-boilerplate
-test/units/modules/system/test_known_hosts.py future-import-boilerplate
-test/units/modules/system/test_known_hosts.py metaclass-boilerplate
-test/units/modules/system/test_known_hosts.py pylint:ansible-bad-function
-test/units/modules/system/test_systemd.py future-import-boilerplate
-test/units/modules/system/test_systemd.py metaclass-boilerplate
+test/units/modules/test_copy.py future-import-boilerplate
+test/units/modules/test_pip.py future-import-boilerplate
+test/units/modules/test_pip.py metaclass-boilerplate
+test/units/modules/test_apt.py future-import-boilerplate
+test/units/modules/test_apt.py metaclass-boilerplate
+test/units/modules/test_apt.py pylint:blacklisted-name
+test/units/modules/test_yum.py future-import-boilerplate
+test/units/modules/test_yum.py metaclass-boilerplate
+test/units/modules/test_iptables.py future-import-boilerplate
+test/units/modules/test_iptables.py metaclass-boilerplate
+test/units/modules/test_known_hosts.py future-import-boilerplate
+test/units/modules/test_known_hosts.py metaclass-boilerplate
+test/units/modules/test_known_hosts.py pylint:ansible-bad-function
+test/units/modules/test_systemd.py future-import-boilerplate
+test/units/modules/test_systemd.py metaclass-boilerplate
test/units/modules/utils.py future-import-boilerplate
test/units/modules/utils.py metaclass-boilerplate
test/units/parsing/utils/test_addresses.py future-import-boilerplate
diff --git a/test/units/modules/packaging/__init__.py b/test/units/modules/packaging/__init__.py
deleted file mode 100644
index e69de29bb2..0000000000
--- a/test/units/modules/packaging/__init__.py
+++ /dev/null
diff --git a/test/units/modules/packaging/language/__init__.py b/test/units/modules/packaging/language/__init__.py
deleted file mode 100644
index e69de29bb2..0000000000
--- a/test/units/modules/packaging/language/__init__.py
+++ /dev/null
diff --git a/test/units/modules/packaging/os/__init__.py b/test/units/modules/packaging/os/__init__.py
deleted file mode 100644
index e69de29bb2..0000000000
--- a/test/units/modules/packaging/os/__init__.py
+++ /dev/null
diff --git a/test/units/modules/system/__init__.py b/test/units/modules/system/__init__.py
deleted file mode 100644
index e69de29bb2..0000000000
--- a/test/units/modules/system/__init__.py
+++ /dev/null
diff --git a/test/units/modules/packaging/os/test_apt.py b/test/units/modules/test_apt.py
index d003ec40f4..3e4303309f 100644
--- a/test/units/modules/packaging/os/test_apt.py
+++ b/test/units/modules/test_apt.py
@@ -5,7 +5,7 @@ from units.compat import mock
from units.compat import unittest
try:
- from ansible.modules.packaging.os.apt import (
+ from ansible.modules.apt import (
expand_pkgspec_from_fnmatches,
)
except Exception:
diff --git a/test/units/modules/files/test_copy.py b/test/units/modules/test_copy.py
index ff8f03818e..19cff255cc 100644
--- a/test/units/modules/files/test_copy.py
+++ b/test/units/modules/test_copy.py
@@ -9,7 +9,7 @@ __metaclass__ = type
import pytest
-from ansible.modules.files.copy import AnsibleModuleError, split_pre_existing_dir
+from ansible.modules.copy import AnsibleModuleError, split_pre_existing_dir
from ansible.module_utils.basic import AnsibleModule
diff --git a/test/units/modules/system/test_iptables.py b/test/units/modules/test_iptables.py
index 9cd5b2ed18..0dc734b564 100644
--- a/test/units/modules/system/test_iptables.py
+++ b/test/units/modules/test_iptables.py
@@ -1,6 +1,6 @@
from units.compat.mock import patch
from ansible.module_utils import basic
-from ansible.modules.system import iptables
+from ansible.modules import iptables
from units.modules.utils import AnsibleExitJson, AnsibleFailJson, ModuleTestCase, set_module_args
diff --git a/test/units/modules/system/test_known_hosts.py b/test/units/modules/test_known_hosts.py
index 962cf05f5b..9dbfc5ace8 100644
--- a/test/units/modules/system/test_known_hosts.py
+++ b/test/units/modules/test_known_hosts.py
@@ -6,7 +6,7 @@ from units.compat import unittest
from ansible.module_utils._text import to_bytes
from ansible.module_utils.basic import AnsibleModule
-from ansible.modules.system.known_hosts import compute_diff, sanity_check
+from ansible.modules.known_hosts import compute_diff, sanity_check
class KnownHostsDiffTestCase(unittest.TestCase):
diff --git a/test/units/modules/packaging/language/test_pip.py b/test/units/modules/test_pip.py
index 1ae3c16f73..5de82bb4a4 100644
--- a/test/units/modules/packaging/language/test_pip.py
+++ b/test/units/modules/test_pip.py
@@ -4,7 +4,7 @@ import json
import pytest
-from ansible.modules.packaging.language import pip
+from ansible.modules import pip
pytestmark = pytest.mark.usefixtures('patch_ansible_module')
diff --git a/test/units/modules/system/test_systemd.py b/test/units/modules/test_systemd.py
index 8471fd5c3b..29dc679c04 100644
--- a/test/units/modules/system/test_systemd.py
+++ b/test/units/modules/test_systemd.py
@@ -1,6 +1,6 @@
from units.compat import unittest
-from ansible.modules.system.systemd import parse_systemctl_show
+from ansible.modules.systemd import parse_systemctl_show
class ParseSystemctlShowTestCase(unittest.TestCase):
diff --git a/test/units/modules/packaging/os/test_yum.py b/test/units/modules/test_yum.py
index 6aa672d21f..38c06d3dc7 100644
--- a/test/units/modules/packaging/os/test_yum.py
+++ b/test/units/modules/test_yum.py
@@ -2,7 +2,7 @@
# -*- coding: utf-8 -*-
from units.compat import unittest
-from ansible.modules.packaging.os.yum import YumModule
+from ansible.modules.yum import YumModule
yum_plugin_load_error = """