Skip to content

Commit

Permalink
Make ansible adhoc work with include_role (#56163)
Browse files Browse the repository at this point in the history
* 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

(cherry picked from commit cd95843)
  • Loading branch information
willthames authored and abadger committed May 24, 2019
1 parent 53cfa05 commit c52335a
Show file tree
Hide file tree
Showing 3 changed files with 7 additions and 1 deletion.
2 changes: 2 additions & 0 deletions changelogs/fragments/ansible-adhoc.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
bugfixes:
- allow include_role to work with ansible command
2 changes: 1 addition & 1 deletion lib/ansible/cli/adhoc.py
Original file line number Diff line number Diff line change
Expand Up @@ -73,7 +73,7 @@ def _play_ds(self, pattern, async_val, poll):
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

Expand Down
4 changes: 4 additions & 0 deletions test/integration/targets/include_import/runme.sh
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,10 @@ function gen_task_files() {
done
}

## Adhoc

ansible -m include_role -a name=role1 localhost

## Import (static)

# Playbook
Expand Down

0 comments on commit c52335a

Please sign in to comment.