Skip to content

Migrate to libdns#1

Merged
Lemmmy merged 1 commit intomasterfrom
lemmmy/libdns
Feb 1, 2024
Merged

Migrate to libdns#1
Lemmmy merged 1 commit intomasterfrom
lemmmy/libdns

Conversation

@Lemmmy
Copy link
Member

@Lemmmy Lemmmy commented Jan 28, 2024

To prepare for the upcoming certmagic update in Casket, this PR updates all of the DNS providers to use libdns instead of lego, where possible. While it is technically possible to write a wrapper for lego, I thought it would be better to switch to what certmagic actually supports, and reduce our maintenance footprint too.

Over half of the DNS providers were removed, and some configuration options have changed. This is definitely a breaking change. I'm not sure how many people outside of tmpim use Casket, so we will need to clearly communicate the breaking changes, and invite issues/pull requests for providers that libdns doesn't support. Worst case, we can write a lego wrapper. I have documented the changes to the DNS providers and their configuration here, which can be included in the release notes when the time comes.

This change also supports block configuration for all of the DNS providers, which allows us to account for the only change we made in DNS providers - supporting more than one configuration/key per each type of provider. Environment variable expansion should still work in these block configurations. An example configuration for the cloudflare provider would look like this:

example.com {
  tls dns cloudflare {
    token ...
  }
}

This PR depends on changes in Casket (tmpim/casket#29), but this one will need to be merged first. I will also update the casket-docs for every provider.

@Lemmmy Lemmmy added the enhancement New feature or request label Jan 28, 2024
@Lemmmy Lemmmy merged commit 6e93909 into master Feb 1, 2024
@Lemmmy Lemmmy deleted the lemmmy/libdns branch February 1, 2024 16:40
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

enhancement New feature or request

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants