summaryrefslogtreecommitdiffstats
path: root/test/integration/targets/ansible-test-config
diff options
context:
space:
mode:
Diffstat (limited to 'test/integration/targets/ansible-test-config')
-rw-r--r--test/integration/targets/ansible-test-config/aliases4
-rw-r--r--test/integration/targets/ansible-test-config/ansible_collections/ns/col/plugins/module_utils/test.py14
-rw-r--r--test/integration/targets/ansible-test-config/ansible_collections/ns/col/tests/config.yml2
-rw-r--r--test/integration/targets/ansible-test-config/ansible_collections/ns/col/tests/unit/plugins/module_utils/test_test.py5
-rwxr-xr-xtest/integration/targets/ansible-test-config/runme.sh15
5 files changed, 40 insertions, 0 deletions
diff --git a/test/integration/targets/ansible-test-config/aliases b/test/integration/targets/ansible-test-config/aliases
new file mode 100644
index 0000000..7741d44
--- /dev/null
+++ b/test/integration/targets/ansible-test-config/aliases
@@ -0,0 +1,4 @@
+shippable/posix/group3 # runs in the distro test containers
+shippable/generic/group1 # runs in the default test container
+context/controller
+needs/target/collection
diff --git a/test/integration/targets/ansible-test-config/ansible_collections/ns/col/plugins/module_utils/test.py b/test/integration/targets/ansible-test-config/ansible_collections/ns/col/plugins/module_utils/test.py
new file mode 100644
index 0000000..962dba2
--- /dev/null
+++ b/test/integration/targets/ansible-test-config/ansible_collections/ns/col/plugins/module_utils/test.py
@@ -0,0 +1,14 @@
+import sys
+import os
+
+
+def version_to_str(value):
+ return '.'.join(str(v) for v in value)
+
+
+controller_min_python_version = tuple(int(v) for v in os.environ['ANSIBLE_CONTROLLER_MIN_PYTHON_VERSION'].split('.'))
+current_python_version = sys.version_info[:2]
+
+if current_python_version < controller_min_python_version:
+ raise Exception('Current Python version %s is lower than the minimum controller Python version of %s. '
+ 'Did the collection config get ignored?' % (version_to_str(current_python_version), version_to_str(controller_min_python_version)))
diff --git a/test/integration/targets/ansible-test-config/ansible_collections/ns/col/tests/config.yml b/test/integration/targets/ansible-test-config/ansible_collections/ns/col/tests/config.yml
new file mode 100644
index 0000000..7772d7d
--- /dev/null
+++ b/test/integration/targets/ansible-test-config/ansible_collections/ns/col/tests/config.yml
@@ -0,0 +1,2 @@
+modules:
+ python_requires: controller # allow tests to pass when run against a Python version not supported by the controller
diff --git a/test/integration/targets/ansible-test-config/ansible_collections/ns/col/tests/unit/plugins/module_utils/test_test.py b/test/integration/targets/ansible-test-config/ansible_collections/ns/col/tests/unit/plugins/module_utils/test_test.py
new file mode 100644
index 0000000..b320a15
--- /dev/null
+++ b/test/integration/targets/ansible-test-config/ansible_collections/ns/col/tests/unit/plugins/module_utils/test_test.py
@@ -0,0 +1,5 @@
+from ansible_collections.ns.col.plugins.module_utils import test
+
+
+def test_me():
+ assert test
diff --git a/test/integration/targets/ansible-test-config/runme.sh b/test/integration/targets/ansible-test-config/runme.sh
new file mode 100755
index 0000000..9636d04
--- /dev/null
+++ b/test/integration/targets/ansible-test-config/runme.sh
@@ -0,0 +1,15 @@
+#!/usr/bin/env bash
+# Make sure that ansible-test is able to parse collection config when using a venv.
+
+set -eu
+
+source ../collection/setup.sh
+
+set -x
+
+# On systems with a Python version below the minimum controller Python version, such as the default container, this test
+# will verify that the content config is working properly after delegation. Otherwise it will only verify that no errors
+# occur while trying to access content config (such as missing requirements).
+
+ansible-test sanity --test import --color --venv -v
+ansible-test units --color --venv -v