Skip to content

Commit

Permalink
upstream CI: Fix test selection for CheckPR pipeline.
Browse files Browse the repository at this point in the history
Due to an error on processing Ansible key 'import_tasks' the script that
creates a list of modules to test is broken making some modules to be
not tested.

By fixing the handling of 'import_tasks' and module import, the list is
correct again and the modules with its dependencies are generated.
  • Loading branch information
rjeffman committed Sep 29, 2023
1 parent 539ace4 commit 1c70421
Showing 1 changed file with 10 additions and 4 deletions.
14 changes: 10 additions & 4 deletions utils/get_test_modules.py
Original file line number Diff line number Diff line change
Expand Up @@ -23,8 +23,6 @@ def get_tasks(task_block):
for tasks in task_block:
for task in tasks:
original_task = task
if "." in task:
task = task.split(".")[-1]
if task == "block":
_result.update(get_tasks(tasks["block"]))
elif task in ["include_tasks", "import_tasks"
Expand Down Expand Up @@ -127,8 +125,16 @@ def parse_playbooks(test_module):
"builtins.__import__", side_effect=import_mock
):
# pylint: disable=no-value-for-parameter
loader = SourceFileLoader(playbook, source)
loader.exec_module(types.ModuleType(loader.name))
try:
loader = SourceFileLoader(playbook, source)
loader.exec_module(
types.ModuleType(loader.name)
)
except Exception: # pylint: disable=broad-except
# If import fails, we'll assume there's no
# plugin to be loaded. This is of little risk
# it is rare that a plugin includes another.
pass
# pylint: disable=no-member
candidates = [
f.split(".")[1:]
Expand Down

0 comments on commit 1c70421

Please sign in to comment.