fix missing attribs with dirct module execution (#53875)

* fix missing attribs with dirct module execution
* also make remote tmp handling smarter
 update tests
* set default if attrib does not exist
* add simple test
This commit is contained in:
Brian Coca
2019-04-04 09:59:52 -04:00
committed by GitHub
parent c6ed5b314d
commit bda541fa0d
8 changed files with 59 additions and 30 deletions

View File

@@ -0,0 +1 @@
shippable/posix/group3

View File

@@ -0,0 +1 @@
{ "ANSIBLE_MODULE_ARGS": {} }

View File

@@ -0,0 +1,7 @@
#!/usr/bin/python
from ansible.module_utils.basic import AnsibleModule
module = AnsibleModule(argument_spec=dict())
module.exit_json(**{'tempdir': module._remote_tmp})

View File

@@ -0,0 +1,6 @@
#!/usr/bin/env bash
set -eux
# test running module directly
python.py library/test.py args.json

View File

@@ -20,7 +20,7 @@ def patch_ansible_module(request, mocker):
if '_ansible_remote_tmp' not in request.param['ANSIBLE_MODULE_ARGS']:
request.param['ANSIBLE_MODULE_ARGS']['_ansible_remote_tmp'] = '/tmp'
if '_ansible_keep_remote_files' not in request.param['ANSIBLE_MODULE_ARGS']:
request.param['ANSIBLE_MODULE_ARGS']['_ansible_keep_remote_files'] = '/tmp'
request.param['ANSIBLE_MODULE_ARGS']['_ansible_keep_remote_files'] = False
args = json.dumps(request.param)
else:
raise Exception('Malformed data to the patch_ansible_module pytest fixture')