From cd95843ea5f1bff40225b0430cfbb379cbe53661 Mon Sep 17 00:00:00 2001 From: Will Thames Date: Wed, 8 May 2019 23:53:25 +1000 Subject: [PATCH] Make ansible adhoc work with include_role (#56163) * Make ansible adhoc work with include_role Fix logic condition so that include_role works without ``` ERROR! 'async_val' is not a valid attribute for a IncludeRole The error appears to be in 'None': line 0, column 0, but may be elsewhere in the file depending on the exact syntax problem. (could not open file to display line) ``` * Add include_role test for adhoc --- changelogs/fragments/ansible-adhoc.yaml | 2 ++ lib/ansible/cli/adhoc.py | 2 +- test/integration/targets/include_import/runme.sh | 4 ++++ 3 files changed, 7 insertions(+), 1 deletion(-) create mode 100644 changelogs/fragments/ansible-adhoc.yaml diff --git a/changelogs/fragments/ansible-adhoc.yaml b/changelogs/fragments/ansible-adhoc.yaml new file mode 100644 index 00000000000..b5b5d369ec6 --- /dev/null +++ b/changelogs/fragments/ansible-adhoc.yaml @@ -0,0 +1,2 @@ +bugfixes: + - allow include_role to work with ansible command diff --git a/lib/ansible/cli/adhoc.py b/lib/ansible/cli/adhoc.py index 5108df1845d..2f79e881ea9 100644 --- a/lib/ansible/cli/adhoc.py +++ b/lib/ansible/cli/adhoc.py @@ -69,7 +69,7 @@ class AdHocCLI(CLI): mytask = {'action': {'module': context.CLIARGS['module_name'], 'args': parse_kv(context.CLIARGS['module_args'], check_raw=check_raw)}} # avoid adding to tasks that don't support it, unless set, then give user an error - if context.CLIARGS['module_name'] not in ('include_role', 'include_tasks') or any(frozenset((async_val, poll))): + if context.CLIARGS['module_name'] not in ('include_role', 'include_tasks') and any(frozenset((async_val, poll))): mytask['async_val'] = async_val mytask['poll'] = poll diff --git a/test/integration/targets/include_import/runme.sh b/test/integration/targets/include_import/runme.sh index cf523a89d99..0d253cc8d17 100755 --- a/test/integration/targets/include_import/runme.sh +++ b/test/integration/targets/include_import/runme.sh @@ -10,6 +10,10 @@ function gen_task_files() { done } +## Adhoc + +ansible -m include_role -a name=role1 localhost + ## Import (static) # Playbook