summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMaxwell G <maxwell@gtmx.me>2023-04-21 07:29:10 -0500
committerGitHub <noreply@github.com>2023-04-21 08:29:10 -0400
commit734f38b2594692707d1fd3cbcfc8dc8a677f4ee3 (patch)
tree341811d2f6250e26eedcf0c48c4f043a0c582dbb
parent748f534312f2073a25a87871f5bd05882891b8c4 (diff)
downloadansible-734f38b2594692707d1fd3cbcfc8dc8a677f4ee3.tar.gz
Add GALAXY_COLLECTIONS_PATH_WARNINGS option. (#78487)
* Add GALAXY_COLLECTIONS_PATH_WARNING option. This allows users to disable warnings from `ansible-galaxy collection install` about `--collections-path` missing from Ansible's configured collections_paths.
-rw-r--r--changelogs/fragments/78487-galaxy-collections-path-warnings.yml6
-rwxr-xr-xlib/ansible/cli/galaxy.py5
-rw-r--r--lib/ansible/config/base.yml9
3 files changed, 19 insertions, 1 deletions
diff --git a/changelogs/fragments/78487-galaxy-collections-path-warnings.yml b/changelogs/fragments/78487-galaxy-collections-path-warnings.yml
new file mode 100644
index 0000000000..4702e94f96
--- /dev/null
+++ b/changelogs/fragments/78487-galaxy-collections-path-warnings.yml
@@ -0,0 +1,6 @@
+---
+minor_changes:
+- >-
+ Add ``GALAXY_COLLECTIONS_PATH_WARNING`` option to disable the warning
+ given by ``ansible-galaxy collection install`` when installing a collection
+ to a path that isn't in the configured collection paths.
diff --git a/lib/ansible/cli/galaxy.py b/lib/ansible/cli/galaxy.py
index fc88137ff6..0deb0331a5 100755
--- a/lib/ansible/cli/galaxy.py
+++ b/lib/ansible/cli/galaxy.py
@@ -1393,7 +1393,10 @@ class GalaxyCLI(CLI):
upgrade = context.CLIARGS.get('upgrade', False)
collections_path = C.COLLECTIONS_PATHS
- if len([p for p in collections_path if p.startswith(path)]) == 0:
+ if (
+ C.GALAXY_COLLECTIONS_PATH_WARNING
+ and len([p for p in collections_path if p.startswith(path)]) == 0
+ ):
display.warning("The specified collections path '%s' is not part of the configured Ansible "
"collections paths '%s'. The installed collection will not be picked up in an Ansible "
"run, unless within a playbook-adjacent collections directory." % (to_text(path), to_text(":".join(collections_path))))
diff --git a/lib/ansible/config/base.yml b/lib/ansible/config/base.yml
index 052a8f0834..206deb76d2 100644
--- a/lib/ansible/config/base.yml
+++ b/lib/ansible/config/base.yml
@@ -1366,6 +1366,15 @@ GALAXY_COLLECTION_SKELETON_IGNORE:
ini:
- {key: collection_skeleton_ignore, section: galaxy}
type: list
+GALAXY_COLLECTIONS_PATH_WARNING:
+ name: "ansible-galaxy collection install colections path warnings"
+ description: "whether ``ansible-galaxy collection install`` should warn about ``--collections-path`` missing from configured :ref:`collections_paths`"
+ default: true
+ type: bool
+ env: [{name: ANSIBLE_GALAXY_COLLECTIONS_PATH_WARNING}]
+ ini:
+ - {key: collections_path_warning, section: galaxy}
+ version_added: "2.16"
# TODO: unused?
#GALAXY_SCMS:
# name: Galaxy SCMS