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

Add support for IONOS DNS challenge #3743

Merged
merged 3 commits into from
Oct 14, 2024
Merged

Conversation

dim-0
Copy link
Contributor

@dim-0 dim-0 commented Sep 1, 2024

  • Added Support for IONOS DNS Challenge
  • Added certbot-dns-ionos dependency
  • Updated configuration options
  • Added Documentation for IONOS DNS Challenge and configuration
  • Added IONOS DNS Challenge to script
  • Adjusted the Addon's version
  • Added entry to Change Log

Summary by CodeRabbit

  • New Features

    • Added support for IONOS DNS as a new DNS provider.
    • Introduced new configuration parameters for IONOS in the documentation and configuration files.
  • Documentation

    • Updated documentation to include IONOS DNS setup instructions and examples.
  • Chores

    • Incremented version number to 5.1.4 in configuration files to reflect new features.

* Added Support for IONOS DNS Challenge

- Added certbot-dns-ionos dependency
- Updated configuration options
- Added Documentation for IONOS DNS Challenge and configuration
- Added IONOS DNS Challenge to script

* Adjusted the Addon's version
* Added entry to Change Log
Copy link
Contributor

coderabbitai bot commented Sep 1, 2024

Walkthrough

Walkthrough

The changes introduce support for the IONOS DNS provider across multiple files in the Let's Encrypt project. This includes updates to the changelog, documentation, Dockerfile, configuration files, and initialization scripts. New configuration parameters specific to IONOS are added, and the version is incremented to reflect the enhancements. The modifications facilitate the integration of IONOS as a valid DNS provider for DNS challenges.

Changes

File(s) Change Summary
letsencrypt/CHANGELOG.md Added entry for version 5.1.4, noting support for IONOS DNS.
letsencrypt/DOCS.md Updated documentation to include IONOS DNS support, new parameters, and an example configuration.
letsencrypt/Dockerfile Added CERTBOT_DNS_IONOS_VERSION argument and installation of certbot-dns-ionos.
letsencrypt/build.yaml Introduced CERTBOT_DNS_IONOS_VERSION: 2024.1.8 to specify the IONOS DNS plugin version.
letsencrypt/config.yaml Updated version to 5.1.4 and added IONOS-specific fields under schema.
letsencrypt/rootfs/etc/cont-init.d/file-structure.sh Added configuration parameters for IONOS DNS service.
letsencrypt/rootfs/etc/services.d/lets-encrypt/run Added conditional block for handling IONOS DNS challenges.

Tip

Early access features: disabled

We are currently testing the following features in early access:

  • Anthropic claude-3-5-sonnet for code reviews: The new Claude model has stronger code understanding and code generation capabilities than the previous models. We're excited to hear your feedback as we evaluate its performance over the next few days.

Note:

  • You can enable or disable early access features from the CodeRabbit UI or by updating the CodeRabbit configuration file.
  • Please join our Discord Community to provide feedback and report issues on the discussion post.

Thank you for using CodeRabbit. We offer it for free to the OSS community and would appreciate your support in helping us grow. If you find it useful, would you consider giving us a shout-out on your favorite social media?

Share
Tips

Chat

There are 3 ways to chat with CodeRabbit:

  • Review comments: Directly reply to a review comment made by CodeRabbit. Example:
    • I pushed a fix in commit <commit_id>.
    • Generate unit testing code for this file.
    • Open a follow-up GitHub issue for this discussion.
  • Files and specific lines of code (under the "Files changed" tab): Tag @coderabbitai in a new review comment at the desired location with your query. Examples:
    • @coderabbitai generate unit testing code for this file.
    • @coderabbitai modularize this function.
  • PR comments: Tag @coderabbitai in a new PR comment to ask questions about the PR branch. For the best results, please provide a very specific query, as very limited context is provided in this mode. Examples:
    • @coderabbitai generate interesting stats about this repository and render them as a table.
    • @coderabbitai show all the console.log statements in this repository.
    • @coderabbitai read src/utils.ts and generate unit testing code.
    • @coderabbitai read the files in the src/scheduler package and generate a class diagram using mermaid and a README in the markdown format.
    • @coderabbitai help me debug CodeRabbit configuration file.

Note: Be mindful of the bot's finite context window. It's strongly recommended to break down tasks such as reading entire modules into smaller chunks. For a focused discussion, use review comments to chat about specific files and their changes, instead of using the PR comments.

CodeRabbit Commands (Invoked using PR comments)

  • @coderabbitai pause to pause the reviews on a PR.
  • @coderabbitai resume to resume the paused reviews.
  • @coderabbitai review to trigger an incremental review. This is useful when automatic reviews are disabled for the repository.
  • @coderabbitai full review to do a full review from scratch and review all the files again.
  • @coderabbitai summary to regenerate the summary of the PR.
  • @coderabbitai resolve resolve all the CodeRabbit review comments.
  • @coderabbitai configuration to show the current CodeRabbit configuration for the repository.
  • @coderabbitai help to get help.

Other keywords and placeholders

  • Add @coderabbitai ignore anywhere in the PR description to prevent this PR from being reviewed.
  • Add @coderabbitai summary to generate the high-level summary at a specific location in the PR description.
  • Add @coderabbitai or @coderabbitai title anywhere in the PR title to generate the title automatically.

CodeRabbit Configuration File (.coderabbit.yaml)

  • You can programmatically configure CodeRabbit by adding a .coderabbit.yaml file to the root of your repository.
  • Please see the configuration documentation for more information.
  • If your editor has YAML language server enabled, you can add the path at the top of this file to enable auto-completion and validation: # yaml-language-server: $schema=https://coderabbit.ai/integrations/schema.v2.json

Documentation and Community

  • Visit our Documentation for detailed information on how to use CodeRabbit.
  • Join our Discord Community to get help, request features, and share feedback.
  • Follow us on X/Twitter for updates and announcements.

Make `dns.ionos_endpoint` required for IONOS configuration
Copy link
Member

@agners agners left a comment

Choose a reason for hiding this comment

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

LGTM

@agners agners merged commit f053b1b into home-assistant:master Oct 14, 2024
11 checks passed
@NoFrust
Copy link

NoFrust commented Oct 14, 2024

Hi @dim-0, @agners: thank you for implementing this feature. I already updated the addon to 5.2.2 and configured it as shown in the screenshot. I selected dns as challenge, provided an email and a domain.
Screenshot 2024-10-14 at 17 06 15

Unfortunately the addon does not start producing the following log. Do you have any tip what the issue could be?
Thanks already in advance!

services-up: info: copying legacy longrun lets-encrypt (no readiness notification)
s6-rc: info: service legacy-services successfully started
[16:57:18] INFO: Selected DNS Provider: dns-ionos
[16:57:18] INFO: Use propagation seconds: 60
./run: line 317: unexpected EOF while looking for matching `''
s6-rc: info: service legacy-services: stopping
s6-rc: info: service legacy-services successfully stopped
s6-rc: info: service legacy-cont-init: stopping
s6-rc: info: service legacy-cont-init successfully stopped
s6-rc: info: service fix-attrs: stopping
s6-rc: info: service fix-attrs successfully stopped
s6-rc: info: service s6rc-oneshot-runner: stopping
s6-rc: info: service s6rc-oneshot-runner successfully stopped

@dim-0
Copy link
Contributor Author

dim-0 commented Oct 14, 2024

Oh, I'm very sorry. That was caused by a syntax error.
Fixed in #3800

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants