Add a framework, fixtures and test for common synchronize scenarios. (#15983)

* Add a framework, fixtures and test for common synchronize scenarios.

Addresses #15905
pull/16079/head
jctanner 8 years ago
parent 10a07fcc26
commit c52cea8db3

@ -0,0 +1,17 @@
fixtures:
taskvars_in: taskvars_in.json
taskvars_out: taskvars_out.json
connection:
transport: 'ssh'
hostvars:
'127.0.0.1': {}
'::1': {}
'localhost': {}
asserts:
- "hasattr(SAM._connection, 'ismock')"
- "SAM._connection.transport == 'local'"
- "self._play_context.shell == 'sh'"
- "self.execute_called"
- "self.task.args['_local_rsync_path'] == 'rsync'"
- "self.task.args['src'] == '/tmp/deleteme'"
- "self.task.args['dest'] == 'root@el6host:/tmp/deleteme'"

@ -0,0 +1,5 @@
{
"dest": "root@el6host:/tmp/deleteme",
"src": "/tmp/deleteme",
"_local_rsync_path": "rsync"
}

@ -0,0 +1,151 @@
{
"ansible_pipelining": false,
"ansible_docker_extra_args": "",
"ansible_scp_extra_args": "",
"ansible_user": "root",
"ansible_play_hosts": [
"el6host"
],
"ansible_connection": "smart",
"ansible_ssh_common_args": "",
"environment": [],
"inventory_hostname": "el6host",
"vars": {
"ansible_check_mode": false,
"inventory_hostname": "el6host",
"inventory_file": "inventory",
"inventory_hostname_short": "el6host",
"playbook_dir": "/home/jtanner/workspace/issues/AP-15905",
"role_names": [],
"inventory_dir": "/home/jtanner/workspace/issues/AP-15905",
"environment": [],
"play_hosts": [
"el6host"
],
"ansible_play_hosts": [
"el6host"
],
"hostvars": {
"el6host": {
"inventory_file": "inventory",
"group_names": [
"ungrouped"
],
"groups": {
"ungrouped": [
"el6host"
],
"all": [
"el6host"
]
},
"inventory_hostname": "el6host",
"inventory_hostname_short": "el6host",
"playbook_dir": "/home/jtanner/workspace/issues/AP-15905",
"omit": "__omit_place_holder__03600813b83569c710bf5cb2a040d6e01da927c6",
"inventory_dir": "/home/jtanner/workspace/issues/AP-15905",
"ansible_ssh_user": "root",
"ansible_check_mode": false,
"ansible_version": {
"major": 2,
"full": "2.2.0",
"string": "2.2.0",
"minor": 2,
"revision": 0
}
}
},
"groups": {
"ungrouped": [
"el6host"
],
"all": [
"el6host"
]
},
"group_names": [
"ungrouped"
],
"omit": "__omit_place_holder__03600813b83569c710bf5cb2a040d6e01da927c6",
"ansible_version": {
"major": 2,
"full": "2.2.0",
"string": "2.2.0",
"minor": 2,
"revision": 0
},
"ansible_ssh_user": "root"
},
"ansible_accelerate_port": 5099,
"roledir": null,
"ansible_ssh_extra_args": "",
"ansible_ssh_host": "el6host",
"ansible_current_hosts": [
"el6host"
],
"hostvars": {
"el6host": {
"inventory_file": "inventory",
"group_names": [
"ungrouped"
],
"groups": {
"ungrouped": [
"el6host"
],
"all": [
"el6host"
]
},
"inventory_hostname": "el6host",
"inventory_hostname_short": "el6host",
"playbook_dir": "/home/jtanner/workspace/issues/AP-15905",
"omit": "__omit_place_holder__03600813b83569c710bf5cb2a040d6e01da927c6",
"inventory_dir": "/home/jtanner/workspace/issues/AP-15905",
"ansible_ssh_user": "root",
"ansible_check_mode": false,
"ansible_version": {
"major": 2,
"full": "2.2.0",
"string": "2.2.0",
"minor": 2,
"revision": 0
}
}
},
"group_names": [
"ungrouped"
],
"ansible_version": {
"major": 2,
"full": "2.2.0",
"string": "2.2.0",
"minor": 2,
"revision": 0
},
"ansible_ssh_pipelining": false,
"inventory_file": "inventory",
"ansible_module_compression": "ZIP_DEFLATED",
"ansible_failed_hosts": [],
"ansible_check_mode": false,
"groups": {
"ungrouped": [
"el6host"
],
"all": [
"el6host"
]
},
"ansible_host": "el6host",
"ansible_shell_executable": "/bin/sh",
"inventory_hostname_short": "el6host",
"omit": "__omit_place_holder__03600813b83569c710bf5cb2a040d6e01da927c6",
"inventory_dir": "/home/jtanner/workspace/issues/AP-15905",
"playbook_dir": "/home/jtanner/workspace/issues/AP-15905",
"ansible_ssh_user": "root",
"role_names": [],
"play_hosts": [
"el6host"
],
"ansible_sftp_extra_args": ""
}

@ -0,0 +1,156 @@
{
"ansible_pipelining": false,
"ansible_docker_extra_args": "",
"ansible_scp_extra_args": "",
"ansible_user": "root",
"ansible_play_hosts": [
"el6host"
],
"ansible_connection": "smart",
"ansible_ssh_common_args": "",
"environment": [],
"inventory_hostname": "el6host",
"vars": {
"ansible_check_mode": false,
"inventory_hostname": "el6host",
"inventory_file": "inventory",
"inventory_hostname_short": "el6host",
"playbook_dir": "/home/jtanner/workspace/issues/AP-15905",
"role_names": [],
"inventory_dir": "/home/jtanner/workspace/issues/AP-15905",
"environment": [],
"play_hosts": [
"el6host"
],
"ansible_play_hosts": [
"el6host"
],
"hostvars": {
"el6host": {
"inventory_file": "inventory",
"group_names": [
"ungrouped"
],
"groups": {
"ungrouped": [
"el6host",
"::1"
],
"all": [
"el6host",
"::1"
]
},
"inventory_hostname": "el6host",
"inventory_hostname_short": "el6host",
"playbook_dir": "/home/jtanner/workspace/issues/AP-15905",
"omit": "__omit_place_holder__03600813b83569c710bf5cb2a040d6e01da927c6",
"inventory_dir": "/home/jtanner/workspace/issues/AP-15905",
"ansible_ssh_user": "root",
"ansible_check_mode": false,
"ansible_version": {
"major": 2,
"full": "2.2.0",
"string": "2.2.0",
"minor": 2,
"revision": 0
}
}
},
"groups": {
"ungrouped": [
"el6host"
],
"all": [
"el6host"
]
},
"group_names": [
"ungrouped"
],
"omit": "__omit_place_holder__03600813b83569c710bf5cb2a040d6e01da927c6",
"ansible_version": {
"major": 2,
"full": "2.2.0",
"string": "2.2.0",
"minor": 2,
"revision": 0
},
"ansible_ssh_user": "root"
},
"ansible_accelerate_port": 5099,
"roledir": null,
"ansible_ssh_extra_args": "",
"ansible_ssh_host": "el6host",
"ansible_current_hosts": [
"el6host"
],
"hostvars": {
"el6host": {
"inventory_file": "inventory",
"group_names": [
"ungrouped"
],
"groups": {
"ungrouped": [
"el6host",
"::1"
],
"all": [
"el6host",
"::1"
]
},
"inventory_hostname": "el6host",
"inventory_hostname_short": "el6host",
"playbook_dir": "/home/jtanner/workspace/issues/AP-15905",
"omit": "__omit_place_holder__03600813b83569c710bf5cb2a040d6e01da927c6",
"inventory_dir": "/home/jtanner/workspace/issues/AP-15905",
"ansible_ssh_user": "root",
"ansible_check_mode": false,
"ansible_version": {
"major": 2,
"full": "2.2.0",
"string": "2.2.0",
"minor": 2,
"revision": 0
}
}
},
"group_names": [
"ungrouped"
],
"ansible_version": {
"major": 2,
"full": "2.2.0",
"string": "2.2.0",
"minor": 2,
"revision": 0
},
"ansible_ssh_pipelining": false,
"inventory_file": "inventory",
"ansible_module_compression": "ZIP_DEFLATED",
"ansible_failed_hosts": [],
"ansible_check_mode": false,
"groups": {
"ungrouped": [
"el6host"
],
"all": [
"el6host"
]
},
"ansible_host": "el6host",
"ansible_shell_executable": "/bin/sh",
"inventory_hostname_short": "el6host",
"omit": "__omit_place_holder__03600813b83569c710bf5cb2a040d6e01da927c6",
"ansible_python_interpreter": "/usr/bin/python",
"inventory_dir": "/home/jtanner/workspace/issues/AP-15905",
"playbook_dir": "/home/jtanner/workspace/issues/AP-15905",
"ansible_ssh_user": "root",
"role_names": [],
"play_hosts": [
"el6host"
],
"ansible_sftp_extra_args": ""
}

@ -0,0 +1,38 @@
task_args:
src: /tmp/deleteme
dest: /tmp/deleteme
#rsync_path: rsync
_task:
become: True
become_method: None
fixtures:
taskvars_in: task_vars_in.json
taskvars_out: task_vars_out.json
connection:
transport: 'ssh'
_play_context:
become: True
become_method: sudo
remote_addr: el6host
remote_user: root
hostvars:
'127.0.0.1': {}
'::1': {}
'localhost': {}
asserts:
- "hasattr(SAM._connection, 'ismock')"
- "SAM._connection.transport == 'local'"
- "self.execute_called"
- "self.task.args['_local_rsync_path'] == 'rsync'"
# this is a crucial aspect of this scenario ...
- "self.task.args['rsync_path'] == '\"sudo rsync\"'"
- "self.task.args['src'] == '/tmp/deleteme'"
- "self.task.args['dest'] == 'root@el6host:/tmp/deleteme'"
- "self.task.become == True"
- "self.task.become_user == None"
- "self._play_context.shell == 'sh'"
- "self._play_context.remote_addr == 'el6host'"
- "self._play_context.remote_user == 'root'"
- "self._play_context.become == False"
- "self._play_context.become_user == 'root'"
- "self._play_context.password == None"

@ -0,0 +1,6 @@
{
"dest": "root@el6host:/tmp/deleteme",
"src": "/tmp/deleteme",
"rsync_path": "\"sudo rsync\"",
"_local_rsync_path": "rsync"
}

@ -0,0 +1,151 @@
{
"ansible_pipelining": false,
"ansible_docker_extra_args": "",
"ansible_scp_extra_args": "",
"ansible_user": "root",
"ansible_play_hosts": [
"el6host"
],
"ansible_connection": "smart",
"ansible_ssh_common_args": "",
"environment": [],
"inventory_hostname": "el6host",
"vars": {
"ansible_check_mode": false,
"inventory_hostname": "el6host",
"inventory_file": "inventory",
"inventory_hostname_short": "el6host",
"playbook_dir": "/home/jtanner/workspace/issues/AP-15905",
"role_names": [],
"inventory_dir": "/home/jtanner/workspace/issues/AP-15905",
"environment": [],
"play_hosts": [
"el6host"
],
"ansible_play_hosts": [
"el6host"
],
"hostvars": {
"el6host": {
"inventory_file": "inventory",
"group_names": [
"ungrouped"
],
"groups": {
"ungrouped": [
"el6host"
],
"all": [
"el6host"
]
},
"inventory_hostname": "el6host",
"inventory_hostname_short": "el6host",
"playbook_dir": "/home/jtanner/workspace/issues/AP-15905",
"omit": "__omit_place_holder__b3ac1e6ebeed06f4be0c1edca3dca34036cf7f57",
"inventory_dir": "/home/jtanner/workspace/issues/AP-15905",
"ansible_ssh_user": "root",
"ansible_check_mode": false,
"ansible_version": {
"major": 2,
"full": "2.2.0",
"string": "2.2.0",
"minor": 2,
"revision": 0
}
}
},
"groups": {
"ungrouped": [
"el6host"
],
"all": [
"el6host"
]
},
"group_names": [
"ungrouped"
],
"omit": "__omit_place_holder__b3ac1e6ebeed06f4be0c1edca3dca34036cf7f57",
"ansible_version": {
"major": 2,
"full": "2.2.0",
"string": "2.2.0",
"minor": 2,
"revision": 0
},
"ansible_ssh_user": "root"
},
"ansible_accelerate_port": 5099,
"roledir": null,
"ansible_ssh_extra_args": "",
"ansible_ssh_host": "el6host",
"ansible_current_hosts": [
"el6host"
],
"hostvars": {
"el6host": {
"inventory_file": "inventory",
"group_names": [
"ungrouped"
],
"groups": {
"ungrouped": [
"el6host"
],
"all": [
"el6host"
]
},
"inventory_hostname": "el6host",
"inventory_hostname_short": "el6host",
"playbook_dir": "/home/jtanner/workspace/issues/AP-15905",
"omit": "__omit_place_holder__b3ac1e6ebeed06f4be0c1edca3dca34036cf7f57",
"inventory_dir": "/home/jtanner/workspace/issues/AP-15905",
"ansible_ssh_user": "root",
"ansible_check_mode": false,
"ansible_version": {
"major": 2,
"full": "2.2.0",
"string": "2.2.0",
"minor": 2,
"revision": 0
}
}
},
"group_names": [
"ungrouped"
],
"ansible_version": {
"major": 2,
"full": "2.2.0",
"string": "2.2.0",
"minor": 2,
"revision": 0
},
"ansible_ssh_pipelining": false,
"inventory_file": "inventory",
"ansible_module_compression": "ZIP_DEFLATED",
"ansible_failed_hosts": [],
"ansible_check_mode": false,
"groups": {
"ungrouped": [
"el6host"
],
"all": [
"el6host"
]
},
"ansible_host": "el6host",
"ansible_shell_executable": "/bin/sh",
"inventory_hostname_short": "el6host",
"omit": "__omit_place_holder__b3ac1e6ebeed06f4be0c1edca3dca34036cf7f57",
"inventory_dir": "/home/jtanner/workspace/issues/AP-15905",
"playbook_dir": "/home/jtanner/workspace/issues/AP-15905",
"ansible_ssh_user": "root",
"role_names": [],
"play_hosts": [
"el6host"
],
"ansible_sftp_extra_args": ""
}

@ -0,0 +1,156 @@
{
"ansible_pipelining": false,
"ansible_docker_extra_args": "",
"ansible_scp_extra_args": "",
"ansible_user": "root",
"ansible_play_hosts": [
"el6host"
],
"ansible_connection": "smart",
"ansible_ssh_common_args": "",
"environment": [],
"inventory_hostname": "el6host",
"vars": {
"ansible_check_mode": false,
"inventory_hostname": "el6host",
"inventory_file": "inventory",
"inventory_hostname_short": "el6host",
"playbook_dir": "/home/jtanner/workspace/issues/AP-15905",
"role_names": [],
"inventory_dir": "/home/jtanner/workspace/issues/AP-15905",
"environment": [],
"play_hosts": [
"el6host"
],
"ansible_play_hosts": [
"el6host"
],
"hostvars": {
"el6host": {
"inventory_file": "inventory",
"group_names": [
"ungrouped"
],
"groups": {
"ungrouped": [
"el6host",
"::1"
],
"all": [
"el6host",
"::1"
]
},
"inventory_hostname": "el6host",
"inventory_hostname_short": "el6host",
"playbook_dir": "/home/jtanner/workspace/issues/AP-15905",
"omit": "__omit_place_holder__b3ac1e6ebeed06f4be0c1edca3dca34036cf7f57",
"inventory_dir": "/home/jtanner/workspace/issues/AP-15905",
"ansible_ssh_user": "root",
"ansible_check_mode": false,
"ansible_version": {
"major": 2,
"full": "2.2.0",
"string": "2.2.0",
"minor": 2,
"revision": 0
}
}
},
"groups": {
"ungrouped": [
"el6host"
],
"all": [
"el6host"
]
},
"group_names": [
"ungrouped"
],
"omit": "__omit_place_holder__b3ac1e6ebeed06f4be0c1edca3dca34036cf7f57",
"ansible_version": {
"major": 2,
"full": "2.2.0",
"string": "2.2.0",
"minor": 2,
"revision": 0
},
"ansible_ssh_user": "root"
},
"ansible_accelerate_port": 5099,
"roledir": null,
"ansible_ssh_extra_args": "",
"ansible_ssh_host": "el6host",
"ansible_current_hosts": [
"el6host"
],
"hostvars": {
"el6host": {
"inventory_file": "inventory",
"group_names": [
"ungrouped"
],
"groups": {
"ungrouped": [
"el6host",
"::1"
],
"all": [
"el6host",
"::1"
]
},
"inventory_hostname": "el6host",
"inventory_hostname_short": "el6host",
"playbook_dir": "/home/jtanner/workspace/issues/AP-15905",
"omit": "__omit_place_holder__b3ac1e6ebeed06f4be0c1edca3dca34036cf7f57",
"inventory_dir": "/home/jtanner/workspace/issues/AP-15905",
"ansible_ssh_user": "root",
"ansible_check_mode": false,
"ansible_version": {
"major": 2,
"full": "2.2.0",
"string": "2.2.0",
"minor": 2,
"revision": 0
}
}
},
"group_names": [
"ungrouped"
],
"ansible_version": {
"major": 2,
"full": "2.2.0",
"string": "2.2.0",
"minor": 2,
"revision": 0
},
"ansible_ssh_pipelining": false,
"inventory_file": "inventory",
"ansible_module_compression": "ZIP_DEFLATED",
"ansible_failed_hosts": [],
"ansible_check_mode": false,
"groups": {
"ungrouped": [
"el6host"
],
"all": [
"el6host"
]
},
"ansible_host": "el6host",
"ansible_shell_executable": "/bin/sh",
"inventory_hostname_short": "el6host",
"omit": "__omit_place_holder__b3ac1e6ebeed06f4be0c1edca3dca34036cf7f57",
"ansible_python_interpreter": "/usr/bin/python",
"inventory_dir": "/home/jtanner/workspace/issues/AP-15905",
"playbook_dir": "/home/jtanner/workspace/issues/AP-15905",
"ansible_ssh_user": "root",
"role_names": [],
"play_hosts": [
"el6host"
],
"ansible_sftp_extra_args": ""
}

@ -0,0 +1,38 @@
task_args:
src: /tmp/deleteme
dest: /tmp/deleteme
#rsync_path: rsync
_task:
become: None
become_method: None
fixtures:
taskvars_in: task_vars_in.json
taskvars_out: task_vars_out.json
connection:
transport: 'ssh'
_play_context:
become: True
become_method: sudo
remote_addr: el6host
remote_user: root
hostvars:
'127.0.0.1': {}
'::1': {}
'localhost': {}
asserts:
- "hasattr(SAM._connection, 'ismock')"
- "SAM._connection.transport == 'local'"
- "self.execute_called"
- "self.task.args['_local_rsync_path'] == 'rsync'"
# this is a crucial aspect of this scenario ...
- "self.task.args['rsync_path'] == '\"sudo rsync\"'"
- "self.task.args['src'] == '/tmp/deleteme'"
- "self.task.args['dest'] == 'root@el6host:/tmp/deleteme'"
- "self.task.become == None"
- "self.task.become_user == None"
- "self._play_context.shell == 'sh'"
- "self._play_context.remote_addr == 'el6host'"
- "self._play_context.remote_user == 'root'"
- "self._play_context.become == False"
- "self._play_context.become_user == 'root'"
- "self._play_context.password == None"

@ -0,0 +1,6 @@
{
"dest": "root@el6host:/tmp/deleteme",
"src": "/tmp/deleteme",
"rsync_path": "\"sudo rsync\"",
"_local_rsync_path": "rsync"
}

@ -0,0 +1,151 @@
{
"ansible_pipelining": false,
"ansible_docker_extra_args": "",
"ansible_scp_extra_args": "",
"ansible_user": "root",
"ansible_play_hosts": [
"el6host"
],
"ansible_connection": "smart",
"ansible_ssh_common_args": "",
"environment": [],
"inventory_hostname": "el6host",
"vars": {
"ansible_check_mode": false,
"inventory_hostname": "el6host",
"inventory_file": "inventory",
"inventory_hostname_short": "el6host",
"playbook_dir": "/home/jtanner/workspace/issues/AP-15905",
"role_names": [],
"inventory_dir": "/home/jtanner/workspace/issues/AP-15905",
"environment": [],
"play_hosts": [
"el6host"
],
"ansible_play_hosts": [
"el6host"
],
"hostvars": {
"el6host": {
"inventory_file": "inventory",
"group_names": [
"ungrouped"
],
"groups": {
"ungrouped": [
"el6host"
],
"all": [
"el6host"
]
},
"inventory_hostname": "el6host",
"inventory_hostname_short": "el6host",
"playbook_dir": "/home/jtanner/workspace/issues/AP-15905",
"omit": "__omit_place_holder__b3ac1e6ebeed06f4be0c1edca3dca34036cf7f57",
"inventory_dir": "/home/jtanner/workspace/issues/AP-15905",
"ansible_ssh_user": "root",
"ansible_check_mode": false,
"ansible_version": {
"major": 2,
"full": "2.2.0",
"string": "2.2.0",
"minor": 2,
"revision": 0
}
}
},
"groups": {
"ungrouped": [
"el6host"
],
"all": [
"el6host"
]
},
"group_names": [
"ungrouped"
],
"omit": "__omit_place_holder__b3ac1e6ebeed06f4be0c1edca3dca34036cf7f57",
"ansible_version": {
"major": 2,
"full": "2.2.0",
"string": "2.2.0",
"minor": 2,
"revision": 0
},
"ansible_ssh_user": "root"
},
"ansible_accelerate_port": 5099,
"roledir": null,
"ansible_ssh_extra_args": "",
"ansible_ssh_host": "el6host",
"ansible_current_hosts": [
"el6host"
],
"hostvars": {
"el6host": {
"inventory_file": "inventory",
"group_names": [
"ungrouped"
],
"groups": {
"ungrouped": [
"el6host"
],
"all": [
"el6host"
]
},
"inventory_hostname": "el6host",
"inventory_hostname_short": "el6host",
"playbook_dir": "/home/jtanner/workspace/issues/AP-15905",
"omit": "__omit_place_holder__b3ac1e6ebeed06f4be0c1edca3dca34036cf7f57",
"inventory_dir": "/home/jtanner/workspace/issues/AP-15905",
"ansible_ssh_user": "root",
"ansible_check_mode": false,
"ansible_version": {
"major": 2,
"full": "2.2.0",
"string": "2.2.0",
"minor": 2,
"revision": 0
}
}
},
"group_names": [
"ungrouped"
],
"ansible_version": {
"major": 2,
"full": "2.2.0",
"string": "2.2.0",
"minor": 2,
"revision": 0
},
"ansible_ssh_pipelining": false,
"inventory_file": "inventory",
"ansible_module_compression": "ZIP_DEFLATED",
"ansible_failed_hosts": [],
"ansible_check_mode": false,
"groups": {
"ungrouped": [
"el6host"
],
"all": [
"el6host"
]
},
"ansible_host": "el6host",
"ansible_shell_executable": "/bin/sh",
"inventory_hostname_short": "el6host",
"omit": "__omit_place_holder__b3ac1e6ebeed06f4be0c1edca3dca34036cf7f57",
"inventory_dir": "/home/jtanner/workspace/issues/AP-15905",
"playbook_dir": "/home/jtanner/workspace/issues/AP-15905",
"ansible_ssh_user": "root",
"role_names": [],
"play_hosts": [
"el6host"
],
"ansible_sftp_extra_args": ""
}

@ -0,0 +1,156 @@
{
"ansible_pipelining": false,
"ansible_docker_extra_args": "",
"ansible_scp_extra_args": "",
"ansible_user": "root",
"ansible_play_hosts": [
"el6host"
],
"ansible_connection": "smart",
"ansible_ssh_common_args": "",
"environment": [],
"inventory_hostname": "el6host",
"vars": {
"ansible_check_mode": false,
"inventory_hostname": "el6host",
"inventory_file": "inventory",
"inventory_hostname_short": "el6host",
"playbook_dir": "/home/jtanner/workspace/issues/AP-15905",
"role_names": [],
"inventory_dir": "/home/jtanner/workspace/issues/AP-15905",
"environment": [],
"play_hosts": [
"el6host"
],
"ansible_play_hosts": [
"el6host"
],
"hostvars": {
"el6host": {
"inventory_file": "inventory",
"group_names": [
"ungrouped"
],
"groups": {
"ungrouped": [
"el6host",
"::1"
],
"all": [
"el6host",
"::1"
]
},
"inventory_hostname": "el6host",
"inventory_hostname_short": "el6host",
"playbook_dir": "/home/jtanner/workspace/issues/AP-15905",
"omit": "__omit_place_holder__b3ac1e6ebeed06f4be0c1edca3dca34036cf7f57",
"inventory_dir": "/home/jtanner/workspace/issues/AP-15905",
"ansible_ssh_user": "root",
"ansible_check_mode": false,
"ansible_version": {
"major": 2,
"full": "2.2.0",
"string": "2.2.0",
"minor": 2,
"revision": 0
}
}
},
"groups": {
"ungrouped": [
"el6host"
],
"all": [
"el6host"
]
},
"group_names": [
"ungrouped"
],
"omit": "__omit_place_holder__b3ac1e6ebeed06f4be0c1edca3dca34036cf7f57",
"ansible_version": {
"major": 2,
"full": "2.2.0",
"string": "2.2.0",
"minor": 2,
"revision": 0
},
"ansible_ssh_user": "root"
},
"ansible_accelerate_port": 5099,
"roledir": null,
"ansible_ssh_extra_args": "",
"ansible_ssh_host": "el6host",
"ansible_current_hosts": [
"el6host"
],
"hostvars": {
"el6host": {
"inventory_file": "inventory",
"group_names": [
"ungrouped"
],
"groups": {
"ungrouped": [
"el6host",
"::1"
],
"all": [
"el6host",
"::1"
]
},
"inventory_hostname": "el6host",
"inventory_hostname_short": "el6host",
"playbook_dir": "/home/jtanner/workspace/issues/AP-15905",
"omit": "__omit_place_holder__b3ac1e6ebeed06f4be0c1edca3dca34036cf7f57",
"inventory_dir": "/home/jtanner/workspace/issues/AP-15905",
"ansible_ssh_user": "root",
"ansible_check_mode": false,
"ansible_version": {
"major": 2,
"full": "2.2.0",
"string": "2.2.0",
"minor": 2,
"revision": 0
}
}
},
"group_names": [
"ungrouped"
],
"ansible_version": {
"major": 2,
"full": "2.2.0",
"string": "2.2.0",
"minor": 2,
"revision": 0
},
"ansible_ssh_pipelining": false,
"inventory_file": "inventory",
"ansible_module_compression": "ZIP_DEFLATED",
"ansible_failed_hosts": [],
"ansible_check_mode": false,
"groups": {
"ungrouped": [
"el6host"
],
"all": [
"el6host"
]
},
"ansible_host": "el6host",
"ansible_shell_executable": "/bin/sh",
"inventory_hostname_short": "el6host",
"omit": "__omit_place_holder__b3ac1e6ebeed06f4be0c1edca3dca34036cf7f57",
"ansible_python_interpreter": "/usr/bin/python",
"inventory_dir": "/home/jtanner/workspace/issues/AP-15905",
"playbook_dir": "/home/jtanner/workspace/issues/AP-15905",
"ansible_ssh_user": "root",
"role_names": [],
"play_hosts": [
"el6host"
],
"ansible_sftp_extra_args": ""
}

@ -0,0 +1,29 @@
task_args:
src: /tmp/deleteme
dest: /tmp/deleteme
fixtures:
taskvars_in: task_vars_in.json
taskvars_out: task_vars_out.json
connection:
transport: 'ssh'
_play_context:
remote_addr: '127.0.0.1'
remote_user: vagrant
hostvars:
'127.0.0.1': {}
'::1': {}
'localhost': {}
asserts:
- "hasattr(SAM._connection, 'ismock')"
- "SAM._connection.transport == 'local'"
- "self.execute_called"
- "self.task.args['_local_rsync_path'] == 'rsync'"
- "self.task.args['dest_port'] == 2202"
- "self.task.args['src'] == '/tmp/deleteme'"
- "self.task.args['dest'] == '/tmp/deleteme'"
- "self._play_context.shell == 'sh'"
- "self._play_context.remote_addr == '127.0.0.1'"
- "self._play_context.remote_user == 'vagrant'"
- "self._play_context.become == False"
- "self._play_context.become_user == 'root'"
- "self._play_context.password == None"

@ -0,0 +1,7 @@
{
"dest": "/tmp/deleteme",
"src": "/tmp/deleteme",
"private_key": "/home/jtanner/workspace/issues/AP-15905/.vagrant/machines/default/virtualbox/private_key",
"dest_port": 2202,
"_local_rsync_path": "rsync"
}

@ -0,0 +1,164 @@
{
"ansible_pipelining": false,
"ansible_docker_extra_args": "",
"ansible_scp_extra_args": "",
"ansible_user": "vagrant",
"ansible_play_hosts": [
"default"
],
"ansible_connection": "ssh",
"ansible_ssh_common_args": "",
"ansible_ssh_host": "127.0.0.1",
"inventory_hostname": "default",
"ansible_ssh_private_key_file": "/home/jtanner/workspace/issues/AP-15905/.vagrant/machines/default/virtualbox/private_key",
"vars": {
"ansible_check_mode": false,
"environment": [],
"inventory_hostname": "default",
"inventory_file": null,
"ansible_ssh_private_key_file": "/home/jtanner/workspace/issues/AP-15905/.vagrant/machines/default/virtualbox/private_key",
"inventory_hostname_short": "default",
"playbook_dir": "/home/jtanner/workspace/issues/AP-15905",
"role_names": [],
"inventory_dir": "/home/jtanner/workspace/issues/AP-15905/.vagrant/provisioners/ansible/inventory",
"ansible_ssh_host": "127.0.0.1",
"play_hosts": [
"default"
],
"ansible_play_hosts": [
"default"
],
"hostvars": {
"default": {
"inventory_file": null,
"ansible_check_mode": false,
"groups": {
"ungrouped": [
"default"
],
"all": [
"default"
]
},
"ansible_ssh_port": 2202,
"inventory_hostname": "default",
"ansible_ssh_private_key_file": "/home/jtanner/workspace/issues/AP-15905/.vagrant/machines/default/virtualbox/private_key",
"inventory_hostname_short": "default",
"playbook_dir": "/home/jtanner/workspace/issues/AP-15905",
"omit": "__omit_place_holder__06c4a1b11530cabdf4248804078c1ddacfb88b5e",
"inventory_dir": "/home/jtanner/workspace/issues/AP-15905/.vagrant/provisioners/ansible/inventory",
"ansible_ssh_host": "127.0.0.1",
"ansible_ssh_user": "vagrant",
"group_names": [
"ungrouped"
],
"ansible_version": {
"major": 2,
"full": "2.2.0",
"string": "2.2.0",
"minor": 2,
"revision": 0
}
}
},
"groups": {
"ungrouped": [
"default"
],
"all": [
"default"
]
},
"group_names": [
"ungrouped"
],
"omit": "__omit_place_holder__06c4a1b11530cabdf4248804078c1ddacfb88b5e",
"ansible_ssh_port": 2202,
"ansible_version": {
"major": 2,
"full": "2.2.0",
"string": "2.2.0",
"minor": 2,
"revision": 0
},
"ansible_ssh_user": "vagrant"
},
"ansible_accelerate_port": 5099,
"roledir": null,
"ansible_ssh_extra_args": "",
"environment": [],
"ansible_current_hosts": [
"default"
],
"hostvars": {
"default": {
"inventory_file": null,
"ansible_check_mode": false,
"groups": {
"ungrouped": [
"default"
],
"all": [
"default"
]
},
"ansible_ssh_port": 2202,
"inventory_hostname": "default",
"ansible_ssh_private_key_file": "/home/jtanner/workspace/issues/AP-15905/.vagrant/machines/default/virtualbox/private_key",
"inventory_hostname_short": "default",
"playbook_dir": "/home/jtanner/workspace/issues/AP-15905",
"omit": "__omit_place_holder__06c4a1b11530cabdf4248804078c1ddacfb88b5e",
"inventory_dir": "/home/jtanner/workspace/issues/AP-15905/.vagrant/provisioners/ansible/inventory",
"ansible_ssh_host": "127.0.0.1",
"ansible_ssh_user": "vagrant",
"group_names": [
"ungrouped"
],
"ansible_version": {
"major": 2,
"full": "2.2.0",
"string": "2.2.0",
"minor": 2,
"revision": 0
}
}
},
"group_names": [
"ungrouped"
],
"ansible_version": {
"major": 2,
"full": "2.2.0",
"string": "2.2.0",
"minor": 2,
"revision": 0
},
"ansible_ssh_pipelining": false,
"inventory_file": null,
"ansible_module_compression": "ZIP_DEFLATED",
"ansible_failed_hosts": [],
"ansible_check_mode": false,
"ansible_port": 2202,
"ansible_private_key_file": "/home/jtanner/workspace/issues/AP-15905/.vagrant/machines/default/virtualbox/private_key",
"groups": {
"ungrouped": [
"default"
],
"all": [
"default"
]
},
"ansible_ssh_port": 2202,
"ansible_host": "127.0.0.1",
"ansible_shell_executable": "/bin/sh",
"inventory_hostname_short": "default",
"omit": "__omit_place_holder__06c4a1b11530cabdf4248804078c1ddacfb88b5e",
"inventory_dir": "/home/jtanner/workspace/issues/AP-15905/.vagrant/provisioners/ansible/inventory",
"playbook_dir": "/home/jtanner/workspace/issues/AP-15905",
"ansible_ssh_user": "vagrant",
"role_names": [],
"play_hosts": [
"default"
],
"ansible_sftp_extra_args": ""
}

@ -0,0 +1,169 @@
{
"ansible_pipelining": false,
"ansible_docker_extra_args": "",
"ansible_scp_extra_args": "",
"ansible_user": "vagrant",
"ansible_play_hosts": [
"default"
],
"ansible_connection": "ssh",
"ansible_ssh_common_args": "",
"ansible_ssh_host": "127.0.0.1",
"inventory_hostname": "default",
"ansible_ssh_private_key_file": "/home/jtanner/workspace/issues/AP-15905/.vagrant/machines/default/virtualbox/private_key",
"vars": {
"ansible_check_mode": false,
"environment": [],
"inventory_hostname": "default",
"inventory_file": null,
"ansible_ssh_private_key_file": "/home/jtanner/workspace/issues/AP-15905/.vagrant/machines/default/virtualbox/private_key",
"inventory_hostname_short": "default",
"playbook_dir": "/home/jtanner/workspace/issues/AP-15905",
"role_names": [],
"inventory_dir": "/home/jtanner/workspace/issues/AP-15905/.vagrant/provisioners/ansible/inventory",
"ansible_ssh_host": "127.0.0.1",
"play_hosts": [
"default"
],
"ansible_play_hosts": [
"default"
],
"hostvars": {
"default": {
"inventory_file": null,
"ansible_check_mode": false,
"groups": {
"ungrouped": [
"default",
"::1"
],
"all": [
"default",
"::1"
]
},
"ansible_ssh_port": 2202,
"inventory_hostname": "default",
"ansible_ssh_private_key_file": "/home/jtanner/workspace/issues/AP-15905/.vagrant/machines/default/virtualbox/private_key",
"inventory_hostname_short": "default",
"playbook_dir": "/home/jtanner/workspace/issues/AP-15905",
"omit": "__omit_place_holder__06c4a1b11530cabdf4248804078c1ddacfb88b5e",
"inventory_dir": "/home/jtanner/workspace/issues/AP-15905/.vagrant/provisioners/ansible/inventory",
"ansible_ssh_host": "127.0.0.1",
"ansible_ssh_user": "vagrant",
"group_names": [
"ungrouped"
],
"ansible_version": {
"major": 2,
"full": "2.2.0",
"string": "2.2.0",
"minor": 2,
"revision": 0
}
}
},
"groups": {
"ungrouped": [
"default"
],
"all": [
"default"
]
},
"group_names": [
"ungrouped"
],
"omit": "__omit_place_holder__06c4a1b11530cabdf4248804078c1ddacfb88b5e",
"ansible_ssh_port": 2202,
"ansible_version": {
"major": 2,
"full": "2.2.0",
"string": "2.2.0",
"minor": 2,
"revision": 0
},
"ansible_ssh_user": "vagrant"
},
"ansible_accelerate_port": 5099,
"roledir": null,
"ansible_ssh_extra_args": "",
"environment": [],
"ansible_current_hosts": [
"default"
],
"hostvars": {
"default": {
"inventory_file": null,
"ansible_check_mode": false,
"groups": {
"ungrouped": [
"default",
"::1"
],
"all": [
"default",
"::1"
]
},
"ansible_ssh_port": 2202,
"inventory_hostname": "default",
"ansible_ssh_private_key_file": "/home/jtanner/workspace/issues/AP-15905/.vagrant/machines/default/virtualbox/private_key",
"inventory_hostname_short": "default",
"playbook_dir": "/home/jtanner/workspace/issues/AP-15905",
"omit": "__omit_place_holder__06c4a1b11530cabdf4248804078c1ddacfb88b5e",
"inventory_dir": "/home/jtanner/workspace/issues/AP-15905/.vagrant/provisioners/ansible/inventory",
"ansible_ssh_host": "127.0.0.1",
"ansible_ssh_user": "vagrant",
"group_names": [
"ungrouped"
],
"ansible_version": {
"major": 2,
"full": "2.2.0",
"string": "2.2.0",
"minor": 2,
"revision": 0
}
}
},
"group_names": [
"ungrouped"
],
"ansible_version": {
"major": 2,
"full": "2.2.0",
"string": "2.2.0",
"minor": 2,
"revision": 0
},
"ansible_ssh_pipelining": false,
"inventory_file": null,
"ansible_module_compression": "ZIP_DEFLATED",
"ansible_failed_hosts": [],
"ansible_check_mode": false,
"ansible_port": 2202,
"ansible_private_key_file": "/home/jtanner/workspace/issues/AP-15905/.vagrant/machines/default/virtualbox/private_key",
"groups": {
"ungrouped": [
"default"
],
"all": [
"default"
]
},
"ansible_ssh_port": 2202,
"ansible_host": "127.0.0.1",
"ansible_shell_executable": "/bin/sh",
"inventory_hostname_short": "default",
"omit": "__omit_place_holder__06c4a1b11530cabdf4248804078c1ddacfb88b5e",
"ansible_python_interpreter": "/usr/bin/python",
"inventory_dir": "/home/jtanner/workspace/issues/AP-15905/.vagrant/provisioners/ansible/inventory",
"playbook_dir": "/home/jtanner/workspace/issues/AP-15905",
"ansible_ssh_user": "vagrant",
"role_names": [],
"play_hosts": [
"default"
],
"ansible_sftp_extra_args": ""
}

@ -0,0 +1,32 @@
task:
#become: None
task_args:
src: /tmp/deleteme
dest: /tmp/deleteme
fixtures:
taskvars_in: task_vars_in.json
taskvars_out: task_vars_out.json
connection:
transport: 'ssh'
_play_context:
become: True
remote_addr: '127.0.0.1'
remote_user: vagrant
hostvars:
'127.0.0.1': {}
'::1': {}
'localhost': {}
asserts:
- "hasattr(SAM._connection, 'ismock')"
- "SAM._connection.transport == 'local'"
- "self.execute_called"
- "self.task.args['_local_rsync_path'] == 'rsync'"
- "self.task.args['dest_port'] == 2202"
- "self.task.args['src'] == '/tmp/deleteme'"
- "self.task.args['dest'] == '/tmp/deleteme'"
- "self._play_context.shell == 'sh'"
- "self._play_context.remote_addr == '127.0.0.1'"
- "self._play_context.remote_user == 'vagrant'"
- "self._play_context.become == False"
- "self._play_context.become_user == 'root'"
- "self._play_context.password == None"

@ -0,0 +1,7 @@
{
"dest": "/tmp/deleteme",
"src": "/tmp/deleteme",
"private_key": "/home/jtanner/workspace/issues/AP-15905/.vagrant/machines/default/virtualbox/private_key",
"dest_port": 2202,
"_local_rsync_path": "rsync"
}

@ -0,0 +1,164 @@
{
"ansible_pipelining": false,
"ansible_docker_extra_args": "",
"ansible_scp_extra_args": "",
"ansible_user": "vagrant",
"ansible_play_hosts": [
"default"
],
"ansible_connection": "ssh",
"ansible_ssh_common_args": "",
"ansible_ssh_host": "127.0.0.1",
"inventory_hostname": "default",
"ansible_ssh_private_key_file": "/home/jtanner/workspace/issues/AP-15905/.vagrant/machines/default/virtualbox/private_key",
"vars": {
"ansible_check_mode": false,
"environment": [],
"inventory_hostname": "default",
"inventory_file": null,
"ansible_ssh_private_key_file": "/home/jtanner/workspace/issues/AP-15905/.vagrant/machines/default/virtualbox/private_key",
"inventory_hostname_short": "default",
"playbook_dir": "/home/jtanner/workspace/issues/AP-15905",
"role_names": [],
"inventory_dir": "/home/jtanner/workspace/issues/AP-15905/.vagrant/provisioners/ansible/inventory",
"ansible_ssh_host": "127.0.0.1",
"play_hosts": [
"default"
],
"ansible_play_hosts": [
"default"
],
"hostvars": {
"default": {
"inventory_file": null,
"ansible_check_mode": false,
"groups": {
"ungrouped": [
"default"
],
"all": [
"default"
]
},
"ansible_ssh_port": 2202,
"inventory_hostname": "default",
"ansible_ssh_private_key_file": "/home/jtanner/workspace/issues/AP-15905/.vagrant/machines/default/virtualbox/private_key",
"inventory_hostname_short": "default",
"playbook_dir": "/home/jtanner/workspace/issues/AP-15905",
"omit": "__omit_place_holder__c360b80aa60ddd99087425dcd3a2094cdd5b8474",
"inventory_dir": "/home/jtanner/workspace/issues/AP-15905/.vagrant/provisioners/ansible/inventory",
"ansible_ssh_host": "127.0.0.1",
"ansible_ssh_user": "vagrant",
"group_names": [
"ungrouped"
],
"ansible_version": {
"major": 2,
"full": "2.2.0",
"string": "2.2.0",
"minor": 2,
"revision": 0
}
}
},
"groups": {
"ungrouped": [
"default"
],
"all": [
"default"
]
},
"group_names": [
"ungrouped"
],
"omit": "__omit_place_holder__c360b80aa60ddd99087425dcd3a2094cdd5b8474",
"ansible_ssh_port": 2202,
"ansible_version": {
"major": 2,
"full": "2.2.0",
"string": "2.2.0",
"minor": 2,
"revision": 0
},
"ansible_ssh_user": "vagrant"
},
"ansible_accelerate_port": 5099,
"roledir": null,
"ansible_ssh_extra_args": "",
"environment": [],
"ansible_current_hosts": [
"default"
],
"hostvars": {
"default": {
"inventory_file": null,
"ansible_check_mode": false,
"groups": {
"ungrouped": [
"default"
],
"all": [
"default"
]
},
"ansible_ssh_port": 2202,
"inventory_hostname": "default",
"ansible_ssh_private_key_file": "/home/jtanner/workspace/issues/AP-15905/.vagrant/machines/default/virtualbox/private_key",
"inventory_hostname_short": "default",
"playbook_dir": "/home/jtanner/workspace/issues/AP-15905",
"omit": "__omit_place_holder__c360b80aa60ddd99087425dcd3a2094cdd5b8474",
"inventory_dir": "/home/jtanner/workspace/issues/AP-15905/.vagrant/provisioners/ansible/inventory",
"ansible_ssh_host": "127.0.0.1",
"ansible_ssh_user": "vagrant",
"group_names": [
"ungrouped"
],
"ansible_version": {
"major": 2,
"full": "2.2.0",
"string": "2.2.0",
"minor": 2,
"revision": 0
}
}
},
"group_names": [
"ungrouped"
],
"ansible_version": {
"major": 2,
"full": "2.2.0",
"string": "2.2.0",
"minor": 2,
"revision": 0
},
"ansible_ssh_pipelining": false,
"inventory_file": null,
"ansible_module_compression": "ZIP_DEFLATED",
"ansible_failed_hosts": [],
"ansible_check_mode": false,
"ansible_port": 2202,
"ansible_private_key_file": "/home/jtanner/workspace/issues/AP-15905/.vagrant/machines/default/virtualbox/private_key",
"groups": {
"ungrouped": [
"default"
],
"all": [
"default"
]
},
"ansible_ssh_port": 2202,
"ansible_host": "127.0.0.1",
"ansible_shell_executable": "/bin/sh",
"inventory_hostname_short": "default",
"omit": "__omit_place_holder__c360b80aa60ddd99087425dcd3a2094cdd5b8474",
"inventory_dir": "/home/jtanner/workspace/issues/AP-15905/.vagrant/provisioners/ansible/inventory",
"playbook_dir": "/home/jtanner/workspace/issues/AP-15905",
"ansible_ssh_user": "vagrant",
"role_names": [],
"play_hosts": [
"default"
],
"ansible_sftp_extra_args": ""
}

@ -0,0 +1,169 @@
{
"ansible_pipelining": false,
"ansible_docker_extra_args": "",
"ansible_scp_extra_args": "",
"ansible_user": "vagrant",
"ansible_play_hosts": [
"default"
],
"ansible_connection": "ssh",
"ansible_ssh_common_args": "",
"ansible_ssh_host": "127.0.0.1",
"inventory_hostname": "default",
"ansible_ssh_private_key_file": "/home/jtanner/workspace/issues/AP-15905/.vagrant/machines/default/virtualbox/private_key",
"vars": {
"ansible_check_mode": false,
"environment": [],
"inventory_hostname": "default",
"inventory_file": null,
"ansible_ssh_private_key_file": "/home/jtanner/workspace/issues/AP-15905/.vagrant/machines/default/virtualbox/private_key",
"inventory_hostname_short": "default",
"playbook_dir": "/home/jtanner/workspace/issues/AP-15905",
"role_names": [],
"inventory_dir": "/home/jtanner/workspace/issues/AP-15905/.vagrant/provisioners/ansible/inventory",
"ansible_ssh_host": "127.0.0.1",
"play_hosts": [
"default"
],
"ansible_play_hosts": [
"default"
],
"hostvars": {
"default": {
"inventory_file": null,
"ansible_check_mode": false,
"groups": {
"ungrouped": [
"default",
"::1"
],
"all": [
"default",
"::1"
]
},
"ansible_ssh_port": 2202,
"inventory_hostname": "default",
"ansible_ssh_private_key_file": "/home/jtanner/workspace/issues/AP-15905/.vagrant/machines/default/virtualbox/private_key",
"inventory_hostname_short": "default",
"playbook_dir": "/home/jtanner/workspace/issues/AP-15905",
"omit": "__omit_place_holder__c360b80aa60ddd99087425dcd3a2094cdd5b8474",
"inventory_dir": "/home/jtanner/workspace/issues/AP-15905/.vagrant/provisioners/ansible/inventory",
"ansible_ssh_host": "127.0.0.1",
"ansible_ssh_user": "vagrant",
"group_names": [
"ungrouped"
],
"ansible_version": {
"major": 2,
"full": "2.2.0",
"string": "2.2.0",
"minor": 2,
"revision": 0
}
}
},
"groups": {
"ungrouped": [
"default"
],
"all": [
"default"
]
},
"group_names": [
"ungrouped"
],
"omit": "__omit_place_holder__c360b80aa60ddd99087425dcd3a2094cdd5b8474",
"ansible_ssh_port": 2202,
"ansible_version": {
"major": 2,
"full": "2.2.0",
"string": "2.2.0",
"minor": 2,
"revision": 0
},
"ansible_ssh_user": "vagrant"
},
"ansible_accelerate_port": 5099,
"roledir": null,
"ansible_ssh_extra_args": "",
"environment": [],
"ansible_current_hosts": [
"default"
],
"hostvars": {
"default": {
"inventory_file": null,
"ansible_check_mode": false,
"groups": {
"ungrouped": [
"default",
"::1"
],
"all": [
"default",
"::1"
]
},
"ansible_ssh_port": 2202,
"inventory_hostname": "default",
"ansible_ssh_private_key_file": "/home/jtanner/workspace/issues/AP-15905/.vagrant/machines/default/virtualbox/private_key",
"inventory_hostname_short": "default",
"playbook_dir": "/home/jtanner/workspace/issues/AP-15905",
"omit": "__omit_place_holder__c360b80aa60ddd99087425dcd3a2094cdd5b8474",
"inventory_dir": "/home/jtanner/workspace/issues/AP-15905/.vagrant/provisioners/ansible/inventory",
"ansible_ssh_host": "127.0.0.1",
"ansible_ssh_user": "vagrant",
"group_names": [
"ungrouped"
],
"ansible_version": {
"major": 2,
"full": "2.2.0",
"string": "2.2.0",
"minor": 2,
"revision": 0
}
}
},
"group_names": [
"ungrouped"
],
"ansible_version": {
"major": 2,
"full": "2.2.0",
"string": "2.2.0",
"minor": 2,
"revision": 0
},
"ansible_ssh_pipelining": false,
"inventory_file": null,
"ansible_module_compression": "ZIP_DEFLATED",
"ansible_failed_hosts": [],
"ansible_check_mode": false,
"ansible_port": 2202,
"ansible_private_key_file": "/home/jtanner/workspace/issues/AP-15905/.vagrant/machines/default/virtualbox/private_key",
"groups": {
"ungrouped": [
"default"
],
"all": [
"default"
]
},
"ansible_ssh_port": 2202,
"ansible_host": "127.0.0.1",
"ansible_shell_executable": "/bin/sh",
"inventory_hostname_short": "default",
"omit": "__omit_place_holder__c360b80aa60ddd99087425dcd3a2094cdd5b8474",
"ansible_python_interpreter": "/usr/bin/python",
"inventory_dir": "/home/jtanner/workspace/issues/AP-15905/.vagrant/provisioners/ansible/inventory",
"playbook_dir": "/home/jtanner/workspace/issues/AP-15905",
"ansible_ssh_user": "vagrant",
"role_names": [],
"play_hosts": [
"default"
],
"ansible_sftp_extra_args": ""
}

@ -0,0 +1,29 @@
task_args:
src: /tmp/deleteme
dest: /tmp/deleteme
fixtures:
taskvars_in: task_vars_in.json
taskvars_out: task_vars_out.json
connection:
transport: 'ssh'
_play_context:
remote_addr: '127.0.0.1'
remote_user: vagrant
hostvars:
'127.0.0.1': {}
'::1': {}
'localhost': {}
asserts:
- "hasattr(SAM._connection, 'ismock')"
- "SAM._connection.transport == 'local'"
- "self.execute_called"
- "self.task.args['_local_rsync_path'] == 'rsync'"
- "self.task.args['dest_port'] == 2202"
- "self.task.args['src'] == '/tmp/deleteme'"
- "self.task.args['dest'] == '/tmp/deleteme'"
- "self._play_context.shell == 'sh'"
- "self._play_context.remote_addr == '127.0.0.1'"
- "self._play_context.remote_user == 'vagrant'"
- "self._play_context.become == False"
- "self._play_context.become_user == 'root'"
- "self._play_context.password == None"

@ -0,0 +1,7 @@
{
"dest": "/tmp/deleteme",
"src": "/tmp/deleteme",
"private_key": "/home/jtanner/workspace/issues/AP-15905/.vagrant/machines/default/virtualbox/private_key",
"dest_port": 2202,
"_local_rsync_path": "rsync"
}

@ -0,0 +1,164 @@
{
"ansible_pipelining": false,
"ansible_docker_extra_args": "",
"ansible_scp_extra_args": "",
"ansible_user": "vagrant",
"ansible_play_hosts": [
"default"
],
"ansible_connection": "ssh",
"ansible_ssh_common_args": "",
"ansible_ssh_host": "127.0.0.1",
"inventory_hostname": "default",
"ansible_ssh_private_key_file": "/home/jtanner/workspace/issues/AP-15905/.vagrant/machines/default/virtualbox/private_key",
"vars": {
"ansible_check_mode": false,
"environment": [],
"inventory_hostname": "default",
"inventory_file": null,
"ansible_ssh_private_key_file": "/home/jtanner/workspace/issues/AP-15905/.vagrant/machines/default/virtualbox/private_key",
"inventory_hostname_short": "default",
"playbook_dir": "/home/jtanner/workspace/issues/AP-15905",
"role_names": [],
"inventory_dir": "/home/jtanner/workspace/issues/AP-15905/.vagrant/provisioners/ansible/inventory",
"ansible_ssh_host": "127.0.0.1",
"play_hosts": [
"default"
],
"ansible_play_hosts": [
"default"
],
"hostvars": {
"default": {
"inventory_file": null,
"ansible_check_mode": false,
"groups": {
"ungrouped": [
"default"
],
"all": [
"default"
]
},
"ansible_ssh_port": 2202,
"inventory_hostname": "default",
"ansible_ssh_private_key_file": "/home/jtanner/workspace/issues/AP-15905/.vagrant/machines/default/virtualbox/private_key",
"inventory_hostname_short": "default",
"playbook_dir": "/home/jtanner/workspace/issues/AP-15905",
"omit": "__omit_place_holder__c360b80aa60ddd99087425dcd3a2094cdd5b8474",
"inventory_dir": "/home/jtanner/workspace/issues/AP-15905/.vagrant/provisioners/ansible/inventory",
"ansible_ssh_host": "127.0.0.1",
"ansible_ssh_user": "vagrant",
"group_names": [
"ungrouped"
],
"ansible_version": {
"major": 2,
"full": "2.2.0",
"string": "2.2.0",
"minor": 2,
"revision": 0
}
}
},
"groups": {
"ungrouped": [
"default"
],
"all": [
"default"
]
},
"group_names": [
"ungrouped"
],
"omit": "__omit_place_holder__c360b80aa60ddd99087425dcd3a2094cdd5b8474",
"ansible_ssh_port": 2202,
"ansible_version": {
"major": 2,
"full": "2.2.0",
"string": "2.2.0",
"minor": 2,
"revision": 0
},
"ansible_ssh_user": "vagrant"
},
"ansible_accelerate_port": 5099,
"roledir": null,
"ansible_ssh_extra_args": "",
"environment": [],
"ansible_current_hosts": [
"default"
],
"hostvars": {
"default": {
"inventory_file": null,
"ansible_check_mode": false,
"groups": {
"ungrouped": [
"default"
],
"all": [
"default"
]
},
"ansible_ssh_port": 2202,
"inventory_hostname": "default",
"ansible_ssh_private_key_file": "/home/jtanner/workspace/issues/AP-15905/.vagrant/machines/default/virtualbox/private_key",
"inventory_hostname_short": "default",
"playbook_dir": "/home/jtanner/workspace/issues/AP-15905",
"omit": "__omit_place_holder__c360b80aa60ddd99087425dcd3a2094cdd5b8474",
"inventory_dir": "/home/jtanner/workspace/issues/AP-15905/.vagrant/provisioners/ansible/inventory",
"ansible_ssh_host": "127.0.0.1",
"ansible_ssh_user": "vagrant",
"group_names": [
"ungrouped"
],
"ansible_version": {
"major": 2,
"full": "2.2.0",
"string": "2.2.0",
"minor": 2,
"revision": 0
}
}
},
"group_names": [
"ungrouped"
],
"ansible_version": {
"major": 2,
"full": "2.2.0",
"string": "2.2.0",
"minor": 2,
"revision": 0
},
"ansible_ssh_pipelining": false,
"inventory_file": null,
"ansible_module_compression": "ZIP_DEFLATED",
"ansible_failed_hosts": [],
"ansible_check_mode": false,
"ansible_port": 2202,
"ansible_private_key_file": "/home/jtanner/workspace/issues/AP-15905/.vagrant/machines/default/virtualbox/private_key",
"groups": {
"ungrouped": [
"default"
],
"all": [
"default"
]
},
"ansible_ssh_port": 2202,
"ansible_host": "127.0.0.1",
"ansible_shell_executable": "/bin/sh",
"inventory_hostname_short": "default",
"omit": "__omit_place_holder__c360b80aa60ddd99087425dcd3a2094cdd5b8474",
"inventory_dir": "/home/jtanner/workspace/issues/AP-15905/.vagrant/provisioners/ansible/inventory",
"playbook_dir": "/home/jtanner/workspace/issues/AP-15905",
"ansible_ssh_user": "vagrant",
"role_names": [],
"play_hosts": [
"default"
],
"ansible_sftp_extra_args": ""
}

@ -0,0 +1,169 @@
{
"ansible_pipelining": false,
"ansible_docker_extra_args": "",
"ansible_scp_extra_args": "",
"ansible_user": "vagrant",
"ansible_play_hosts": [
"default"
],
"ansible_connection": "ssh",
"ansible_ssh_common_args": "",
"ansible_ssh_host": "127.0.0.1",
"inventory_hostname": "default",
"ansible_ssh_private_key_file": "/home/jtanner/workspace/issues/AP-15905/.vagrant/machines/default/virtualbox/private_key",
"vars": {
"ansible_check_mode": false,
"environment": [],
"inventory_hostname": "default",
"inventory_file": null,
"ansible_ssh_private_key_file": "/home/jtanner/workspace/issues/AP-15905/.vagrant/machines/default/virtualbox/private_key",
"inventory_hostname_short": "default",
"playbook_dir": "/home/jtanner/workspace/issues/AP-15905",
"role_names": [],
"inventory_dir": "/home/jtanner/workspace/issues/AP-15905/.vagrant/provisioners/ansible/inventory",
"ansible_ssh_host": "127.0.0.1",
"play_hosts": [
"default"
],
"ansible_play_hosts": [
"default"
],
"hostvars": {
"default": {
"inventory_file": null,
"ansible_check_mode": false,
"groups": {
"ungrouped": [
"default",
"::1"
],
"all": [
"default",
"::1"
]
},
"ansible_ssh_port": 2202,
"inventory_hostname": "default",
"ansible_ssh_private_key_file": "/home/jtanner/workspace/issues/AP-15905/.vagrant/machines/default/virtualbox/private_key",
"inventory_hostname_short": "default",
"playbook_dir": "/home/jtanner/workspace/issues/AP-15905",
"omit": "__omit_place_holder__c360b80aa60ddd99087425dcd3a2094cdd5b8474",
"inventory_dir": "/home/jtanner/workspace/issues/AP-15905/.vagrant/provisioners/ansible/inventory",
"ansible_ssh_host": "127.0.0.1",
"ansible_ssh_user": "vagrant",
"group_names": [
"ungrouped"
],
"ansible_version": {
"major": 2,
"full": "2.2.0",
"string": "2.2.0",
"minor": 2,
"revision": 0
}
}
},
"groups": {
"ungrouped": [
"default"
],
"all": [
"default"
]
},
"group_names": [
"ungrouped"
],
"omit": "__omit_place_holder__c360b80aa60ddd99087425dcd3a2094cdd5b8474",
"ansible_ssh_port": 2202,
"ansible_version": {
"major": 2,
"full": "2.2.0",
"string": "2.2.0",
"minor": 2,
"revision": 0
},
"ansible_ssh_user": "vagrant"
},
"ansible_accelerate_port": 5099,
"roledir": null,
"ansible_ssh_extra_args": "",
"environment": [],
"ansible_current_hosts": [
"default"
],
"hostvars": {
"default": {
"inventory_file": null,
"ansible_check_mode": false,
"groups": {
"ungrouped": [
"default",
"::1"
],
"all": [
"default",
"::1"
]
},
"ansible_ssh_port": 2202,
"inventory_hostname": "default",
"ansible_ssh_private_key_file": "/home/jtanner/workspace/issues/AP-15905/.vagrant/machines/default/virtualbox/private_key",
"inventory_hostname_short": "default",
"playbook_dir": "/home/jtanner/workspace/issues/AP-15905",
"omit": "__omit_place_holder__c360b80aa60ddd99087425dcd3a2094cdd5b8474",
"inventory_dir": "/home/jtanner/workspace/issues/AP-15905/.vagrant/provisioners/ansible/inventory",
"ansible_ssh_host": "127.0.0.1",
"ansible_ssh_user": "vagrant",
"group_names": [
"ungrouped"
],
"ansible_version": {
"major": 2,
"full": "2.2.0",
"string": "2.2.0",
"minor": 2,
"revision": 0
}
}
},
"group_names": [
"ungrouped"
],
"ansible_version": {
"major": 2,
"full": "2.2.0",
"string": "2.2.0",
"minor": 2,
"revision": 0
},
"ansible_ssh_pipelining": false,
"inventory_file": null,
"ansible_module_compression": "ZIP_DEFLATED",
"ansible_failed_hosts": [],
"ansible_check_mode": false,
"ansible_port": 2202,
"ansible_private_key_file": "/home/jtanner/workspace/issues/AP-15905/.vagrant/machines/default/virtualbox/private_key",
"groups": {
"ungrouped": [
"default"
],
"all": [
"default"
]
},
"ansible_ssh_port": 2202,
"ansible_host": "127.0.0.1",
"ansible_shell_executable": "/bin/sh",
"inventory_hostname_short": "default",
"omit": "__omit_place_holder__c360b80aa60ddd99087425dcd3a2094cdd5b8474",
"ansible_python_interpreter": "/usr/bin/python",
"inventory_dir": "/home/jtanner/workspace/issues/AP-15905/.vagrant/provisioners/ansible/inventory",
"playbook_dir": "/home/jtanner/workspace/issues/AP-15905",
"ansible_ssh_user": "vagrant",
"role_names": [],
"play_hosts": [
"default"
],
"ansible_sftp_extra_args": ""
}

@ -0,0 +1,26 @@
fixtures:
taskvars_in: task_vars_in.json
taskvars_out: task_vars_out.json
task_args:
src: /tmp/deleteme
dest: /tmp/deleteme
_task:
delegate_to: u1404
_play_context:
shell: None
remote_addr: u1404
remote_user: root
connection:
transport: 'ssh'
hostvars:
'127.0.0.1': {}
'::1': {}
'localhost': {}
asserts:
- "hasattr(SAM._connection, 'ismock')"
- "SAM._connection.transport == 'ssh'"
- "self._play_context.shell == None"
- "self.execute_called"
- "self.task.args['_local_rsync_path'] == 'rsync'"
- "self.task.args['src'] == '/tmp/deleteme'"
- "self.task.args['dest'] == 'el6host:/tmp/deleteme'"

@ -0,0 +1,5 @@
{
"dest": "el6host:/tmp/deleteme",
"src": "/tmp/deleteme",
"_local_rsync_path": "rsync"
}

@ -0,0 +1,379 @@
{
"ansible_pipelining": false,
"ansible_docker_extra_args": "",
"ansible_scp_extra_args": "",
"ansible_user": "root",
"ansible_play_hosts": [
"el6host"
],
"ansible_connection": "smart",
"ansible_ssh_common_args": "",
"environment": [],
"inventory_hostname": "el6host",
"vars": {
"ansible_check_mode": false,
"inventory_hostname": "el6host",
"inventory_file": "inventory",
"ansible_delegated_vars": {
"u1404": {
"inventory_hostname": "u1404",
"inventory_file": "inventory",
"vars": {
"inventory_file": "inventory",
"role_names": [],
"ansible_play_hosts": [
"el6host"
],
"groups": {
"ungrouped": [
"el6host",
"u1404"
],
"all": [
"el6host",
"u1404"
]
},
"ansible_check_mode": false,
"inventory_hostname": "u1404",
"inventory_hostname_short": "u1404",
"playbook_dir": "/home/jtanner/workspace/issues/AP-15905",
"omit": "__omit_place_holder__2433ce0463ffd13b68850ce9cdd98a1cde088e22",
"inventory_dir": "/home/jtanner/workspace/issues/AP-15905",
"environment": [],
"ansible_ssh_user": "root",
"group_names": [
"ungrouped"
],
"play_hosts": [
"el6host"
],
"ansible_version": {
"major": 2,
"full": "2.2.0",
"string": "2.2.0",
"minor": 2,
"revision": 0
}
},
"inventory_hostname_short": "u1404",
"playbook_dir": "/home/jtanner/workspace/issues/AP-15905",
"group_names": [
"ungrouped"
],
"inventory_dir": "/home/jtanner/workspace/issues/AP-15905",
"omit": "__omit_place_holder__2433ce0463ffd13b68850ce9cdd98a1cde088e22",
"ansible_host": "u1404",
"environment": [],
"ansible_play_hosts": [
"el6host"
],
"groups": {
"ungrouped": [
"el6host",
"u1404"
],
"all": [
"el6host",
"u1404"
]
},
"ansible_check_mode": false,
"play_hosts": [
"el6host"
],
"role_names": [],
"ansible_port": null,
"ansible_version": {
"major": 2,
"full": "2.2.0",
"string": "2.2.0",
"minor": 2,
"revision": 0
},
"ansible_ssh_user": "root"
}
},
"inventory_hostname_short": "el6host",
"playbook_dir": "/home/jtanner/workspace/issues/AP-15905",
"role_names": [],
"inventory_dir": "/home/jtanner/workspace/issues/AP-15905",
"environment": [],
"play_hosts": [
"el6host"
],
"ansible_play_hosts": [
"el6host"
],
"hostvars": {
"el6host": {
"inventory_file": "inventory",
"group_names": [
"ungrouped"
],
"groups": {
"ungrouped": [
"el6host",
"u1404"
],
"all": [
"el6host",
"u1404"
]
},
"inventory_hostname": "el6host",
"inventory_hostname_short": "el6host",
"playbook_dir": "/home/jtanner/workspace/issues/AP-15905",
"omit": "__omit_place_holder__2433ce0463ffd13b68850ce9cdd98a1cde088e22",
"inventory_dir": "/home/jtanner/workspace/issues/AP-15905",
"ansible_ssh_user": "root",
"ansible_check_mode": false,
"ansible_version": {
"major": 2,
"full": "2.2.0",
"string": "2.2.0",
"minor": 2,
"revision": 0
}
},
"u1404": {
"inventory_file": "inventory",
"group_names": [
"ungrouped"
],
"groups": {
"ungrouped": [
"el6host",
"u1404"
],
"all": [
"el6host",
"u1404"
]
},
"inventory_hostname": "u1404",
"inventory_hostname_short": "u1404",
"playbook_dir": "/home/jtanner/workspace/issues/AP-15905",
"omit": "__omit_place_holder__2433ce0463ffd13b68850ce9cdd98a1cde088e22",
"inventory_dir": "/home/jtanner/workspace/issues/AP-15905",
"ansible_ssh_user": "root",
"ansible_check_mode": false,
"ansible_version": {
"major": 2,
"full": "2.2.0",
"string": "2.2.0",
"minor": 2,
"revision": 0
}
}
},
"groups": {
"ungrouped": [
"el6host",
"u1404"
],
"all": [
"el6host",
"u1404"
]
},
"group_names": [
"ungrouped"
],
"omit": "__omit_place_holder__2433ce0463ffd13b68850ce9cdd98a1cde088e22",
"ansible_version": {
"major": 2,
"full": "2.2.0",
"string": "2.2.0",
"minor": 2,
"revision": 0
},
"ansible_ssh_user": "root"
},
"ansible_accelerate_port": 5099,
"roledir": null,
"ansible_ssh_extra_args": "",
"ansible_ssh_host": "u1404",
"ansible_current_hosts": [
"el6host"
],
"hostvars": {
"el6host": {
"inventory_file": "inventory",
"group_names": [
"ungrouped"
],
"groups": {
"ungrouped": [
"el6host",
"u1404"
],
"all": [
"el6host",
"u1404"
]
},
"inventory_hostname": "el6host",
"inventory_hostname_short": "el6host",
"playbook_dir": "/home/jtanner/workspace/issues/AP-15905",
"omit": "__omit_place_holder__2433ce0463ffd13b68850ce9cdd98a1cde088e22",
"inventory_dir": "/home/jtanner/workspace/issues/AP-15905",
"ansible_ssh_user": "root",
"ansible_check_mode": false,
"ansible_version": {
"major": 2,
"full": "2.2.0",
"string": "2.2.0",
"minor": 2,
"revision": 0
}
},
"u1404": {
"inventory_file": "inventory",
"group_names": [
"ungrouped"
],
"groups": {
"ungrouped": [
"el6host",
"u1404"
],
"all": [
"el6host",
"u1404"
]
},
"inventory_hostname": "u1404",
"inventory_hostname_short": "u1404",
"playbook_dir": "/home/jtanner/workspace/issues/AP-15905",
"omit": "__omit_place_holder__2433ce0463ffd13b68850ce9cdd98a1cde088e22",
"inventory_dir": "/home/jtanner/workspace/issues/AP-15905",
"ansible_ssh_user": "root",
"ansible_check_mode": false,
"ansible_version": {
"major": 2,
"full": "2.2.0",
"string": "2.2.0",
"minor": 2,
"revision": 0
}
}
},
"group_names": [
"ungrouped"
],
"ansible_version": {
"major": 2,
"full": "2.2.0",
"string": "2.2.0",
"minor": 2,
"revision": 0
},
"ansible_ssh_pipelining": false,
"inventory_file": "inventory",
"ansible_delegated_vars": {
"u1404": {
"inventory_hostname": "u1404",
"inventory_file": "inventory",
"vars": {
"ansible_check_mode": false,
"inventory_hostname": "u1404",
"inventory_file": "inventory",
"inventory_hostname_short": "u1404",
"playbook_dir": "/home/jtanner/workspace/issues/AP-15905",
"omit": "__omit_place_holder__2433ce0463ffd13b68850ce9cdd98a1cde088e22",
"inventory_dir": "/home/jtanner/workspace/issues/AP-15905",
"environment": [],
"ansible_ssh_user": "root",
"ansible_play_hosts": [
"el6host"
],
"groups": {
"ungrouped": [
"el6host",
"u1404"
],
"all": [
"el6host",
"u1404"
]
},
"group_names": [
"ungrouped"
],
"play_hosts": [
"el6host"
],
"ansible_version": {
"major": 2,
"full": "2.2.0",
"string": "2.2.0",
"minor": 2,
"revision": 0
},
"role_names": []
},
"inventory_hostname_short": "u1404",
"playbook_dir": "/home/jtanner/workspace/issues/AP-15905",
"group_names": [
"ungrouped"
],
"inventory_dir": "/home/jtanner/workspace/issues/AP-15905",
"omit": "__omit_place_holder__2433ce0463ffd13b68850ce9cdd98a1cde088e22",
"ansible_host": "u1404",
"environment": [],
"ansible_play_hosts": [
"el6host"
],
"groups": {
"ungrouped": [
"el6host",
"u1404"
],
"all": [
"el6host",
"u1404"
]
},
"ansible_check_mode": false,
"play_hosts": [
"el6host"
],
"role_names": [],
"ansible_port": null,
"ansible_version": {
"major": 2,
"full": "2.2.0",
"string": "2.2.0",
"minor": 2,
"revision": 0
},
"ansible_ssh_user": "root"
}
},
"ansible_module_compression": "ZIP_DEFLATED",
"ansible_failed_hosts": [],
"ansible_check_mode": false,
"groups": {
"ungrouped": [
"el6host",
"u1404"
],
"all": [
"el6host",
"u1404"
]
},
"ansible_host": "u1404",
"ansible_shell_executable": "/bin/sh",
"inventory_hostname_short": "el6host",
"omit": "__omit_place_holder__2433ce0463ffd13b68850ce9cdd98a1cde088e22",
"inventory_dir": "/home/jtanner/workspace/issues/AP-15905",
"playbook_dir": "/home/jtanner/workspace/issues/AP-15905",
"ansible_ssh_user": "root",
"role_names": [],
"play_hosts": [
"el6host"
],
"ansible_sftp_extra_args": ""
}

@ -0,0 +1,387 @@
{
"ansible_pipelining": false,
"ansible_docker_extra_args": "",
"ansible_scp_extra_args": "",
"ansible_user": "root",
"ansible_play_hosts": [
"el6host"
],
"ansible_connection": "smart",
"ansible_ssh_common_args": "",
"environment": [],
"inventory_hostname": "el6host",
"vars": {
"ansible_check_mode": false,
"inventory_hostname": "el6host",
"inventory_file": "inventory",
"ansible_delegated_vars": {
"u1404": {
"inventory_hostname": "u1404",
"inventory_file": "inventory",
"vars": {
"inventory_file": "inventory",
"role_names": [],
"ansible_play_hosts": [
"el6host"
],
"groups": {
"ungrouped": [
"el6host",
"u1404"
],
"all": [
"el6host",
"u1404"
]
},
"ansible_check_mode": false,
"inventory_hostname": "u1404",
"inventory_hostname_short": "u1404",
"playbook_dir": "/home/jtanner/workspace/issues/AP-15905",
"omit": "__omit_place_holder__2433ce0463ffd13b68850ce9cdd98a1cde088e22",
"inventory_dir": "/home/jtanner/workspace/issues/AP-15905",
"environment": [],
"ansible_ssh_user": "root",
"group_names": [
"ungrouped"
],
"play_hosts": [
"el6host"
],
"ansible_version": {
"major": 2,
"full": "2.2.0",
"string": "2.2.0",
"minor": 2,
"revision": 0
}
},
"inventory_hostname_short": "u1404",
"playbook_dir": "/home/jtanner/workspace/issues/AP-15905",
"group_names": [
"ungrouped"
],
"inventory_dir": "/home/jtanner/workspace/issues/AP-15905",
"omit": "__omit_place_holder__2433ce0463ffd13b68850ce9cdd98a1cde088e22",
"ansible_host": "u1404",
"environment": [],
"ansible_play_hosts": [
"el6host"
],
"groups": {
"ungrouped": [
"el6host",
"u1404"
],
"all": [
"el6host",
"u1404"
]
},
"ansible_check_mode": false,
"play_hosts": [
"el6host"
],
"role_names": [],
"ansible_port": null,
"ansible_version": {
"major": 2,
"full": "2.2.0",
"string": "2.2.0",
"minor": 2,
"revision": 0
},
"ansible_ssh_user": "root"
}
},
"inventory_hostname_short": "el6host",
"playbook_dir": "/home/jtanner/workspace/issues/AP-15905",
"role_names": [],
"inventory_dir": "/home/jtanner/workspace/issues/AP-15905",
"environment": [],
"play_hosts": [
"el6host"
],
"ansible_play_hosts": [
"el6host"
],
"hostvars": {
"el6host": {
"inventory_file": "inventory",
"group_names": [
"ungrouped"
],
"groups": {
"ungrouped": [
"el6host",
"u1404",
"::1"
],
"all": [
"el6host",
"u1404",
"::1"
]
},
"inventory_hostname": "el6host",
"inventory_hostname_short": "el6host",
"playbook_dir": "/home/jtanner/workspace/issues/AP-15905",
"omit": "__omit_place_holder__2433ce0463ffd13b68850ce9cdd98a1cde088e22",
"inventory_dir": "/home/jtanner/workspace/issues/AP-15905",
"ansible_ssh_user": "root",
"ansible_check_mode": false,
"ansible_version": {
"major": 2,
"full": "2.2.0",
"string": "2.2.0",
"minor": 2,
"revision": 0
}
},
"u1404": {
"inventory_file": "inventory",
"group_names": [
"ungrouped"
],
"groups": {
"ungrouped": [
"el6host",
"u1404",
"::1"
],
"all": [
"el6host",
"u1404",
"::1"
]
},
"inventory_hostname": "u1404",
"inventory_hostname_short": "u1404",
"playbook_dir": "/home/jtanner/workspace/issues/AP-15905",
"omit": "__omit_place_holder__2433ce0463ffd13b68850ce9cdd98a1cde088e22",
"inventory_dir": "/home/jtanner/workspace/issues/AP-15905",
"ansible_ssh_user": "root",
"ansible_check_mode": false,
"ansible_version": {
"major": 2,
"full": "2.2.0",
"string": "2.2.0",
"minor": 2,
"revision": 0
}
}
},
"groups": {
"ungrouped": [
"el6host",
"u1404"
],
"all": [
"el6host",
"u1404"
]
},
"group_names": [
"ungrouped"
],
"omit": "__omit_place_holder__2433ce0463ffd13b68850ce9cdd98a1cde088e22",
"ansible_version": {
"major": 2,
"full": "2.2.0",
"string": "2.2.0",
"minor": 2,
"revision": 0
},
"ansible_ssh_user": "root"
},
"ansible_accelerate_port": 5099,
"roledir": null,
"ansible_ssh_extra_args": "",
"ansible_ssh_host": "u1404",
"ansible_current_hosts": [
"el6host"
],
"hostvars": {
"el6host": {
"inventory_file": "inventory",
"group_names": [
"ungrouped"
],
"groups": {
"ungrouped": [
"el6host",
"u1404",
"::1"
],
"all": [
"el6host",
"u1404",
"::1"
]
},
"inventory_hostname": "el6host",
"inventory_hostname_short": "el6host",
"playbook_dir": "/home/jtanner/workspace/issues/AP-15905",
"omit": "__omit_place_holder__2433ce0463ffd13b68850ce9cdd98a1cde088e22",
"inventory_dir": "/home/jtanner/workspace/issues/AP-15905",
"ansible_ssh_user": "root",
"ansible_check_mode": false,
"ansible_version": {
"major": 2,
"full": "2.2.0",
"string": "2.2.0",
"minor": 2,
"revision": 0
}
},
"u1404": {
"inventory_file": "inventory",
"group_names": [
"ungrouped"
],
"groups": {
"ungrouped": [
"el6host",
"u1404",
"::1"
],
"all": [
"el6host",
"u1404",
"::1"
]
},
"inventory_hostname": "u1404",
"inventory_hostname_short": "u1404",
"playbook_dir": "/home/jtanner/workspace/issues/AP-15905",
"omit": "__omit_place_holder__2433ce0463ffd13b68850ce9cdd98a1cde088e22",
"inventory_dir": "/home/jtanner/workspace/issues/AP-15905",
"ansible_ssh_user": "root",
"ansible_check_mode": false,
"ansible_version": {
"major": 2,
"full": "2.2.0",
"string": "2.2.0",
"minor": 2,
"revision": 0
}
}
},
"group_names": [
"ungrouped"
],
"ansible_version": {
"major": 2,
"full": "2.2.0",
"string": "2.2.0",
"minor": 2,
"revision": 0
},
"ansible_ssh_pipelining": false,
"inventory_file": "inventory",
"ansible_delegated_vars": {
"u1404": {
"inventory_hostname": "u1404",
"inventory_file": "inventory",
"vars": {
"ansible_check_mode": false,
"inventory_hostname": "u1404",
"inventory_file": "inventory",
"inventory_hostname_short": "u1404",
"playbook_dir": "/home/jtanner/workspace/issues/AP-15905",
"omit": "__omit_place_holder__2433ce0463ffd13b68850ce9cdd98a1cde088e22",
"inventory_dir": "/home/jtanner/workspace/issues/AP-15905",
"environment": [],
"ansible_ssh_user": "root",
"ansible_play_hosts": [
"el6host"
],
"groups": {
"ungrouped": [
"el6host",
"u1404"
],
"all": [
"el6host",
"u1404"
]
},
"group_names": [
"ungrouped"
],
"play_hosts": [
"el6host"
],
"ansible_version": {
"major": 2,
"full": "2.2.0",
"string": "2.2.0",
"minor": 2,
"revision": 0
},
"role_names": []
},
"inventory_hostname_short": "u1404",
"playbook_dir": "/home/jtanner/workspace/issues/AP-15905",
"group_names": [
"ungrouped"
],
"inventory_dir": "/home/jtanner/workspace/issues/AP-15905",
"omit": "__omit_place_holder__2433ce0463ffd13b68850ce9cdd98a1cde088e22",
"ansible_host": "u1404",
"environment": [],
"ansible_play_hosts": [
"el6host"
],
"groups": {
"ungrouped": [
"el6host",
"u1404"
],
"all": [
"el6host",
"u1404"
]
},
"ansible_check_mode": false,
"play_hosts": [
"el6host"
],
"role_names": [],
"ansible_port": null,
"ansible_version": {
"major": 2,
"full": "2.2.0",
"string": "2.2.0",
"minor": 2,
"revision": 0
},
"ansible_ssh_user": "root"
}
},
"ansible_module_compression": "ZIP_DEFLATED",
"ansible_failed_hosts": [],
"ansible_check_mode": false,
"groups": {
"ungrouped": [
"el6host",
"u1404"
],
"all": [
"el6host",
"u1404"
]
},
"ansible_host": "u1404",
"ansible_shell_executable": "/bin/sh",
"inventory_hostname_short": "el6host",
"omit": "__omit_place_holder__2433ce0463ffd13b68850ce9cdd98a1cde088e22",
"inventory_dir": "/home/jtanner/workspace/issues/AP-15905",
"playbook_dir": "/home/jtanner/workspace/issues/AP-15905",
"ansible_ssh_user": "root",
"role_names": [],
"play_hosts": [
"el6host"
],
"ansible_sftp_extra_args": ""
}

@ -0,0 +1,33 @@
fixtures:
taskvars_in: task_vars_in.json
taskvars_out: task_vars_out.json
task_args:
src: /tmp/deleteme
dest: /tmp/deleteme
_task:
delegate_to: u1404
_play_context:
become: True
become_user: None #if ! None|root, different testcase
become_method: su
shell: None
remote_addr: u1404
remote_user: root
connection:
transport: 'ssh'
hostvars:
'127.0.0.1': {}
'::1': {}
'localhost': {}
asserts:
- "hasattr(SAM._connection, 'ismock')"
- "SAM._connection.transport == 'ssh'"
- "self._play_context.shell == None"
- "self._play_context.remote_addr == 'u1404'"
- "self._play_context.remote_user == 'root'"
- "not self._play_context.become"
- "self._play_context.become_method == 'su'"
- "self.execute_called"
- "self.task.args['_local_rsync_path'] == 'rsync'"
- "self.task.args['src'] == '/tmp/deleteme'"
- "self.task.args['dest'] == 'el6host:/tmp/deleteme'"

@ -0,0 +1,6 @@
{
"dest": "el6host:/tmp/deleteme",
"src": "/tmp/deleteme",
"rsync_path": "\"sudo rsync\"",
"_local_rsync_path": "rsync"
}

@ -0,0 +1,379 @@
{
"ansible_pipelining": false,
"ansible_docker_extra_args": "",
"ansible_scp_extra_args": "",
"ansible_user": "root",
"ansible_play_hosts": [
"el6host"
],
"ansible_connection": "smart",
"ansible_ssh_common_args": "",
"environment": [],
"inventory_hostname": "el6host",
"vars": {
"ansible_check_mode": false,
"inventory_hostname": "el6host",
"inventory_file": "inventory",
"ansible_delegated_vars": {
"u1404": {
"inventory_hostname": "u1404",
"inventory_file": "inventory",
"vars": {
"inventory_file": "inventory",
"role_names": [],
"ansible_play_hosts": [
"el6host"
],
"groups": {
"ungrouped": [
"el6host",
"u1404"
],
"all": [
"el6host",
"u1404"
]
},
"ansible_check_mode": false,
"inventory_hostname": "u1404",
"inventory_hostname_short": "u1404",
"playbook_dir": "/home/jtanner/workspace/issues/AP-15905",
"omit": "__omit_place_holder__32a8706cee222390e0d92197fb49cc967bfafb57",
"inventory_dir": "/home/jtanner/workspace/issues/AP-15905",
"environment": [],
"ansible_ssh_user": "root",
"group_names": [
"ungrouped"
],
"play_hosts": [
"el6host"
],
"ansible_version": {
"major": 2,
"full": "2.2.0",
"string": "2.2.0",
"minor": 2,
"revision": 0
}
},
"inventory_hostname_short": "u1404",
"playbook_dir": "/home/jtanner/workspace/issues/AP-15905",
"group_names": [
"ungrouped"
],
"inventory_dir": "/home/jtanner/workspace/issues/AP-15905",
"omit": "__omit_place_holder__32a8706cee222390e0d92197fb49cc967bfafb57",
"ansible_host": "u1404",
"environment": [],
"ansible_play_hosts": [
"el6host"
],
"groups": {
"ungrouped": [
"el6host",
"u1404"
],
"all": [
"el6host",
"u1404"
]
},
"ansible_check_mode": false,
"play_hosts": [
"el6host"
],
"role_names": [],
"ansible_port": null,
"ansible_version": {
"major": 2,
"full": "2.2.0",
"string": "2.2.0",
"minor": 2,
"revision": 0
},
"ansible_ssh_user": "root"
}
},
"inventory_hostname_short": "el6host",
"playbook_dir": "/home/jtanner/workspace/issues/AP-15905",
"role_names": [],
"inventory_dir": "/home/jtanner/workspace/issues/AP-15905",
"environment": [],
"play_hosts": [
"el6host"
],
"ansible_play_hosts": [
"el6host"
],
"hostvars": {
"el6host": {
"inventory_file": "inventory",
"group_names": [
"ungrouped"
],
"groups": {
"ungrouped": [
"el6host",
"u1404"
],
"all": [
"el6host",
"u1404"
]
},
"inventory_hostname": "el6host",
"inventory_hostname_short": "el6host",
"playbook_dir": "/home/jtanner/workspace/issues/AP-15905",
"omit": "__omit_place_holder__32a8706cee222390e0d92197fb49cc967bfafb57",
"inventory_dir": "/home/jtanner/workspace/issues/AP-15905",
"ansible_ssh_user": "root",
"ansible_check_mode": false,
"ansible_version": {
"major": 2,
"full": "2.2.0",
"string": "2.2.0",
"minor": 2,
"revision": 0
}
},
"u1404": {
"inventory_file": "inventory",
"group_names": [
"ungrouped"
],
"groups": {
"ungrouped": [
"el6host",
"u1404"
],
"all": [
"el6host",
"u1404"
]
},
"inventory_hostname": "u1404",
"inventory_hostname_short": "u1404",
"playbook_dir": "/home/jtanner/workspace/issues/AP-15905",
"omit": "__omit_place_holder__32a8706cee222390e0d92197fb49cc967bfafb57",
"inventory_dir": "/home/jtanner/workspace/issues/AP-15905",
"ansible_ssh_user": "root",
"ansible_check_mode": false,
"ansible_version": {
"major": 2,
"full": "2.2.0",
"string": "2.2.0",
"minor": 2,
"revision": 0
}
}
},
"groups": {
"ungrouped": [
"el6host",
"u1404"
],
"all": [
"el6host",
"u1404"
]
},
"group_names": [
"ungrouped"
],
"omit": "__omit_place_holder__32a8706cee222390e0d92197fb49cc967bfafb57",
"ansible_version": {
"major": 2,
"full": "2.2.0",
"string": "2.2.0",
"minor": 2,
"revision": 0
},
"ansible_ssh_user": "root"
},
"ansible_accelerate_port": 5099,
"roledir": null,
"ansible_ssh_extra_args": "",
"ansible_ssh_host": "u1404",
"ansible_current_hosts": [
"el6host"
],
"hostvars": {
"el6host": {
"inventory_file": "inventory",
"group_names": [
"ungrouped"
],
"groups": {
"ungrouped": [
"el6host",
"u1404"
],
"all": [
"el6host",
"u1404"
]
},
"inventory_hostname": "el6host",
"inventory_hostname_short": "el6host",
"playbook_dir": "/home/jtanner/workspace/issues/AP-15905",
"omit": "__omit_place_holder__32a8706cee222390e0d92197fb49cc967bfafb57",
"inventory_dir": "/home/jtanner/workspace/issues/AP-15905",
"ansible_ssh_user": "root",
"ansible_check_mode": false,
"ansible_version": {
"major": 2,
"full": "2.2.0",
"string": "2.2.0",
"minor": 2,
"revision": 0
}
},
"u1404": {
"inventory_file": "inventory",
"group_names": [
"ungrouped"
],
"groups": {
"ungrouped": [
"el6host",
"u1404"
],
"all": [
"el6host",
"u1404"
]
},
"inventory_hostname": "u1404",
"inventory_hostname_short": "u1404",
"playbook_dir": "/home/jtanner/workspace/issues/AP-15905",
"omit": "__omit_place_holder__32a8706cee222390e0d92197fb49cc967bfafb57",
"inventory_dir": "/home/jtanner/workspace/issues/AP-15905",
"ansible_ssh_user": "root",
"ansible_check_mode": false,
"ansible_version": {
"major": 2,
"full": "2.2.0",
"string": "2.2.0",
"minor": 2,
"revision": 0
}
}
},
"group_names": [
"ungrouped"
],
"ansible_version": {
"major": 2,
"full": "2.2.0",
"string": "2.2.0",
"minor": 2,
"revision": 0
},
"ansible_ssh_pipelining": false,
"inventory_file": "inventory",
"ansible_delegated_vars": {
"u1404": {
"inventory_hostname": "u1404",
"inventory_file": "inventory",
"vars": {
"ansible_check_mode": false,
"inventory_hostname": "u1404",
"inventory_file": "inventory",
"inventory_hostname_short": "u1404",
"playbook_dir": "/home/jtanner/workspace/issues/AP-15905",
"omit": "__omit_place_holder__32a8706cee222390e0d92197fb49cc967bfafb57",
"inventory_dir": "/home/jtanner/workspace/issues/AP-15905",
"environment": [],
"ansible_ssh_user": "root",
"ansible_play_hosts": [
"el6host"
],
"groups": {
"ungrouped": [
"el6host",
"u1404"
],
"all": [
"el6host",
"u1404"
]
},
"group_names": [
"ungrouped"
],
"play_hosts": [
"el6host"
],
"ansible_version": {
"major": 2,
"full": "2.2.0",
"string": "2.2.0",
"minor": 2,
"revision": 0
},
"role_names": []
},
"inventory_hostname_short": "u1404",
"playbook_dir": "/home/jtanner/workspace/issues/AP-15905",
"group_names": [
"ungrouped"
],
"inventory_dir": "/home/jtanner/workspace/issues/AP-15905",
"omit": "__omit_place_holder__32a8706cee222390e0d92197fb49cc967bfafb57",
"ansible_host": "u1404",
"environment": [],
"ansible_play_hosts": [
"el6host"
],
"groups": {
"ungrouped": [
"el6host",
"u1404"
],
"all": [
"el6host",
"u1404"
]
},
"ansible_check_mode": false,
"play_hosts": [
"el6host"
],
"role_names": [],
"ansible_port": null,
"ansible_version": {
"major": 2,
"full": "2.2.0",
"string": "2.2.0",
"minor": 2,
"revision": 0
},
"ansible_ssh_user": "root"
}
},
"ansible_module_compression": "ZIP_DEFLATED",
"ansible_failed_hosts": [],
"ansible_check_mode": false,
"groups": {
"ungrouped": [
"el6host",
"u1404"
],
"all": [
"el6host",
"u1404"
]
},
"ansible_host": "u1404",
"ansible_shell_executable": "/bin/sh",
"inventory_hostname_short": "el6host",
"omit": "__omit_place_holder__32a8706cee222390e0d92197fb49cc967bfafb57",
"inventory_dir": "/home/jtanner/workspace/issues/AP-15905",
"playbook_dir": "/home/jtanner/workspace/issues/AP-15905",
"ansible_ssh_user": "root",
"role_names": [],
"play_hosts": [
"el6host"
],
"ansible_sftp_extra_args": ""
}

@ -0,0 +1,387 @@
{
"ansible_pipelining": false,
"ansible_docker_extra_args": "",
"ansible_scp_extra_args": "",
"ansible_user": "root",
"ansible_play_hosts": [
"el6host"
],
"ansible_connection": "smart",
"ansible_ssh_common_args": "",
"environment": [],
"inventory_hostname": "el6host",
"vars": {
"ansible_check_mode": false,
"inventory_hostname": "el6host",
"inventory_file": "inventory",
"ansible_delegated_vars": {
"u1404": {
"inventory_hostname": "u1404",
"inventory_file": "inventory",
"vars": {
"inventory_file": "inventory",
"role_names": [],
"ansible_play_hosts": [
"el6host"
],
"groups": {
"ungrouped": [
"el6host",
"u1404"
],
"all": [
"el6host",
"u1404"
]
},
"ansible_check_mode": false,
"inventory_hostname": "u1404",
"inventory_hostname_short": "u1404",
"playbook_dir": "/home/jtanner/workspace/issues/AP-15905",
"omit": "__omit_place_holder__32a8706cee222390e0d92197fb49cc967bfafb57",
"inventory_dir": "/home/jtanner/workspace/issues/AP-15905",
"environment": [],
"ansible_ssh_user": "root",
"group_names": [
"ungrouped"
],
"play_hosts": [
"el6host"
],
"ansible_version": {
"major": 2,
"full": "2.2.0",
"string": "2.2.0",
"minor": 2,
"revision": 0
}
},
"inventory_hostname_short": "u1404",
"playbook_dir": "/home/jtanner/workspace/issues/AP-15905",
"group_names": [
"ungrouped"
],
"inventory_dir": "/home/jtanner/workspace/issues/AP-15905",
"omit": "__omit_place_holder__32a8706cee222390e0d92197fb49cc967bfafb57",
"ansible_host": "u1404",
"environment": [],
"ansible_play_hosts": [
"el6host"
],
"groups": {
"ungrouped": [
"el6host",
"u1404"
],
"all": [
"el6host",
"u1404"
]
},
"ansible_check_mode": false,
"play_hosts": [
"el6host"
],
"role_names": [],
"ansible_port": null,
"ansible_version": {
"major": 2,
"full": "2.2.0",
"string": "2.2.0",
"minor": 2,
"revision": 0
},
"ansible_ssh_user": "root"
}
},
"inventory_hostname_short": "el6host",
"playbook_dir": "/home/jtanner/workspace/issues/AP-15905",
"role_names": [],
"inventory_dir": "/home/jtanner/workspace/issues/AP-15905",
"environment": [],
"play_hosts": [
"el6host"
],
"ansible_play_hosts": [
"el6host"
],
"hostvars": {
"el6host": {
"inventory_file": "inventory",
"group_names": [
"ungrouped"
],
"groups": {
"ungrouped": [
"el6host",
"u1404",
"::1"
],
"all": [
"el6host",
"u1404",
"::1"
]
},
"inventory_hostname": "el6host",
"inventory_hostname_short": "el6host",
"playbook_dir": "/home/jtanner/workspace/issues/AP-15905",
"omit": "__omit_place_holder__32a8706cee222390e0d92197fb49cc967bfafb57",
"inventory_dir": "/home/jtanner/workspace/issues/AP-15905",
"ansible_ssh_user": "root",
"ansible_check_mode": false,
"ansible_version": {
"major": 2,
"full": "2.2.0",
"string": "2.2.0",
"minor": 2,
"revision": 0
}
},
"u1404": {
"inventory_file": "inventory",
"group_names": [
"ungrouped"
],
"groups": {
"ungrouped": [
"el6host",
"u1404",
"::1"
],
"all": [
"el6host",
"u1404",
"::1"
]
},
"inventory_hostname": "u1404",
"inventory_hostname_short": "u1404",
"playbook_dir": "/home/jtanner/workspace/issues/AP-15905",
"omit": "__omit_place_holder__32a8706cee222390e0d92197fb49cc967bfafb57",
"inventory_dir": "/home/jtanner/workspace/issues/AP-15905",
"ansible_ssh_user": "root",
"ansible_check_mode": false,
"ansible_version": {
"major": 2,
"full": "2.2.0",
"string": "2.2.0",
"minor": 2,
"revision": 0
}
}
},
"groups": {
"ungrouped": [
"el6host",
"u1404"
],
"all": [
"el6host",
"u1404"
]
},
"group_names": [
"ungrouped"
],
"omit": "__omit_place_holder__32a8706cee222390e0d92197fb49cc967bfafb57",
"ansible_version": {
"major": 2,
"full": "2.2.0",
"string": "2.2.0",
"minor": 2,
"revision": 0
},
"ansible_ssh_user": "root"
},
"ansible_accelerate_port": 5099,
"roledir": null,
"ansible_ssh_extra_args": "",
"ansible_ssh_host": "u1404",
"ansible_current_hosts": [
"el6host"
],
"hostvars": {
"el6host": {
"inventory_file": "inventory",
"group_names": [
"ungrouped"
],
"groups": {
"ungrouped": [
"el6host",
"u1404",
"::1"
],
"all": [
"el6host",
"u1404",
"::1"
]
},
"inventory_hostname": "el6host",
"inventory_hostname_short": "el6host",
"playbook_dir": "/home/jtanner/workspace/issues/AP-15905",
"omit": "__omit_place_holder__32a8706cee222390e0d92197fb49cc967bfafb57",
"inventory_dir": "/home/jtanner/workspace/issues/AP-15905",
"ansible_ssh_user": "root",
"ansible_check_mode": false,
"ansible_version": {
"major": 2,
"full": "2.2.0",
"string": "2.2.0",
"minor": 2,
"revision": 0
}
},
"u1404": {
"inventory_file": "inventory",
"group_names": [
"ungrouped"
],
"groups": {
"ungrouped": [
"el6host",
"u1404",
"::1"
],
"all": [
"el6host",
"u1404",
"::1"
]
},
"inventory_hostname": "u1404",
"inventory_hostname_short": "u1404",
"playbook_dir": "/home/jtanner/workspace/issues/AP-15905",
"omit": "__omit_place_holder__32a8706cee222390e0d92197fb49cc967bfafb57",
"inventory_dir": "/home/jtanner/workspace/issues/AP-15905",
"ansible_ssh_user": "root",
"ansible_check_mode": false,
"ansible_version": {
"major": 2,
"full": "2.2.0",
"string": "2.2.0",
"minor": 2,
"revision": 0
}
}
},
"group_names": [
"ungrouped"
],
"ansible_version": {
"major": 2,
"full": "2.2.0",
"string": "2.2.0",
"minor": 2,
"revision": 0
},
"ansible_ssh_pipelining": false,
"inventory_file": "inventory",
"ansible_delegated_vars": {
"u1404": {
"inventory_hostname": "u1404",
"inventory_file": "inventory",
"vars": {
"ansible_check_mode": false,
"inventory_hostname": "u1404",
"inventory_file": "inventory",
"inventory_hostname_short": "u1404",
"playbook_dir": "/home/jtanner/workspace/issues/AP-15905",
"omit": "__omit_place_holder__32a8706cee222390e0d92197fb49cc967bfafb57",
"inventory_dir": "/home/jtanner/workspace/issues/AP-15905",
"environment": [],
"ansible_ssh_user": "root",
"ansible_play_hosts": [
"el6host"
],
"groups": {
"ungrouped": [
"el6host",
"u1404"
],
"all": [
"el6host",
"u1404"
]
},
"group_names": [
"ungrouped"
],
"play_hosts": [
"el6host"
],
"ansible_version": {
"major": 2,
"full": "2.2.0",
"string": "2.2.0",
"minor": 2,
"revision": 0
},
"role_names": []
},
"inventory_hostname_short": "u1404",
"playbook_dir": "/home/jtanner/workspace/issues/AP-15905",
"group_names": [
"ungrouped"
],
"inventory_dir": "/home/jtanner/workspace/issues/AP-15905",
"omit": "__omit_place_holder__32a8706cee222390e0d92197fb49cc967bfafb57",
"ansible_host": "u1404",
"environment": [],
"ansible_play_hosts": [
"el6host"
],
"groups": {
"ungrouped": [
"el6host",
"u1404"
],
"all": [
"el6host",
"u1404"
]
},
"ansible_check_mode": false,
"play_hosts": [
"el6host"
],
"role_names": [],
"ansible_port": null,
"ansible_version": {
"major": 2,
"full": "2.2.0",
"string": "2.2.0",
"minor": 2,
"revision": 0
},
"ansible_ssh_user": "root"
}
},
"ansible_module_compression": "ZIP_DEFLATED",
"ansible_failed_hosts": [],
"ansible_check_mode": false,
"groups": {
"ungrouped": [
"el6host",
"u1404"
],
"all": [
"el6host",
"u1404"
]
},
"ansible_host": "u1404",
"ansible_shell_executable": "/bin/sh",
"inventory_hostname_short": "el6host",
"omit": "__omit_place_holder__32a8706cee222390e0d92197fb49cc967bfafb57",
"inventory_dir": "/home/jtanner/workspace/issues/AP-15905",
"playbook_dir": "/home/jtanner/workspace/issues/AP-15905",
"ansible_ssh_user": "root",
"role_names": [],
"play_hosts": [
"el6host"
],
"ansible_sftp_extra_args": ""
}

@ -0,0 +1,248 @@
#!/usr/bin/env python
'''
(Epdb) pprint(DeepDiff(self.final_task_vars, out_task_vars), indent=2)
{ 'dic_item_added': set([u"root['ansible_python_interpreter']"]),
'dic_item_removed': set([ u"root['hostvars']['127.0.0.1']",
u"root['hostvars']['::1']",
u"root['hostvars']['localhost']"]),
'iterable_item_added': { u"root['hostvars']['el6host']['groups']['all'][1]": u'::1',
u"root['hostvars']['el6host']['groups']['ungrouped'][1]": u'::1',
u"root['vars']['hostvars']['el6host']['groups']['all'][1]": u'::1',
u"root['vars']['hostvars']['el6host']['groups']['ungrouped'][1]": u'::1'}}
'''
import json
import os
import sys
import unittest
import yaml
from pprint import pprint
from ansible import plugins
import ansible.plugins
from ansible.compat.tests.mock import patch, MagicMock
from ansible.plugins.action.synchronize import ActionModule
# Getting the incoming and outgoing task vars from the plugin's run method
'''
import copy
safe_vars = {}
for k,v in task_vars.iteritems():
if k not in ['vars', 'hostvars']:
safe_vars[k] = copy.deepcopy(v)
else:
sdata = str(v)
newv = eval(sdata)
safe_vars[k] = newv
import json
with open('task_vars.json', 'wb') as f:
f.write(json.dumps(safe_vars, indent=2))
'''
class TaskMock(object):
args = {'src': u'/tmp/deleteme',
'dest': '/tmp/deleteme',
'rsync_path': 'rsync'}
async = None
become = None
become_user = None
become_method = None
class StdinMock(object):
shell = None
class ConnectionMock(object):
ismock = True
_play_context = None
#transport = 'ssh'
transport = None
_new_stdin = StdinMock()
class PlayContextMock(object):
shell = None
private_key_file = None
become = False
become_user = 'root'
become_method = None
check_mode = False
no_log = None
diff = None
remote_addr = None
remote_user = None
password = None
class ModuleLoaderMock(object):
def find_plugin(self, module_name, mod_type):
pass
class SharedLoaderMock(object):
module_loader = ModuleLoaderMock()
class SynchronizeTester(object):
''' A wrapper for mocking out synchronize environments '''
task = TaskMock()
connection = ConnectionMock()
_play_context = PlayContextMock()
loader = None
templar = None
shared_loader_obj = SharedLoaderMock()
final_task_vars = None
execute_called = False
def _execute_module(self, module_name, task_vars=None):
self.execute_called = True
self.final_task_vars = task_vars
return {}
def runtest(self, fixturepath='fixtures/synchronize/basic'):
metapath = os.path.join(fixturepath, 'meta.yaml')
with open(metapath, 'rb') as f:
fdata = f.read()
test_meta = yaml.load(fdata)
# load inital play context vars
if '_play_context' in test_meta:
if test_meta['_play_context']:
self.task.args = {}
for k,v in test_meta['_play_context'].items():
if v == 'None':
v = None
setattr(self._play_context, k, v)
# load inital task context vars
if '_task' in test_meta:
if test_meta['_task']:
self.task.args = {}
for k,v in test_meta['_task'].items():
#import epdb; epdb.st()
if v == 'None':
v = None
setattr(self.task, k, v)
# load inital task vars
if 'task_args' in test_meta:
if test_meta['task_args']:
self.task.args = {}
for k,v in test_meta['task_args'].items():
self.task.args[k] = v
# load inital task vars
invarspath = os.path.join(fixturepath,
test_meta.get('fixtures', {}).get('taskvars_in', 'taskvars_in.json'))
with open(invarspath, 'rb') as f:
fdata = f.read()
fdata = fdata.decode("utf-8")
in_task_vars = json.loads(fdata)
# load expected final task vars
outvarspath = os.path.join(fixturepath,
test_meta.get('fixtures', {}).get('taskvars_out', 'taskvars_out.json'))
with open(outvarspath, 'rb') as f:
fdata = f.read()
fdata = fdata.decode("utf-8")
out_task_vars = json.loads(fdata)
# fixup the connection
for k,v in test_meta['connection'].items():
setattr(self.connection, k, v)
# fixup the hostvars
if test_meta['hostvars']:
for k,v in test_meta['hostvars'].items():
in_task_vars['hostvars'][k] = v
# initalize and run the module
SAM = ActionModule(self.task, self.connection, self._play_context,
self.loader, self.templar, self.shared_loader_obj)
SAM._execute_module = self._execute_module
result = SAM.run(task_vars=in_task_vars)
# run assertions
for check in test_meta['asserts']:
value = eval(check)
#if not value:
# print(check, value)
# import epdb; epdb.st()
assert value, check
class FakePluginLoader(object):
mocked = True
@staticmethod
def get(transport, play_context, new_stdin):
conn = ConnectionMock()
conn.transport = transport
conn._play_context = play_context
conn._new_stdin = new_stdin
return conn
class TestSynchronizeAction(unittest.TestCase):
fixturedir = os.path.dirname(__file__)
fixturedir = os.path.join(fixturedir, 'fixtures', 'synchronize')
#print(basedir)
@patch('ansible.plugins.action.synchronize.connection_loader', FakePluginLoader)
def test_basic(self):
x = SynchronizeTester()
x.runtest(fixturepath=os.path.join(self.fixturedir,'basic'))
@patch('ansible.plugins.action.synchronize.connection_loader', FakePluginLoader)
def test_basic_become(self):
x = SynchronizeTester()
x.runtest(fixturepath=os.path.join(self.fixturedir,'basic_become'))
@patch('ansible.plugins.action.synchronize.connection_loader', FakePluginLoader)
def test_basic_become_cli(self):
# --become on the cli sets _play_context.become
x = SynchronizeTester()
x.runtest(fixturepath=os.path.join(self.fixturedir,'basic_become_cli'))
@patch('ansible.plugins.action.synchronize.connection_loader', FakePluginLoader)
def test_basic_vagrant(self):
# simple vagrant example
x = SynchronizeTester()
x.runtest(fixturepath=os.path.join(self.fixturedir,'basic_vagrant'))
@patch('ansible.plugins.action.synchronize.connection_loader', FakePluginLoader)
def test_basic_vagrant_sudo(self):
# vagrant plus sudo
x = SynchronizeTester()
x.runtest(fixturepath=os.path.join(self.fixturedir,'basic_vagrant_sudo'))
@patch('ansible.plugins.action.synchronize.connection_loader', FakePluginLoader)
def test_basic_vagrant_become_cli(self):
# vagrant plus sudo
x = SynchronizeTester()
x.runtest(fixturepath=os.path.join(self.fixturedir,'basic_vagrant_become_cli'))
@patch('ansible.plugins.action.synchronize.connection_loader', FakePluginLoader)
def test_delegate_remote(self):
# delegate to other remote host
x = SynchronizeTester()
x.runtest(fixturepath=os.path.join(self.fixturedir,'delegate_remote'))
@patch('ansible.plugins.action.synchronize.connection_loader', FakePluginLoader)
def test_delegate_remote_su(self):
# delegate to other remote host with su enabled
x = SynchronizeTester()
x.runtest(fixturepath=os.path.join(self.fixturedir,'delegate_remote_su'))
if __name__ == "__main__":
SynchronizeTester().runtest()
Loading…
Cancel
Save