Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

route53: fix empty result set #799

Merged
merged 3 commits into from
Nov 12, 2021
Merged

route53: fix empty result set #799

merged 3 commits into from
Nov 12, 2021

Conversation

markuman
Copy link
Member

SUMMARY

Closes: #798
Using state: get on none existing records results in an error.

ISSUE TYPE
  • Bugfix Pull Request
COMPONENT NAME

route53

ADDITIONAL INFORMATION
---
- hosts: localhost
  connection: local

  tasks:
    - community.aws.route53:
        state: get
        zone: xn--mitlinuxwrdasnichtpassiert-ohc.de
        record: doesnotexist.xn--mitlinuxwrdasnichtpassiert-ohc.de.
        type: A
      register: test

    - debug:
        var: test

results in

TASK [community.aws.route53] ********************************************************************************************************************************************************************************************************
task path: /home/m/git/lekker/iac/798.yml:6
<127.0.0.1> ESTABLISH LOCAL CONNECTION FOR USER: m
<127.0.0.1> EXEC /bin/sh -c 'echo ~m && sleep 0'
<127.0.0.1> EXEC /bin/sh -c '( umask 77 && mkdir -p "` echo /home/m/.ansible/tmp `"&& mkdir "` echo /home/m/.ansible/tmp/ansible-tmp-1636703337.6553104-21549-57181038135765 `" && echo ansible-tmp-1636703337.6553104-21549-57181038135765="` echo /home/m/.ansible/tmp/ansible-tmp-1636703337.6553104-21549-57181038135765 `" ) && sleep 0'
Using module file /home/m/.local/lib/python3.9/site-packages/ansible_collections/community/aws/plugins/modules/route53.py
<127.0.0.1> PUT /home/m/.ansible/tmp/ansible-local-21466oog6jc4o/tmpeo_xv0k3 TO /home/m/.ansible/tmp/ansible-tmp-1636703337.6553104-21549-57181038135765/AnsiballZ_route53.py
<127.0.0.1> EXEC /bin/sh -c 'chmod u+x /home/m/.ansible/tmp/ansible-tmp-1636703337.6553104-21549-57181038135765/ /home/m/.ansible/tmp/ansible-tmp-1636703337.6553104-21549-57181038135765/AnsiballZ_route53.py && sleep 0'
<127.0.0.1> EXEC /bin/sh -c '/usr/bin/python /home/m/.ansible/tmp/ansible-tmp-1636703337.6553104-21549-57181038135765/AnsiballZ_route53.py && sleep 0'
<127.0.0.1> EXEC /bin/sh -c 'rm -f -r /home/m/.ansible/tmp/ansible-tmp-1636703337.6553104-21549-57181038135765/ > /dev/null 2>&1 && sleep 0'
The full traceback is:
Traceback (most recent call last):
  File "/home/m/.ansible/tmp/ansible-tmp-1636703337.6553104-21549-57181038135765/AnsiballZ_route53.py", line 100, in <module>
    _ansiballz_main()
  File "/home/m/.ansible/tmp/ansible-tmp-1636703337.6553104-21549-57181038135765/AnsiballZ_route53.py", line 92, in _ansiballz_main
    invoke_module(zipped_mod, temp_path, ANSIBALLZ_PARAMS)
  File "/home/m/.ansible/tmp/ansible-tmp-1636703337.6553104-21549-57181038135765/AnsiballZ_route53.py", line 40, in invoke_module
    runpy.run_module(mod_name='ansible_collections.community.aws.plugins.modules.route53', init_globals=dict(_module_fqn='ansible_collections.community.aws.plugins.modules.route53', _modlib_path=modlib_path),
  File "/usr/lib/python3.9/runpy.py", line 210, in run_module
    return _run_module_code(code, init_globals, run_name, mod_spec)
  File "/usr/lib/python3.9/runpy.py", line 97, in _run_module_code
    _run_code(code, mod_globals, init_globals,
  File "/usr/lib/python3.9/runpy.py", line 87, in _run_code
    exec(code, run_globals)
  File "/tmp/ansible_community.aws.route53_payload_aekaeeo1/ansible_community.aws.route53_payload.zip/ansible_collections/community/aws/plugins/modules/route53.py", line 698, in <module>
  File "/tmp/ansible_community.aws.route53_payload_aekaeeo1/ansible_community.aws.route53_payload.zip/ansible_collections/community/aws/plugins/modules/route53.py", line 636, in main
  File "/tmp/ansible_community.aws.route53_payload_aekaeeo1/ansible_community.aws.route53_payload.zip/ansible/module_utils/common/dict_transformations.py", line 42, in camel_dict_to_snake_dict
AttributeError: 'NoneType' object has no attribute 'items'
fatal: [localhost]: FAILED! => {
    "changed": false,
    "module_stderr": "Traceback (most recent call last):\n  File \"/home/m/.ansible/tmp/ansible-tmp-1636703337.6553104-21549-57181038135765/AnsiballZ_route53.py\", line 100, in <module>\n    _ansiballz_main()\n  File \"/home/m/.ansible/tmp/ansible-tmp-1636703337.6553104-21549-57181038135765/AnsiballZ_route53.py\", line 92, in _ansiballz_main\n    invoke_module(zipped_mod, temp_path, ANSIBALLZ_PARAMS)\n  File \"/home/m/.ansible/tmp/ansible-tmp-1636703337.6553104-21549-57181038135765/AnsiballZ_route53.py\", line 40, in invoke_module\n    runpy.run_module(mod_name='ansible_collections.community.aws.plugins.modules.route53', init_globals=dict(_module_fqn='ansible_collections.community.aws.plugins.modules.route53', _modlib_path=modlib_path),\n  File \"/usr/lib/python3.9/runpy.py\", line 210, in run_module\n    return _run_module_code(code, init_globals, run_name, mod_spec)\n  File \"/usr/lib/python3.9/runpy.py\", line 97, in _run_module_code\n    _run_code(code, mod_globals, init_globals,\n  File \"/usr/lib/python3.9/runpy.py\", line 87, in _run_code\n    exec(code, run_globals)\n  File \"/tmp/ansible_community.aws.route53_payload_aekaeeo1/ansible_community.aws.route53_payload.zip/ansible_collections/community/aws/plugins/modules/route53.py\", line 698, in <module>\n  File \"/tmp/ansible_community.aws.route53_payload_aekaeeo1/ansible_community.aws.route53_payload.zip/ansible_collections/community/aws/plugins/modules/route53.py\", line 636, in main\n  File \"/tmp/ansible_community.aws.route53_payload_aekaeeo1/ansible_community.aws.route53_payload.zip/ansible/module_utils/common/dict_transformations.py\", line 42, in camel_dict_to_snake_dict\nAttributeError: 'NoneType' object has no attribute 'items'\n",
    "module_stdout": "",
    "msg": "MODULE FAILURE\nSee stdout/stderr for the exact error",
    "rc": 1
}

Copy link
Contributor

@tremble tremble left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Change looks good, the changelog didn't quite feel right.

changelogs/fragments/798-fix-route53-empty-result.yaml Outdated Show resolved Hide resolved
@markuman markuman added the gate label Nov 12, 2021
Copy link
Contributor

@ansible-zuul ansible-zuul bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM!

@ansible-zuul ansible-zuul bot merged commit e64ce9f into ansible-collections:main Nov 12, 2021
alinabuzachis pushed a commit to alinabuzachis/community.aws that referenced this pull request May 25, 2022
setup_sshkey: drop a dep on Crypto

Adjust ec2-fingerprint.py so it use cryptography instead of the
deprecated Crypto library.

Reviewed-by: Mark Chappell <None>
Reviewed-by: Jill R <None>
abikouo pushed a commit to abikouo/community.aws that referenced this pull request Oct 24, 2023
route53: fix empty result set

SUMMARY
Closes: ansible-collections#798
Using state: get on none existing records results in an error.
ISSUE TYPE

Bugfix Pull Request

COMPONENT NAME

route53
ADDITIONAL INFORMATION
abikouo pushed a commit to abikouo/community.aws that referenced this pull request Oct 24, 2023
Replace pycrypto test dependency

SUMMARY

The dependency on pycrypto was replaced with cryptography almost a year ago in ansible-collections#799, but the test dependencies never got updated. Presumably, this worked because Ansible depends on cryptography already.

ISSUE TYPE


Bugfix Pull Request

COMPONENT NAME

ADDITIONAL INFORMATION

Reviewed-by: Mark Chappell
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

route53 state: get AttributeError: 'NoneType' object has no attribute 'items'
2 participants