1
0
Fork 0
mirror of https://github.com/ansible-collections/community.general.git synced 2024-09-14 20:13:21 +02:00

doc: exercising module code locally: update cmd (#45697)

The documented way to execute module code locally wasn't always working:

    $ python ./lib/ansible/modules/files/file.py <<< '{"ANSIBLE_MODULE_ARGS": {}}'
    Traceback (most recent call last):
      File "./lib/ansible/modules/files/file.py", line 177, in <module>
        from ansible.module_utils.basic import AnsibleModule
      File "~/ansible/lib/ansible/module_utils/basic.py", line 78, in <module>
        import tempfile
      File "~/ansible/lib/ansible/modules/files/tempfile.py", line 69, in <module>
        from tempfile import mkstemp, mkdtemp
    ImportError: cannot import name 'mkstemp'
This commit is contained in:
Pilou 2018-09-19 16:10:55 +02:00 committed by ansibot
parent 1b0c4fde86
commit 60160c1e90
2 changed files with 4 additions and 1 deletions

View file

@ -211,7 +211,7 @@ If you module does not need to target a remote host, you can quickly and easily
development) activate it: ``$ . venv/bin/activate`` development) activate it: ``$ . venv/bin/activate``
- Setup the environment for development: ``$ . hacking/env-setup`` - Setup the environment for development: ``$ . hacking/env-setup``
- Run your test module locally and directly: - Run your test module locally and directly:
``$ python ./my_new_test_module.py /tmp/args.json`` ``$ python -m ansible.modules.cloud.azure.my_new_test_module /tmp/args.json``
This should return output something like this: This should return output something like this:

View file

@ -25,3 +25,6 @@ echo "$PB_OUT" | grep -F "assert works (True)" || exit 1
# ensure test-module script works well # ensure test-module script works well
PING_MODULE_PATH="$(pwd)/../../../../lib/ansible/modules/system/ping.py" PING_MODULE_PATH="$(pwd)/../../../../lib/ansible/modules/system/ping.py"
../../../../hacking/test-module -m "$PING_MODULE_PATH" -I ansible_python_interpreter="$(which python)" ../../../../hacking/test-module -m "$PING_MODULE_PATH" -I ansible_python_interpreter="$(which python)"
# ensure exercising module code locally works
python -m ansible.modules.files.file <<< '{"ANSIBLE_MODULE_ARGS": {"path": "/path/to/file", "state": "absent"}}'