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

TypeError: delete_record() got an unexpected keyword argument 'type' #11

Closed
splashx opened this issue May 10, 2021 · 0 comments
Closed

Comments

@splashx
Copy link
Member

splashx commented May 10, 2021

Version 0.6.0 of dns-lexicon introduced a breaking change on nomenclature of type to rtype. This yields the following error on this plugin's version 0.2.0 or earlier due to wide python requirement range in setup.py:

Performing the following challenges:
dns-01 challenge for test.example.org
Cleaning up challenges
Encountered exception during recovery: TypeError: delete_record() got an unexpected keyword argument 'type'
Exiting abnormally:
Traceback (most recent call last):
  File "/private/tmp/certbot-dns-powerdns/.venv/bin/certbot", line 8, in <module>
    sys.exit(main())
  File "/private/tmp/certbot-dns-powerdns/.venv/lib/python3.9/site-packages/certbot/main.py", line 15, in main
    return internal_main.main(cli_args)
  File "/private/tmp/certbot-dns-powerdns/.venv/lib/python3.9/site-packages/certbot/_internal/main.py", line 1435, in main
    return config.func(config, plugins)
  File "/private/tmp/certbot-dns-powerdns/.venv/lib/python3.9/site-packages/certbot/_internal/main.py", line 1304, in certonly
    lineage = _get_and_save_cert(le_client, config, domains, certname, lineage)
  File "/private/tmp/certbot-dns-powerdns/.venv/lib/python3.9/site-packages/certbot/_internal/main.py", line 140, in _get_and_save_cert
    lineage = le_client.obtain_and_enroll_certificate(domains, certname)
  File "/private/tmp/certbot-dns-powerdns/.venv/lib/python3.9/site-packages/certbot/_internal/client.py", line 444, in obtain_and_enroll_certificate
    cert, chain, key, _ = self.obtain_certificate(domains)
  File "/private/tmp/certbot-dns-powerdns/.venv/lib/python3.9/site-packages/certbot/_internal/client.py", line 374, in obtain_certificate
    orderr = self._get_order_and_authorizations(csr.data, self.config.allow_subset_of_names)
  File "/private/tmp/certbot-dns-powerdns/.venv/lib/python3.9/site-packages/certbot/_internal/client.py", line 424, in _get_order_and_authorizations
    authzr = self.auth_handler.handle_authorizations(orderr, best_effort)
  File "/private/tmp/certbot-dns-powerdns/.venv/lib/python3.9/site-packages/certbot/_internal/auth_handler.py", line 70, in handle_authorizations
    resps = self.auth.perform(achalls)
  File "/private/tmp/certbot-dns-powerdns/.venv/lib/python3.9/site-packages/certbot/plugins/dns_common.py", line 60, in perform
    self._perform(domain, validation_domain_name, validation)
  File "/private/tmp/certbot-dns-powerdns/certbot_dns_powerdns/dns_powerdns.py", line 54, in _perform
    self._get_powerdns_client().add_txt_record(
  File "/private/tmp/certbot-dns-powerdns/.venv/lib/python3.9/site-packages/certbot/plugins/dns_common_lexicon.py", line 48, in add_txt_record
    self.provider.create_record(type='TXT', name=record_name, content=record_content)
TypeError: create_record() got an unexpected keyword argument 'type'

For now I propose to fix the working range and subsequently pin the requirements so this doesn't happen to other modules - as well as making preparations to newer versions of certbot which will break also plugin name calling (as mentioned alredy in #9 )

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

No branches or pull requests

1 participant